From 0cdc57667938b258d597b1e98f4ec7db5ed1d1d5 Mon Sep 17 00:00:00 2001 From: yinq Date: Wed, 6 Mar 2024 16:34:34 +0800 Subject: [PATCH] =?UTF-8?q?change=20-=20=E5=8E=9F=E6=9D=90=E6=96=99?= =?UTF-8?q?=E6=9D=A1=E7=A0=81=E4=BF=A1=E6=81=AF=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hw/mes/api/domain/MesBaseBarcodeInfo.java | 12 +- .../hw/common/core/constant/MesConstants.java | 8 +- .../com/hw/common/core/utils/uuid/Seq.java | 22 + .../impl/MesBaseBarcodeInfoServiceImpl.java | 49 +- hw-ui/src/api/mes/barcode.js | 8 + hw-ui/src/views/mes/barcode/index.vue | 452 ++++++++++-------- .../mes/purchaseOrder/addPurchaseOrder.vue | 51 +- 7 files changed, 350 insertions(+), 252 deletions(-) diff --git a/hw-api/hw-api-mes/src/main/java/com/hw/mes/api/domain/MesBaseBarcodeInfo.java b/hw-api/hw-api-mes/src/main/java/com/hw/mes/api/domain/MesBaseBarcodeInfo.java index 8b73db97..cb234d51 100644 --- a/hw-api/hw-api-mes/src/main/java/com/hw/mes/api/domain/MesBaseBarcodeInfo.java +++ b/hw-api/hw-api-mes/src/main/java/com/hw/mes/api/domain/MesBaseBarcodeInfo.java @@ -80,18 +80,18 @@ public class MesBaseBarcodeInfo extends BaseEntity private String poNo; /** 生产日期;打印时根据领料单选择输入 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd") private Date productionDate; /** 接受日期;打印时的系统日期 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "接受日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "接受日期", width = 30, dateFormat = "yyyy-MM-dd") private Date acceptedDate; /** 最晚出库日期;可以直接输入,也可以根据日限计算 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "最晚出库日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "最晚出库日期", width = 30, dateFormat = "yyyy-MM-dd") private Date lastOutstockDate; /** 生产计划编号,关联mes_pd_product_plan的plan_code;适合生产出入库等 */ diff --git a/hw-common/hw-common-core/src/main/java/com/hw/common/core/constant/MesConstants.java b/hw-common/hw-common-core/src/main/java/com/hw/common/core/constant/MesConstants.java index bc67fa41..ea62d1d8 100644 --- a/hw-common/hw-common-core/src/main/java/com/hw/common/core/constant/MesConstants.java +++ b/hw-common/hw-common-core/src/main/java/com/hw/common/core/constant/MesConstants.java @@ -15,10 +15,16 @@ public class MesConstants { public static final String MES_BARCODE_TYPE_PRODUCT = "3";//成品 public static final String MES_BARCODE_TYPE_BACKPLATE = "4";//背板 + /** 条码批次标识;0-否 */ + public static final String NOT_IS_BATCH = "0"; + + /** 条码批次标识;1-是 */ + public static final String IS_BATCH = "1"; + /** 工单状态;0-待发布 */ public static final String UN_PUBLISH = "0"; - /** 工单状态;0-已发布 */ + /** 工单状态;1已发布 */ public static final String PUBLISHED = "1"; /** 工单状态;2-已完成 */ diff --git a/hw-common/hw-common-core/src/main/java/com/hw/common/core/utils/uuid/Seq.java b/hw-common/hw-common-core/src/main/java/com/hw/common/core/utils/uuid/Seq.java index c53c3144..a948286d 100644 --- a/hw-common/hw-common-core/src/main/java/com/hw/common/core/utils/uuid/Seq.java +++ b/hw-common/hw-common-core/src/main/java/com/hw/common/core/utils/uuid/Seq.java @@ -80,6 +80,24 @@ public class Seq { // 生产计划明细标识 public static final String mesProductPlanDetailCode = "PD"; + // 生产批次代码记录标识 + public static final String mesBatchCodeSeqType = "BATCH_CODE"; + + // 生产批次代码序列数 + private static AtomicInteger mesBatchCodeSeq = new AtomicInteger(1); + + // 生产批次代码标识 + public static final String mesBatchCodeCode = "PC"; + + // 条码内容记录标识 + public static final String mesBarcodeSeqType = "BAR_CODE"; + + // 条码内容序列数 + private static AtomicInteger mesBarcodeSeq = new AtomicInteger(1); + + // 条码内容标识 + public static final String mesBarcodeCode = "TM"; + /** * 获取通用序列号 @@ -155,6 +173,10 @@ public class Seq { atomicInt = dispatchCodeSeq; }else if (planCodeSeqType.equals(type)) { atomicInt = planCodeSeq; + }else if (mesBatchCodeSeqType.equals(type)) { + atomicInt = mesBatchCodeSeq; + }else if (mesBarcodeSeqType.equals(type)) { + atomicInt = mesBarcodeSeq; } return getId(atomicInt, 3, code); } diff --git a/hw-modules/hw-mes/src/main/java/com/hw/mes/service/impl/MesBaseBarcodeInfoServiceImpl.java b/hw-modules/hw-mes/src/main/java/com/hw/mes/service/impl/MesBaseBarcodeInfoServiceImpl.java index e5a2b6c6..e852306c 100644 --- a/hw-modules/hw-mes/src/main/java/com/hw/mes/service/impl/MesBaseBarcodeInfoServiceImpl.java +++ b/hw-modules/hw-mes/src/main/java/com/hw/mes/service/impl/MesBaseBarcodeInfoServiceImpl.java @@ -1,7 +1,11 @@ package com.hw.mes.service.impl; +import java.math.BigDecimal; import java.util.List; + +import com.hw.common.core.constant.MesConstants; import com.hw.common.core.utils.DateUtils; +import com.hw.common.core.utils.uuid.Seq; import com.hw.mes.api.domain.MesBaseBarcodeInfo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -15,20 +19,18 @@ import com.hw.mes.service.IMesBaseBarcodeInfoService; * @date 2023-12-20 */ @Service -public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService -{ +public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService { @Autowired private MesBaseBarcodeInfoMapper mesBaseBarcodeInfoMapper; /** * 查询条码信息 * - * @param barcodeInfo 条码信息UID + * @param barcodeInfo 条码信息UID * @return 条码信息 */ @Override - public MesBaseBarcodeInfo selectMesBaseBarcodeInfoByBarcodeInfo(String barcodeInfo) - { + public MesBaseBarcodeInfo selectMesBaseBarcodeInfoByBarcodeInfo(String barcodeInfo) { return mesBaseBarcodeInfoMapper.selectMesBaseBarcodeInfoByBarcodeInfo(barcodeInfo); } @@ -40,8 +42,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService * @return 条码信息 */ @Override - public MesBaseBarcodeInfo selectMesBaseBarcodeInfoByBarcodeId(Long barcodeId) - { + public MesBaseBarcodeInfo selectMesBaseBarcodeInfoByBarcodeId(Long barcodeId) { return mesBaseBarcodeInfoMapper.selectMesBaseBarcodeInfoByBarcodeId(barcodeId); } @@ -52,8 +53,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService * @return 条码信息 */ @Override - public List selectMesBaseBarcodeInfoList(MesBaseBarcodeInfo mesBaseBarcodeInfo) - { + public List selectMesBaseBarcodeInfoList(MesBaseBarcodeInfo mesBaseBarcodeInfo) { return mesBaseBarcodeInfoMapper.selectMesBaseBarcodeInfoList(mesBaseBarcodeInfo); } @@ -64,10 +64,26 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService * @return 结果 */ @Override - public int insertMesBaseBarcodeInfo(MesBaseBarcodeInfo mesBaseBarcodeInfo) - { + public int insertMesBaseBarcodeInfo(MesBaseBarcodeInfo mesBaseBarcodeInfo) { mesBaseBarcodeInfo.setCreateTime(DateUtils.getNowDate()); - return mesBaseBarcodeInfoMapper.insertMesBaseBarcodeInfo(mesBaseBarcodeInfo); + if (mesBaseBarcodeInfo.getBarcodeType().equals(MesConstants.MES_BARCODE_TYPE_RAW)) { + //同一批次的批次代码相同 + mesBaseBarcodeInfo.setBatchCode(Seq.getId(Seq.mesBatchCodeSeqType, Seq.mesBatchCodeCode)); + if (mesBaseBarcodeInfo.getBatchFlag().equals(MesConstants.NOT_IS_BATCH)) { + int frequency = mesBaseBarcodeInfo.getAmount().intValue(); + for (int i = 0; i < frequency; i++) { + // 生成数量条的不同条码内容 + mesBaseBarcodeInfo.setBarcodeInfo(Seq.getId(Seq.mesBarcodeSeqType, Seq.mesBarcodeCode)); + mesBaseBarcodeInfo.setAmount(new BigDecimal(1)); + mesBaseBarcodeInfoMapper.insertMesBaseBarcodeInfo(mesBaseBarcodeInfo); + } + } + if (mesBaseBarcodeInfo.getBatchFlag().equals(MesConstants.IS_BATCH)) { + mesBaseBarcodeInfo.setBarcodeInfo(Seq.getId(Seq.mesBarcodeSeqType, Seq.mesBarcodeCode)); + mesBaseBarcodeInfoMapper.insertMesBaseBarcodeInfo(mesBaseBarcodeInfo); + } + } + return 1; } /** @@ -77,8 +93,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService * @return 结果 */ @Override - public int updateMesBaseBarcodeInfo(MesBaseBarcodeInfo mesBaseBarcodeInfo) - { + public int updateMesBaseBarcodeInfo(MesBaseBarcodeInfo mesBaseBarcodeInfo) { mesBaseBarcodeInfo.setUpdateTime(DateUtils.getNowDate()); return mesBaseBarcodeInfoMapper.updateMesBaseBarcodeInfo(mesBaseBarcodeInfo); } @@ -90,8 +105,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService * @return 结果 */ @Override - public int deleteMesBaseBarcodeInfoByBarcodeIds(Long[] barcodeIds) - { + public int deleteMesBaseBarcodeInfoByBarcodeIds(Long[] barcodeIds) { return mesBaseBarcodeInfoMapper.deleteMesBaseBarcodeInfoByBarcodeIds(barcodeIds); } @@ -102,8 +116,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService * @return 结果 */ @Override - public int deleteMesBaseBarcodeInfoByBarcodeId(Long barcodeId) - { + public int deleteMesBaseBarcodeInfoByBarcodeId(Long barcodeId) { return mesBaseBarcodeInfoMapper.deleteMesBaseBarcodeInfoByBarcodeId(barcodeId); } } diff --git a/hw-ui/src/api/mes/barcode.js b/hw-ui/src/api/mes/barcode.js index a3ed1980..6d990e97 100644 --- a/hw-ui/src/api/mes/barcode.js +++ b/hw-ui/src/api/mes/barcode.js @@ -42,3 +42,11 @@ export function delBarcode(barcodeId) { method: 'delete' }) } + +// 打印条码 +export function printBarCode(barcodeId) { + return request({ + url: '/mes/barcode/printBarCode/' + barcodeId, + method: 'get' + }) +} diff --git a/hw-ui/src/views/mes/barcode/index.vue b/hw-ui/src/views/mes/barcode/index.vue index 15ab81f5..0c862c5e 100644 --- a/hw-ui/src/views/mes/barcode/index.vue +++ b/hw-ui/src/views/mes/barcode/index.vue @@ -11,16 +11,16 @@ /> - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - + + 搜索 重置 @@ -70,19 +46,21 @@ size="mini" @click="handleAdd" v-hasPermi="['mes:barcode:add']" - >新增 - - - 修改 + >新增 + + + + + + + + + + + + + 删除 + >删除 + 导出 + >导出 + - + - - - - - - - - + - - - - + + + + + + + - - - + + + + + + + @@ -157,12 +137,12 @@ - + - + - + @@ -205,55 +194,51 @@ - - - - - - - - - - - + + + + + {{dict.label}} + :disabled="batchVisible" + >{{ dict.label }} + - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + + - - - + + + - + @@ -264,14 +249,14 @@ placeholder="请选择生产日期"> - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + +