From c34e935db4b96d88e772d0dc1d11a4278c70b795 Mon Sep 17 00:00:00 2001 From: anthonyywj2 <353682448@qq.com> Date: Thu, 5 May 2022 15:06:25 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=A4=87=E4=BB=BD=E3=80=82?= =?UTF-8?q?=E5=8D=95=E6=8D=AE=E8=87=AA=E5=8A=A8=E7=94=9F=E6=88=90=E4=BB=A5?= =?UTF-8?q?=E5=8F=8Abug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basic/UdiContrastController.java | 369 ++++++++++++++++++ .../basic/UdiRelevanceController.java | 254 +----------- .../sale/admin/dao/basic/ProductInfoDao.java | 2 + .../glxp/sale/admin/dao/basic/UdiInfoDao.java | 3 + .../sale/admin/dao/basic/UdiRelevanceDao.java | 5 + .../admin/entity/basic/UdiInfoEntity.java | 2 +- .../entity/basic/UdiRelevanceEntity.java | 1 + .../sale/admin/req/basic/CombineRequest.java | 2 + .../admin/req/basic/FilterUdiInfoRequest.java | 2 +- .../CompanyProductRelevanceResponse.java | 1 + .../admin/res/basic/UdiRelevanceResponse.java | 2 +- .../service/basic/UdiContrastService.java | 98 +++++ .../service/basic/UdiRelevanceService.java | 4 +- .../basic/impl/UdiRelevanceServiceImpl.java | 11 +- .../service/receipt/ProductInfoService.java | 2 + .../receipt/impl/ProductInfoServiceImpl.java | 14 + .../sale/admin/thread/UdiDlHttpClient.java | 44 +-- .../src/main/resources/logback-spring.xml | 6 +- .../mybatis/mapper/basic/ProductInfoDao.xml | 33 ++ .../mybatis/mapper/basic/UdiInfoDao.xml | 34 +- .../mybatis/mapper/basic/UdiRelevanceDao.xml | 28 +- .../info/CompanyProductRelevanceDao.xml | 2 +- 22 files changed, 598 insertions(+), 321 deletions(-) create mode 100644 api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiContrastController.java create mode 100644 api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiContrastService.java diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiContrastController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiContrastController.java new file mode 100644 index 0000000..80a3697 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiContrastController.java @@ -0,0 +1,369 @@ +package com.glxp.sale.admin.controller.basic; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +import com.github.pagehelper.PageInfo; +import com.glxp.sale.admin.annotation.AuthRuleAnnotation; +import com.glxp.sale.admin.constant.ConstantStatus; +import com.glxp.sale.admin.entity.basic.BasicThirdSysEntity; +import com.glxp.sale.admin.entity.basic.UdiInfoEntity; +import com.glxp.sale.admin.entity.basic.UdiRelevanceEntity; +import com.glxp.sale.admin.entity.info.CompanyEntity; +import com.glxp.sale.admin.entity.info.CompanyProductRelevanceEntity; +import com.glxp.sale.admin.entity.receipt.ProductInfoEntity; +import com.glxp.sale.admin.entity.thrsys.ThrProductsEntity; +import com.glxp.sale.admin.req.basic.CombineRequest; +import com.glxp.sale.admin.req.basic.RemoveRelRequest; +import com.glxp.sale.admin.req.receipt.ProductInfoFilterRequest; +import com.glxp.sale.admin.req.thrsys.FilterThrProductsRequest; +import com.glxp.sale.admin.res.PageSimpleResponse; +import com.glxp.sale.admin.service.auth.CustomerService; +import com.glxp.sale.admin.service.basic.BasicThirdSysService; +import com.glxp.sale.admin.service.basic.UdiContrastService; +import com.glxp.sale.admin.service.basic.UdiInfoService; +import com.glxp.sale.admin.service.basic.UdiRelevanceService; +import com.glxp.sale.admin.service.info.CompanyProductRelevanceService; +import com.glxp.sale.admin.service.info.CompanyService; +import com.glxp.sale.admin.service.receipt.ProductInfoService; +import com.glxp.sale.admin.service.thrsys.ThrProductsService; +import com.glxp.sale.admin.thread.UdiDlHttpClient; +import com.glxp.sale.admin.util.CustomUtil; +import com.glxp.sale.admin.util.DateUtil; +import com.glxp.sale.common.res.BaseResponse; +import com.glxp.sale.common.util.ResultVOUtils; +import org.springframework.beans.BeanUtils; +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.Date; +import java.util.List; + +@RestController +public class UdiContrastController { + + @Resource + UdiDlHttpClient udiDlHttpClient; + @Resource + UdiRelevanceService udiRelevanceService; + @Resource + UdiInfoService udiInfoService; + @Resource + CustomerService customerService; + @Resource + private BasicThirdSysService basicThirdSysService; + + @Resource + UdiContrastService udiContrastService; + @Resource + ThrProductsService thrProductsService; + @Resource + CompanyService companyService; + @Resource + private CompanyProductRelevanceService companyProductRelevanceService; + + + //添加产品 + @AuthRuleAnnotation("") + @PostMapping("/udi/udirel/revleance") + public BaseResponse revleanceUdi(@RequestBody CombineRequest combineRequest) { + combineRequest.setCustomerId(customerService.getCustomerId()); + List keys = combineRequest.getKeys(); + if (keys != null && keys.size() > 0) { + for (String key : keys) { + //关联添加 + if (StrUtil.isEmpty(combineRequest.getRelId()) || combineRequest.isIdSpliUdi()) { + if (StrUtil.isNotEmpty(combineRequest.getThirdId())) { + if (udiContrastService.isExit(key, combineRequest.getThirdId())) { + return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); + } else { + createUnionContrast(combineRequest, key); + + if (combineRequest.isIdSpliUdi()) { + List temps = udiContrastService.findByUnion(key, combineRequest.getThirdId()); + if (CollUtil.isNotEmpty(temps)) { + UdiRelevanceEntity temp = temps.get(0); + CompanyEntity companyEntity = companyService.findCompany(combineRequest.getCustomerId()); + CompanyProductRelevanceEntity companyProductRelevanceEntity = new CompanyProductRelevanceEntity(); + companyProductRelevanceEntity.setCreate_time(new Date()); + companyProductRelevanceEntity.setUpdate_time(new Date()); + companyProductRelevanceEntity.setAuditStatus("3"); + companyProductRelevanceEntity.setUnitFk(companyEntity.getUnitIdFk()); + companyProductRelevanceEntity.setUdiRlIdFk(Integer.parseInt(temp.getId())); + companyProductRelevanceEntity.setCustomerId(companyEntity.getCustomerId()); + boolean b = companyProductRelevanceService.insertCompanyProductRelevance(companyProductRelevanceEntity); + } + } + + } + } else { + //只添加DI + if (udiContrastService.isExit(key, null)) { + return ResultVOUtils.error(500, "已存在该DI,且未对照!"); + } else { + createOnlyUuid(combineRequest, key); + } + } + } else {//修改关联DI + UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(combineRequest.getRelId()); + if (udiContrastService.isExit(key, udiRelevanceEntity.getMainId())) { + return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); + } else { + updateDi(udiRelevanceEntity, key); + } + + } + } + } else if (CollUtil.isNotEmpty(combineRequest.getThirdIds())) { + //只添加产品 + for (String thirdId : combineRequest.getThirdIds()) { + if (udiContrastService.isExit(null, thirdId)) { + return ResultVOUtils.error(500, "产品编码:" + thirdId + "已存在!"); + } else { + createOnlyMainId(combineRequest, thirdId); + } + } + } + return ResultVOUtils.success("添加成功"); + } + + @AuthRuleAnnotation("") + @PostMapping("/udi/udirel/changeVersion") + public BaseResponse changeVersion(@RequestBody CombineRequest combineRequest) { + UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(combineRequest.getRelId()); + if (udiContrastService.isExit(combineRequest.getKeys().get(0), udiRelevanceEntity.getMainId())) { + return ResultVOUtils.error(500, "已存在相同的对照关系,无法切换版本"); + } + List udiInfoEntities = udiDlHttpClient.getUdiByUuid(combineRequest.getKeys().get(0)); + udiInfoService.insertUdiInfos(udiInfoEntities); + udiInfoService.deleteByUuid(udiRelevanceEntity.getUuid()); + udiRelevanceEntity.setUuid(udiInfoEntities.get(0).getUuid()); + udiRelevanceEntity.setUpdateTime(DateUtil.formatDateTime(new Date())); + udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); + return ResultVOUtils.success("切换成功!"); + } + + + //更换关联ERP产品 + @AuthRuleAnnotation("") + @PostMapping("/udi/udirel/modifyRel") + public BaseResponse modifyRel(@RequestBody CombineRequest combineRequest) { + + UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(combineRequest.getRelId()); + udiRelevanceEntity = setThird(combineRequest, udiRelevanceEntity); + udiRelevanceEntity.setUpdateTime(DateUtil.getDateTime()); + udiRelevanceEntity.setManufactory(combineRequest.getManufactory()); + udiRelevanceEntity.setSupName(combineRequest.getSupName()); + UdiRelevanceEntity temp = udiContrastService.findById(udiRelevanceEntity.getId()); + if (udiContrastService.isExit(temp.getOriginUuid(), udiRelevanceEntity.getMainId())) { + return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); + } else { + try { + udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); + } catch (Exception e) { + return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); + } + } + + + return ResultVOUtils.success("更新成功"); + } + + + //解除绑定产品信息ID + @AuthRuleAnnotation("") + @GetMapping("/udiwms/udirl/thirdSys/remove") + public BaseResponse removeThirdId(RemoveRelRequest removeRelRequest) { + UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(removeRelRequest.getRelId()); + List udiRelevanceEntities = udiRelevanceService.selectByUuid(udiRelevanceEntity.getUuid()); + if (udiRelevanceEntities != null && udiRelevanceEntities.size() > 0) { + for (UdiRelevanceEntity udiRelevanceEntity1 : udiRelevanceEntities) { + if (udiRelevanceEntity1.getThirdId() == null && udiRelevanceEntity1.getThirdId1() == null && + udiRelevanceEntity1.getThirdId2() == null && udiRelevanceEntity1.getThirdId3() == null && udiRelevanceEntity1.getThirdId4() == null) { + return ResultVOUtils.error(500, "解除绑定失败!"); + } + } + } + if (removeRelRequest.getThirdSys().equals("thirdId")) { + udiRelevanceEntity.setThirdId(""); + udiRelevanceEntity.setThirdName(""); + UdiRelevanceEntity temp = udiContrastService.findById(udiRelevanceEntity.getId()); + if (udiContrastService.isExit(temp.getOriginUuid(), null)) { + return ResultVOUtils.error(500, "解除绑定失败!"); + } + } else if (removeRelRequest.getThirdSys().equals("thirdId1")) { + udiRelevanceEntity.setThirdId1(""); + udiRelevanceEntity.setThirdName1(""); + } else if (removeRelRequest.getThirdSys().equals("thirdId2")) { + udiRelevanceEntity.setThirdId2(""); + udiRelevanceEntity.setThirdName2(""); + } else if (removeRelRequest.getThirdSys().equals("thirdId3")) { + udiRelevanceEntity.setThirdId3(""); + udiRelevanceEntity.setThirdName3(""); + } else if (removeRelRequest.getThirdSys().equals("thirdId4")) { + udiRelevanceEntity.setThirdId4(""); + udiRelevanceEntity.setThirdName4(""); + } + try { + CombineRequest combineRequest = new CombineRequest(); + combineRequest.setRelId(removeRelRequest.getRelId()); + udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); + } catch (Exception e) { + e.printStackTrace(); + return ResultVOUtils.error(500, "解除绑定失败!"); + } + return ResultVOUtils.success("解除绑定成功!"); + } + + + @Resource + ProductInfoService productInfoService; + + //獲取DI版本号 + @AuthRuleAnnotation("") + @GetMapping("/udiwms/syncdi/version") + public BaseResponse getVersion(CombineRequest combineRequest) { + List productInfoEntityList = new ArrayList<>(); + List udiRelevanceEntities = udiContrastService.findByUuid(combineRequest.getUuid()); + if (CollUtil.isNotEmpty(udiRelevanceEntities)) { + String originUuid = udiRelevanceEntities.get(0).getOriginUuid(); + List productInfoEntities = productInfoService.selectByUuid(originUuid); + if (CollUtil.isNotEmpty(productInfoEntities)) { + String deviceRecordKey = productInfoEntities.get(0).getDeviceRecordKey(); + ProductInfoFilterRequest productInfoFilterRequest = new ProductInfoFilterRequest(); + productInfoFilterRequest.setDeviceRecordKey(deviceRecordKey); + List result = productInfoService.filterProductGroup(productInfoFilterRequest); + if (CollUtil.isNotEmpty(result)) { + productInfoEntityList.addAll(result); + } + } + + } + + PageInfo pageInfo; + pageInfo = new PageInfo<>(productInfoEntityList); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(productInfoEntityList); + return ResultVOUtils.success(pageSimpleResponse); + + } + + public void createUnionContrast(CombineRequest combineRequest, String key) { + List udiInfoEntities = udiDlHttpClient.getUdiByUuid(key); + UdiRelevanceEntity udiRelevanceEntity = new UdiRelevanceEntity(); + udiRelevanceEntity.setThirdId(combineRequest.getThirdId()); + udiRelevanceEntity.setThirdName(combineRequest.getErpName()); + udiRelevanceEntity.setMainId(combineRequest.getThirdId()); + udiRelevanceEntity.setMainName(combineRequest.getErpName()); + udiRelevanceEntity.setUpdateTime(DateUtil.getDateTime()); + udiRelevanceEntity.setUuid(udiInfoEntities.get(0).getUuid()); + if (combineRequest.getManufactory() != null) { + udiRelevanceEntity.setManufactory(combineRequest.getManufactory()); + } else + udiRelevanceEntity.setManufactory(udiInfoEntities.get(0).getYlqxzcrbarmc()); + udiRelevanceEntity.setSupName(combineRequest.getSupName()); + udiRelevanceService.insertUdiRelevance(udiRelevanceEntity); + udiInfoService.insertUdiInfos(udiInfoEntities); + } + + public void createOnlyUuid(CombineRequest combineRequest, String key) { + List udiInfoEntities = udiDlHttpClient.getUdiByUuid(key); + UdiRelevanceEntity udiRelevanceEntity = new UdiRelevanceEntity(); + udiRelevanceEntity.setUpdateTime(DateUtil.getDateTime()); + udiRelevanceEntity.setUuid(udiInfoEntities.get(0).getUuid()); + udiRelevanceEntity.setManufactory(udiInfoEntities.get(0).getYlqxzcrbarmc()); + udiRelevanceEntity.setSupName(combineRequest.getSupName()); + udiRelevanceService.insertUdiRelevance(udiRelevanceEntity); + udiInfoService.insertUdiInfos(udiInfoEntities); + } + + public void createOnlyMainId(CombineRequest combineRequest, String mainId) { + FilterThrProductsRequest filterThrProductsRequest = new FilterThrProductsRequest(); + filterThrProductsRequest.setCode(mainId); + List thrProductsEntities = thrProductsService.selectThrProducts(filterThrProductsRequest); + ThrProductsEntity thrProductsEntity = thrProductsEntities.get(0); + UdiRelevanceEntity udiRelevanceEntity = new UdiRelevanceEntity(); + udiRelevanceEntity.setThirdId(thrProductsEntity.getCode()); + udiRelevanceEntity.setThirdName(thrProductsEntity.getName()); + udiRelevanceEntity.setMainId(thrProductsEntity.getCode()); + udiRelevanceEntity.setMainName(thrProductsEntity.getName()); + udiRelevanceEntity.setUpdateTime(DateUtil.getDateTime()); + udiRelevanceEntity.setUuid(CustomUtil.getUUId()); + udiRelevanceEntity.setManufactory(thrProductsEntity.getManufactory()); + udiRelevanceEntity.setSupName(combineRequest.getSupName()); + udiRelevanceService.insertUdiRelevance(udiRelevanceEntity); + UdiInfoEntity udiInfoEntity = new UdiInfoEntity(); + BeanUtils.copyProperties(thrProductsEntity, udiInfoEntity); + udiInfoEntity.setNameCode(thrProductsEntity.getCode()); + udiInfoEntity.setCpmctymc(thrProductsEntity.getName()); + udiInfoEntity.setManufactory(thrProductsEntity.getManufactory()); + udiInfoEntity.setYlqxzcrbarmc(thrProductsEntity.getManufactory()); + udiInfoEntity.setGgxh(thrProductsEntity.getSpec()); + udiInfoEntity.setZczbhhzbapzbh(thrProductsEntity.getRegisterNo()); + udiInfoEntity.setUuid(udiRelevanceEntity.getUuid()); + udiInfoEntity.setProductType(ConstantStatus.PRODUCT_TYPE_THIRD); + udiInfoEntity.setDiType(1); + udiInfoService.insertUdiInfo(udiInfoEntity); + } + + public void updateDi(UdiRelevanceEntity udiRelevanceEntity, String key) { + List udiInfoEntities = udiDlHttpClient.getUdiByUuid(key); + udiInfoService.deleteByUuid(udiRelevanceEntity.getUuid()); + udiRelevanceEntity.setUuid(udiInfoEntities.get(0).getUuid()); + udiRelevanceEntity.setUpdateTime(DateUtil.getDateTime()); + udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); + udiInfoService.insertUdiInfos(udiInfoEntities); + } + + + public UdiRelevanceEntity setThird(CombineRequest combineRequest, UdiRelevanceEntity udiRelevanceEntity) { + if ("thirdId".equals(combineRequest.getThirdSys())) { + udiRelevanceEntity.setThirdId(combineRequest.getThirdId()); + udiRelevanceEntity.setThirdName(combineRequest.getErpName()); + } else if ("thirdId1".equals(combineRequest.getThirdSys())) { + udiRelevanceEntity.setThirdId1(combineRequest.getThirdId()); + udiRelevanceEntity.setThirdName1(combineRequest.getErpName()); + } else if ("thirdId2".equals(combineRequest.getThirdSys())) { + udiRelevanceEntity.setThirdId2(combineRequest.getThirdId()); + udiRelevanceEntity.setThirdName2(combineRequest.getErpName()); + } else if ("thirdId3".equals(combineRequest.getThirdSys())) { + udiRelevanceEntity.setThirdId3(combineRequest.getThirdId()); + udiRelevanceEntity.setThirdName3(combineRequest.getErpName()); + } else if ("thirdId4".equals(combineRequest.getThirdSys())) { + udiRelevanceEntity.setThirdId4(combineRequest.getThirdId()); + udiRelevanceEntity.setThirdName4(combineRequest.getErpName()); + } + + BasicThirdSysEntity basicThirdSysEntity = basicThirdSysService.selectMainThrSys(); + String mainSys = basicThirdSysEntity.getThirdId(); + if (mainSys.equals("thirdId")) { + udiRelevanceEntity.setMainId(udiRelevanceEntity.getThirdId()); + udiRelevanceEntity.setMainName(udiRelevanceEntity.getThirdName()); + } else if (mainSys.equals("thirdId1")) { + udiRelevanceEntity.setMainId(udiRelevanceEntity.getThirdId1()); + udiRelevanceEntity.setMainName(udiRelevanceEntity.getThirdName1()); + } else if (mainSys.equals("thirdId2")) { + udiRelevanceEntity.setMainId(udiRelevanceEntity.getThirdId2()); + udiRelevanceEntity.setMainName(udiRelevanceEntity.getThirdName2()); + } else if (mainSys.equals("thirdId3")) { + udiRelevanceEntity.setMainId(udiRelevanceEntity.getThirdId3()); + udiRelevanceEntity.setMainName(udiRelevanceEntity.getThirdName3()); + } else if (mainSys.equals("thirdId4")) { + udiRelevanceEntity.setMainId(udiRelevanceEntity.getThirdId4()); + udiRelevanceEntity.setMainName(udiRelevanceEntity.getThirdName4()); + } + + if (combineRequest.getErpProductsResponse() != null) { + udiRelevanceEntity.setMeasname(combineRequest.getErpProductsResponse().getMeasname()); + udiRelevanceEntity.setManufactory(combineRequest.getErpProductsResponse().getManufactory()); + } + + return udiRelevanceEntity; + } + + +} diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiRelevanceController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiRelevanceController.java index 19e2c12..6c2b304 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiRelevanceController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiRelevanceController.java @@ -11,7 +11,6 @@ import com.glxp.sale.admin.entity.basic.BasicThirdSysEntity; import com.glxp.sale.admin.entity.basic.FilterSysEntity; import com.glxp.sale.admin.entity.basic.UdiInfoEntity; import com.glxp.sale.admin.entity.basic.UdiRelevanceEntity; -import com.glxp.sale.admin.entity.info.CompanyEntity; import com.glxp.sale.admin.entity.info.CompanyProductRelevanceEntity; import com.glxp.sale.admin.entity.inout.WarehouseEntity; import com.glxp.sale.admin.entity.inventory.InvProductEntity; @@ -37,13 +36,11 @@ import com.glxp.sale.admin.service.param.SystemParamConfigService; import com.glxp.sale.admin.service.thrsys.ThrDataService; import com.glxp.sale.admin.thread.BasicBackUpdateProductService; import com.glxp.sale.admin.thread.BasicUpdateProductService; -import com.glxp.sale.admin.thread.UdiDlHttpClient; import com.glxp.sale.admin.util.*; import com.glxp.sale.common.enums.ResultEnum; import com.glxp.sale.common.res.BaseResponse; import com.glxp.sale.common.util.ResultVOUtils; import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Value; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -52,15 +49,12 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.stream.Collectors; @RestController public class UdiRelevanceController { - @Resource - UdiDlHttpClient udiDlHttpClient; @Resource UdiRelevanceService udiRelevanceService; @Resource @@ -76,21 +70,15 @@ public class UdiRelevanceController { @Resource private BasicThirdSysService basicThirdSysService; @Resource - BasicThirdSysDetailService basicThirdSysDetailService; - @Resource ThrDataService thrDataService; @Resource InvProductService invProductService; @Resource InvPreProductService invPreProductService; @Resource - CompanyService companyService; - @Resource private CompanyProductRelevanceService companyProductRelevanceService; @Resource CustomerService customerService; - @Resource - RedisUtil redisUtil; @AuthRuleAnnotation("") @GetMapping("/udi/udirel/download") @@ -287,126 +275,7 @@ public class UdiRelevanceController { return ResultVOUtils.error(499, "所选产品DI已经被" + "第三方产品ID" + "绑定,您确定继续对照"); } } - return ResultVOUtils.success("合并成功"); - } - - - //新增或修改关联 - @AuthRuleAnnotation("") - @PostMapping("/udi/udirel/revleance") - public BaseResponse revleanceUdi(@RequestBody CombineRequest combineRequest) { - combineRequest.setCustomerId(customerService.getCustomerId()); - List keys = combineRequest.getKeys(); - if (keys != null && keys.size() > 0) { - for (String key : keys) { -// UdiInfoEntity udiInfoEntity = getUdiInfo(combineRequest); - FilterUdiInfoRequest filterUdiInfoRequest = new FilterUdiInfoRequest(); - filterUdiInfoRequest.setUuid(key); - List udiInfoEntities = udiInfoService.filterAllUdiInfo(filterUdiInfoRequest); - UdiRelevanceEntity udiRelevanceEntity = new UdiRelevanceEntity(); - if (udiInfoEntities == null || udiInfoEntities.isEmpty()) { - udiInfoEntities = udiDlHttpClient.getUdiByUuid(key); - if (udiInfoEntities != null && !udiInfoEntities.isEmpty()) { - udiInfoService.insertUdiInfos(udiInfoEntities); - - } else { - return ResultVOUtils.error(500, "连接UDI数据下载服务出错!"); - } - } - if (combineRequest.getManufactory() != null) { - udiRelevanceEntity.setManufactory(combineRequest.getManufactory()); - } else - udiRelevanceEntity.setManufactory(udiInfoEntities.get(0).getYlqxzcrbarmc()); - if (combineRequest.isIdSpliUdi()) { - udiRelevanceEntity.setThirdId(combineRequest.getThirdId()); - udiRelevanceEntity.setThirdName(combineRequest.getErpName()); - udiRelevanceEntity.setMainId(combineRequest.getThirdId()); - udiRelevanceEntity.setMainName(combineRequest.getErpName()); - udiRelevanceEntity.setUpdateTime(DateUtil.getDateTime()); - udiRelevanceEntity.setUuid(key); - udiRelevanceService.insertUdiRelevance(udiRelevanceEntity); - udiRelevanceEntity = udiRelevanceService.selectUpteaByAll(udiRelevanceEntity.getUuid(), udiRelevanceEntity.getThirdId()); - CompanyEntity companyEntity = companyService.findCompany(combineRequest.getCustomerId()); - CompanyProductRelevanceEntity companyProductRelevanceEntity = new CompanyProductRelevanceEntity(); - companyProductRelevanceEntity.setCreate_time(new Date()); - companyProductRelevanceEntity.setUpdate_time(new Date()); - companyProductRelevanceEntity.setAuditStatus("3"); - companyProductRelevanceEntity.setUnitFk(companyEntity.getUnitIdFk()); - companyProductRelevanceEntity.setUdiRlIdFk(Integer.parseInt(udiRelevanceEntity.getId())); - companyProductRelevanceEntity.setCustomerId(companyEntity.getCustomerId()); - boolean b = companyProductRelevanceService.insertCompanyProductRelevance(companyProductRelevanceEntity); - return ResultVOUtils.success("拆分成功!"); - } - - - if (combineRequest.getRelId() != null && !combineRequest.getRelId().equals("")) { - //修改 - //判断DI是否被使用,若使用则新增一条 - UdiRelevanceEntity temp = udiRelevanceService.selectById(combineRequest.getRelId()); - List udiRelevanceEntities = udiRelevanceService.selectByUuid(temp.getUuid()); - if (udiRelevanceEntities != null && !udiRelevanceEntities.isEmpty()) { - for (UdiRelevanceEntity udiRelevanceEntity1 : udiRelevanceEntities) { - List temps = udiInfoService.findByUuids(udiRelevanceEntity1.getUuid()); - if (temps != null && temps.size() > 0) { - for (int i = 0; i < temps.size(); i++) { - List warehouseEntityList = warehouseService.searchCode(temps.get(i).getNameCode()); - if (warehouseEntityList != null && warehouseEntityList.size() > 0) { - - //新增一条记录 - UdiRelevanceEntity newRlEntity = new UdiRelevanceEntity(); - newRlEntity = setThird(combineRequest, newRlEntity); - newRlEntity.setUpdateTime(DateUtil.getDateTime()); - newRlEntity.setUuid(key); - udiRelevanceEntity.setManufactory(temps.get(0).getYlqxzcrbarmc()); - udiRelevanceService.insertUdiRelevance(newRlEntity); - - return ResultVOUtils.success("合并成功"); - } - } - } - } - } - - UdiInfoEntity tempEntity = udiInfoEntities.get(0); - udiRelevanceEntity.setId(combineRequest.getRelId()); - udiRelevanceEntity.setUuid(key); - if (combineRequest.getManufactory() != null) { - udiRelevanceEntity.setManufactory(combineRequest.getManufactory()); - } else - udiRelevanceEntity.setManufactory(tempEntity.getManufactory()); - udiRelevanceEntity.setUpdateTime(DateUtil.getDateTime()); - try { - udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); - } catch (Exception e) { - return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); - } - - removeProducts(combineRequest); - } else { - List udiRelevanceEntities = udiRelevanceService.selectByUuid(key); - if (udiRelevanceEntities != null && !udiRelevanceEntities.isEmpty()) { - for (UdiRelevanceEntity udiRelevanceEntity1 : udiRelevanceEntities) { - if (StrUtil.isEmpty(combineRequest.getThirdId()) && StrUtil.isEmpty(udiRelevanceEntity1.getMainId())) { - return ResultVOUtils.error(500, "已存在该DI,且未关联!"); - } - } - } - udiRelevanceEntity = setThird(combineRequest, udiRelevanceEntity); - UdiRelevanceEntity temp = udiRelevanceService.selectUpteaByAll(key, combineRequest.getThirdId()); - if (temp == null || StrUtil.isEmpty(udiRelevanceEntity.getThirdId())) { - udiRelevanceEntity.setUpdateTime(DateUtil.getDateTime()); - udiRelevanceEntity.setUuid(key); - udiRelevanceService.insertUdiRelevance(udiRelevanceEntity); - - } else { - return ResultVOUtils.error(500, "重复关联!"); - } - } - - - } - } - return ResultVOUtils.success("合并成功"); + return ResultVOUtils.success("未选择产品"); } @@ -418,27 +287,6 @@ public class UdiRelevanceController { return ResultVOUtils.success("后台已开始导入,请稍后刷新查看"); } - //更换关联ERP产品 - @AuthRuleAnnotation("") - @PostMapping("/udi/udirel/modifyRel") - public BaseResponse modifyRel(@RequestBody CombineRequest combineRequest) { - - UdiRelevanceEntity udiRelevanceEntity = new UdiRelevanceEntity(); - udiRelevanceEntity.setId(combineRequest.getRelId()); - udiRelevanceEntity = setThird(combineRequest, udiRelevanceEntity); - udiRelevanceEntity.setUpdateTime(DateUtil.getDateTime()); - removeProducts(combineRequest); - udiRelevanceEntity.setManufactory(combineRequest.getManufactory()); -// udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); - - try { - udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); - } catch (Exception e) { - return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); - } - - return ResultVOUtils.success("更新成功"); - } //更换关联ERP产品 @AuthRuleAnnotation("") @@ -471,20 +319,6 @@ public class UdiRelevanceController { return null; } - public UdiInfoEntity removeProducts(CombineRequest combineRequest) { - UdiRelevanceEntity temp = udiRelevanceService.selectById(combineRequest.getRelId()); - FilterUdiInfoRequest filterUdiInfoRequest = new FilterUdiInfoRequest(); - filterUdiInfoRequest.setNameCode(combineRequest.getThirdId()); - filterUdiInfoRequest.setUuid(temp.getUuid()); - List udiInfoEntities = udiInfoService.filterUdiInfo(filterUdiInfoRequest); - if (udiInfoEntities != null && udiInfoEntities.size() > 0) { - UdiInfoEntity udiInfoEntity = udiInfoEntities.get(0); - if (udiInfoEntity.getDeviceRecordKey() == null) - udiInfoService.deleteById(udiInfoEntities.get(0).getId() + ""); - return udiInfoEntity; - } - return null; - } //单独选入ERP产品 @AuthRuleAnnotation("") @@ -511,42 +345,12 @@ public class UdiRelevanceController { @PostMapping("/udi/udirel/addAllErp") public BaseResponse addAllErp(@RequestBody CombineRequest combineRequest) { - String status = (String) redisUtil.get("load_thrid_basic"); -// if (status == null || !status.equals("process")) { -// redisUtil.set("load_thrid_basic", "process", 10 * 60); -// } else { -// return ResultVOUtils.error(500, "当前正在导入,请稍后刷新重试"); -// } if (combineRequest.getIsRlInv() != null && combineRequest.getIsRlInv()) { basicBackUpdateProductService.loadLocal(combineRequest.getQuery(), combineRequest.getThirdSys(), null, true); } else { basicBackUpdateProductService.loadLocal(combineRequest.getQuery(), combineRequest.getThirdSys(), null, null); } - -// BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailService.selectByKey("piQueryUrl", combineRequest.getThirdSys()); -// if (basicThirdSysDetailEntity == null || basicThirdSysDetailEntity.getValue() == null) -// return ResultVOUtils.error(500, "ERP产品信息接口地址未定义"); -// String url = basicThirdSysDetailEntity.getValue(); -// BasicThirdSysDetailEntity inQuery = basicThirdSysDetailService.selectByKey("invPiUrl", combineRequest.getThirdSys()); -// if (basicThirdSysDetailEntity.getFromType() == 0) { -// -// -// if (combineRequest.getIsRlInv() != null && combineRequest.getIsRlInv()) {//是否关联库存 -// basicBackUpdateProductService.addAllProducts(combineRequest.getQuery(), basicThirdSysDetailEntity.getValue(), inQuery.getValue(), combineRequest.getThirdSys(), true); -// } else { -// basicBackUpdateProductService.addAllProducts(combineRequest.getQuery(), basicThirdSysDetailEntity.getValue(), inQuery.getValue(), combineRequest.getThirdSys(), null); -// } -// -// } else { -// -// if (combineRequest.getIsRlInv() != null && combineRequest.getIsRlInv()) { -// basicBackUpdateProductService.loadLocal(combineRequest.getQuery(), combineRequest.getThirdSys(), inQuery.getValue(), true); -// } else { -// basicBackUpdateProductService.loadLocal(combineRequest.getQuery(), combineRequest.getThirdSys(), inQuery.getValue(), null); -// } -// -// } return ResultVOUtils.success("后台正在添加,请稍后刷新查看!"); } @@ -789,59 +593,15 @@ public class UdiRelevanceController { return ResultVOUtils.success(pageSimpleResponse); } - //解除绑定产品信息ID - @AuthRuleAnnotation("") - @GetMapping("/udiwms/udirl/thirdSys/remove") - public BaseResponse removeThirdId(RemoveRelRequest removeRelRequest) { - UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(removeRelRequest.getRelId()); - List udiRelevanceEntities = udiRelevanceService.selectByUuid(udiRelevanceEntity.getUuid()); - if (udiRelevanceEntities != null && udiRelevanceEntities.size() > 0) { - for (UdiRelevanceEntity udiRelevanceEntity1 : udiRelevanceEntities) { - if (udiRelevanceEntity1.getThirdId() == null && udiRelevanceEntity1.getThirdId1() == null && - udiRelevanceEntity1.getThirdId2() == null && udiRelevanceEntity1.getThirdId3() == null && udiRelevanceEntity1.getThirdId4() == null) { - return ResultVOUtils.error(500, "解除绑定失败!"); - } - } - } - if (removeRelRequest.getThirdSys().equals("thirdId")) { - udiRelevanceEntity.setThirdId(""); - udiRelevanceEntity.setThirdName(""); - } else if (removeRelRequest.getThirdSys().equals("thirdId1")) { - udiRelevanceEntity.setThirdId1(""); - udiRelevanceEntity.setThirdName1(""); - } else if (removeRelRequest.getThirdSys().equals("thirdId2")) { - udiRelevanceEntity.setThirdId2(""); - udiRelevanceEntity.setThirdName2(""); - } else if (removeRelRequest.getThirdSys().equals("thirdId3")) { - udiRelevanceEntity.setThirdId3(""); - udiRelevanceEntity.setThirdName3(""); - } else if (removeRelRequest.getThirdSys().equals("thirdId4")) { - udiRelevanceEntity.setThirdId4(""); - udiRelevanceEntity.setThirdName4(""); - } - try { - CombineRequest combineRequest = new CombineRequest(); - combineRequest.setRelId(removeRelRequest.getRelId()); - removeProducts(combineRequest); - udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); - } catch (Exception e) { - e.printStackTrace(); - return ResultVOUtils.error(500, "解除绑定失败!"); - } - return ResultVOUtils.success("解除绑定成功!"); - } - //解除绑定DI器械信息 @AuthRuleAnnotation("") @GetMapping("/udiwms/udirl/di/remove") public BaseResponse removeDI(RemoveRelRequest removeRelRequest) { UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(removeRelRequest.getRelId()); - if (StrUtil.isEmpty(udiRelevanceEntity.getMainId())) { return ResultVOUtils.error(500, "未关联第三方产品ID,无法解除绑定!"); } - List temps = udiRelevanceService.selectByMainId(udiRelevanceEntity.getMainId()); if (temps.size() > 0) { for (UdiRelevanceResponse temp : temps) { @@ -851,8 +611,6 @@ public class UdiRelevanceController { } } } - - BasicThirdSysEntity basicThirdSysEntity = basicThirdSysService.selectMainThrSys(); ThrProductsEntity thrProductsEntity = thrDataService.getProducts(udiRelevanceEntity.getMainId(), basicThirdSysEntity.getThirdId()); UdiInfoEntity udiInfoEntity = new UdiInfoEntity(); @@ -944,14 +702,4 @@ public class UdiRelevanceController { } - public BasicThirdSysEntity filterThirdSys(String thirdId, List basicThirdSysEntities) { - if (basicThirdSysEntities != null && basicThirdSysEntities.size() > 0) { - for (BasicThirdSysEntity basicThirdSysEntity : basicThirdSysEntities) { - if (thirdId.equals(basicThirdSysEntity.getThirdId())) { - return basicThirdSysEntity; - } - } - } - return null; - } } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/ProductInfoDao.java b/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/ProductInfoDao.java index d31c73f..341c305 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/ProductInfoDao.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/ProductInfoDao.java @@ -13,6 +13,8 @@ public interface ProductInfoDao { List filterProductInfo(ProductInfoFilterRequest productInfoFilterRequest); + List filterProductGroup(ProductInfoFilterRequest productInfoFilterRequest); + List filterCpmctymc(ProductInfoFilterRequest productInfoFilterRequest); List filterUdiByTyshxydm(ProductInfoFilterRequest productInfoFilterRequest); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/UdiInfoDao.java b/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/UdiInfoDao.java index d33d161..0bb8b33 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/UdiInfoDao.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/UdiInfoDao.java @@ -1,6 +1,7 @@ package com.glxp.sale.admin.dao.basic; import com.glxp.sale.admin.entity.basic.UdiInfoEntity; +import com.glxp.sale.admin.entity.basic.UdiRelevanceEntity; import com.glxp.sale.admin.req.basic.FilterUdiInfoRequest; import com.glxp.sale.admin.res.basic.UdiRelevanceResponse; import org.apache.ibatis.annotations.Mapper; @@ -41,6 +42,8 @@ public interface UdiInfoDao { */ List batchSelectByUuid(@Param("uuids") List uuids); + List batchSelectByOriginUuid(@Param("uuids") List originUuids); + /** * 导入医疗器械信息 * diff --git a/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/UdiRelevanceDao.java b/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/UdiRelevanceDao.java index 59dfc35..ef37c84 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/UdiRelevanceDao.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/UdiRelevanceDao.java @@ -21,6 +21,10 @@ public interface UdiRelevanceDao { // UdiRelevanceResponse selectUdiByUUid List selectByUuid(@Param("uuid") String uuid); + + List selectByOrigiUuid(FilterUdiInfoRequest filterUdiInfoRequest); + + UdiRelevanceEntity selectById(@Param("id") String id); UdiRelevanceEntity selectByThirdId(FilterUdiInfoRequest filterUdiInfoRequest); @@ -48,6 +52,7 @@ public interface UdiRelevanceDao { */ List batchSelectByUuid(@Param("uuids") List uuids); + List batchSelectByIds(@Param("ids") List ids); /** diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiInfoEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiInfoEntity.java index a41e9e7..dd5e667 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiInfoEntity.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiInfoEntity.java @@ -42,7 +42,7 @@ public class UdiInfoEntity { private String scbssfbhscrq; private String scbssfbhsxrq; private String cpms; - + private String originUuid; //本地生成信息 private String batchNo; diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiRelevanceEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiRelevanceEntity.java index 15be8f3..854a05d 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiRelevanceEntity.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiRelevanceEntity.java @@ -31,6 +31,7 @@ public class UdiRelevanceEntity { private String udplatCode; private Boolean isAdavence; private String supName; + private String originUuid; public Integer getLockStatus() { if (lockStatus == null) diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/basic/CombineRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/basic/CombineRequest.java index 674b3a0..466fd80 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/basic/CombineRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/basic/CombineRequest.java @@ -21,5 +21,7 @@ public class CombineRequest { private Long customerId; private Boolean supEnable; private String manufactory; + private String supName; private boolean idSpliUdi; + private String uuid; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/basic/FilterUdiInfoRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/basic/FilterUdiInfoRequest.java index 8c7d413..fc700d6 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/basic/FilterUdiInfoRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/basic/FilterUdiInfoRequest.java @@ -57,6 +57,6 @@ public class FilterUdiInfoRequest extends ListPageRequest { private String uniqueNameCode; private String supName; private String unitFk; - + private String originUuid; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/res/basic/CompanyProductRelevanceResponse.java b/api-admin/src/main/java/com/glxp/sale/admin/res/basic/CompanyProductRelevanceResponse.java index 25f4d78..4666673 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/res/basic/CompanyProductRelevanceResponse.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/res/basic/CompanyProductRelevanceResponse.java @@ -10,6 +10,7 @@ public class CompanyProductRelevanceResponse { private String thirdId; private String thirdName; private String uuid; + private String originUuid; private String nameCode; private String packLevel; private String packRatio; diff --git a/api-admin/src/main/java/com/glxp/sale/admin/res/basic/UdiRelevanceResponse.java b/api-admin/src/main/java/com/glxp/sale/admin/res/basic/UdiRelevanceResponse.java index 5594b21..a6ce764 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/res/basic/UdiRelevanceResponse.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/res/basic/UdiRelevanceResponse.java @@ -65,7 +65,7 @@ public class UdiRelevanceResponse { private String manufactory; private String unitFk; private String companyName; - + private String originUuid; public int getBhzxxsbzsl() { if (bhzxxsbzsl == null || bhzxxsbzsl == 0) { diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiContrastService.java b/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiContrastService.java new file mode 100644 index 0000000..a7955c9 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiContrastService.java @@ -0,0 +1,98 @@ +package com.glxp.sale.admin.service.basic; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +import com.glxp.sale.admin.dao.basic.UdiRelevanceDao; +import com.glxp.sale.admin.entity.basic.UdiRelevanceEntity; +import com.glxp.sale.admin.req.basic.FilterUdiInfoRequest; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class UdiContrastService { + + @Resource + UdiRelevanceDao udiRelevanceDao; + + + public boolean isExit(String originUuid, String mainId) { + + if (StrUtil.isNotEmpty(originUuid) && StrUtil.isNotEmpty(mainId)) { + List udiRelevanceEntities = findByUnion(originUuid, mainId); + if (CollUtil.isNotEmpty(udiRelevanceEntities)) { + return true; + } else + return false; + } else if (StrUtil.isNotEmpty(originUuid) && StrUtil.isEmpty(mainId)) { + List udiRelevanceEntities = findByOriginUuid(originUuid); + if (CollUtil.isNotEmpty(udiRelevanceEntities)) { + for (UdiRelevanceEntity udiRelevanceEntity : udiRelevanceEntities) { + if (StrUtil.isEmpty(udiRelevanceEntity.getMainId()) && StrUtil.isNotEmpty(udiRelevanceEntity.getOriginUuid())) { + return true; + } + } + } + return false; + } else if (StrUtil.isEmpty(originUuid) && StrUtil.isNotEmpty(mainId)) { + List udiRelevanceEntities = findByMainId(mainId); + if (CollUtil.isNotEmpty(udiRelevanceEntities)) { + for (UdiRelevanceEntity udiRelevanceEntity : udiRelevanceEntities) { + if (StrUtil.isEmpty(udiRelevanceEntity.getOriginUuid()) && StrUtil.isNotEmpty(udiRelevanceEntity.getMainId())) { + return true; + } + } + } + return false; + } else return false; + + + } + + public List findByUnion(String originUuid, String mainId) { + FilterUdiInfoRequest filterUdiInfoRequest = new FilterUdiInfoRequest(); + filterUdiInfoRequest.setMainId(mainId); + filterUdiInfoRequest.setOriginUuid(originUuid); + List udiRelevanceEntities = udiRelevanceDao.selectByOrigiUuid(filterUdiInfoRequest); + return udiRelevanceEntities; + } + + public List findByUuid(String uuid) { + FilterUdiInfoRequest filterUdiInfoRequest = new FilterUdiInfoRequest(); + filterUdiInfoRequest.setUuid(uuid); + List udiRelevanceEntities = udiRelevanceDao.selectByOrigiUuid(filterUdiInfoRequest); + return udiRelevanceEntities; + } + + public UdiRelevanceEntity findById(String id) { + FilterUdiInfoRequest filterUdiInfoRequest = new FilterUdiInfoRequest(); + filterUdiInfoRequest.setId(id); + List udiRelevanceEntities = udiRelevanceDao.selectByOrigiUuid(filterUdiInfoRequest); + if (CollUtil.isNotEmpty(udiRelevanceEntities)) + return udiRelevanceEntities.get(0); + return null; + } + + public List findByOriginUuid(String originUuid) { + FilterUdiInfoRequest filterUdiInfoRequest = new FilterUdiInfoRequest(); + filterUdiInfoRequest.setOriginUuid(originUuid); + List udiRelevanceEntities = udiRelevanceDao.selectByOrigiUuid(filterUdiInfoRequest); + return udiRelevanceEntities; + } + + public List findByMainId(String mainId) { + FilterUdiInfoRequest filterUdiInfoRequest = new FilterUdiInfoRequest(); + filterUdiInfoRequest.setMainId(mainId); + List udiRelevanceEntities = udiRelevanceDao.selectByOrigiUuid(filterUdiInfoRequest); + return udiRelevanceEntities; + } + + + public List filterAll(FilterUdiInfoRequest filterUdiInfoRequest) { + List udiRelevanceEntities = udiRelevanceDao.selectByOrigiUuid(filterUdiInfoRequest); + return udiRelevanceEntities; + } + + +} diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiRelevanceService.java b/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiRelevanceService.java index 95b8725..560800d 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiRelevanceService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiRelevanceService.java @@ -18,7 +18,7 @@ public interface UdiRelevanceService { UdiRelevanceResponse selectByNameCode(String nameCode); - List selectAllByNameCode(String nameCode,String unitFk); + List selectAllByNameCode(String nameCode, String unitFk); boolean isExit(); @@ -28,10 +28,12 @@ public interface UdiRelevanceService { List batchSelectByUuid(List uuids); + List batchSelectByIds(List ids); List selectByUuid(String uuid); + UdiRelevanceEntity selectById(String id); UdiRelevanceResponse selectGroupById(String id); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/basic/impl/UdiRelevanceServiceImpl.java b/api-admin/src/main/java/com/glxp/sale/admin/service/basic/impl/UdiRelevanceServiceImpl.java index 5e46304..2ced31c 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/basic/impl/UdiRelevanceServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/basic/impl/UdiRelevanceServiceImpl.java @@ -129,6 +129,7 @@ public class UdiRelevanceServiceImpl implements UdiRelevanceService { return udiRelevanceDao.batchSelectByUuid(uuids); } + @Override public List batchSelectByIds(List ids) { return udiRelevanceDao.batchSelectByIds(ids); @@ -139,6 +140,7 @@ public class UdiRelevanceServiceImpl implements UdiRelevanceService { return udiRelevanceDao.selectByUuid(uuid); } + @Override public UdiRelevanceEntity selectById(String id) { return udiRelevanceDao.selectById(id); @@ -218,15 +220,6 @@ public class UdiRelevanceServiceImpl implements UdiRelevanceService { } List data = udiRelevanceDao.filterEntity(filterUdiInfoRequest); -// if ((data == null || data.isEmpty()) && thirdId != null) { -// filterUdiInfoRequest.setUuid(null); -// data = udiRelevanceDao.filterEntity(filterUdiInfoRequest); -// if ((data == null || data.isEmpty()) && uuid != null) { -// filterUdiInfoRequest.setUuid(uuid); -// filterUdiInfoRequest.setThirdId(null); -// data = udiRelevanceDao.filterEntity(filterUdiInfoRequest); -// } -// } if (data != null && data.size() > 0) diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/ProductInfoService.java b/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/ProductInfoService.java index b4ebc9e..84fe67e 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/ProductInfoService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/ProductInfoService.java @@ -15,6 +15,8 @@ public interface ProductInfoService { List filterProductInfo(ProductInfoFilterRequest productInfoFilterRequest); + List filterProductGroup(ProductInfoFilterRequest productInfoFilterRequest); + List filterUdiByTyshxydm(ProductInfoFilterRequest productInfoFilterRequest); List filterUdiByCreditNo(ProductInfoFilterRequest productInfoFilterRequest); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/impl/ProductInfoServiceImpl.java b/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/impl/ProductInfoServiceImpl.java index 05eab7e..19e786a 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/impl/ProductInfoServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/impl/ProductInfoServiceImpl.java @@ -42,6 +42,20 @@ public class ProductInfoServiceImpl implements ProductInfoService { return data; } + @Override + public List filterProductGroup(ProductInfoFilterRequest productInfoFilterRequest) { + if (productInfoFilterRequest == null) { + return Collections.emptyList(); + } + if (productInfoFilterRequest.getPage() != null && !productInfoFilterRequest.getPage().equals("")) { + int offset = (productInfoFilterRequest.getPage() - 1) * productInfoFilterRequest.getLimit(); + PageHelper.offsetPage(offset, productInfoFilterRequest.getLimit()); + } + + List data = productInfoDao.filterProductGroup(productInfoFilterRequest); + return data; + } + @Override public List filterUdiByTyshxydm(ProductInfoFilterRequest productInfoFilterRequest) { diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/UdiDlHttpClient.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/UdiDlHttpClient.java index 7f1a8de..b636866 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/UdiDlHttpClient.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/UdiDlHttpClient.java @@ -8,6 +8,7 @@ import com.glxp.sale.admin.req.receipt.ProductInfoFilterRequest; import com.glxp.sale.admin.service.receipt.ProductInfoService; import com.glxp.sale.admin.util.BeanUtils; import com.glxp.sale.admin.util.HttpClient; +import com.glxp.sale.admin.util.UuidUtils; import com.glxp.sale.common.res.BaseResponse; import com.glxp.sale.common.util.ResultVOUtils; import org.springframework.beans.factory.annotation.Value; @@ -37,32 +38,15 @@ public class UdiDlHttpClient { List productInfoEntityList = productInfoService.findAll(productInfoFilterRequest); List udiInfoEntities = new ArrayList<>(); + String myUuid = UuidUtils.getUUId(); for (ProductInfoEntity productInfoEntity : productInfoEntityList) { UdiInfoEntity udiInfoEntity = new UdiInfoEntity(); BeanUtils.copyProperties(productInfoEntity, udiInfoEntity); + udiInfoEntity.setUuid(myUuid); + udiInfoEntity.setOriginUuid(productInfoEntity.getUuid()); udiInfoEntities.add(udiInfoEntity); } return udiInfoEntities; -// -// Map paramMap = new HashMap<>(16); -// paramMap.put("page", 1); -// paramMap.put("limit", 100); -// paramMap.put("uuid", uuid); -// String response = httpClient.mipsGetHead(udiUrl + "/udidl/device/filterByUuid", paramMap); -// try { -//// BaseResponse> udiDlDeviceResponse = (BaseResponse>) JSONObject.parseObject(response, BaseResponse.class); -// -// BaseResponse> udiDlDeviceResponse = -// JSONObject.parseObject(response, new TypeReference>>() { -// -// }); -// -// List udiInfoEntities = udiDlDeviceResponse.getData(); -// return udiInfoEntities; -// } catch (Exception e) { -// e.printStackTrace(); -// return null; -// } } public List getUdiByDi(String key) { @@ -90,25 +74,5 @@ public class UdiDlHttpClient { } return udiInfoEntities; -// Map paramMap = new HashMap<>(16); -// paramMap.put("page", 1); -// paramMap.put("limit", 100); -// paramMap.put("nameCode", key); -// String response = httpClient.mipsGetHead(udiUrl + "/udidl/device/filterByNameCode", paramMap); -// try { -// BaseResponse> udiDlDeviceResponse = -// JSONObject.parseObject(response, new TypeReference>>() { -// -// }); -// if (udiDlDeviceResponse != null && udiDlDeviceResponse.getCode() == 20000) { -// List udiInfoEntities = udiDlDeviceResponse.getData(); -// return udiInfoEntities; -// } -// -// } catch (Exception e) { -// e.printStackTrace(); -// return null; -// } -// return null; } } diff --git a/api-admin/src/main/resources/logback-spring.xml b/api-admin/src/main/resources/logback-spring.xml index a9fae50..4c0c9e1 100644 --- a/api-admin/src/main/resources/logback-spring.xml +++ b/api-admin/src/main/resources/logback-spring.xml @@ -37,8 +37,8 @@ ACCEPT - - d://glxpdata/udiwms/logs/${LOG_INFO_HOME}//%d{yyyy-MM-dd}_%i.log + + /home/glxpdata/udiwms/logs/${LOG_INFO_HOME}//%d{yyyy-MM-dd}_%i.log 30 - d://glxpdata/udiwms/logs/${LOG_ERROR_HOME}//%d{yyyy-MM-dd}_%i.log + /home/glxpdata/udiwms/logs/${LOG_ERROR_HOME}//%d{yyyy-MM-dd}_%i.log 30 + + + @@ -40,7 +43,7 @@ basic_products.scbssfbhph, basic_products.scbssfbhxlh, basic_products.scbssfbhscrq, - basic_products.scbssfbhsxrq,basic_products.cpms + basic_products.scbssfbhsxrq,basic_products.cpms,basic_products.originUuid FROM (company_product_relevance inner JOIN basic_udirel ON company_product_relevance.udiRlIdFk = basic_udirel.id) @@ -81,8 +84,11 @@ AND company_product_relevance.customerId = #{customerId} - + + AND originUuid = #{originUuid} + + ORDER BY updateTime DESC @@ -124,7 +130,7 @@ nameCode,packRatio,packLevel,bhxjsl, bhzxxsbzsl,zxxsbzbhsydysl,bhxjcpbm,bzcj,addType,deviceRecordKey, cpmctymc,cplb,flbm,ggxh,qxlb,tyshxydm,ylqxzcrbarmc,zczbhhzbapzbh,ylqxzcrbarywmc,uuid,sjcpbm,versionNumber - ,diType,productType,scbssfbhph,scbssfbhxlh,scbssfbhscrq,scbssfbhsxrq,cpms,manufactory) + ,diType,productType,scbssfbhph,scbssfbhxlh,scbssfbhscrq,scbssfbhsxrq,cpms,manufactory,originUuid) values ( #{id}, @@ -155,7 +161,9 @@ #{scbssfbhph}, #{scbssfbhxlh}, #{scbssfbhscrq}, - #{scbssfbhsxrq},#{cpms},#{manufactory} + #{scbssfbhsxrq}, + #{cpms}, + #{manufactory},#{originUuid} ) @@ -165,7 +173,7 @@ nameCode,packRatio,packLevel,bhxjsl, bhzxxsbzsl,zxxsbzbhsydysl,bhxjcpbm,bzcj,addType,deviceRecordKey, cpmctymc,cplb,flbm,ggxh,qxlb,tyshxydm,ylqxzcrbarmc,zczbhhzbapzbh,ylqxzcrbarywmc,uuid,sjcpbm,versionNumber - ,diType,productType,scbssfbhph,scbssfbhxlh,scbssfbhscrq,scbssfbhsxrq,cpms,manufactory + ,diType,productType,scbssfbhph,scbssfbhxlh,scbssfbhscrq,scbssfbhsxrq,cpms,manufactory,originUuid ) values @@ -197,7 +205,7 @@ #{item.diType},#{item.productType}, #{item.scbssfbhph}, #{item.scbssfbhxlh}, #{item.scbssfbhscrq}, - #{item.scbssfbhsxrq},#{item.cpms},#{item.manufactory} + #{item.scbssfbhsxrq},#{item.cpms},#{item.manufactory},#{item.originUuid} ) @@ -248,6 +256,7 @@ scbssfbhscrq=#{scbssfbhscrq}, scbssfbhsxrq=#{scbssfbhsxrq}, cpms=#{cpms}, + originUuid=#{originUuid}, WHERE nameCode = #{nameCode} @@ -261,12 +270,21 @@ + + + replace into basic_products (id, nameCode, packRatio, packLevel, bhxjsl, bhzxxsbzsl, zxxsbzbhsydysl, bhxjcpbm, bzcj, addType, deviceRecordKey, cpmctymc, cplb, flbm, ggxh, qxlb, tyshxydm, ylqxzcrbarmc, zczbhhzbapzbh, ylqxzcrbarywmc, sydycpbs, uuid, sjcpbm, versionNumber, diType, ybbm, sptm, manufactory, measname, - productType,scbssfbhph,scbssfbhxlh,scbssfbhscrq,scbssfbhsxrq,cpms) values + productType,scbssfbhph,scbssfbhxlh,scbssfbhscrq,scbssfbhsxrq,cpms,originUuid) values (#{item.id}, #{item.nameCode}, @@ -300,7 +318,7 @@ #{item.productType}, #{item.scbssfbhph}, #{item.scbssfbhxlh}, #{item.scbssfbhscrq}, - #{item.scbssfbhsxrq},#{item.cpms}) + #{item.scbssfbhsxrq},#{item.cpms},#{item.originUuid}) \ No newline at end of file diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index b251445..e71af63 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -24,7 +24,7 @@ basic_products.diType,basic_products.productType,basic_products.scbssfbhph, basic_products.scbssfbhxlh, basic_products.scbssfbhscrq, - basic_products.scbssfbhsxrq,basic_products.cpms,basic_udirel.supName + basic_products.scbssfbhsxrq,basic_products.cpms,basic_udirel.supName,basic_products.originUuid FROM basic_udirel inner JOIN basic_products ON basic_products.uuid = basic_udirel.uuid @@ -109,7 +109,8 @@ basic_products.diType,basic_products.productType,basic_products.scbssfbhph, basic_products.scbssfbhxlh, basic_products.scbssfbhscrq, - basic_products.scbssfbhsxrq,basic_products.cpms,basic_udirel.supName,company_product_relevance.unitFk, customer_info.companyName + basic_products.scbssfbhsxrq,basic_products.cpms,basic_udirel.supName,company_product_relevance.unitFk, + customer_info.companyName,basic_products.originUuid FROM basic_udirel inner JOIN basic_products ON basic_products.uuid = basic_udirel.uuid @@ -196,7 +197,7 @@ basic_udirel.mainId,basic_udirel.mainName,basic_udirel.isAdavence,basic_products.scbssfbhph, basic_products.scbssfbhxlh, basic_products.scbssfbhscrq, - basic_products.scbssfbhsxrq,basic_products.cpms,basic_udirel.supName + basic_products.scbssfbhsxrq,basic_products.cpms,basic_udirel.supName,basic_products.originUuid FROM basic_products right JOIN basic_udirel ON basic_products.uuid = basic_udirel.uuid @@ -296,6 +297,26 @@ + + + +