diff --git a/src/main/java/com/glxp/api/config/ReplaceBatch.java b/src/main/java/com/glxp/api/config/ReplaceBatch.java index 20194c696..f009e3478 100644 --- a/src/main/java/com/glxp/api/config/ReplaceBatch.java +++ b/src/main/java/com/glxp/api/config/ReplaceBatch.java @@ -39,9 +39,12 @@ public class ReplaceBatch extends AbstractMethod { KeyGenerator keyGenerator = new NoKeyGenerator(); CustomerSqlMethod sqlMethod = CustomerSqlMethod.REPLACE_ONE; List fieldList = tableInfo.getFieldList(); - String insertSqlColumn = tableInfo.getKeyInsertSqlColumn(true, true) + - this.filterTableFieldInfo(fieldList, predicate, TableFieldInfo::getInsertSqlColumn, EMPTY); - String columnScript = LEFT_BRACKET + insertSqlColumn.substring(0, insertSqlColumn.length() - 1) + RIGHT_BRACKET; + + String columnScript = SqlScriptUtils.convertTrim(tableInfo.getAllInsertSqlColumnMaybeIf(null), + LEFT_BRACKET, RIGHT_BRACKET, null, COMMA); +// String insertSqlColumn = tableInfo.getKeyInsertSqlColumn(true, true) + +// this.filterTableFieldInfo(fieldList, predicate, TableFieldInfo::getInsertSqlColumn, EMPTY); +// String columnScript = LEFT_BRACKET + insertSqlColumn.substring(0, insertSqlColumn.length() - 1) + RIGHT_BRACKET; String insertSqlProperty = tableInfo.getKeyInsertSqlProperty(true, ENTITY_DOT, true) + this.filterTableFieldInfo(fieldList, predicate, i -> i.getInsertSqlProperty(ENTITY_DOT), EMPTY); insertSqlProperty = LEFT_BRACKET + insertSqlProperty.substring(0, insertSqlProperty.length() - 1) + RIGHT_BRACKET; diff --git a/src/main/java/com/glxp/api/constant/Constant.java b/src/main/java/com/glxp/api/constant/Constant.java index f6480456d..77e5e1bba 100644 --- a/src/main/java/com/glxp/api/constant/Constant.java +++ b/src/main/java/com/glxp/api/constant/Constant.java @@ -286,6 +286,7 @@ public class Constant { public static final String ORDER_ACTION_SUP_PREIN = "preInOrder"; public static final String ORDER_ACTION_WAIT_CHECK = "waitCheck"; //待校验 public static final String ORDER_ACTION_WAIT_DEAL = "waitDeal"; //待配货/拣货 + public static final String ORDER_THIRD_UPLOAD = "thirdUpload"; public static final String SYNC_REMARK = "syncRemark"; } diff --git a/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java b/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java index 8277778d6..aada9dbca 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java @@ -81,7 +81,7 @@ public class BasicCorpController { //是供应商的时候拉客户和供应商 if (basicUnitMaintainFilterRequest.getCorpType() == null || basicUnitMaintainFilterRequest.getCorpType() == 2) { basicUnitMaintainFilterRequest.setCorpType(null); - basicUnitMaintainFilterRequest.setCorpTypeList(new ArrayList<>(Arrays.asList(1, 2))); + basicUnitMaintainFilterRequest.setCorpTypeLists(new ArrayList<>(Arrays.asList(1, 2))); } basicUnitMaintainEntities = basicUnitMaintainService.filterList(basicUnitMaintainFilterRequest); PageInfo pageInfo = new PageInfo<>(basicUnitMaintainEntities); @@ -126,7 +126,11 @@ public class BasicCorpController { BasicCorpEntity basicUnitMaintainEntity = new BasicCorpEntity(); BeanUtils.copyProperties(basicUnitMaintainSaveRequest, basicUnitMaintainEntity); basicUnitMaintainEntity.setErpId(CustomUtil.getId()); - basicUnitMaintainEntity.setOutType(ConstantStatus.CORP_SICK_CUS); + if(basicUnitMaintainSaveRequest.getCorpType()==1){ + basicUnitMaintainEntity.setOutType(ConstantStatus.CORP_SICK_SICK); + }else{ + basicUnitMaintainEntity.setOutType(ConstantStatus.CORP_SICK_CUS); + } basicUnitMaintainEntity.setUpdateTime(new Date()); basicUnitMaintainEntity.setId(IdUtil.getSnowflakeNextId()); boolean b = basicUnitMaintainService.insert(basicUnitMaintainEntity); diff --git a/src/main/java/com/glxp/api/controller/basic/BasicDestinyRelController.java b/src/main/java/com/glxp/api/controller/basic/BasicDestinyRelController.java new file mode 100644 index 000000000..ee5ca7b8b --- /dev/null +++ b/src/main/java/com/glxp/api/controller/basic/BasicDestinyRelController.java @@ -0,0 +1,279 @@ +package com.glxp.api.controller.basic; + +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.github.pagehelper.PageInfo; +import com.glxp.api.annotation.AuthRuleAnnotation; +import com.glxp.api.common.enums.ResultEnum; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.entity.auth.AuthAdmin; +import com.glxp.api.entity.basic.BasicCorpEntity; +import com.glxp.api.entity.basic.UdiEntity; +import com.glxp.api.entity.purchase.PurApplyDetailEntity; +import com.glxp.api.entity.thrsys.ThrProductsEntity; +import com.glxp.api.exception.JsonException; +import com.glxp.api.req.basic.BasicDestinyRelRequest; +import com.glxp.api.req.basic.BasicUnitMaintainFilterRequest; +import com.glxp.api.req.basic.CompanyProductRelevanceRequest; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.thrsys.FilterThrProductsRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.service.auth.AuthAdminService; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.basic.BasicDestinyRelService; +import com.glxp.api.service.basic.UdiRelevanceService; +import com.glxp.api.service.thrsys.ThrProductsService; +import com.glxp.api.util.BeanCopyUtils; +import com.glxp.api.util.udi.FilterUdiUtils; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +@RestController +public class BasicDestinyRelController { + + @Resource + private ThrProductsService thrProductsService; + @Resource + private CustomerService customerService; + @Resource + private UdiRelevanceService udiRelevanceService; + @Resource + private AuthAdminService authAdminService; + @Resource + private BasicDestinyRelService basicDestinyRelService; + + @GetMapping("/udiwms/basic/destiny/model/filter") + public BaseResponse filterModeldestiny(FilterThrProductsRequest filterThrProductsRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List thrProductsEntities = thrProductsService.filterThrProducts(filterThrProductsRequest); + PageInfo pageInfo = new PageInfo<>(thrProductsEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(thrProductsEntities); + + return ResultVOUtils.success(pageSimpleResponse); + } + + @PostMapping("/udiwms/basic/destiny/model/addModeldestiny") + public BaseResponse addModeldestiny(@RequestBody ThrProductsEntity thrProductsEntity) { + + //判断名字和编号不能重复 + QueryWrapper ew = new QueryWrapper<>(); + ew.eq("name", thrProductsEntity.getName()); + ew.eq("type", 2); + long count = thrProductsService.count(ew); + if (count > 0) { + return ResultVOUtils.error(999, "名称已存在!"); + } + ew.clear(); + ew.eq("code", thrProductsEntity.getCode()); + ew.eq("type", 2); + count = thrProductsService.count(ew); + if (count > 0) { + return ResultVOUtils.error(999, "编号已存在!"); + } + + AuthAdmin authAdmin = customerService.getUserBean(); + thrProductsEntity.setId(IdUtil.getSnowflakeNextId()); + thrProductsEntity.setType(2); + thrProductsEntity.setCreateTime(new Date()); + thrProductsEntity.setUpdateTime(new Date()); + thrProductsEntity.setCreateUser(authAdmin.getId() + ""); + thrProductsEntity.setUpdateUser(authAdmin.getId() + ""); + + Boolean falg = thrProductsService.insertThrProducts(thrProductsEntity); + if (!falg) { + return ResultVOUtils.error(999, "新增失败!"); + } + return ResultVOUtils.success(); + } + + @PostMapping("/udiwms/basic/destiny/model/editModeldestiny") + public BaseResponse editModeldestiny(@RequestBody ThrProductsEntity thrProductsEntity) { + + //判断名字和编号不能重复 + QueryWrapper ew = new QueryWrapper<>(); + ew.eq("name", thrProductsEntity.getName()); + ew.eq("type", 2); + ThrProductsEntity thrProductsEntity1 = thrProductsService.getOne(ew); + if (thrProductsEntity1 != null && !thrProductsEntity1.getId().equals(thrProductsEntity.getId())) { + return ResultVOUtils.error(999, "名称已存在!"); + } + ew.clear(); + ew.eq("code", thrProductsEntity.getCode()); + ew.eq("type", 2); + thrProductsEntity1 = thrProductsService.getOne(ew); + if (thrProductsEntity1 != null && !thrProductsEntity1.getId().equals(thrProductsEntity.getId())) { + return ResultVOUtils.error(999, "编号已存在!"); + } + + AuthAdmin authAdmin = customerService.getUserBean(); + thrProductsEntity.setUpdateTime(new Date()); + thrProductsEntity.setUpdateUser(authAdmin.getId() + ""); + + Boolean falg = thrProductsService.updateById(thrProductsEntity); + if (!falg) { + return ResultVOUtils.error(999, "编辑失败!"); + } + return ResultVOUtils.success(); + } + + @PostMapping("/udiwms/basic/destiny/model/delectModeldestiny") + public BaseResponse delectModeldestiny(@RequestBody ThrProductsEntity thrProductsEntity) { + + Boolean falg = thrProductsService.deleteById(thrProductsEntity.getId() + ""); + if (!falg) { + return ResultVOUtils.error(999, "删除失败!"); + } + return ResultVOUtils.success(); + } + + //查询产品信息 + @AuthRuleAnnotation("") + @GetMapping("/udiwms/basic/destiny/model/product/filter") + public BaseResponse filterDestinyProduct(CompanyProductRelevanceRequest companyProductRelevanceRequest, BindingResult bindingResult) { + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + if (StrUtil.isNotEmpty(companyProductRelevanceRequest.getCustomerId())) { + String customerId = getCustomerId(); + if (customerId.equals("110")) { + companyProductRelevanceRequest.setCustomerId(null); + } + } + + companyProductRelevanceRequest.setIsDisable(false); + if (StrUtil.isNotEmpty(companyProductRelevanceRequest.getUdiCode())) { + UdiEntity udiEntity = FilterUdiUtils.getUdi(companyProductRelevanceRequest.getUdiCode()); + if (udiEntity != null) { + companyProductRelevanceRequest.setNameCode(udiEntity.getUdi()); + companyProductRelevanceRequest.setUnionCode(udiEntity.getUdi()); + } + } + //如果输入DI标识,精确找到不同层级对应的产品信息 + if (StrUtil.isNotEmpty(companyProductRelevanceRequest.getUnionCode())) { + FilterUdiRelRequest filterUdiInfoRequest = new FilterUdiRelRequest(); + filterUdiInfoRequest.setNameCode(companyProductRelevanceRequest.getUnionCode()); + List temps = udiRelevanceService.filterUdiGp(filterUdiInfoRequest); + if (temps != null && temps.size() > 0) { + companyProductRelevanceRequest.setOriginUuid(temps.get(0).getOriginUuid()); + companyProductRelevanceRequest.setNameCode(filterUdiInfoRequest.getNameCode()); + companyProductRelevanceRequest.setUnionCode(null); + } + } else { + //只查找主标识产品信息 + companyProductRelevanceRequest.setDiType(1); + } + //查询详情id过滤 + List idList = basicDestinyRelService.filterDestinyRelIds(Long.valueOf(companyProductRelevanceRequest.getId())); + + List basicInstrumentMaintainRelevanceResponses = null; + FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest(); + BeanCopyUtils.copy(companyProductRelevanceRequest, filterUdiRelRequest); + if (idList.size() > 0) { + filterUdiRelRequest.setIds(idList); + } + basicInstrumentMaintainRelevanceResponses = basicDestinyRelService.filterUdiJoinSup(filterUdiRelRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(basicInstrumentMaintainRelevanceResponses); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(basicInstrumentMaintainRelevanceResponses); + + return ResultVOUtils.success(pageSimpleResponse); + } + + public String getCustomerId() { + ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if (attributes == null) { + throw new JsonException(ResultEnum.NOT_NETWORK); + } + HttpServletRequest request = attributes.getRequest(); + String userId = request.getHeader("ADMIN_ID"); + AuthAdmin authAdmin = authAdminService.findById(Long.parseLong(userId)); + return authAdmin.getCustomerId() + ""; + } + + @PostMapping("/udiwms/basic/destiny/model/addModeldestinyProduct") + public BaseResponse addModeldestinyProduct(@RequestBody BasicDestinyRelRequest basicDestinyRelRequest) { + + Boolean falg = basicDestinyRelService.addModeldestinyProduct(basicDestinyRelRequest); + + if (!falg) { + return ResultVOUtils.error(999, "选入失败!"); + } + return ResultVOUtils.success(); + } + + @GetMapping("/udiwms/basic/destiny/model/filterDestinyDelect") + public BaseResponse filterDestinyDelect(FilterUdiRelRequest filterUdiRelRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List thrProductsEntities = new ArrayList<>(); + //查询详情id过滤 + List idList = basicDestinyRelService.filterDestinyRelIds(Long.valueOf(filterUdiRelRequest.getId())); + if (idList != null && idList.size() > 0) { + filterUdiRelRequest.setDestinyId(filterUdiRelRequest.getId()+""); + filterUdiRelRequest.setIds(idList); + filterUdiRelRequest.setDiType(1); + thrProductsEntities = basicDestinyRelService.filterDestinyProducts(filterUdiRelRequest); + int i=0; + for (UdiRelevanceResponse thrProductsEntity : thrProductsEntities) { + thrProductsEntity.setIndex(i); + i++; + } + } + PageInfo pageInfo = new PageInfo<>(thrProductsEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(thrProductsEntities); + + return ResultVOUtils.success(pageSimpleResponse); + } + + @GetMapping("/udiwms/basic/destiny/model/delectModeldestinyProduct") + public BaseResponse delectModeldestinyProduct(BasicDestinyRelRequest basicDestinyRelRequest) { + + Boolean falg = basicDestinyRelService.delectModeldestinyProduct(basicDestinyRelRequest); + + if (!falg) { + return ResultVOUtils.error(999, "删除失败!"); + } + return ResultVOUtils.success(); + } + + @PostMapping("/udiwms/basic/destiny/model/uploadModeldestinyProduct") + public BaseResponse uploadModeldestinyProduct(@RequestBody BasicDestinyRelRequest basicDestinyRelRequest) { + + Boolean falg = basicDestinyRelService.uploadModeldestinyProduct(basicDestinyRelRequest); + + if (!falg) { + return ResultVOUtils.error(999, "更新失败!"); + } + return ResultVOUtils.success(); + } + + + +} diff --git a/src/main/java/com/glxp/api/controller/basic/BasicProductCategoryController.java b/src/main/java/com/glxp/api/controller/basic/BasicProductCategoryController.java index 617256297..f7f088ea2 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicProductCategoryController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicProductCategoryController.java @@ -88,14 +88,14 @@ public class BasicProductCategoryController { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - if(StrUtil.isEmpty(basicProductTypeRequest.getName())){ + if (StrUtil.isEmpty(basicProductTypeRequest.getName())) { return ResultVOUtils.error(999, "名字不能为空!"); } Boolean falg = basicProductCategoryService.checkName(basicProductTypeRequest, 1); - if(falg==false){ + if (falg == false) { return ResultVOUtils.error(999, "院内分类名字已存在!"); } - falg = basicProductCategoryService.saveBasicHospType(basicProductTypeRequest); + falg = basicProductCategoryService.saveBasicHospType(basicProductTypeRequest); if (!falg) { return ResultVOUtils.error(999, "插入失败!"); } @@ -110,16 +110,16 @@ public class BasicProductCategoryController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - if(StrUtil.isEmpty(basicProductTypeRequest.getName())){ + if (StrUtil.isEmpty(basicProductTypeRequest.getName())) { return ResultVOUtils.error(999, "名字不能为空!"); } - if(basicProductTypeRequest.getCode().equals(basicProductTypeRequest.getParentCode())){ + if (basicProductTypeRequest.getCode().equals(basicProductTypeRequest.getParentCode())) { return ResultVOUtils.error(999, "上级菜单不能选择自己!"); } Boolean falg = basicProductCategoryService.checkName(basicProductTypeRequest, 2); - if(falg==false){ + if (falg == false) { return ResultVOUtils.error(999, "院内分类名字已存在!"); } falg = basicProductCategoryService.updateBasicHospType(basicProductTypeRequest); @@ -139,16 +139,16 @@ public class BasicProductCategoryController { } //先判断是否有下级 无下级在判断是否有产品 boolean b = basicProductCategoryService.checkExist(basicProductTypeRequest.getCode()); - if(b){ - return ResultVOUtils.error(555,"此分类下还有子分类,不能删除!"); + if (b) { + return ResultVOUtils.error(555, "此分类下还有子分类,不能删除!"); } //判断此分类中是否有产品 boolean checkrel = basicProductCategoryService.checkrel(basicProductTypeRequest.getCode()); - if(checkrel){ - return ResultVOUtils.error(555,"此分类中绑定产品,不能删除!"); + if (checkrel) { + return ResultVOUtils.error(555, "此分类中绑定产品,不能删除!"); } - String msg = basicProductCategoryService.delectBasicHospType(basicProductTypeRequest); + String msg = basicProductCategoryService.delectBasicHospType(basicProductTypeRequest); if (StringUtils.isNotBlank(msg)) { return ResultVOUtils.error(999, msg); @@ -201,7 +201,7 @@ public class BasicProductCategoryController { filterUdiProductRequest.setDiType(1); } - List list= basicProductCategoryService.selectAll(filterUdiProductRequest); + List list = basicProductCategoryService.selectAll(filterUdiProductRequest); PageInfo pageInfo = new PageInfo<>(list); PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); pageSimpleResponse.setTotal(pageInfo.getTotal()); @@ -216,9 +216,9 @@ public class BasicProductCategoryController { BasicProductCategory category = basicProductCategoryService.checkCode(filterUdiRelRequest.getParentCode()); //过滤已被选入的产品 FilterUdiProductRequest request = new FilterUdiProductRequest(); - if("10000".equals(category.getParentCode())) { + if ("10000".equals(category.getParentCode())) { request.setCode(filterUdiRelRequest.getParentCode()); - }else{ + } else { request.setCode(category.getCode()); } List udiRelevanceResponses1 = basicProductCategoryService.selectAll(request); @@ -227,35 +227,35 @@ public class BasicProductCategoryController { list.add(udiRelevanceResponse.getId()); } filterUdiRelRequest.setExistid(list); - List udiRelevanceResponses=null; + List udiRelevanceResponses = null; - if (StrUtil.isNotEmpty(filterUdiRelRequest.getUdiCode())) { - UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiRelRequest.getUdiCode()); - if (udiEntity != null) { - filterUdiRelRequest.setNameCode(udiEntity.getUdi()); - filterUdiRelRequest.setUnionCode(udiEntity.getUdi()); - } + if (StrUtil.isNotEmpty(filterUdiRelRequest.getUdiCode())) { + UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiRelRequest.getUdiCode()); + if (udiEntity != null) { + filterUdiRelRequest.setNameCode(udiEntity.getUdi()); + filterUdiRelRequest.setUnionCode(udiEntity.getUdi()); } - //如果输入DI标识,精确找到不同层级对应的产品信息 - if (StrUtil.isNotEmpty(filterUdiRelRequest.getUnionCode())) { - FilterUdiRelRequest filterUdiInfoRequest = new FilterUdiRelRequest(); - filterUdiInfoRequest.setNameCode(filterUdiRelRequest.getUnionCode()); - List temps = basicHospTypeService.filterUdiGp(filterUdiInfoRequest); - if (temps != null && temps.size() > 0) { - filterUdiRelRequest.setOriginUuid(temps.get(0).getOriginUuid()); - filterUdiRelRequest.setNameCode(filterUdiInfoRequest.getNameCode()); - filterUdiRelRequest.setUnionCode(null); - } - } else { - //只查找主标识产品信息 - filterUdiRelRequest.setDiType(1); + } + //如果输入DI标识,精确找到不同层级对应的产品信息 + if (StrUtil.isNotEmpty(filterUdiRelRequest.getUnionCode())) { + FilterUdiRelRequest filterUdiInfoRequest = new FilterUdiRelRequest(); + filterUdiInfoRequest.setNameCode(filterUdiRelRequest.getUnionCode()); + List temps = basicHospTypeService.filterUdiGp(filterUdiInfoRequest); + if (temps != null && temps.size() > 0) { + filterUdiRelRequest.setOriginUuid(temps.get(0).getOriginUuid()); + filterUdiRelRequest.setNameCode(filterUdiInfoRequest.getNameCode()); + filterUdiRelRequest.setUnionCode(null); } - if("10000".equals(category.getParentCode())) { + } else { + //只查找主标识产品信息 + filterUdiRelRequest.setDiType(1); + } + if ("10000".equals(category.getParentCode())) { //查全部 - udiRelevanceResponses= basicHospTypeService.filterUdiGpexist(filterUdiRelRequest); + udiRelevanceResponses = basicHospTypeService.filterUdiGpexist(filterUdiRelRequest); - }else{ + } else { // 查上级 FilterUdiProductRequest filterUdiProductRequest = new FilterUdiProductRequest(); filterUdiProductRequest.setCode(category.getParentCode()); @@ -266,7 +266,7 @@ public class BasicProductCategoryController { filterUdiProductRequest.setThrPiId(filterUdiRelRequest.getThrPiId()); filterUdiProductRequest.setNameCode(filterUdiRelRequest.getNameCode()); filterUdiProductRequest.setExistid(list); - udiRelevanceResponses= basicProductCategoryService.selectAll(filterUdiProductRequest); + udiRelevanceResponses = basicProductCategoryService.selectAll(filterUdiProductRequest); } @@ -278,40 +278,39 @@ public class BasicProductCategoryController { } - @GetMapping("/udiwms/basic/product/category/SelcetproductList") public BaseResponse SelectproductList(FilterUdiRelRequest filterUdiRelRequest) { - List udiRelevanceResponses=null; + List udiRelevanceResponses = null; - if (StrUtil.isNotEmpty(filterUdiRelRequest.getUdiCode())) { - UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiRelRequest.getUdiCode()); - if (udiEntity != null) { - filterUdiRelRequest.setNameCode(udiEntity.getUdi()); - filterUdiRelRequest.setUnionCode(udiEntity.getUdi()); - } + if (StrUtil.isNotEmpty(filterUdiRelRequest.getUdiCode())) { + UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiRelRequest.getUdiCode()); + if (udiEntity != null) { + filterUdiRelRequest.setNameCode(udiEntity.getUdi()); + filterUdiRelRequest.setUnionCode(udiEntity.getUdi()); } - //如果输入DI标识,精确找到不同层级对应的产品信息 - if (StrUtil.isNotEmpty(filterUdiRelRequest.getUnionCode())) { - FilterUdiRelRequest filterUdiInfoRequest = new FilterUdiRelRequest(); - filterUdiInfoRequest.setNameCode(filterUdiRelRequest.getUnionCode()); - List temps = udiRelevanceService.filterUdiGp(filterUdiInfoRequest); - if (temps != null && temps.size() > 0) { - filterUdiRelRequest.setOriginUuid(temps.get(0).getOriginUuid()); - filterUdiRelRequest.setNameCode(filterUdiInfoRequest.getNameCode()); - filterUdiRelRequest.setUnionCode(null); - } - } else { - //只查找主标识产品信息 - filterUdiRelRequest.setDiType(1); + } + //如果输入DI标识,精确找到不同层级对应的产品信息 + if (StrUtil.isNotEmpty(filterUdiRelRequest.getUnionCode())) { + FilterUdiRelRequest filterUdiInfoRequest = new FilterUdiRelRequest(); + filterUdiInfoRequest.setNameCode(filterUdiRelRequest.getUnionCode()); + List temps = udiRelevanceService.filterUdiGp(filterUdiInfoRequest); + if (temps != null && temps.size() > 0) { + filterUdiRelRequest.setOriginUuid(temps.get(0).getOriginUuid()); + filterUdiRelRequest.setNameCode(filterUdiInfoRequest.getNameCode()); + filterUdiRelRequest.setUnionCode(null); } + } else { + //只查找主标识产品信息 + filterUdiRelRequest.setDiType(1); + } //是否是一级分类 BasicProductCategory category = basicProductCategoryService.checkCode(filterUdiRelRequest.getParentCode()); - if("10000".equals(category.getParentCode())) { + if ("10000".equals(category.getParentCode())) { //查全部 - udiRelevanceResponses= basicHospTypeService.filterUdiGp(filterUdiRelRequest); - }else{ + udiRelevanceResponses = basicHospTypeService.filterUdiGp(filterUdiRelRequest); + } else { // 查上级 FilterUdiProductRequest filterUdiProductRequest = new FilterUdiProductRequest(); filterUdiProductRequest.setCode(category.getParentCode()); @@ -322,7 +321,7 @@ public class BasicProductCategoryController { filterUdiProductRequest.setThrPiId(filterUdiRelRequest.getThrPiId()); filterUdiProductRequest.setNameCode(filterUdiRelRequest.getNameCode()); - udiRelevanceResponses= basicProductCategoryService.selectAll(filterUdiProductRequest); + udiRelevanceResponses = basicProductCategoryService.selectAll(filterUdiProductRequest); } //循环插入 @@ -331,10 +330,10 @@ public class BasicProductCategoryController { List list = new ArrayList<>(); for (UdiRelevanceResponse udiRelevanceRespons : udiRelevanceResponses) { - list.add(udiRelevanceRespons.getId()+""); + list.add(udiRelevanceRespons.getId() + ""); } - if(!(udiRelevanceResponses != null && udiRelevanceResponses.size()>0)){ - return ResultVOUtils.error(456,"为查询到对应数据!"); + if (!(udiRelevanceResponses != null && udiRelevanceResponses.size() > 0)) { + return ResultVOUtils.error(456, "为查询到对应数据!"); } basicProductTypeRequest.setIds(list); basicProductCategoryService.insertCateRel(basicProductTypeRequest); @@ -343,20 +342,13 @@ public class BasicProductCategoryController { } - @GetMapping("/udiwms/basic/product/category/deleterel") - public BaseResponse deleterel(Integer id){ - basicProductCategoryService.deleterelByid(id); - return ResultVOUtils.success(); + public BaseResponse deleterel(Integer id) { + basicProductCategoryService.deleterelByid(id); + return ResultVOUtils.success(); } - - - - - - @PostMapping("/udiwms/basic/product/category/unbindRel") @Log(title = "单据管理", businessType = BusinessType.UPDATE) public BaseResponse unbindRel(@RequestBody BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) { diff --git a/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java b/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java index e47e57b41..f23c051ab 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java @@ -296,6 +296,57 @@ public class UdiContrastController { public void updateDi(UdiRelevanceEntity udiRelevanceEntity, String key) { List udiInfoEntities = udiDlHttpClient.getOrUpdateByUuid(key); + List originProductEntities = udiProductService.findByUuids(udiRelevanceEntity.getUuid()); + if (CollUtil.isNotEmpty(originProductEntities) && CollUtil.isNotEmpty(udiInfoEntities)) { + UdiProductEntity originProductEntity = originProductEntities.get(0); + for (UdiProductEntity udiProductEntity : udiInfoEntities) { + if (StrUtil.isEmpty(udiProductEntity.getSptm())) { + udiProductEntity.setSptm(originProductEntity.getSptm()); + } + if (StrUtil.isEmpty(udiProductEntity.getYbbm())) { + udiProductEntity.setYbbm(originProductEntity.getYbbm()); + } + if (StrUtil.isEmpty(udiProductEntity.getMeasname())) { + udiProductEntity.setMeasname(originProductEntity.getMeasname()); + } + if (StrUtil.isEmpty(udiProductEntity.getManufactory())) { + udiProductEntity.setManufactory(originProductEntity.getManufactory()); + } + if (StrUtil.isEmpty(udiProductEntity.getPrice())) { + udiProductEntity.setPrice(originProductEntity.getPrice()); + } + if (StrUtil.isEmpty(udiProductEntity.getSpmc())) { + udiProductEntity.setSpmc(originProductEntity.getSpmc()); + } + if (StrUtil.isEmpty(udiProductEntity.getCpms())) { + udiProductEntity.setCpms(originProductEntity.getCpms()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak1())) { + udiProductEntity.setBasicPrductRemak1(originProductEntity.getBasicPrductRemak1()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak2())) { + udiProductEntity.setBasicPrductRemak2(originProductEntity.getBasicPrductRemak2()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak3())) { + udiProductEntity.setBasicPrductRemak3(originProductEntity.getBasicPrductRemak3()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak4())) { + udiProductEntity.setBasicPrductRemak4(originProductEntity.getBasicPrductRemak4()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak5())) { + udiProductEntity.setBasicPrductRemak5(originProductEntity.getBasicPrductRemak5()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak6())) { + udiProductEntity.setBasicPrductRemak6(originProductEntity.getBasicPrductRemak6()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak7())) { + udiProductEntity.setBasicPrductRemak7(originProductEntity.getBasicPrductRemak7()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak8())) { + udiProductEntity.setBasicPrductRemak8(originProductEntity.getBasicPrductRemak8()); + } + } + } udiProductService.deleteByUuid(udiRelevanceEntity.getUuid()); udiRelevanceEntity.setUuid(udiInfoEntities.get(0).getUuid()); udiRelevanceEntity.setUpdateTime(new Date()); @@ -304,7 +355,6 @@ public class UdiContrastController { insertUdiInfos(udiInfoEntities); } - public UdiRelevanceEntity setThird(UdiCombineRequest udiCombineRequest, UdiRelevanceEntity udiRelevanceEntity) { FilterBasicThirdSysRequest request = new FilterBasicThirdSysRequest(); if ("thirdId".equals(udiCombineRequest.getThirdSys())) { diff --git a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java index 7c4b4c6d9..aaa64039a 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -272,7 +272,7 @@ public class IoCodeTempController extends BaseController { checkSuccess = false; lostMsg = lostMsg + ",失效日期"; } - if (("是".equals(checkUdi.getScbssfbhxlh()) && StrUtil.isEmpty(udiEntity.getSerialNo())) + if (checkUdi.getAllowNoSerial()!=null && !checkUdi.getAllowNoSerial() && StrUtil.isEmpty(udiEntity.getSerialNo()) ) { checkSuccess = false; lostMsg = lostMsg + ",序列号"; diff --git a/src/main/java/com/glxp/api/controller/inout/IoDestinyProcessController.java b/src/main/java/com/glxp/api/controller/inout/IoDestinyProcessController.java new file mode 100644 index 000000000..495b85e5d --- /dev/null +++ b/src/main/java/com/glxp/api/controller/inout/IoDestinyProcessController.java @@ -0,0 +1,139 @@ +package com.glxp.api.controller.inout; + +import com.github.pagehelper.PageInfo; +import com.glxp.api.common.enums.ResultEnum; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.entity.inout.IoDestinyProcessDetailEntity; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.res.inout.IoCodeRelResponse; +import com.glxp.api.res.inout.IodestinyProcessResponse; +import com.glxp.api.service.basic.BasicDestinyRelService; +import com.glxp.api.service.inout.IoDestinyProcessCodeService; +import com.glxp.api.service.inout.IoDestinyProcessDetailService; +import com.glxp.api.service.inout.IoDestinyProcessService; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +@RestController +public class IoDestinyProcessController { + + @Resource + private BasicDestinyRelService basicDestinyRelService; + @Resource + private IoDestinyProcessDetailService ioDestinyProcessDetailService; + @Resource + private IoDestinyProcessCodeService ioDestinyProcessCodeService; + @Resource + private IoDestinyProcessService ioDestinyProcessService; + + + @PostMapping("/udiwms/basic/destiny/model/addDestinyDelect") + public BaseResponse addDestinyDelect(@RequestBody FilterUdiRelRequest filterUdiRelRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + ioDestinyProcessDetailService.insertProcessDetail(filterUdiRelRequest); + + return ResultVOUtils.success(); + } + + @GetMapping("/udiwms/basic/destiny/model/filterDestinyProcessDelect") + public BaseResponse filterDestinyProcessDelect(FilterUdiRelRequest filterUdiRelRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List udiRelevanceResponseList = ioDestinyProcessDetailService.filterProcessDetail(filterUdiRelRequest); + + return ResultVOUtils.success(udiRelevanceResponseList); + } + + @GetMapping("/udiwms/basic/destiny/model/filterDestinyProcess") + public BaseResponse filterDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List iodestinyProcessResponseList = ioDestinyProcessDetailService.filterDestinyProcess(iodestinyProcessRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(iodestinyProcessResponseList); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(iodestinyProcessResponseList); + + return ResultVOUtils.success(pageSimpleResponse); + } + + @GetMapping("/udiwms/basic/destiny/model/checkDestinyProcess") + public BaseResponse checkDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + BaseResponse baseResponse = ioDestinyProcessDetailService.checkDestinyProcess(iodestinyProcessRequest); + + + return baseResponse; + } + + @GetMapping("/udiwms/basic/destiny/model/filterDestinyProcessCode") + public BaseResponse filterDestinyProcessCode(IodestinyProcessRequest iodestinyProcessRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List iodestinyProcessResponseList = ioDestinyProcessCodeService.filterDestinyProcessCode(iodestinyProcessRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(iodestinyProcessResponseList); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(iodestinyProcessResponseList); + + return ResultVOUtils.success(pageSimpleResponse); + } + + @GetMapping("/udiwms/basic/destiny/model/addDestinyProcess") + public BaseResponse addDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List ioDestinyProcessDetailEntityList= ioDestinyProcessDetailService.addDestinyProcess(iodestinyProcessRequest); + + for (IoDestinyProcessDetailEntity ioDestinyProcessDetailEntity : ioDestinyProcessDetailEntityList) { + if(ioDestinyProcessDetailEntity.getCount()-ioDestinyProcessDetailEntity.getReCount()>0){ + return ResultVOUtils.error(999,"该单还未完全扫码校验!"); + } + } + //更新状态 + ioDestinyProcessService.uploadDestinyProcess(iodestinyProcessRequest); + + return ResultVOUtils.success(); + } + + @GetMapping("/udiwms/basic/destiny/model/delectDestinyProcess") + public BaseResponse delectDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + + //更新状态 + ioDestinyProcessService.delectDestinyProcess(iodestinyProcessRequest); + + return ResultVOUtils.success(); + } + +} diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java index 78f9eb492..78dc1572a 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java @@ -1,10 +1,8 @@ package com.glxp.api.controller.inout; import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSON; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageInfo; import com.glxp.api.annotation.AuthRuleAnnotation; import com.glxp.api.common.enums.ResultEnum; @@ -17,20 +15,15 @@ import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.inout.IoOrderDetailBizEntity; import com.glxp.api.entity.inout.IoOrderDetailCodeEntity; import com.glxp.api.entity.inout.IoOrderEntity; -import com.glxp.api.entity.system.CompanyEntity; import com.glxp.api.entity.system.SysPdfTemplateRelevanceStatemenEntity; import com.glxp.api.entity.system.SystemPDFTemplateEntity; -import com.glxp.api.req.inout.CptTraceRequest; import com.glxp.api.req.inout.FilterOrderDetailResultRequest; import com.glxp.api.req.inout.FilterOrderRequest; import com.glxp.api.req.inout.InspectionPDFTemplateRequest; -import com.glxp.api.res.inout.CptTraceOrderResponse; -import com.glxp.api.res.inout.CptTraceResultResponse; import com.glxp.api.res.inout.IoOrderDetailResultResponse; import com.glxp.api.service.auth.CustomerService; import com.glxp.api.service.basic.IBasicBussinessTypeService; import com.glxp.api.service.inout.*; -import com.glxp.api.service.system.CompanyService; import com.glxp.api.service.system.SystemPDFModuleService; import com.glxp.api.service.system.SystemPDFTemplateService; import com.glxp.api.util.JasperUtils; @@ -203,8 +196,8 @@ public class IoOrderDetailResultController extends BaseController { */ @AuthRuleAnnotation("") @PostMapping("/udiwms/inout/resultDetail/filterOrderPrint") - public BaseResponse filterOrderPrint(@RequestBody FilterOrderDetailResultRequest filterOrderDetailResultRequest, HttpServletRequest request, HttpServletResponse response) throws JRException, IOException { - List ioOrderDetailResultResponseList = new ArrayList<>(); + public BaseResponse filterOrderPrint(@RequestBody FilterOrderDetailResultRequest filterOrderDetailResultRequest, HttpServletRequest request, HttpServletResponse response) throws JRException, IOException { + List ioOrderDetailResultResponseList=new ArrayList<>(); SystemPDFTemplateEntity systemPDFTemplateEntity = systemPDFTemplateService.selectById(filterOrderDetailResultRequest.getTemplateId()); //打印单号标签 Map data = new HashMap<>(1); @@ -212,9 +205,9 @@ public class IoOrderDetailResultController extends BaseController { SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");//定义新的日期格式 //按选入打印 - if (filterOrderDetailResultRequest.getList() != null && filterOrderDetailResultRequest.getList().size() > 0) { - ioOrderDetailResultResponseList = filterOrderDetailResultRequest.getList(); - } else { + if(filterOrderDetailResultRequest.getList() != null && filterOrderDetailResultRequest.getList().size()>0){ + ioOrderDetailResultResponseList =filterOrderDetailResultRequest.getList(); + }else{ //按查询打印 FilterOrderRequest filterOrderRequest = new FilterOrderRequest(); filterOrderRequest.setVueType(filterOrderDetailResultRequest.getActionType()); @@ -234,7 +227,7 @@ public class IoOrderDetailResultController extends BaseController { } } } - int i = 1; + int i=1; for (IoOrderDetailResultResponse ioOrderDetailResultResponse : ioOrderDetailResultResponseList) { //组装数据 Map ioOrderDetailResultData = new HashMap<>(); @@ -251,7 +244,7 @@ public class IoOrderDetailResultController extends BaseController { ioOrderDetailResultData.put("spec", ioOrderDetailResultResponse.getSpec() == null ? ' ' : ioOrderDetailResultResponse.getSpec()); ioOrderDetailResultData.put("price", ioOrderDetailResultResponse.getPrice() == null ? ' ' : ioOrderDetailResultResponse.getPrice()); ioOrderDetailResultData.put("count", ioOrderDetailResultResponse.getCount()); - ioOrderDetailResultData.put("reCount", ioOrderDetailResultResponse.getReCount()); + ioOrderDetailResultData.put("reCount",ioOrderDetailResultResponse.getReCount()); ioOrderDetailResultData.put("inCount", ioOrderDetailResultResponse.getInCount()); ioOrderDetailResultData.put("acceptCount", ioOrderDetailResultResponse.getAcceptCount()); ioOrderDetailResultData.put("fromCorpName", ioOrderDetailResultResponse.getFromCorpName() == null ? ' ' : ioOrderDetailResultResponse.getFromCorpName()); @@ -264,7 +257,7 @@ public class IoOrderDetailResultController extends BaseController { data.put("data", list); String param = JSON.toJSONString(data); - JasperUtils.jasperReport(request, response, param, filePath + "pdf/template/" + systemPDFTemplateEntity.getPath(), "pdf"); + JasperUtils.jasperReport(request, response, param, filePath+"pdf/template/"+systemPDFTemplateEntity.getPath(), "pdf"); return ResultVOUtils.success(); } diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderMutiController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderMutiController.java index a0e5b2a2c..cfcfd7fda 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderMutiController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderMutiController.java @@ -84,7 +84,7 @@ public class IoOrderMutiController { if (udiProductEntity.getUseMuti() == null || udiProductEntity.getUseMuti() == false) { return ResultVOUtils.error(999, "该产品不允许多次出库!"); } else { - if (udiProductEntity.getZdcfsycs() == null || udiProductEntity.getZdcfsycs().equals(0)) { + if (udiProductEntity.getUseNum() == null || udiProductEntity.getUseNum().equals(0)) { return ResultVOUtils.error(999, "该产品库存不足!"); } } @@ -121,11 +121,11 @@ public class IoOrderMutiController { ioOrderMutiEntityOne.setBatchNo(udiEntity.getBatchNo()); ioOrderMutiEntityOne.setExpireDate(udiEntity.getExpireDate()); ioOrderMutiEntityOne.setProduceDate(udiEntity.getProduceDate()); - ioOrderMutiEntityOne.setTotalCount(udiProductEntity.getZdcfsycs()); + ioOrderMutiEntityOne.setTotalCount(udiProductEntity.getUseNum()); ioOrderMutiEntityOne.setStatus(0); ioOrderMutiEntityOne.setCreateUser(customerService.getUserId() + ""); ioOrderMutiEntityOne.setUseCount(0); - ioOrderMutiEntityOne.setReCount(udiProductEntity.getZdcfsycs()); + ioOrderMutiEntityOne.setReCount(udiProductEntity.getUseNum()); ioOrderMutiEntityOne.setCreateTime(new Date()); ioOrderMutiEntityOne.setUpdateTime(new Date()); ioOrderMutiEntityOne.setNameCode(udiProductEntity.getNameCode()); @@ -175,7 +175,7 @@ public class IoOrderMutiController { if (udiProductEntity.getUseMuti() == null || udiProductEntity.getUseMuti() == false) { return ResultVOUtils.error(999, "该产品不允许多次出库!"); } else { - if (udiProductEntity.getZdcfsycs() == null || udiProductEntity.getZdcfsycs().equals(0)) { + if (udiProductEntity.getUseNum() == null || udiProductEntity.getUseNum().equals(0)) { return ResultVOUtils.error(999, "该产品库存不足!"); } } @@ -200,10 +200,10 @@ public class IoOrderMutiController { ioOrderMutiEntity1.setBatchNo(udiEntity.getBatchNo()); ioOrderMutiEntity1.setExpireDate(udiEntity.getExpireDate()); ioOrderMutiEntity1.setProduceDate(udiEntity.getProduceDate()); - ioOrderMutiEntity1.setTotalCount(udiProductEntity.getZdcfsycs()); + ioOrderMutiEntity1.setTotalCount(udiProductEntity.getUseNum()); ioOrderMutiEntity1.setStatus(0); ioOrderMutiEntity1.setUseCount(0); - ioOrderMutiEntity1.setReCount(udiProductEntity.getZdcfsycs()); + ioOrderMutiEntity1.setReCount(udiProductEntity.getUseNum()); ioOrderMutiEntity1.setCreateUser(customerService.getUserId() + ""); ioOrderMutiEntity1.setCreateTime(new Date()); ioOrderMutiEntity1.setUpdateTime(new Date()); @@ -328,6 +328,21 @@ public class IoOrderMutiController { @PostMapping("/udiwms/inout/order/muti/addMutiDetail") public BaseResponse addMutiDetail(@RequestBody IoOrderMutiUseEntity ioOrderMutiUseEntity) { + + if (ioOrderMutiUseEntity.getCheckType() !=null && ioOrderMutiUseEntity.getCheckType() == 1) { + IoOrderMutiRequest ioOrderMutiRequest=new IoOrderMutiRequest(); + ioOrderMutiRequest.setStatus(0); + ioOrderMutiRequest.setUdiCode(ioOrderMutiUseEntity.getUdiCode()); + ioOrderMutiRequest.setMark(ioOrderMutiUseEntity.getMark()); + List ioOrderMutiEntityList = ioOrderMutiService.filterList(ioOrderMutiRequest); + if (ioOrderMutiEntityList.size() <= 0) { + return ResultVOUtils.error(999, "该产品不存在此标识!"); + } + if (ioOrderMutiEntityList.get(0).getReCount() <= 0) { + return ResultVOUtils.error(999, "该产品可使用数量不足!"); + } + } + //判断是不是个人使用 AuthAdmin authAdmin = customerService.getUserBean(); QueryWrapper setEw = new QueryWrapper<>(); diff --git a/src/main/java/com/glxp/api/controller/purchase/IoPurChangeService.java b/src/main/java/com/glxp/api/controller/purchase/IoPurChangeService.java index 6dce4fff8..bb938275e 100644 --- a/src/main/java/com/glxp/api/controller/purchase/IoPurChangeService.java +++ b/src/main/java/com/glxp/api/controller/purchase/IoPurChangeService.java @@ -1,16 +1,20 @@ package com.glxp.api.controller.purchase; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.glxp.api.constant.Constant; import com.glxp.api.constant.ConstantStatus; import com.glxp.api.constant.ConstantType; +import com.glxp.api.dao.basic.CompanyProductRelevanceDao; import com.glxp.api.entity.basic.BasicBusTypeChangeEntity; import com.glxp.api.entity.basic.BasicProductsEntity; +import com.glxp.api.entity.basic.CompanyProductRelevanceEntity; import com.glxp.api.entity.inout.IoOrderDetailBizEntity; import com.glxp.api.entity.inout.IoOrderEntity; import com.glxp.api.entity.inout.PurReceiveDetailEntity; import com.glxp.api.entity.inout.PurReceiveEntity; import com.glxp.api.entity.purchase.*; +import com.glxp.api.service.basic.CompanyProductRelevanceService; import com.glxp.api.service.basic.IBasicBusTypeChangeService; import com.glxp.api.service.inout.IoOrderDetailBizService; import com.glxp.api.service.inout.IoOrderService; @@ -24,6 +28,7 @@ import com.glxp.api.util.OrderNoTypeBean; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.awt.geom.QuadCurve2D; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; @@ -61,6 +66,8 @@ public class IoPurChangeService { IoOrderService ioOrderService; @Resource IoOrderDetailBizService ioOrderDetailBizService; + @Resource + CompanyProductRelevanceDao companyProductRelevanceDao; //领用单流转 public void purReceiveChange(PurReceiveEntity purReceiveEntity) { @@ -251,6 +258,14 @@ public class IoPurChangeService { d.setCount(e.getCount()); d.setSupId(e.getSupId()); d.setZczbhhzbapzbh(e.getZczbhhzbapzbh()); + QueryWrapper ew = new QueryWrapper<>(); + ew.eq("customerId", d.getSupId()); + ew.eq("udiRlIdFk", d.getProductId()); + ew.last("limit 1"); + CompanyProductRelevanceEntity companyProductRelevanceEntity = companyProductRelevanceDao.selectOne(ew); + if (companyProductRelevanceEntity != null) { + d.setPrice(companyProductRelevanceEntity.getPrice()); + } return d; }).collect(Collectors.toList()); purOrderDetailService.insertPurOrderDetailEntity(purOrderDetailEntityList); @@ -529,8 +544,8 @@ public class IoPurChangeService { ioOrderDetailBizEntity.setManufacturer(basicProductsEntity.getManufactory()); ioOrderDetailBizEntity.setMeasname(basicProductsEntity.getMeasname()); ioOrderDetailBizEntity.setSpec(basicProductsEntity.getGgxh()); - if (basicProductsEntity.getPrice() != null) { - ioOrderDetailBizEntity.setPrice(BigDecimal.valueOf(basicProductsEntity.getPrice())); + if (obj.getPrice() != null) { + ioOrderDetailBizEntity.setPrice(obj.getPrice()); } ioOrderDetailBizEntity.setSupId(obj.getSupId()); ioOrderDetailBizService.insert(ioOrderDetailBizEntity); diff --git a/src/main/java/com/glxp/api/controller/thrsys/ThirdUploadSetController.java b/src/main/java/com/glxp/api/controller/thrsys/ThirdUploadSetController.java index 3647402ec..cd992752f 100644 --- a/src/main/java/com/glxp/api/controller/thrsys/ThirdUploadSetController.java +++ b/src/main/java/com/glxp/api/controller/thrsys/ThirdUploadSetController.java @@ -74,6 +74,7 @@ public class ThirdUploadSetController { thrOrderUploadBustypesEntity.setOrderStatus(3); thrOrderUploadBustypesEntity.setUpdateTime(new Date()); thrOrderUploadBustypesEntity.setCreateTime(new Date()); + thrOrderUploadBustypesEntity.setId(null); thrOrderUploadBustypesEntity.setOrderSource(Arrays.asList("2")); thrOrderUploadBustypesEntity.setId(null); thrOrderUploadBustypesService.save(thrOrderUploadBustypesEntity); diff --git a/src/main/java/com/glxp/api/controller/thrsys/ThrProductsController.java b/src/main/java/com/glxp/api/controller/thrsys/ThrProductsController.java index 8352697fe..611b80494 100644 --- a/src/main/java/com/glxp/api/controller/thrsys/ThrProductsController.java +++ b/src/main/java/com/glxp/api/controller/thrsys/ThrProductsController.java @@ -208,7 +208,7 @@ public class ThrProductsController { udiProductEntity.setMeasname(thrProductsEntity.getMeasname()); if (StrUtil.isNotEmpty(thrProductsEntity.getSpec())) udiProductEntity.setGgxh(thrProductsEntity.getSpec()); - if (StrUtil.isNotEmpty(thrProductsEntity.getStandard())) + else if (StrUtil.isNotEmpty(thrProductsEntity.getStandard())) udiProductEntity.setGgxh(thrProductsEntity.getStandard()); if (StrUtil.isNotEmpty(thrProductsEntity.getRegisterNo())) udiProductEntity.setZczbhhzbapzbh(thrProductsEntity.getRegisterNo()); @@ -232,8 +232,6 @@ public class ThrProductsController { udiProductEntity.setYlqxzcrbarmc(thrProductsEntity.getYlqxzcrbarmc()); if (StrUtil.isNotEmpty(thrProductsEntity.getCpms())) udiProductEntity.setCpms(thrProductsEntity.getCpms()); - if (StrUtil.isNotEmpty(thrProductsEntity.getStandard())) - udiProductEntity.setGgxh(thrProductsEntity.getStandard()); udiProductService.updateUdiInfo(udiProductEntity); } diff --git a/src/main/java/com/glxp/api/dao/BaseMapperPlus.java b/src/main/java/com/glxp/api/dao/BaseMapperPlus.java index 3d3a64bce..b6cc24ed6 100644 --- a/src/main/java/com/glxp/api/dao/BaseMapperPlus.java +++ b/src/main/java/com/glxp/api/dao/BaseMapperPlus.java @@ -314,7 +314,7 @@ public interface BaseMapperPlus extends BaseMapper { } } } catch (Exception e) { - log.error("insertIgnoreBatch fail", e); + log.error("replaceBatch fail", e); return false; } return true; diff --git a/src/main/java/com/glxp/api/dao/basic/BasicDestinyRelMapper.java b/src/main/java/com/glxp/api/dao/basic/BasicDestinyRelMapper.java new file mode 100644 index 000000000..f5bf24964 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/basic/BasicDestinyRelMapper.java @@ -0,0 +1,21 @@ +package com.glxp.api.dao.basic; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.glxp.api.dao.BaseMapperPlus; +import com.glxp.api.entity.basic.BasicCorpEntity; +import com.glxp.api.entity.basic.BasicDestinyRelEntity; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface BasicDestinyRelMapper extends BaseMapperPlus { + + List filterUdiJoinSup(FilterUdiRelRequest filterUdiRelRequest); + + List filterDestinyProducts(FilterUdiRelRequest filterUdiRelRequest); + + +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessCodeMapper.java b/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessCodeMapper.java new file mode 100644 index 000000000..f52bd6d16 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessCodeMapper.java @@ -0,0 +1,15 @@ +package com.glxp.api.dao.inout; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.glxp.api.entity.inout.IoDestinyProcessCodeEntity; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.inout.IodestinyProcessResponse; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface IoDestinyProcessCodeMapper extends BaseMapper { + + List filterDestinyProcessCode(IodestinyProcessRequest iodestinyProcessRequest); +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessDetailMapper.java b/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessDetailMapper.java new file mode 100644 index 000000000..3c59f7e55 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessDetailMapper.java @@ -0,0 +1,23 @@ +package com.glxp.api.dao.inout; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.glxp.api.dao.BaseMapperPlus; +import com.glxp.api.entity.inout.IoCodeTempEntity; +import com.glxp.api.entity.inout.IoDestinyProcessDetailEntity; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.res.inout.IodestinyProcessResponse; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface IoDestinyProcessDetailMapper extends BaseMapperPlus { + + List filterDestinyProducts(FilterUdiRelRequest filterUdiRelRequest); + + List filterDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); + + +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessMapper.java b/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessMapper.java new file mode 100644 index 000000000..fc6c49cd5 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessMapper.java @@ -0,0 +1,9 @@ +package com.glxp.api.dao.inout; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.glxp.api.entity.inout.IoDestinyProcessEntity; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface IoDestinyProcessMapper extends BaseMapper { +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/entity/basic/BasicDestinyRelEntity.java b/src/main/java/com/glxp/api/entity/basic/BasicDestinyRelEntity.java new file mode 100644 index 000000000..27938a843 --- /dev/null +++ b/src/main/java/com/glxp/api/entity/basic/BasicDestinyRelEntity.java @@ -0,0 +1,35 @@ +package com.glxp.api.entity.basic; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * 定数包产品关联表 + */ +@Data +@TableName(value = "udi_wms.basic_destiny_rel") +public class BasicDestinyRelEntity { + @TableId(value = "id", type = IdType.INPUT) + private Long id; + + /** + * 耗材产品id + */ + @TableField(value = "relId") + private Long relId; + + /** + * 定数包模板id + */ + @TableField(value = "pId") + private Long pId; + + /** + * 数量 + */ + @TableField(value = "`count`") + private Integer count; +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java index c1893bd26..afa29631f 100644 --- a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java @@ -95,5 +95,6 @@ public class UdiProductEntity { private String mjfs; private String categoryName; private Date updateTime; + private Integer useNum; } diff --git a/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessCodeEntity.java b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessCodeEntity.java new file mode 100644 index 000000000..ab955ed8d --- /dev/null +++ b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessCodeEntity.java @@ -0,0 +1,93 @@ +package com.glxp.api.entity.inout; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + +/** + * 定速包加工明细表 + */ +@Data +@TableName(value = "io_destiny_process_code") +public class IoDestinyProcessCodeEntity { + @TableId(value = "id", type = IdType.INPUT) + private Long id; + + /** + * 订单号外键 + */ + @TableField(value = "orderIdFk") + private String orderIdFk; + + /** + * 耗材字典ID外键 + */ + @TableField(value = "bindRlFk") + private String bindRlFk; + + /** + * DI信息UUID外键 + */ + @TableField(value = "uuidFk") + private String uuidFk; + + /** + * DI + */ + @TableField(value = "nameCode") + private String nameCode; + + /** + * 批次号 + */ + @TableField(value = "batchNo") + private String batchNo; + + /** + * 生产日期 + */ + @TableField(value = "productDate") + private String productDate; + + /** + * 失效日期 + */ + @TableField(value = "expireDate") + private String expireDate; + + /** + * 价格 + */ + @TableField(value = "price") + private BigDecimal price; + + /** + * 供应商ID外键 + */ + @TableField(value = "supId") + private String supId; + + /** + * 单据数量 + */ + @TableField(value = "`count`") + private Integer count; + + @TableField(value = "updateTime") + private Date updateTime; + + @TableField(value = "code") + private String code; + + + @TableField(value = "serialNo") + private String serialNo; + + @TableField(value = "reCount") + private int reCount; + +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessDetailEntity.java b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessDetailEntity.java new file mode 100644 index 000000000..70970557c --- /dev/null +++ b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessDetailEntity.java @@ -0,0 +1,46 @@ +package com.glxp.api.entity.inout; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +/** + * 定数包产品关联表 + */ +@Data +@TableName(value = "io_destiny_process_detail") +public class IoDestinyProcessDetailEntity { + @TableId(value = "id", type = IdType.INPUT) + private Long id; + + /** + * 耗材产品id + */ + @TableField(value = "relId") + private Long relId; + + /** + * 数量 + */ + @TableField(value = "`count`") + private Integer count; + + /** + * 实际数量 + */ + @TableField(value = "reCount") + private Integer reCount; + + @TableField(value = "updateTime") + private Date updateTime; + + /** + * 订单号外键 + */ + @TableField(value = "orderIdFk") + private String orderIdFk; +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessEntity.java b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessEntity.java new file mode 100644 index 000000000..96da4722a --- /dev/null +++ b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessEntity.java @@ -0,0 +1,84 @@ +package com.glxp.api.entity.inout; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.util.Date; +import lombok.Data; + +/** + * 定数包表 + */ +@Data +@TableName(value = "io_destiny_process") +public class IoDestinyProcessEntity { + @TableId(value = "id", type = IdType.INPUT) + private Long id; + + /** + * 定数包模板id + */ + @TableField(value = "destinyId") + private String destinyId; + + /** + * 唯一编码 + */ + @TableField(value = "destinyNo") + private String destinyNo; + + /** + * 单据号 + */ + @TableField(value = "billNo") + private String billNo; + + /** + * 单据时间 + */ + @TableField(value = "billDate") + private Date billDate; + + /** + * 单前仓库 + */ + @TableField(value = "invCode") + private String invCode; + + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; + + /** + * 创建时间 + */ + @TableField(value = "createTime") + private Date createTime; + + /** + * 更新时间 + */ + @TableField(value = "updateTime") + private Date updateTime; + + /** + * 创建人 + */ + @TableField(value = "`createUser`") + private String createUser; + + /** + * 更新人 + */ + @TableField(value = "updateUser") + private String updateUser; + + /** + * 状态 0 :草稿 1:待校验 2:已校验 + */ + @TableField(value = "`status`") + private Integer status; +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/entity/inout/IoOrderMutiUseEntity.java b/src/main/java/com/glxp/api/entity/inout/IoOrderMutiUseEntity.java index 806bd3a48..f7989c410 100644 --- a/src/main/java/com/glxp/api/entity/inout/IoOrderMutiUseEntity.java +++ b/src/main/java/com/glxp/api/entity/inout/IoOrderMutiUseEntity.java @@ -64,4 +64,13 @@ public class IoOrderMutiUseEntity { @TableField(exist=false) private String createUserName; + + @TableField(exist = false) + private Integer checkType; + + @TableField(exist = false) + private String mark; + + @TableField(exist = false) + private String udiCode; } diff --git a/src/main/java/com/glxp/api/entity/thrsys/ThrProductsEntity.java b/src/main/java/com/glxp/api/entity/thrsys/ThrProductsEntity.java index e571a5c1a..35ff4fe61 100644 --- a/src/main/java/com/glxp/api/entity/thrsys/ThrProductsEntity.java +++ b/src/main/java/com/glxp/api/entity/thrsys/ThrProductsEntity.java @@ -191,5 +191,10 @@ public class ThrProductsEntity { @TableField("supCode") private String supCode; + @TableField("type") + private Integer type; + + @TableField(exist = false) + private String createByName; } diff --git a/src/main/java/com/glxp/api/req/basic/BasicDestinyRelRequest.java b/src/main/java/com/glxp/api/req/basic/BasicDestinyRelRequest.java new file mode 100644 index 000000000..79c2e4c70 --- /dev/null +++ b/src/main/java/com/glxp/api/req/basic/BasicDestinyRelRequest.java @@ -0,0 +1,21 @@ +package com.glxp.api.req.basic; + +import com.alibaba.fastjson.annotation.JSONField; +import lombok.Data; + +import java.util.List; + +@Data +public class BasicDestinyRelRequest { + private List list; + private Long pId; + private Long id; + private int count; + public List getList() { + return list; + } + + public Long getpId() { + return pId; + } +} diff --git a/src/main/java/com/glxp/api/req/basic/BasicUnitMaintainFilterRequest.java b/src/main/java/com/glxp/api/req/basic/BasicUnitMaintainFilterRequest.java index 5988d335f..2b6ede471 100644 --- a/src/main/java/com/glxp/api/req/basic/BasicUnitMaintainFilterRequest.java +++ b/src/main/java/com/glxp/api/req/basic/BasicUnitMaintainFilterRequest.java @@ -27,5 +27,6 @@ public class BasicUnitMaintainFilterRequest extends ListPageRequest { private Boolean isDownThrSys; private String lastUpdateTime; private List corpTypeList; + private List corpTypeLists;//用来往来单位查询 ListthrCorpEntities; } diff --git a/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java b/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java index 9d4ac2525..e793b3db6 100644 --- a/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java +++ b/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java @@ -3,6 +3,7 @@ package com.glxp.api.req.basic; import com.glxp.api.util.page.ListPageRequest; import lombok.Data; +import java.util.Date; import java.util.List; @Data @@ -89,4 +90,13 @@ public class FilterUdiRelRequest extends ListPageRequest { private String basicPrductRemak7; private String basicPrductRemak8; + //定数包参数 + private String destinyId; + private String destinyNo; + private String billNo; + private Date billDate; + private String invCode; + private String remark; + + } diff --git a/src/main/java/com/glxp/api/req/inout/IodestinyProcessRequest.java b/src/main/java/com/glxp/api/req/inout/IodestinyProcessRequest.java new file mode 100644 index 000000000..5ef885472 --- /dev/null +++ b/src/main/java/com/glxp/api/req/inout/IodestinyProcessRequest.java @@ -0,0 +1,15 @@ +package com.glxp.api.req.inout; + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +@Data +public class IodestinyProcessRequest extends ListPageRequest { + + private String billNo; + + private String invCode; + + private String code; + +} diff --git a/src/main/java/com/glxp/api/req/thrsys/FilterThrProductsRequest.java b/src/main/java/com/glxp/api/req/thrsys/FilterThrProductsRequest.java index f8a1ca559..e7e334b8d 100644 --- a/src/main/java/com/glxp/api/req/thrsys/FilterThrProductsRequest.java +++ b/src/main/java/com/glxp/api/req/thrsys/FilterThrProductsRequest.java @@ -34,6 +34,7 @@ public class FilterThrProductsRequest extends ListPageRequest { private String uuid; private Integer diType; + private Integer type; public List getThrProductsEntities() { return thrProductsEntities; diff --git a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java index 47af0d2c3..4d588f774 100644 --- a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java +++ b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java @@ -98,6 +98,9 @@ public class UdiRelevanceResponse { private Integer recentDateTime; private Integer isDateBy; private String relCode; + private int index; + + private int reCount; //关联查询字典 private String unitFk; //供应商ID @@ -120,6 +123,8 @@ public class UdiRelevanceResponse { private String syqsfxyjxmj; private String mjfs; private String categoryName; + private int count; + private Long deId; private Integer bpcrid; diff --git a/src/main/java/com/glxp/api/res/inout/IodestinyProcessResponse.java b/src/main/java/com/glxp/api/res/inout/IodestinyProcessResponse.java new file mode 100644 index 000000000..0701fa134 --- /dev/null +++ b/src/main/java/com/glxp/api/res/inout/IodestinyProcessResponse.java @@ -0,0 +1,101 @@ +package com.glxp.api.res.inout; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +public class IodestinyProcessResponse { + + + private Long id; + + private String destinyId; + + private String destinyNo; + + private String billNo; + + private Date billDate; + + private String invCode; + + private String remark; + + private Date createTime; + + private Date updateTime; + + private String createUser; + + private String updateUser; + + private Integer status; + + private String invName; + + private String updateName; + private String createName; + private String code; + + private String serialNo; + private String productDate; + private String expireDate; + private BigDecimal price; + private String batchNo; + private int count; + private int reCount; + + + + + //产品 + private String originUuid; + private String nameCode; + private String deviceRecordKey; + private String packRatio; + private String packLevel; + private String packUnit; + private Integer bhxjsl; + private Integer bhzxxsbzsl; + private Integer zxxsbzbhsydysl; + private String bhxjcpbm; + private String bzcj; + private String cpmctymc; + private String cplb; + private String flbm; + private String ggxh; + private String qxlb; + private String tyshxydm; + private String ylqxzcrbarmc; + private String zczbhhzbapzbh; + private String ylqxzcrbarywmc; + private String sydycpbs; + private String sjcpbm; + private Integer versionNumber; + private Integer diType; + private String ybbm; + private String sptm; + private String manufactory; + private String measname; + private Integer productType; + private String scbssfbhph; + private String scbssfbhxlh; + private String scbssfbhscrq; + private String scbssfbhsxrq; + private String cpms; + private Boolean allowNoBatch; + private Boolean allowNoExpire; + private Boolean allowNoProduct; + private Boolean allowNoSerial; + private String spmc; + private String cplx; + private String hchzsb; + private String cpdls; + +} diff --git a/src/main/java/com/glxp/api/service/basic/BasicDestinyRelService.java b/src/main/java/com/glxp/api/service/basic/BasicDestinyRelService.java new file mode 100644 index 000000000..6cece5ef2 --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/BasicDestinyRelService.java @@ -0,0 +1,24 @@ +package com.glxp.api.service.basic; + +import com.glxp.api.req.basic.BasicDestinyRelRequest; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import org.springframework.stereotype.Service; + +import java.util.List; + +public interface BasicDestinyRelService{ + + Boolean addModeldestinyProduct(BasicDestinyRelRequest basicDestinyRelRequest); + + List filterUdiJoinSup(FilterUdiRelRequest filterUdiRelRequest); + + List filterDestinyRelIds(Long pId); + + List filterDestinyProducts(FilterUdiRelRequest filterUdiRelRequest); + + Boolean delectModeldestinyProduct(BasicDestinyRelRequest basicDestinyRelRequest); + + Boolean uploadModeldestinyProduct(BasicDestinyRelRequest basicDestinyRelRequest); + +} diff --git a/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java index 4c0999ece..c5ac51e98 100644 --- a/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java +++ b/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java @@ -10,16 +10,21 @@ import com.glxp.api.constant.ConstantStatus; import com.glxp.api.constant.ConstantType; import com.glxp.api.dao.basic.BasicBussinessTypeDao; import com.glxp.api.entity.basic.BasicBussinessTypeEntity; +import com.glxp.api.entity.inout.IoOrderDetailBizEntity; +import com.glxp.api.entity.thrsys.ThrOrderUploadBustypesEntity; import com.glxp.api.req.basic.FilterBussinessTypeRequest; import com.glxp.api.res.basic.BasicBussinessTypeResponse; import com.glxp.api.service.auth.CustomerService; import com.glxp.api.service.basic.IBasicBussinessTypeService; import com.glxp.api.service.system.SystemParamConfigService; +import com.glxp.api.service.thrsys.ThrOrderUploadBustypesService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.Collections; import java.util.Date; import java.util.List; @@ -34,6 +39,8 @@ public class BasicBussinessTypeServiceImpl extends ServiceImpl filterList(FilterBussinessTypeRequest filterBussinessTypeRequest) { @@ -288,6 +295,18 @@ public class BasicBussinessTypeServiceImpl extends ServiceImpl thrOrderUploadBustypesEntities = thrOrderUploadBustypesService.list(); + List actions = new ArrayList<>(); + thrOrderUploadBustypesEntities.forEach(item -> + { + actions.add(item.getAction()); + }); + if (CollUtil.isNotEmpty(actions)) { + bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper().in("action", actions)); + } + break; default: break; diff --git a/src/main/java/com/glxp/api/service/basic/impl/BasicDestinyRelServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/BasicDestinyRelServiceImpl.java new file mode 100644 index 000000000..b90b5ff42 --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/impl/BasicDestinyRelServiceImpl.java @@ -0,0 +1,97 @@ +package com.glxp.api.service.basic.impl; + + +import cn.hutool.core.util.IdUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.github.pagehelper.PageHelper; +import com.glxp.api.dao.basic.BasicDestinyRelMapper; +import com.glxp.api.dao.basic.UdiRelevanceDao; +import com.glxp.api.entity.basic.BasicDestinyRelEntity; +import com.glxp.api.req.basic.BasicDestinyRelRequest; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.service.basic.BasicDestinyRelService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + + +@Service +public class BasicDestinyRelServiceImpl implements BasicDestinyRelService { + + @Resource + BasicDestinyRelMapper basicDestinyRelMapper; + + @Resource + UdiRelevanceDao udiRelevanceDao; + + @Override + public Boolean addModeldestinyProduct(BasicDestinyRelRequest basicDestinyRelRequest) { + + List basicDestinyRelEntitList = new ArrayList<>(); + for (Long str : basicDestinyRelRequest.getList()) { + BasicDestinyRelEntity basicDestinyRelEntity = new BasicDestinyRelEntity(); + basicDestinyRelEntity.setId(IdUtil.getSnowflakeNextId()); + basicDestinyRelEntity.setRelId(str); + basicDestinyRelEntity.setPId(basicDestinyRelRequest.getpId()); + basicDestinyRelEntitList.add(basicDestinyRelEntity); + } + Boolean flag = basicDestinyRelMapper.insertBatch(basicDestinyRelEntitList); + return flag; + } + + @Override + public List filterUdiJoinSup(FilterUdiRelRequest filterUdiRelRequest) { + if (filterUdiRelRequest == null) { + return Collections.emptyList(); + } + if (filterUdiRelRequest.getPage() != null) { + int offset = (filterUdiRelRequest.getPage() - 1) * filterUdiRelRequest.getLimit(); + PageHelper.offsetPage(offset, filterUdiRelRequest.getLimit()); + } + List data = basicDestinyRelMapper.filterUdiJoinSup(filterUdiRelRequest); + return data; + } + + @Override + public List filterDestinyRelIds(Long pId) { + + List stringList = new ArrayList<>(); + QueryWrapper ew = new QueryWrapper<>(); + ew.eq("pId", pId); + List basicDestinyRelEntities = basicDestinyRelMapper.selectList(ew); + for (BasicDestinyRelEntity basicDestinyRelEntity : basicDestinyRelEntities) { + stringList.add(basicDestinyRelEntity.getRelId()); + } + return stringList; + } + + @Override + public List filterDestinyProducts(FilterUdiRelRequest filterUdiRelRequest) { + if (filterUdiRelRequest == null) { + return Collections.emptyList(); + } + if (filterUdiRelRequest.getPage() != null) { + int offset = (filterUdiRelRequest.getPage() - 1) * filterUdiRelRequest.getLimit(); + PageHelper.offsetPage(offset, filterUdiRelRequest.getLimit()); + } + List data = basicDestinyRelMapper.filterDestinyProducts(filterUdiRelRequest); + return data; + } + + @Override + public Boolean delectModeldestinyProduct(BasicDestinyRelRequest basicDestinyRelRequest) { + return basicDestinyRelMapper.deleteById(basicDestinyRelRequest.getId()) > 0 ? true : false; + } + + @Override + public Boolean uploadModeldestinyProduct(BasicDestinyRelRequest basicDestinyRelRequest) { + BasicDestinyRelEntity basicDestinyRelEntity=new BasicDestinyRelEntity(); + basicDestinyRelEntity.setId(basicDestinyRelRequest.getId()); + basicDestinyRelEntity.setCount(basicDestinyRelRequest.getCount()); + return basicDestinyRelMapper.updateById(basicDestinyRelEntity)> 0 ? true : false; + } +} diff --git a/src/main/java/com/glxp/api/service/inout/IoDestinyProcessCodeService.java b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessCodeService.java new file mode 100644 index 000000000..c7abffd21 --- /dev/null +++ b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessCodeService.java @@ -0,0 +1,15 @@ +package com.glxp.api.service.inout; + +import com.glxp.api.entity.inout.IoDestinyProcessCodeEntity; +import com.baomidou.mybatisplus.extension.service.IService; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.inout.IodestinyProcessResponse; + +import java.util.List; + +public interface IoDestinyProcessCodeService{ + + List filterDestinyProcessCode(IodestinyProcessRequest iodestinyProcessRequest); + + +} diff --git a/src/main/java/com/glxp/api/service/inout/IoDestinyProcessDetailService.java b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessDetailService.java new file mode 100644 index 000000000..d6d1c6bad --- /dev/null +++ b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessDetailService.java @@ -0,0 +1,24 @@ +package com.glxp.api.service.inout; + +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.entity.inout.IoDestinyProcessDetailEntity; +import com.baomidou.mybatisplus.extension.service.IService; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.res.inout.IodestinyProcessResponse; + +import java.util.List; + +public interface IoDestinyProcessDetailService{ + + Boolean insertProcessDetail(FilterUdiRelRequest filterUdiRelRequest); + + List addDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); + + List filterProcessDetail(FilterUdiRelRequest filterUdiRelRequest); + + List filterDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); + + BaseResponse checkDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); +} diff --git a/src/main/java/com/glxp/api/service/inout/IoDestinyProcessService.java b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessService.java new file mode 100644 index 000000000..bdf36276a --- /dev/null +++ b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessService.java @@ -0,0 +1,14 @@ +package com.glxp.api.service.inout; + + +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.inout.IodestinyProcessRequest; + +public interface IoDestinyProcessService{ + + Boolean uploadDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); + + Boolean delectDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); + + +} diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessCodeServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessCodeServiceImpl.java new file mode 100644 index 000000000..621fd43b2 --- /dev/null +++ b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessCodeServiceImpl.java @@ -0,0 +1,28 @@ +package com.glxp.api.service.inout.impl; + +import com.github.pagehelper.PageHelper; +import com.glxp.api.dao.inout.IoDestinyProcessCodeMapper; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.inout.IodestinyProcessResponse; +import org.springframework.stereotype.Service; +import com.glxp.api.service.inout.IoDestinyProcessCodeService; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class IoDestinyProcessCodeServiceImpl implements IoDestinyProcessCodeService { + + @Resource + IoDestinyProcessCodeMapper ioDestinyProcessCodeMapper; + + @Override + public List filterDestinyProcessCode(IodestinyProcessRequest iodestinyProcessRequest) { + + if (iodestinyProcessRequest.getPage() != null) { + int offset = (iodestinyProcessRequest.getPage() - 1) * iodestinyProcessRequest.getLimit(); + PageHelper.offsetPage(offset, iodestinyProcessRequest.getLimit()); + } + return ioDestinyProcessCodeMapper.filterDestinyProcessCode(iodestinyProcessRequest); + } +} diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessDetailServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessDetailServiceImpl.java new file mode 100644 index 000000000..b89b3c989 --- /dev/null +++ b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessDetailServiceImpl.java @@ -0,0 +1,221 @@ +package com.glxp.api.service.inout.impl; + +import cn.hutool.core.util.IdUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.github.pagehelper.PageHelper; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.dao.inout.IoDestinyProcessCodeMapper; +import com.glxp.api.dao.inout.IoDestinyProcessMapper; +import com.glxp.api.entity.auth.AuthAdmin; +import com.glxp.api.entity.basic.UdiEntity; +import com.glxp.api.entity.inout.IoDestinyProcessCodeEntity; +import com.glxp.api.entity.inout.IoDestinyProcessEntity; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.res.inout.IodestinyProcessResponse; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.basic.BasicDestinyRelService; +import com.glxp.api.service.basic.UdiRelevanceService; +import com.glxp.api.service.inout.IoDestinyProcessService; +import com.glxp.api.util.udi.FilterUdiUtils; +import com.glxp.api.util.udi.UdiCalCountUtil; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.glxp.api.dao.inout.IoDestinyProcessDetailMapper; +import com.glxp.api.entity.inout.IoDestinyProcessDetailEntity; +import com.glxp.api.service.inout.IoDestinyProcessDetailService; + +import javax.annotation.Resource; +import java.awt.geom.QuadCurve2D; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Date; +import java.util.List; + +@Service +public class IoDestinyProcessDetailServiceImpl implements IoDestinyProcessDetailService { + + + @Resource + private BasicDestinyRelService basicDestinyRelService; + @Resource + private IoDestinyProcessDetailMapper ioDestinyProcessDetailMapper; + @Resource + private IoDestinyProcessCodeMapper ioDestinyProcessCodeMapper; + + @Resource + CustomerService customerService; + @Resource + IoDestinyProcessMapper ioDestinyProcessMapper; + @Resource + UdiRelevanceService udiRelevanceService; + @Resource + UdiCalCountUtil udiCalCountUtil; + + + @Override + public Boolean insertProcessDetail(FilterUdiRelRequest filterUdiRelRequest) { + //删除原数据 + QueryWrapper ew=new QueryWrapper<>(); + ew.eq("orderIdFk",filterUdiRelRequest.getBillNo()); + long count= ioDestinyProcessDetailMapper.delete(ew); + + QueryWrapper ew1=new QueryWrapper<>(); + ew1.eq("orderIdFk",filterUdiRelRequest.getBillNo()); + ioDestinyProcessCodeMapper.delete(ew1); + filterUdiRelRequest.setDestinyId(filterUdiRelRequest.getDestinyId()); + filterUdiRelRequest.setDiType(1); + List thrProductsEntities = basicDestinyRelService.filterDestinyProducts(filterUdiRelRequest); + + AuthAdmin authAdmin= customerService.getUserBean(); + IoDestinyProcessEntity ioDestinyProcessEntity=new IoDestinyProcessEntity(); + // 插入主表 + if(count>0){ + QueryWrapper ew2=new QueryWrapper<>(); + ew2.eq("billNo",filterUdiRelRequest.getBillNo()); + ioDestinyProcessEntity=ioDestinyProcessMapper.selectOne(ew2); + ioDestinyProcessEntity.setCreateTime(new Date()); + ioDestinyProcessEntity.setUpdateTime(new Date()); + ioDestinyProcessEntity.setCreateUser(authAdmin.getId() + ""); + ioDestinyProcessEntity.setUpdateUser(authAdmin.getId() + ""); + ioDestinyProcessEntity.setInvCode(filterUdiRelRequest.getInvCode()); + ioDestinyProcessEntity.setRemark(filterUdiRelRequest.getRemark()); + ioDestinyProcessMapper.updateById(ioDestinyProcessEntity); + }else{ + ioDestinyProcessEntity.setId(IdUtil.getSnowflakeNextId()); + ioDestinyProcessEntity.setDestinyNo(filterUdiRelRequest.getDestinyNo()); + ioDestinyProcessEntity.setDestinyId(filterUdiRelRequest.getDestinyId()); + ioDestinyProcessEntity.setBillNo(filterUdiRelRequest.getBillNo()); + ioDestinyProcessEntity.setBillDate(filterUdiRelRequest.getBillDate()); + ioDestinyProcessEntity.setRemark(filterUdiRelRequest.getRemark()); + ioDestinyProcessEntity.setInvCode(filterUdiRelRequest.getInvCode()); + ioDestinyProcessEntity.setCreateTime(new Date()); + ioDestinyProcessEntity.setUpdateTime(new Date()); + ioDestinyProcessEntity.setCreateUser(authAdmin.getId() + ""); + ioDestinyProcessEntity.setUpdateUser(authAdmin.getId() + ""); + ioDestinyProcessEntity.setStatus(0); + ioDestinyProcessMapper.insert(ioDestinyProcessEntity); + } + + // 插入详情表 + List ioDestinyProcessDetailEntityList=new ArrayList<>(); + for (UdiRelevanceResponse thrProductsEntity : thrProductsEntities) { + IoDestinyProcessDetailEntity ioDestinyProcessDetailEntity=new IoDestinyProcessDetailEntity(); + ioDestinyProcessDetailEntity.setId(IdUtil.getSnowflakeNextId()); + ioDestinyProcessDetailEntity.setCount(thrProductsEntity.getCount()); + ioDestinyProcessDetailEntity.setRelId(thrProductsEntity.getId()); + ioDestinyProcessDetailEntity.setReCount(0); + ioDestinyProcessDetailEntity.setUpdateTime(new Date()); + ioDestinyProcessDetailEntity.setOrderIdFk(ioDestinyProcessEntity.getBillNo()); + ioDestinyProcessDetailEntityList.add(ioDestinyProcessDetailEntity); + thrProductsEntity.setReCount(0); + } + ioDestinyProcessDetailMapper.insertBatch(ioDestinyProcessDetailEntityList); + + return true; + } + + @Override + public List addDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest) { + + QueryWrapper ew=new QueryWrapper<>(); + ew.eq("orderIdFk",iodestinyProcessRequest.getBillNo()); + List ioDestinyProcessDetailEntity=ioDestinyProcessDetailMapper.selectList(ew); + return ioDestinyProcessDetailEntity; + } + + @Override + public List filterProcessDetail(FilterUdiRelRequest filterUdiRelRequest) { + //查询详情 + List thrProductsEntities = ioDestinyProcessDetailMapper.filterDestinyProducts(filterUdiRelRequest); + return thrProductsEntities; + } + + @Override + public List filterDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest) { + + if (iodestinyProcessRequest.getPage() != null) { + int offset = (iodestinyProcessRequest.getPage() - 1) * iodestinyProcessRequest.getLimit(); + PageHelper.offsetPage(offset, iodestinyProcessRequest.getLimit()); + } + return ioDestinyProcessDetailMapper.filterDestinyProcess(iodestinyProcessRequest); + } + + @Override + public BaseResponse checkDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest) { + + UdiEntity udiEntity = FilterUdiUtils.getUdi(iodestinyProcessRequest.getCode()); + UdiRelevanceResponse checkUdi = udiRelevanceService.selectByNameCode(udiEntity.getUdi()); + if (checkUdi ==null){ + return ResultVOUtils.error(500, "耗材字典不存在此产品!"); + } + QueryWrapper ew=new QueryWrapper<>(); + ew.eq("orderIdFk",iodestinyProcessRequest.getBillNo()); + ew.eq("relId",checkUdi.getRelId()); + IoDestinyProcessDetailEntity ioDestinyProcessDetailEntity=ioDestinyProcessDetailMapper.selectOne(ew); + if(ioDestinyProcessDetailEntity == null){ + return ResultVOUtils.error(500, "定数包不存在此产品!"); + } + if(ioDestinyProcessDetailEntity.getCount()-ioDestinyProcessDetailEntity.getReCount()<=0){ + return ResultVOUtils.error(500, "该产品已足够!"); + } + int count = udiCalCountUtil.getActCount(udiEntity.getUdi()); + ioDestinyProcessDetailEntity.setReCount(ioDestinyProcessDetailEntity.getReCount()+count); + ioDestinyProcessDetailMapper.updateById(ioDestinyProcessDetailEntity); + //判断有没有序列号 + //有 + if (udiEntity.getSerialNo()!=null){ + //插入详细表 + IoDestinyProcessCodeEntity ioDestinyProcessCodeEntity=new IoDestinyProcessCodeEntity(); + ioDestinyProcessCodeEntity.setCode(iodestinyProcessRequest.getCode()); + ioDestinyProcessCodeEntity.setId(IdUtil.getSnowflakeNextId()); + ioDestinyProcessCodeEntity.setOrderIdFk(iodestinyProcessRequest.getBillNo()); + ioDestinyProcessCodeEntity.setBindRlFk(checkUdi.getRelId() + ""); + ioDestinyProcessCodeEntity.setUuidFk(checkUdi.getUuid()); + ioDestinyProcessCodeEntity.setNameCode(checkUdi.getNameCode()); + ioDestinyProcessCodeEntity.setCount(1); + ioDestinyProcessCodeEntity.setReCount(count); + ioDestinyProcessCodeEntity.setProductDate(udiEntity.getProduceDate()); + ioDestinyProcessCodeEntity.setExpireDate(udiEntity.getExpireDate()); + ioDestinyProcessCodeEntity.setBatchNo(udiEntity.getBatchNo()); + ioDestinyProcessCodeEntity.setPrice(checkUdi.getPrice()); + ioDestinyProcessCodeEntity.setSerialNo(udiEntity.getSerialNo()); + ioDestinyProcessCodeEntity.setUpdateTime(new Date()); + ioDestinyProcessCodeMapper.insert(ioDestinyProcessCodeEntity); + }else{ + //无批次号的时候判断是不是第一次是第一次就插入不是第一此就更新 + QueryWrapper ew1=new QueryWrapper<>(); + ew1.eq("code",iodestinyProcessRequest.getCode()); + ew1.eq("orderIdFk",iodestinyProcessRequest.getBillNo()); + ew1.last("limit 1"); + IoDestinyProcessCodeEntity ioDestinyProcessCodeEntity=ioDestinyProcessCodeMapper.selectOne(ew1); + if(ioDestinyProcessCodeEntity==null){ + //插入详细表 + ioDestinyProcessCodeEntity=new IoDestinyProcessCodeEntity(); + ioDestinyProcessCodeEntity.setCode(iodestinyProcessRequest.getCode()); + ioDestinyProcessCodeEntity.setId(IdUtil.getSnowflakeNextId()); + ioDestinyProcessCodeEntity.setOrderIdFk(iodestinyProcessRequest.getBillNo()); + ioDestinyProcessCodeEntity.setBindRlFk(checkUdi.getRelId() + ""); + ioDestinyProcessCodeEntity.setUuidFk(checkUdi.getUuid()); + ioDestinyProcessCodeEntity.setNameCode(checkUdi.getNameCode()); + ioDestinyProcessCodeEntity.setCount(1); + ioDestinyProcessCodeEntity.setReCount(count); + ioDestinyProcessCodeEntity.setProductDate(udiEntity.getProduceDate()); + ioDestinyProcessCodeEntity.setExpireDate(udiEntity.getExpireDate()); + ioDestinyProcessCodeEntity.setBatchNo(udiEntity.getBatchNo()); + ioDestinyProcessCodeEntity.setPrice(checkUdi.getPrice()); + ioDestinyProcessCodeEntity.setSerialNo(udiEntity.getSerialNo()); + ioDestinyProcessCodeEntity.setUpdateTime(new Date()); + ioDestinyProcessCodeMapper.insert(ioDestinyProcessCodeEntity); + return ResultVOUtils.success(); + } + ioDestinyProcessCodeEntity.setCount(ioDestinyProcessCodeEntity.getReCount()+1); + ioDestinyProcessCodeEntity.setReCount(ioDestinyProcessCodeEntity.getReCount()+count); + ioDestinyProcessCodeMapper.updateById(ioDestinyProcessCodeEntity); + + } + return ResultVOUtils.success(); + } +} diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessServiceImpl.java new file mode 100644 index 000000000..ced10c56e --- /dev/null +++ b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessServiceImpl.java @@ -0,0 +1,55 @@ +package com.glxp.api.service.inout.impl; + + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.glxp.api.dao.inout.IoDestinyProcessCodeMapper; +import com.glxp.api.dao.inout.IoDestinyProcessDetailMapper; +import com.glxp.api.dao.inout.IoDestinyProcessMapper; +import com.glxp.api.entity.inout.IoDestinyProcessCodeEntity; +import com.glxp.api.entity.inout.IoDestinyProcessDetailEntity; +import com.glxp.api.entity.inout.IoDestinyProcessEntity; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.service.inout.IoDestinyProcessService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +@Service +public class IoDestinyProcessServiceImpl implements IoDestinyProcessService { + @Resource + IoDestinyProcessMapper ioDestinyProcessMapper; + @Resource + private IoDestinyProcessDetailMapper ioDestinyProcessDetailMapper; + @Resource + private IoDestinyProcessCodeMapper ioDestinyProcessCodeMapper; + + @Override + public Boolean uploadDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest) { + + QueryWrapper ew = new QueryWrapper<>(); + ew.eq("billNo", iodestinyProcessRequest.getBillNo()); + IoDestinyProcessEntity ioDestinyProcessEntity = ioDestinyProcessMapper.selectOne(ew); + ioDestinyProcessEntity.setStatus(2); + ioDestinyProcessMapper.updateById(ioDestinyProcessEntity); + return null; + } + + @Override + public Boolean delectDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest) { + + + QueryWrapper ew=new QueryWrapper<>(); + ew.eq("orderIdFk",iodestinyProcessRequest.getBillNo()); + long count= ioDestinyProcessDetailMapper.delete(ew); + + QueryWrapper ew1=new QueryWrapper<>(); + ew1.eq("orderIdFk",iodestinyProcessRequest.getBillNo()); + ioDestinyProcessCodeMapper.delete(ew1); + + QueryWrapper ew3 = new QueryWrapper<>(); + ew3.eq("billNo", iodestinyProcessRequest.getBillNo()); + ioDestinyProcessMapper.delete(ew3); + + return null; + } +} diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java index b6ba77c92..66ac03de1 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java @@ -6,9 +6,7 @@ import com.github.pagehelper.PageHelper; import com.glxp.api.dao.inout.IoOrderDetailResultDao; import com.glxp.api.entity.inout.IoOrderDetailCodeEntity; import com.glxp.api.entity.inout.IoOrderDetailResultEntity; -import com.glxp.api.req.inout.CptTraceRequest; import com.glxp.api.req.inout.FilterOrderDetailResultRequest; -import com.glxp.api.res.inout.CptTraceOrderResponse; import com.glxp.api.res.inout.IoOrderDetailResultResponse; import com.glxp.api.service.inout.IoOrderDetailResultService; import org.springframework.stereotype.Service; @@ -78,6 +76,4 @@ public class IoOrderDetailResultServiceImpl implements IoOrderDetailResultServic public List cptTrace(CptTraceRequest cptTraceRequest) { return orderDetailResultDao.cptTrace(cptTraceRequest); } - - } diff --git a/src/main/java/com/glxp/api/service/sync/HeartService.java b/src/main/java/com/glxp/api/service/sync/HeartService.java index ed51bd538..6e495f75b 100644 --- a/src/main/java/com/glxp/api/service/sync/HeartService.java +++ b/src/main/java/com/glxp/api/service/sync/HeartService.java @@ -1994,7 +1994,7 @@ public class HeartService { } } -// //更新发票信息 + //更新发票信息 // if (CollUtil.isNotEmpty(syncDataResponse.getOrderInvoiceEntities())) { // List orderInvoiceEntities = syncDataResponse.getOrderInvoiceEntities(); // for (IoOrderInvoiceEntity orderInvoiceEntity : orderInvoiceEntities) { diff --git a/src/main/java/com/glxp/api/task/SyncHeartTask.java b/src/main/java/com/glxp/api/task/SyncHeartTask.java index 61fdbc44a..8daa0ac60 100644 --- a/src/main/java/com/glxp/api/task/SyncHeartTask.java +++ b/src/main/java/com/glxp/api/task/SyncHeartTask.java @@ -20,9 +20,9 @@ import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.util.Arrays; - -//@Component -//@EnableScheduling +@Slf4j +@Component +@EnableScheduling public class SyncHeartTask implements SchedulingConfigurer { final Logger logger = LoggerFactory.getLogger(SyncHeartTask.class); @@ -45,7 +45,7 @@ public class SyncHeartTask implements SchedulingConfigurer { ScheduledEntity scheduledEntity = scheduledDao.findScheduled(scheduledRequest); String cron = scheduledEntity.getCron(); if (cron.isEmpty()) { - logger.error("cron is null"); + log.error("cron is null"); } return new CronTrigger(cron).nextExecutionTime(triggerContext); }); @@ -54,7 +54,7 @@ public class SyncHeartTask implements SchedulingConfigurer { private void process() { - logger.info("数据同步心跳"); + log.info("数据同步心跳--"); //查询数据同步设置 SyncDataSetEntity syncDataSetEntity = syncDataSetDao.selectSet(); if (syncDataSetEntity.isDownstreamEnable()) { @@ -82,7 +82,7 @@ public class SyncHeartTask implements SchedulingConfigurer { redisUtil.set("SPS_SYNC_UPLOAD_DATA", curTime1); } } catch (Exception e) { - logger.error(ExceptionUtils.getStackTrace(e)); + log.error(ExceptionUtils.getStackTrace(e)); e.printStackTrace(); } @@ -103,7 +103,7 @@ public class SyncHeartTask implements SchedulingConfigurer { redisUtil.set("SPS_SYNC_UPLOAD_ORDER", curTime2); } } catch (Exception e) { - logger.error(ExceptionUtils.getStackTrace(e)); + log.error(ExceptionUtils.getStackTrace(e)); e.printStackTrace(); } @@ -121,13 +121,13 @@ public class SyncHeartTask implements SchedulingConfigurer { heartService.dlAllOrder(); } catch (Exception e) { e.printStackTrace(); - logger.error(ExceptionUtils.getStackTrace(e)); + log.error(ExceptionUtils.getStackTrace(e)); } try { heartService.dlAllDiProducts(); } catch (Exception e) { e.printStackTrace(); - logger.error(ExceptionUtils.getStackTrace(e)); + log.error(ExceptionUtils.getStackTrace(e)); } Arrays.stream(BasicExportTypeEnum.values()).forEach(i -> { heartService.pullData(i); diff --git a/src/main/java/com/glxp/api/task/SyncThirdSysTask.java b/src/main/java/com/glxp/api/task/SyncThirdSysTask.java index 7c9b708c8..fe6c696f3 100644 --- a/src/main/java/com/glxp/api/task/SyncThirdSysTask.java +++ b/src/main/java/com/glxp/api/task/SyncThirdSysTask.java @@ -277,7 +277,7 @@ public class SyncThirdSysTask implements SchedulingConfigurer { long timeInterval = Long.parseLong(thrSystemDetailEntity.getTime().intValue() + "") * 1000 * 60; if (curTime - lastTime < timeInterval) { - log.info("定时任务时间未到", taskKey); + log.info("定时任务时间未到---" + taskKey); return false; } else { return true; diff --git a/src/main/java/com/glxp/api/util/udi/UdiInfoUtil.java b/src/main/java/com/glxp/api/util/udi/UdiInfoUtil.java index 6683df3d5..3e96de848 100644 --- a/src/main/java/com/glxp/api/util/udi/UdiInfoUtil.java +++ b/src/main/java/com/glxp/api/util/udi/UdiInfoUtil.java @@ -30,7 +30,10 @@ public class UdiInfoUtil { } if (StrUtil.isNotEmpty(udiProductEntity.getScbssfbhxlh()) && "否".equals(udiProductEntity.getScbssfbhxlh())) { udiProductEntity.setAllowNoExpire(true); + } else if (StrUtil.isEmpty(udiProductEntity.getScbssfbhxlh())) { + udiProductEntity.setAllowNoExpire(true); } + return udiProductEntity; } @@ -52,13 +55,15 @@ public class UdiInfoUtil { } if (StrUtil.isNotEmpty(udiProductEntity.getScbssfbhxlh()) && "否".equals(udiProductEntity.getScbssfbhxlh())) { udiProductEntity.setAllowNoExpire(true); + } else if (StrUtil.isEmpty(udiProductEntity.getScbssfbhxlh())) { + udiProductEntity.setAllowNoExpire(true); } - //名字转拼音 - if (StrUtil.isNotBlank(udiProductEntity.getCpmctymc())) { + //名字转拼音 + if(StrUtil.isNotBlank(udiProductEntity.getCpmctymc())){ try { - String pinyin = PinyinUtils.converterToFirstSpell(udiProductEntity.getCpmctymc()); + String pinyin= PinyinUtils.converterToFirstSpell(udiProductEntity.getCpmctymc()); udiProductEntity.setPinyinInitial(pinyin); - } catch (Exception e) { + }catch (Exception e){ logger.error(ExceptionUtils.getStackTrace(e)); e.printStackTrace(); } diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index a87e0a10b..73c3e77e0 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -4,9 +4,9 @@ server: spring: datasource: driver-class-name: com.p6spy.engine.spy.P6SpyDriver - jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true + jdbc-url: jdbc:p6spy:mysql://192.168.0.66:3364/udi_wms_pzh?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true username: root - password: 123456 + password: Glxp@6066 hikari: connection-timeout: 60000 maximum-pool-size: 20 @@ -44,7 +44,8 @@ ok: logging: level: - com.glxp.api.dao: debug + com.glxp.api.dao: debu + file_path: D:/udi/inUdiwms/udiwmsfile/ UDI_KEY: 6b137c66-6286-46c6-8efa-c2f5dd9237df diff --git a/src/main/resources/application-pro.yml b/src/main/resources/application-pro.yml index d0e3e25a6..7d2de19c9 100644 --- a/src/main/resources/application-pro.yml +++ b/src/main/resources/application-pro.yml @@ -3,9 +3,9 @@ server: spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver - jdbc-url: jdbc:mysql://127.0.0.1:3306/udi_wms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true + jdbc-url: jdbc:mysql://192.168.0.61:3306/udi_wms_w?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true username: root - password: Glxp@6066 + password: 123456 hikari: connection-timeout: 60000 maximum-pool-size: 60 diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 788a2796b..80e18f1ee 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -8,7 +8,7 @@ spring: enabled: true max-file-size: 200MB max-request-size: 200MB - location: /tmp + location: D:/tmp mybatis-plus: mapper-locations: classpath:mybatis/mapper/*/*.xml diff --git a/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml b/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml index e7ce1c290..2988e29c1 100644 --- a/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml +++ b/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml @@ -37,6 +37,13 @@ ) and outType ]]> 1 + + AND (corpType in + + #{item} + + ) + AND (outType ]]> #{outType} or outType is NULL) @@ -355,6 +362,6 @@ SELECT * FROM basic_corp WHERE corpType = 1 - AND outType = 2; + AND outType = 1; diff --git a/src/main/resources/mybatis/mapper/basic/BasicDestinyRelMapper.xml b/src/main/resources/mybatis/mapper/basic/BasicDestinyRelMapper.xml new file mode 100644 index 000000000..3013cca15 --- /dev/null +++ b/src/main/resources/mybatis/mapper/basic/BasicDestinyRelMapper.xml @@ -0,0 +1,303 @@ + + + + + + + + + + + + + + id, relId, pId, `count` + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml b/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml index f25339d4d..e1ce86b40 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml @@ -1098,7 +1098,7 @@ select basic_udirel.*, - bht.name classifyName, - basic_products.originUuid, - basic_products.nameCode, - basic_products.deviceRecordKey, - basic_products.packRatio, - basic_products.packUnit, - basic_products.packLevel, - basic_products.bhxjsl, - basic_products.bhzxxsbzsl, - basic_products.zxxsbzbhsydysl, - basic_products.bhxjcpbm, - basic_products.bzcj, - basic_products.cpmctymc, - basic_products.cplb, - basic_products.flbm, - basic_products.ggxh, - basic_products.qxlb, - basic_products.tyshxydm, - basic_products.ylqxzcrbarmc, - basic_products.zczbhhzbapzbh, - basic_products.ylqxzcrbarywmc, - basic_products.sydycpbs, - basic_products.sjcpbm, - basic_products.versionNumber, - basic_products.diType, - basic_products.ybbm, - basic_products.sptm, - basic_products.manufactory, - basic_products.measname, - basic_products.productType, - basic_products.scbssfbhph, - basic_products.scbssfbhxlh, - basic_products.scbssfbhscrq, - basic_products.scbssfbhsxrq, - basic_products.cpms, - basic_products.allowNoBatch, - basic_products.allowNoExpire, - basic_products.allowNoProduct, - basic_products.allowNoSerial, - basic_products.spmc, - basic_products.cplx, - basic_products.hchzsb, - basic_products.cpdls, - basic_products.price, - basic_products.basicPrductRemak1, - basic_products.basicPrductRemak2, - basic_products.basicPrductRemak3, - basic_products.basicPrductRemak4, - basic_products.basicPrductRemak5, - basic_products.basicPrductRemak6, - basic_products.basicPrductRemak7, - basic_products.basicPrductRemak8 + bht.name classifyName, + basic_products.originUuid, + basic_products.nameCode, + basic_products.deviceRecordKey, + basic_products.packRatio, + basic_products.packUnit, + basic_products.packLevel, + basic_products.bhxjsl, + basic_products.bhzxxsbzsl, + basic_products.zxxsbzbhsydysl, + basic_products.bhxjcpbm, + basic_products.bzcj, + basic_products.cpmctymc, + basic_products.cplb, + basic_products.flbm, + basic_products.ggxh, + basic_products.qxlb, + basic_products.tyshxydm, + basic_products.ylqxzcrbarmc, + basic_products.zczbhhzbapzbh, + basic_products.ylqxzcrbarywmc, + basic_products.sydycpbs, + basic_products.sjcpbm, + basic_products.versionNumber, + basic_products.diType, + basic_products.ybbm, + basic_products.sptm, + basic_products.manufactory, + basic_products.measname, + basic_products.productType, + basic_products.scbssfbhph, + basic_products.scbssfbhxlh, + basic_products.scbssfbhscrq, + basic_products.scbssfbhsxrq, + basic_products.cpms, + basic_products.allowNoBatch, + basic_products.allowNoExpire, + basic_products.allowNoProduct, + basic_products.allowNoSerial, + basic_products.spmc, + basic_products.cplx, + basic_products.hchzsb, + basic_products.cpdls, + basic_products.price, + basic_products.basicPrductRemak1, + basic_products.basicPrductRemak2, + basic_products.basicPrductRemak3, + basic_products.basicPrductRemak4, + basic_products.basicPrductRemak5, + basic_products.basicPrductRemak6, + basic_products.basicPrductRemak7, + basic_products.basicPrductRemak8 FROM basic_products - inner JOIN basic_udirel - ON basic_products.uuid = basic_udirel.uuid - left join basic_hosp_type bht on basic_udirel.relCode = bht.code + inner JOIN basic_udirel + ON basic_products.uuid = basic_udirel.uuid + left join basic_hosp_type bht on basic_udirel.relCode = bht.code AND ylqxzcrbarmc LIKE concat('%', #{ylqxzcrbarmc}, '%') @@ -573,7 +574,7 @@ AND (relCode is null - or trim(relCode) = '') + or trim(relCode) = '') AND supName LIKE concat('%', #{supName}, '%') @@ -592,9 +593,9 @@ and ( - nameCode LIKE concat('%', #{unionCode}, '%') - or ybbm LIKE concat('%', #{unionCode}, '%') - or sptm LIKE concat('%', #{unionCode}, '%')) + nameCode LIKE concat('%', #{unionCode}, '%') + or ybbm LIKE concat('%', #{unionCode}, '%') + or sptm LIKE concat('%', #{unionCode}, '%')) AND (basic_udirel.isDisable is null or basic_udirel.isDisable = false) @@ -604,10 +605,10 @@ and (thirdId LIKE concat('%', #{thrPiId}, '%') - or thirdId1 LIKE concat('%', #{thrPiId}, '%') - or thirdId2 LIKE concat('%', #{thrPiId}, '%') - or thirdId3 LIKE concat('%', #{thrPiId}, '%') - or thirdId4 LIKE concat('%', #{thrPiId}, '%')) + or thirdId1 LIKE concat('%', #{thrPiId}, '%') + or thirdId2 LIKE concat('%', #{thrPiId}, '%') + or thirdId3 LIKE concat('%', #{thrPiId}, '%') + or thirdId4 LIKE concat('%', #{thrPiId}, '%')) AND basic_udirel.uuid = #{uuid} @@ -626,7 +627,7 @@ AND (thirdId ]]> '' or thirdId1 ]]> '' or thirdId2 ]]> '' or - thirdId3 ]]> '' or thirdId4 ]]> '') + thirdId3 ]]> '' or thirdId4 ]]> '') and basic_products.originUuid ]]> '' diff --git a/src/main/resources/mybatis/mapper/inout/IoDestinyProcessCodeMapper.xml b/src/main/resources/mybatis/mapper/inout/IoDestinyProcessCodeMapper.xml new file mode 100644 index 000000000..aa8ec5b29 --- /dev/null +++ b/src/main/resources/mybatis/mapper/inout/IoDestinyProcessCodeMapper.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + id, orderIdFk, bindRlFk, uuidFk, nameCode, batchNo, productDate, expireDate, price, + supId, `count`, updateTime + + + + + + \ No newline at end of file diff --git a/src/main/resources/mybatis/mapper/inout/IoDestinyProcessDetailMapper.xml b/src/main/resources/mybatis/mapper/inout/IoDestinyProcessDetailMapper.xml new file mode 100644 index 000000000..7f483b0a2 --- /dev/null +++ b/src/main/resources/mybatis/mapper/inout/IoDestinyProcessDetailMapper.xml @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + id, relId, `count`, reCount + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/mybatis/mapper/inout/IoDestinyProcessMapper.xml b/src/main/resources/mybatis/mapper/inout/IoDestinyProcessMapper.xml new file mode 100644 index 000000000..63cd8b7a6 --- /dev/null +++ b/src/main/resources/mybatis/mapper/inout/IoDestinyProcessMapper.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + id, destinyId, destinyNo, billNo, billDate, invCode, remark, createTime, updateTime, + `createUser`, updateUser, `status` + + \ No newline at end of file diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml index 0835692a2..cc532bb24 100644 --- a/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml @@ -27,8 +27,8 @@ SELECT a2.*, a1.mainAction, a1.auditTime, - b1.NAME AS fromCorpName, - (select name from auth_warehouse aw where aw.code = a1.fromInvCode) as fromInvName, + b1.NAME AS fromCorpName, + (select name from auth_warehouse aw where aw.code= a1.fromInvCode) as fromInvName, (SELECT NAME FROM basic_bussiness_type bus WHERE bus.action = a1.action) billTypeName FROM io_order_detail_result a2 LEFT JOIN io_order a1 ON a1.billNo = a2.orderIdFk @@ -95,11 +95,11 @@ spec, price, reCount, - io_order.deptCode + io_order.deptCode from io_order_detail_result - left JOIN io_order on io_order.billNo = io_order_detail_result.orderIdFk + left JOIN io_order on io_order.billNo=io_order_detail_result.orderIdFk - + orderIdFk in @@ -113,19 +113,19 @@ - SELECT * + SELECT *,cb.userName as createByName FROM thr_products + LEFT JOIN auth_user cb ON thr_products.createUser = cb.id AND name LIKE concat('%', #{name}, '%') @@ -42,6 +43,9 @@ AND supName LIKE concat('%', #{supName}, '%') + + AND type = #{type} + = DATE_FORMAT(#{lastUpdateTime}, '%Y-%m-%d %H:%i:%S') @@ -167,7 +171,7 @@ (id, code, `name`, measname, spec, registerNo, manufactory, cplb, flbm, qxlb, ybbm, sptm, tyshxydm, zczbhhzbapzbh, ylqxzcrbarmc, ylqxzcrbarywmc, cpms, thirdSysFk, updateTime, supName, model, standard, qtbm, zczyxqz, remark, remark1, remark2, remark3, - price, createUser, createTime, updateUser, manufactoryCode, supCode) + price, createUser, createTime, updateUser, manufactoryCode, supCode, type) values (#{id}, #{code}, #{name}, @@ -199,7 +203,7 @@ #{price}, #{createUser}, #{createTime}, - #{updateUser}, #{manufactoryCode}, #{supCode}) + #{updateUser}, #{manufactoryCode}, #{supCode},#{type})