diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/matcode/vo/MatCodePageReqVO.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/matcode/vo/MatCodePageReqVO.java index 5ada3c60..79a3d6b6 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/matcode/vo/MatCodePageReqVO.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/matcode/vo/MatCodePageReqVO.java @@ -14,9 +14,6 @@ import static com.chanko.yunxi.mes.framework.common.util.date.DateUtils.FORMAT_Y @ToString(callSuper = true) public class MatCodePageReqVO extends PageParam { - @Schema(description = "物料大类编码") - private String matCatCode; - @Schema(description = "物料物料大类名称", example = "芋艿") private String matCatName; diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/matcode/vo/MatCodeSaveReqVO.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/matcode/vo/MatCodeSaveReqVO.java index d586363d..2eb41cdc 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/matcode/vo/MatCodeSaveReqVO.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/matcode/vo/MatCodeSaveReqVO.java @@ -13,10 +13,6 @@ public class MatCodeSaveReqVO { @Schema(description = "自增字段,唯一", requiredMode = Schema.RequiredMode.REQUIRED, example = "20351") private Long id; - @Schema(description = "物料大类编码", requiredMode = Schema.RequiredMode.REQUIRED) -// @NotEmpty(message = "物料大类编码不能为空") - private String matCatCode; - @Schema(description = "物料大类名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "刚材") // @NotEmpty(message = "大类名称不能为空") private String matCatName; diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/matcode/MatCodeDO.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/matcode/MatCodeDO.java index 6f237968..0252038f 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/matcode/MatCodeDO.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/matcode/MatCodeDO.java @@ -24,10 +24,6 @@ public class MatCodeDO extends BaseDO { */ @TableId private Long id; - /** - * 物料大类编码 - */ - private String matCatCode; /** * 物料物料大类名称 */ diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/matcode/MatCodeMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/matcode/MatCodeMapper.java index 7de8cc78..9992225d 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/matcode/MatCodeMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/matcode/MatCodeMapper.java @@ -19,7 +19,7 @@ public interface MatCodeMapper extends BaseMapperX { default PageResult selectPage(MatCodePageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() - .eqIfPresent(MatCodeDO::getMatCatCode, reqVO.getMatCatCode()) + .eqIfPresent(MatCodeDO::getMatTypeCode, reqVO.getMatTypeCode()) .likeIfPresent(MatCodeDO::getMatCatName, reqVO.getMatCatName()) .eqIfPresent(MatCodeDO::getMatTypeCode, reqVO.getMatTypeCode()) .eqIfPresent(MatCodeDO::getCurMaxSeq, reqVO.getCurMaxSeq()) @@ -30,12 +30,12 @@ public interface MatCodeMapper extends BaseMapperX { default MatCodeDO selectByMatCatCode(String matCatCode) { return selectOne(new LambdaQueryWrapperX() - .eq(MatCodeDO::getMatCatCode, matCatCode)); + .eq(MatCodeDO::getMatTypeCode, matCatCode)); } default MatCodeDO selectByMatCatCodeAndIdNot(String matCatCode, Long id) { return selectOne(new LambdaQueryWrapperX() - .eq(MatCodeDO::getMatCatCode, matCatCode) + .eq(MatCodeDO::getMatTypeCode, matCatCode) .ne(MatCodeDO::getId, id)); } diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/matcode/MatCodeService.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/matcode/MatCodeService.java index a787f754..97d1819c 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/matcode/MatCodeService.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/matcode/MatCodeService.java @@ -30,6 +30,9 @@ public interface MatCodeService { */ void updateMatCode(@Valid MatCodeSaveReqVO updateReqVO); + + void updateCurMaxSeq(String matTypeCode); + /** * 删除物料大类编码维护 * diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/matcode/MatCodeServiceImpl.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/matcode/MatCodeServiceImpl.java index 9deb7d65..21a45e23 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/matcode/MatCodeServiceImpl.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/matcode/MatCodeServiceImpl.java @@ -35,23 +35,24 @@ public class MatCodeServiceImpl implements MatCodeService { public static String generateMaterialCode(String matTypeCode, String curMaxSeq) { try { - int matCode = Integer.parseInt(matTypeCode); - // curMaxSeq 转换为数字 - int curMaxSeqNum = Integer.parseInt(curMaxSeq) + 1; - int ss = matCode + curMaxSeqNum; - - // ss 转为字符串,不足 5 位补 前面补充0 - return String.format("%05d", ss); + String curMax = getString(curMaxSeq); + return matTypeCode + curMax; } catch (Exception e) { throw exception(ErrorCodeConstants.MAT_CAT_CODE_ERROR); } } + private static String getString(String curMaxSeq) { + int length = curMaxSeq.length(); + int curMaxSeqNum = Integer.parseInt(curMaxSeq) + 1; + return String.format("%0" + length + "d", curMaxSeqNum); + } + @Override public Long createMatCode(MatCodeSaveReqVO createReqVO) { // 校验 matCatCode 唯一性 - validateMatCatCodeUnique(null, createReqVO.getMatCatCode()); + validateMatCatCodeUnique(null, createReqVO.getMatTypeCode()); // 插入 MatCodeDO matCode = BeanUtils.toBean(createReqVO, MatCodeDO.class); matCodeMapper.insert(matCode); @@ -64,12 +65,21 @@ public class MatCodeServiceImpl implements MatCodeService { // 校验存在 validateMatCodeExists(updateReqVO.getId()); // 校验 matCatCode 唯一性(更新时允许更新自己) - validateMatCatCodeUnique(updateReqVO.getId(), updateReqVO.getMatCatCode()); + validateMatCatCodeUnique(updateReqVO.getId(), updateReqVO.getMatTypeCode()); // 更新 MatCodeDO updateObj = BeanUtils.toBean(updateReqVO, MatCodeDO.class); matCodeMapper.updateById(updateObj); } + + @Override + public void updateCurMaxSeq(String matTypeCode) { + MatCodeDO matCode = getByMatCatCode(matTypeCode); + String string = getString(matCode.getCurMaxSeq()); + matCode.setCurMaxSeq(string); + matCodeMapper.updateById(matCode); + } + /** * 校验物料大类编码唯一性 * diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/material/MaterialServiceImpl.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/material/MaterialServiceImpl.java index 281f80b1..5ff9ca4d 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/material/MaterialServiceImpl.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/material/MaterialServiceImpl.java @@ -23,6 +23,7 @@ import com.chanko.yunxi.mes.module.heli.dal.mysql.material.MaterialMapper; import com.chanko.yunxi.mes.module.heli.dal.mysql.storageinventory.StorageInventoryMapper; import com.chanko.yunxi.mes.module.heli.enums.CodeEnum; import com.chanko.yunxi.mes.module.heli.enums.MaterialTypeEnum; +import com.chanko.yunxi.mes.module.heli.service.matcode.MatCodeService; import com.chanko.yunxi.mes.module.heli.service.serialnumber.SerialNumberService; import com.chanko.yunxi.mes.module.heli.service.storage.StorageService; import com.chanko.yunxi.mes.module.heli.service.storagelog.StorageLogService; @@ -65,6 +66,9 @@ public class MaterialServiceImpl implements MaterialService { @Resource private StorageInventoryMapper storageInventoryMapper; + @Resource + private MatCodeService matCodeService; + @PostConstruct public void init(){ @@ -131,6 +135,7 @@ public class MaterialServiceImpl implements MaterialService { } } + @Transactional(rollbackFor = Exception.class) @Override public void updateMaterial(MaterialSaveReqVO updateReqVO) { // 校验存在 @@ -140,6 +145,8 @@ public class MaterialServiceImpl implements MaterialService { // 重复性判断 validateMaterialRepeat(updateObj.getCode(), updateReqVO.getId()); materialMapper.updateById(updateObj); + // 更新物料大类最大流水 + matCodeService.updateCurMaxSeq(updateObj.getMatCate()); } @Override diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/matcode/MatCodeForm.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/matcode/MatCodeForm.vue index fba39195..919c13d2 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/matcode/MatCodeForm.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/matcode/MatCodeForm.vue @@ -8,8 +8,8 @@ label-width="180px" v-loading="formLoading" > - - + + + - + - + @@ -38,6 +39,7 @@ diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/matcode/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/matcode/index.vue index bcdf57b7..cd09a6e6 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/matcode/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/matcode/index.vue @@ -8,8 +8,8 @@ :inline="true" label-width="90px" > - - + + - @@ -78,14 +77,7 @@ > 编辑 - - 删除 - + @@ -120,7 +112,6 @@ const total = ref(0) // 列表的总页数 const queryParams = reactive({ pageNo: 1, pageSize: 10, - matCatCode: undefined, matCatName: undefined, matTypeCode: undefined, curMaxSeq: undefined,