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 939cc5f..71a702d 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 @@ -73,9 +73,9 @@ public class BusinessSampleDispatchController implements BusinessControllerMarke @PostMapping("/addBySampleCode") @Operation(summary = "增加或移除样品") - public CommonResult addBySampleCode(HttpServletRequest request) { - String id = request.getParameter("id"); - String sampleCode = request.getParameter("sampleCode"); + public CommonResult addBySampleCode(@RequestBody JSONObject param) { + String id = param.getString("id"); + String sampleCode = param.getString("sampleCode"); BusinessSubSampleDO businessSubSampleDO = businessSubSampleService.getBySampleCode(sampleCode); if(businessSubSampleDO == null) return CommonResult.error(BUSINESS_SUB_SAMPLE_NOT_EXISTS.getCode(), "未查询到此样品!"); @@ -88,6 +88,8 @@ public class BusinessSampleDispatchController implements BusinessControllerMarke if("1".equals(dispatchStatus)){ return CommonResult.error(BUSINESS_SUB_SAMPLE_NOT_EXISTS.getCode(), "样品已被调拨:请归还后再调拨!"); } + //todo 重复校验 + List sampleIds = new ArrayList<>(); sampleIds.add(businessSubSampleDO.getId()); BusinessSampleDispatchSaveReqVO updateReqVO = new BusinessSampleDispatchSaveReqVO(); 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 c75ade9..c612afa 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 @@ -71,7 +71,7 @@ public class BusinessSampleDispatchDO extends BusinessBaseDO { * 申请原因 */ @TableField("APL_CNTT") - private LocalDateTime applyContent; + private String applyContent; /** * 库管员 diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSampleDispatchServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSampleDispatchServiceImpl.java index 7cda5e3..d4fdb1c 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSampleDispatchServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSampleDispatchServiceImpl.java @@ -44,7 +44,7 @@ import static com.zt.plat.module.qms.enums.QmsBpmConstant.BPM_CALLBACK_BEAN_NAME * * @author 后台管理 */ -@Service +@Service("businessSampleDispatchService") @Validated @Slf4j public class BusinessSampleDispatchServiceImpl implements BusinessSampleDispatchService, BMPCallbackInterface { @@ -65,7 +65,7 @@ public class BusinessSampleDispatchServiceImpl implements BusinessSampleDispatch List removeDetailIds = paramVo.getRemoveDetailIds(); //处理移除 - if(!removeDetailIds.isEmpty()){ + if(removeDetailIds != null && !removeDetailIds.isEmpty()){ businessSampleDispatchDetailService.deleteBusinessSampleDispatchDetailListByIds(removeDetailIds); } //处理新增 diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSubSampleService.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSubSampleService.java index 59c734c..abcdcea 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSubSampleService.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/BusinessSubSampleService.java @@ -58,6 +58,7 @@ public interface BusinessSubSampleService { BusinessSubSampleExtendRespVO getBusinessSubSample(Long id); BusinessSubSampleDO getBySampleCode(String sampleCode); + BusinessSubSampleDO getBySampleReturnCode(String sampleReturnCode); /** * 获得子样业务分页 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 76fea92..2c759c1 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 @@ -10,7 +10,9 @@ import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessHandoverRecord import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleHandoverDO; import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleHandoverDetailDO; import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAnalysisGroupDO; +import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigSubSampleDO; import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigWarehouseLocationDO; +import com.zt.plat.module.qms.business.config.service.ConfigSubSampleService; 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; @@ -61,6 +63,7 @@ public class BusinessSubSampleServiceImpl implements BusinessSubSampleService { @Resource private BusinessSampleHandoverDetailService businessSampleHandoverDetailService; @Resource private BusinessHandoverRecordSubService businessHandoverRecordSubService; @Resource private DictionaryBusinessService dictionaryBusinessService; + @Resource private ConfigSubSampleService configSubSampleService; @Resource private SequenceUtil sequenceUtil; @Override @@ -133,6 +136,13 @@ public class BusinessSubSampleServiceImpl implements BusinessSubSampleService { return businessSubSampleMapper.selectOne(queryWrapper); } + @Override + public BusinessSubSampleDO getBySampleReturnCode(String sampleReturnCode) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BusinessSubSampleDO::getSampleReturnCode, sampleReturnCode); + return businessSubSampleMapper.selectOne(queryWrapper); + } + @Override public PageResult getBusinessSubSamplePage(BusinessSubSamplePageReqVO pageReqVO) { PageResult page = businessSubSampleMapper.selectPage(pageReqVO); @@ -200,7 +210,7 @@ public class BusinessSubSampleServiceImpl implements BusinessSubSampleService { public BusinessSubSampleRespVO execReturnToStock(BusinessSubSampleSaveReqVO reqVo) { LoginUser loginUser = SecurityFrameworkUtils.getLoginUser(); String loginUserName = SecurityFrameworkUtils.getLoginUserNickname(); - BusinessSubSampleDO businessSubSampleDO = this.getBySampleCode(reqVo.getSampleCode()); + BusinessSubSampleDO businessSubSampleDO = this.getBySampleReturnCode(reqVo.getSampleCode()); if(businessSubSampleDO == null) throw exception(BUSINESS_SUB_SAMPLE_NOT_EXISTS); //检查样品状态 @@ -209,6 +219,22 @@ public class BusinessSubSampleServiceImpl implements BusinessSubSampleService { if(QmsCommonConstant.COMPLETED.equals(businessSubSampleDO.getReturnStatus())) throw exception0(BUSINESS_SUB_SAMPLE_NOT_EXISTS.getCode(), "样品已归库,请勿重复操作!"); + //判断仓库位置 + Long configSubSampleId = businessSubSampleDO.getConfigSubSampleId(); + ConfigSubSampleDO configSubSampleDO = configSubSampleService.getConfigSubSample(configSubSampleId); + Integer isGenerateSimpleCode = configSubSampleDO.getIsGenerateSimpleCode(); + Integer printFlag = 0; + if(1 == isGenerateSimpleCode){ + //生成归库码 + if(businessSubSampleDO.getIsGenerateReturnCode() == 0){ + String simpleCodeRule = configSubSampleDO.getSimpleCodeRule(); + String simpleCode = sequenceUtil.genCode(simpleCodeRule); + businessSubSampleDO.setSampleReturnCode(simpleCode); + businessSubSampleDO.setIsGenerateReturnCode(1); + printFlag = 1; + } + } + ConfigWarehouseLocationDO locationDO = configWarehouseLocationService.getLocationByCode(reqVo.getWarehouseLocationCode(), QmsWarehouseLocationConstant.WAREHOUSE_TYPE_SAMPLE); if(locationDO == null) throw exception(CONFIG_WAREHOUSE_LOCATION_NOT_EXISTS); @@ -236,8 +262,9 @@ public class BusinessSubSampleServiceImpl implements BusinessSubSampleService { * 这里不更新交接人。 调拨和归还时记录交接人 * * */ - - return BeanUtils.toBean(businessSubSampleDO, BusinessSubSampleRespVO.class); + BusinessSubSampleExtendRespVO respVO = BeanUtils.toBean(businessSubSampleDO, BusinessSubSampleExtendRespVO.class); + respVO.setIsPrint(printFlag); + return respVO; } //样品下架 diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/common/data/controller/admin/DataTemplateController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/common/data/controller/admin/DataTemplateController.java index b73ef47..c012b56 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/common/data/controller/admin/DataTemplateController.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/common/data/controller/admin/DataTemplateController.java @@ -115,7 +115,7 @@ public class DataTemplateController implements BusinessControllerMarker { @GetMapping("/getByKey") @Operation(summary = "获得表单设计器模板") @Parameter(name = "id", description = "编号", required = true, example = "1024") - @PreAuthorize("@ss.hasPermission('qms:data-template:query')") +// @PreAuthorize("@ss.hasPermission('qms:data-template:query')") public CommonResult getByKey(@RequestParam("dataKey") String dataKey) { LambdaQueryWrapper query = new LambdaQueryWrapper<>(); query.eq(DataTemplateDO::getDataKey, dataKey);