diff --git a/zt-module-qms/zt-module-qms-api/src/main/java/com/zt/plat/module/qms/enums/ErrorCodeConstants.java b/zt-module-qms/zt-module-qms-api/src/main/java/com/zt/plat/module/qms/enums/ErrorCodeConstants.java index ce8d579..0b1af9c 100644 --- a/zt-module-qms/zt-module-qms-api/src/main/java/com/zt/plat/module/qms/enums/ErrorCodeConstants.java +++ b/zt-module-qms/zt-module-qms-api/src/main/java/com/zt/plat/module/qms/enums/ErrorCodeConstants.java @@ -87,6 +87,7 @@ public interface ErrorCodeConstants { ErrorCode CONFIG_PERMISSION_NOT_EXISTS = new ErrorCode(1_032_050_000, "权限配置不存在"); ErrorCode CONFIG_PERMISSION_DUPLICATE = new ErrorCode(1_032_050_000, "权限配置数据有误"); ErrorCode CONFIG_WAREHOUSE_LOCATION_NOT_EXISTS = new ErrorCode(1_032_050_000, "存放位置不存在"); + ErrorCode CONFIG_WAREHOUSE_LOCATION_CODE_DUPLICATE = new ErrorCode(1_032_050_000, "库位编码重复,请检查库位数据,或联系管理员处理!"); /*=================================bus 检验业务 1_032_100_000 ~ 1_032_149_999==================================*/ ErrorCode BUSINESS_SAMPLE_ENTRUST_REGISTRATION_NOT_EXISTS = new ErrorCode(1_032_100_000, "委检登记业务不存在"); diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/admin/BusinessSampleDispatchController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/admin/BusinessSampleDispatchController.java index d9d8344..4625cc5 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/admin/BusinessSampleDispatchController.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/admin/BusinessSampleDispatchController.java @@ -4,6 +4,9 @@ import com.alibaba.fastjson.JSONObject; import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSampleDispatchPageReqVO; import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSampleDispatchRespVO; import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSampleDispatchSaveReqVO; +import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleDO; +import com.zt.plat.module.qms.business.bus.service.BusinessSubSampleService; +import com.zt.plat.module.qms.enums.QmsCommonConstant; import org.springframework.web.bind.annotation.*; import jakarta.annotation.Resource; import org.springframework.validation.annotation.Validated; @@ -30,6 +33,7 @@ import com.zt.plat.framework.excel.core.util.ExcelUtils; import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog; import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*; +import static com.zt.plat.module.qms.enums.ErrorCodeConstants.BUSINESS_SUB_SAMPLE_NOT_EXISTS; import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleDispatchDO; import com.zt.plat.module.qms.business.bus.service.BusinessSampleDispatchService; @@ -41,8 +45,8 @@ import com.zt.plat.module.qms.business.bus.service.BusinessSampleDispatchService public class BusinessSampleDispatchController implements BusinessControllerMarker { - @Resource - private BusinessSampleDispatchService businessSampleDispatchService; + @Resource private BusinessSampleDispatchService businessSampleDispatchService; + @Resource private BusinessSubSampleService businessSubSampleService; @PostMapping("/createTempData") @Operation(summary = "创建临时数据") @@ -67,6 +71,32 @@ public class BusinessSampleDispatchController implements BusinessControllerMarke return success(true); } + @PutMapping("/addBySampleCode") + @Operation(summary = "增加或移除样品") + public CommonResult addBySampleCode(HttpServletRequest request) { + String id = request.getParameter("id"); + String sampleCode = request.getParameter("sampleCode"); + BusinessSubSampleDO businessSubSampleDO = businessSubSampleService.getBySampleCode(sampleCode); + if(businessSubSampleDO == null) + return CommonResult.error(BUSINESS_SUB_SAMPLE_NOT_EXISTS.getCode(), "未查询到此样品!"); + //判断样品状态 + String returnStatus = businessSubSampleDO.getReturnStatus(); + if(!QmsCommonConstant.COMPLETED.equals(returnStatus)){ + return CommonResult.error(BUSINESS_SUB_SAMPLE_NOT_EXISTS.getCode(), "样品状态为:"+returnStatus+",不能调拨!"); + } + String dispatchStatus = businessSubSampleDO.getDispatchStatus(); + if("1".equals(dispatchStatus)){ + return CommonResult.error(BUSINESS_SUB_SAMPLE_NOT_EXISTS.getCode(), "样品已被调拨:请归还后再调拨!"); + } + List sampleIds = new ArrayList<>(); + sampleIds.add(businessSubSampleDO.getId()); + BusinessSampleDispatchSaveReqVO updateReqVO = new BusinessSampleDispatchSaveReqVO(); + updateReqVO.setId(Long.valueOf(id)); + updateReqVO.setAddSubSampleIds(sampleIds); + businessSampleDispatchService.addOrRemoveSample(updateReqVO); + return success(true); + } + @PostMapping("/createProcessInstance") @Operation(summary = "发起流程") public CommonResult createProcessInstance(@Valid @RequestBody BusinessSampleDispatchSaveReqVO vo) { diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/admin/BusinessSampleDispatchDetailController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/admin/BusinessSampleDispatchDetailController.java index 3f1033c..d70ec9f 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/admin/BusinessSampleDispatchDetailController.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/admin/BusinessSampleDispatchDetailController.java @@ -1,9 +1,10 @@ package com.zt.plat.module.qms.business.bus.controller.admin; -import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSampleDispatchDetailExtendRespVO; -import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSampleDispatchDetailPageReqVO; -import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSampleDispatchDetailRespVO; -import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSampleDispatchDetailSaveReqVO; +import com.zt.plat.module.qms.business.bus.controller.vo.*; +import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleDO; +import com.zt.plat.module.qms.business.bus.service.BusinessSubSampleService; +import com.zt.plat.module.qms.enums.QmsCommonConstant; +import org.springframework.util.ObjectUtils; import org.springframework.web.bind.annotation.*; import jakarta.annotation.Resource; import org.springframework.validation.annotation.Validated; @@ -30,6 +31,8 @@ import com.zt.plat.framework.excel.core.util.ExcelUtils; import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog; import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*; +import static com.zt.plat.module.qms.enums.ErrorCodeConstants.BUSINESS_SAMPLE_DISPATCH_DETAIL_NOT_EXISTS; +import static com.zt.plat.module.qms.enums.ErrorCodeConstants.BUSINESS_SUB_SAMPLE_NOT_EXISTS; import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleDispatchDetailDO; import com.zt.plat.module.qms.business.bus.service.BusinessSampleDispatchDetailService; @@ -41,8 +44,28 @@ import com.zt.plat.module.qms.business.bus.service.BusinessSampleDispatchDetailS public class BusinessSampleDispatchDetailController implements BusinessControllerMarker { - @Resource - private BusinessSampleDispatchDetailService businessSampleDispatchDetailService; + @Resource private BusinessSampleDispatchDetailService businessSampleDispatchDetailService; + @Resource private BusinessSubSampleService businessSubSampleService; + + @GetMapping("/searchBySampleCode") + @Operation(summary = "扫码查询待归还样品") + public CommonResult searchBySampleCode(HttpServletRequest request) { + String sampleCode = request.getParameter("sampleCode"); + if(ObjectUtils.isEmpty(sampleCode)) + return CommonResult.error(BUSINESS_SAMPLE_DISPATCH_DETAIL_NOT_EXISTS.getCode(), "请输入样品编号!"); + BusinessSampleDispatchDetailPageReqVO reqVO = new BusinessSampleDispatchDetailPageReqVO(); + reqVO.setSampleCode(sampleCode); + reqVO.setBorrowStatus("1"); + reqVO.setGivebackStatus("0"); + + PageResult pageResult = businessSampleDispatchDetailService.getBusinessSampleDispatchDetailPage(reqVO); + if(pageResult.getTotal() == 0) + return CommonResult.error(BUSINESS_SAMPLE_DISPATCH_DETAIL_NOT_EXISTS.getCode(), "未查询到此样品!"); + if(pageResult.getList().size() > 1) + return CommonResult.error(BUSINESS_SAMPLE_DISPATCH_DETAIL_NOT_EXISTS.getCode(), "样品编号重复,请联系管理员检查数据!"); + BusinessSampleDispatchDetailExtendRespVO businessSampleDispatchDetailExtendRespVO = pageResult.getList().get(0); + return success(businessSampleDispatchDetailExtendRespVO); + } @PostMapping("/create") @Operation(summary = "创建样品调拨明细") diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchDetailExtendRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchDetailExtendRespVO.java index 587ee7e..f2e1bc9 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchDetailExtendRespVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchDetailExtendRespVO.java @@ -24,6 +24,9 @@ public class BusinessSampleDispatchDetailExtendRespVO extends BusinessSampleDisp //调拨状态 private String dispatchStatus; + //归库状态 + private String returnStatus; + //库位编码 private String warehouseLocationCode; diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchDetailPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchDetailPageReqVO.java index 048cd1f..4e2d30e 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchDetailPageReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchDetailPageReqVO.java @@ -66,5 +66,9 @@ public class BusinessSampleDispatchDetailPageReqVO extends PageParam { @Schema(description = "idsList") private List idList; + @Schema(description = "调拨状态") + private String dispatchStatus; + @Schema(description = "归库状态") + private String returnStatus; } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchPageReqVO.java index 7ad0761..78ebfdc 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchPageReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchPageReqVO.java @@ -34,6 +34,9 @@ public class BusinessSampleDispatchPageReqVO extends PageParam { @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] applyTime; + @Schema(description = "申请原因") + private String applyContent; + @Schema(description = "库管员") private String warehouseUser; diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchRespVO.java index 1820f06..5cc4f43 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchRespVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchRespVO.java @@ -43,6 +43,10 @@ public class BusinessSampleDispatchRespVO { @ExcelProperty("申请时间") private LocalDateTime applyTime; + @Schema(description = "申请原因") + @ExcelProperty("申请原因") + private String applyContent; + @Schema(description = "库管员") @ExcelProperty("库管员") private String warehouseUser; diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchSaveReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchSaveReqVO.java index b9ce76f..221b983 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchSaveReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSampleDispatchSaveReqVO.java @@ -34,6 +34,9 @@ public class BusinessSampleDispatchSaveReqVO { @Schema(description = "申请时间") private LocalDateTime applyTime; + @Schema(description = "申请原因") + private String applyContent; + @Schema(description = "库管员") private String warehouseUser; diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSampleExtendRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSampleExtendRespVO.java index 348d594..81c345c 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSampleExtendRespVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSampleExtendRespVO.java @@ -23,4 +23,10 @@ public class BusinessSubSampleExtendRespVO extends BusinessSubSampleRespVO { @Schema(description = "样品标签打印模版") private String printTemplate; + + @Schema(description = "库位编码") + private String warehouseLocationCode; + + @Schema(description = "仓库名称") + private String warehouseName; } diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSamplePageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSamplePageReqVO.java index a449255..01c5f67 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSamplePageReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSamplePageReqVO.java @@ -1,5 +1,6 @@ package com.zt.plat.module.qms.business.bus.controller.vo; +import com.alibaba.excel.annotation.ExcelProperty; import lombok.*; import java.util.*; import io.swagger.v3.oas.annotations.media.Schema; @@ -99,6 +100,9 @@ public class BusinessSubSamplePageReqVO extends PageParam { @Schema(description = "归库状态,【字典】【jy_sample_return_status】待归库、已归库、已调拨、已下架、待销毁、已销毁", example = "2") private String returnStatus; + @Schema(description = "调拨状态") + private String dispatchStatus; + @Schema(description = "打印次数", example = "32651") private Integer returnCodePrintCount; @@ -128,4 +132,8 @@ public class BusinessSubSamplePageReqVO extends PageParam { @Schema(description = "备注") private String remark; + //扩展字段 + @Schema(description = "库位编码") + private String warehouseLocationCode; + } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSampleRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSampleRespVO.java index 36191ff..c3d4a3d 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSampleRespVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/controller/vo/BusinessSubSampleRespVO.java @@ -1,5 +1,6 @@ package com.zt.plat.module.qms.business.bus.controller.vo; +import com.zt.plat.module.qms.core.aspect.annotation.Dict; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; @@ -123,6 +124,7 @@ public class BusinessSubSampleRespVO { @Schema(description = "归库状态,【字典】【jy_sample_return_status】待归库、已归库、已调拨、已下架、待销毁、已销毁", example = "2") @ExcelProperty("归库状态,【字典】【jy_sample_return_status】待归库、已归库、已调拨、已下架、待销毁、已销毁") + @Dict(dicCode = "jy_sample_return_status") private String returnStatus; @Schema(description = "调拨状态") diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/dal/dataobject/BusinessSampleDispatchDO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/dal/dataobject/BusinessSampleDispatchDO.java index f2860af..c75ade9 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/dal/dataobject/BusinessSampleDispatchDO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/dal/dataobject/BusinessSampleDispatchDO.java @@ -66,6 +66,13 @@ public class BusinessSampleDispatchDO extends BusinessBaseDO { */ @TableField("APL_TM") private LocalDateTime applyTime; + + /** + * 申请原因 + */ + @TableField("APL_CNTT") + private LocalDateTime applyContent; + /** * 库管员 */ diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/dal/mapper/BusinessSampleDispatchDetailMapper.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/dal/mapper/BusinessSampleDispatchDetailMapper.java index 676cf13..f171aba 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/dal/mapper/BusinessSampleDispatchDetailMapper.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/dal/mapper/BusinessSampleDispatchDetailMapper.java @@ -44,6 +44,7 @@ public interface BusinessSampleDispatchDetailMapper extends BaseMapperX s.selectCount(BusinessAssayTaskDataDO::getId).eq(BusinessAssayTaskDataDO::getBusinessSubSampleId, BusinessSubSampleDO::getId), BusinessSubSampleExtendRespVO::getAssayTaskCount) .leftJoin(ConfigSubSampleDO.class, ConfigSubSampleDO::getId, BusinessSubSampleDO::getConfigSubSampleId) .leftJoin(DictionaryBusinessDO.class, DictionaryBusinessDO::getId, BusinessSubSampleDO::getDictionaryBusinessId) + //库位 + .leftJoin(ConfigWarehouseLocationDO.class, ConfigWarehouseLocationDO::getId, BusinessSubSampleDO::getConfigWarehouseLocationInfomationId, w->{ + w.eq(ConfigWarehouseLocationDO::getWarehouseType, QmsWarehouseLocationConstant.WAREHOUSE_TYPE_SAMPLE); + }) + //仓库 + .leftJoin(ConfigWarehouseLocationParDO.class, ConfigWarehouseLocationParDO::getId, ConfigWarehouseLocationDO::getParentId) .selectAll(BusinessSubSampleDO.class) .selectAs(DictionaryBusinessDO::getName, BusinessSubSampleExtendRespVO::getDictionaryBusinessName) .selectAs(ConfigSubSampleDO::getIsPrint, BusinessSubSampleExtendRespVO::getIsPrint) .selectAs(ConfigSubSampleDO::getPrintTemplate, BusinessSubSampleExtendRespVO::getPrintTemplate) + .selectAs(ConfigWarehouseLocationDO::getCode, BusinessSubSampleExtendRespVO::getWarehouseLocationCode) + .selectAs(ConfigWarehouseLocationParDO::getName, BusinessSubSampleExtendRespVO::getWarehouseName) .eqIfPresent(BusinessSubSampleDO::getBusinessBaseSampleId, reqVO.getBusinessBaseSampleId()) .eqIfPresent(BusinessSubSampleDO::getBusinessSubParentSampleId, reqVO.getBusinessSubParentSampleId()) .eqIfPresent(BusinessSubSampleDO::getConfigSubSampleId, reqVO.getConfigSubSampleId()) @@ -60,6 +72,7 @@ public interface BusinessSubSampleMapper extends BaseMapperX execGiveback(JSONObject paramVo) { String givebackUser = paramVo.getString("givebackUser"); //归还人 @@ -236,8 +237,14 @@ public class BusinessSampleDispatchServiceImpl implements BusinessSampleDispatch @Override public BusinessSampleDispatchRespVO createBusinessSampleDispatch(BusinessSampleDispatchSaveReqVO createReqVO) { - // 插入 BusinessSampleDispatchDO businessSampleDispatch = BeanUtils.toBean(createReqVO, BusinessSampleDispatchDO.class); + LoginUser loginUser = SecurityFrameworkUtils.getLoginUser(); + String nickName = SecurityFrameworkUtils.getLoginUserNickname(); + if(businessSampleDispatch.getApplyUser() == null){ + businessSampleDispatch.setApplyUser(nickName); + businessSampleDispatch.setApplyUserId(loginUser.getId()); + } + businessSampleDispatchMapper.insert(businessSampleDispatch); // 返回 return BeanUtils.toBean(businessSampleDispatch, BusinessSampleDispatchRespVO.class); diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSubSampleServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSubSampleServiceImpl.java index a9d0f5e..ed14947 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSubSampleServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSubSampleServiceImpl.java @@ -11,6 +11,7 @@ import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleHandover import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleHandoverDetailDO; import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigWarehouseLocationDO; import com.zt.plat.module.qms.business.config.service.ConfigWarehouseLocationService; +import com.zt.plat.module.qms.common.dic.service.DictionaryBusinessService; import com.zt.plat.module.qms.core.code.SequenceUtil; import com.zt.plat.module.qms.enums.QmsCommonConstant; import com.zt.plat.module.qms.enums.QmsWarehouseLocationConstant; @@ -55,6 +56,7 @@ public class BusinessSubSampleServiceImpl implements BusinessSubSampleService { @Resource private BusinessSampleHandoverService businessSampleHandoverService; @Resource private BusinessSampleHandoverDetailService businessSampleHandoverDetailService; @Resource private BusinessHandoverRecordSubService businessHandoverRecordSubService; + @Resource private DictionaryBusinessService dictionaryBusinessService; @Resource private SequenceUtil sequenceUtil; @Override @@ -230,7 +232,10 @@ public class BusinessSubSampleServiceImpl implements BusinessSubSampleService { //创建交接抬头 BusinessSampleHandoverSaveReqVO handoverVO = new BusinessSampleHandoverSaveReqVO(); - String code = sequenceUtil.genCode("/XJ|@yyMMdd|*XJ_CODE-3-D"); + String codeTemplate = dictionaryBusinessService.getValueByDataKey("sample_take_off_serial"); + if(ObjectUtils.isEmpty(codeTemplate)) + throw exception0(BUSINESS_SUB_SAMPLE_NOT_EXISTS.getCode(), "缺少“样品下架记录编号规则”的配置,请在业务参数字典增加此配置!"); + String code = sequenceUtil.genCode(codeTemplate); handoverVO.setCode(code); handoverVO.setName("样品下架记录"); handoverVO.setSampleFlowNodeKey(QmsCommonConstant.FLOW_SAMPLE_STORAGE); diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/config/service/ConfigWarehouseLocationServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/config/service/ConfigWarehouseLocationServiceImpl.java index 82b15d3..e8f1d90 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/config/service/ConfigWarehouseLocationServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/config/service/ConfigWarehouseLocationServiceImpl.java @@ -42,9 +42,13 @@ public class ConfigWarehouseLocationServiceImpl implements ConfigWarehouseLocati query.eq(ConfigWarehouseLocationDO::getCode, code); query.eq(ConfigWarehouseLocationDO::getWarehouseType, warehouseType); query.eq(ConfigWarehouseLocationDO::getDataType, QmsWarehouseLocationConstant.DATA_TYPE_LOCATION); - query.last("limit 1"); - ConfigWarehouseLocationDO configWarehouseLocation = configWarehouseLocationMapper.selectOne(query); - return configWarehouseLocation; +// query.last("limit 1"); + List list = configWarehouseLocationMapper.selectList(query); + if(list.size() > 1) + throw exception(CONFIG_WAREHOUSE_LOCATION_CODE_DUPLICATE); + if(list.isEmpty()) + return null; + return list.get(0); } @Override