From 53aa0b11a82fc40ec524fcdc229db7bcccf43489 Mon Sep 17 00:00:00 2001 From: anthonywj Date: Tue, 13 Jun 2023 09:05:12 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E7=95=8C=E9=9D=A2=E6=A0=87=E9=A2=98?= =?UTF-8?q?=E7=AD=89logo=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/controller/auth/LoginController.java | 14 ++++++++++++++ .../inout/IoOrderReviewController.java | 17 ++++++----------- .../com/glxp/api/res/auth/WebTitleResponse.java | 10 ++++++++++ .../glxp/api/service/inout/IoGenInvService.java | 14 ++++++++------ src/main/resources/application-dev.yml | 3 ++- src/main/resources/application-pro.yml | 1 + src/main/resources/application-test.yml | 1 + src/main/resources/application-wmd.yml | 1 + 8 files changed, 43 insertions(+), 18 deletions(-) create mode 100644 src/main/java/com/glxp/api/res/auth/WebTitleResponse.java diff --git a/src/main/java/com/glxp/api/controller/auth/LoginController.java b/src/main/java/com/glxp/api/controller/auth/LoginController.java index 9367112da..d9c918a33 100644 --- a/src/main/java/com/glxp/api/controller/auth/LoginController.java +++ b/src/main/java/com/glxp/api/controller/auth/LoginController.java @@ -14,6 +14,7 @@ import com.glxp.api.req.auth.PCLoginRequest; import com.glxp.api.req.auth.UpdatePasswordRequest; import com.glxp.api.res.auth.LoginResponse; import com.glxp.api.res.auth.LoginUserInfoResponse; +import com.glxp.api.res.auth.WebTitleResponse; import com.glxp.api.service.system.CompanyService; import com.glxp.api.service.monitor.LogininforService; import com.glxp.api.common.enums.ResultEnum; @@ -24,6 +25,7 @@ import com.glxp.api.util.*; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +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; @@ -294,4 +296,16 @@ public class LoginController extends BaseController { return ResultVOUtils.error(ResultEnum.DATA_CHANGE); } + + @Value("${WEB_TITLE}") + private String WEB_TITLE; + + @GetMapping("/spms/getTitleConfig") + public BaseResponse getTitleConfig() { + WebTitleResponse webTitleResponse = new WebTitleResponse(); + webTitleResponse.setTitle(WEB_TITLE); + return ResultVOUtils.success(webTitleResponse); + } + + } diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java index 82562e630..852697311 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java @@ -281,6 +281,8 @@ public class IoOrderReviewController extends BaseController { GennerOrderUtils gennerOrderUtils; @Resource SystemParamConfigService systemParamConfigService; + @Resource + IoAddInoutService addInoutService; public void transferOrder(IoOrderEntity orderEntity, EntrustReceEntity entrustReceEntity) { List warehouseEntities = codeService.findByOrderId(orderEntity.getBillNo()); @@ -292,16 +294,8 @@ public class IoOrderReviewController extends BaseController { String supplementOrderNo = orderNo; supplementOrder.setOriginUllageSupNo(orderEntity.getBillNo()); supplementOrder.setBillNo(supplementOrderNo); - -// SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("additional_auto_submit"); -// if ("1".equals(systemParamConfigEntity.getParamValue())) { -// supplementOrder.setStatus(ConstantStatus.ORDER_STATUS_PROCESS); //设置状态为补录单据 -// } else { -// supplementOrder.setStatus(ConstantStatus.ORDER_STATUS_ADDITIONAL); //设置状态为补录单据 -// } - - supplementOrder.setStatus(ConstantStatus.ORDER_STATUS_TEMP_SAVE); //设置导出状态为未导出 + supplementOrder.setDealStatus(ConstantStatus.ORDER_DEAL_DRAFT); supplementOrder.setCorpOrderId(CustomUtil.getId() + "x"); //修改往来单位及当前库存号 supplementOrder.setFromCorp(null); @@ -335,6 +329,9 @@ public class IoOrderReviewController extends BaseController { orderEntity.setUllageSupNo(supplementOrder.getBillNo()); orderService.update(orderEntity); codeTempService.insertBatch(supplementCodes); + for (IoCodeTempEntity codeTempEntity : supplementCodes) { + addInoutService.genOrderDetailCode(supplementOrder, codeTempEntity); + } } @@ -543,8 +540,6 @@ public class IoOrderReviewController extends BaseController { return ResultVOUtils.success(acceptOrderEntity); } - @Resource - IoAddInoutService addInoutService; @Resource InvBusUserService invBusUserService; diff --git a/src/main/java/com/glxp/api/res/auth/WebTitleResponse.java b/src/main/java/com/glxp/api/res/auth/WebTitleResponse.java new file mode 100644 index 000000000..200501e5f --- /dev/null +++ b/src/main/java/com/glxp/api/res/auth/WebTitleResponse.java @@ -0,0 +1,10 @@ +package com.glxp.api.res.auth; + +import lombok.Data; + +@Data +public class WebTitleResponse { + + private String title; + +} diff --git a/src/main/java/com/glxp/api/service/inout/IoGenInvService.java b/src/main/java/com/glxp/api/service/inout/IoGenInvService.java index c35f1b330..7247a3507 100644 --- a/src/main/java/com/glxp/api/service/inout/IoGenInvService.java +++ b/src/main/java/com/glxp/api/service/inout/IoGenInvService.java @@ -134,7 +134,7 @@ public class IoGenInvService { //生成库存产品表 for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) { - InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(),orderEntity.getCreateUser(),ConstantStatus.ACTION_TYPE_NORMAL); + InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(), orderEntity.getCreateUser(), ConstantStatus.ACTION_TYPE_NORMAL); if (invUserProductEntity == null) { invUserProductEntity = new InvUserProductEntity(); invUserProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk()); @@ -185,7 +185,6 @@ public class IoGenInvService { } - @Resource InvPreProductService invPreProductService; @Resource @@ -260,7 +259,7 @@ public class IoGenInvService { //生成库存产品表 for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) { - InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(),orderEntity.getCreateUser(),ConstantStatus.ACTION_TYPE_PREIN); + InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(), orderEntity.getCreateUser(), ConstantStatus.ACTION_TYPE_PREIN); if (invUserProductEntity == null) { invUserProductEntity = new InvUserProductEntity(); invUserProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk()); @@ -312,7 +311,6 @@ public class IoGenInvService { } - @Resource InvPreinProductService invPreinProductService; @@ -381,7 +379,11 @@ public class IoGenInvService { invProductDetailEntity.setRelId(codeEntity.getRelId()); invProductDetailEntity.setUpdateTime(new Date()); invProductDetailEntity.setId(null); - invProductDetailEntity.setInvSpaceCode(codeEntity.getPreInSpaceCode()); + if (StrUtil.isNotEmpty(codeEntity.getPreInSpaceCode())) { + invProductDetailEntity.setInvSpaceCode(codeEntity.getPreInSpaceCode()); + } else { + invProductDetailEntity.setInvSpaceCode(codeEntity.getWarehouseCode()); + } invProductDetailEntity.setPurchaseType(ConstantStatus.PRUCHASE_COMMON); if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) { invProductDetailEntity.setInCount(invProductDetailEntity.getReCount()); @@ -405,7 +407,7 @@ public class IoGenInvService { List codeEnttities = codeService.findByOrderId(orderId); //生成库存产品表 for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) { - InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(),orderEntity.getCreateUser(),ConstantStatus.ACTION_TYPE_ADVANCE); + InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(), orderEntity.getCreateUser(), ConstantStatus.ACTION_TYPE_ADVANCE); if (invUserProductEntity == null) { invUserProductEntity = new InvUserProductEntity(); invUserProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk()); diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 97dfa2620..a87e0a10b 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -4,7 +4,7 @@ server: spring: datasource: driver-class-name: com.p6spy.engine.spy.P6SpyDriver - jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/wms_cs?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true + 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 username: root password: 123456 hikari: @@ -54,3 +54,4 @@ SPMS_KEY: lCOdWCBKS6Kw45wdnnqUTELXyuSKnXEs back_file_path: D:/share/udisps/back/ API_KEY: 1101 API_SECRET: zBITspLNvuoEd4FaamlSoqxRHmNsmQ9L +WEB_TITLE: 平潭协和医院 diff --git a/src/main/resources/application-pro.yml b/src/main/resources/application-pro.yml index b88f18fc4..d0e3e25a6 100644 --- a/src/main/resources/application-pro.yml +++ b/src/main/resources/application-pro.yml @@ -51,5 +51,6 @@ SPMS_KEY: lCOdWCBKS6Kw45wdnnqUTELXyuSKnXEs back_file_path: D:/share/udisps/back/ API_KEY: 1101 API_SECRET: zBITspLNvuoEd4FaamlSoqxRHmNsmQ9L +WEB_TITLE: 平潭协和医院 diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml index 43279dcb4..a4c2e52f6 100644 --- a/src/main/resources/application-test.yml +++ b/src/main/resources/application-test.yml @@ -50,4 +50,5 @@ UDI_SERVER_URL: https://www.udims.com/UDI_DL_Server_test SPMS_KEY: lCOdWCBKS6Kw45wdnnqUTELXyuSKnXEs API_KEY: 1101 API_SECRET: zBITspLNvuoEd4FaamlSoqxRHmNsmQ9L +WEB_TITLE: 平潭协和医院 diff --git a/src/main/resources/application-wmd.yml b/src/main/resources/application-wmd.yml index e0ec69b11..f1a701c48 100644 --- a/src/main/resources/application-wmd.yml +++ b/src/main/resources/application-wmd.yml @@ -51,5 +51,6 @@ SPMS_KEY: lCOdWCBKS6Kw45wdnnqUTELXyuSKnXEs back_file_path: D:/share/udisps/back/ API_KEY: 1101 API_SECRET: zBITspLNvuoEd4FaamlSoqxRHmNsmQ9L +WEB_TITLE: 平潭协和医院 From a09eb7c2da6979729b0fac0ff0039eb04d341f27 Mon Sep 17 00:00:00 2001 From: anthonywj Date: Wed, 14 Jun 2023 11:38:17 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E5=A4=9A=E7=BA=A7=E4=BA=A7=E5=93=81?= =?UTF-8?q?=E5=87=BA=E5=BA=93=E9=97=AE=E9=A2=98=EF=BC=8C=E7=94=B3=E8=B4=AD?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=A4=87=E6=B3=A8=E5=AD=97=E6=AE=B5=E6=90=9C?= =?UTF-8?q?=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/basic/UdiRlSupController.java | 8 +- .../inout/IoCodeTempController.java | 100 +++++++++--------- .../purchase/IoPurChangeService.java | 11 +- .../thrsys/ThrProductsController.java | 17 +++ .../com/glxp/api/dao/inout/IoCodeTempDao.java | 2 + .../basic/CompanyProductRelevanceRequest.java | 10 ++ .../api/req/basic/FilterUdiRelRequest.java | 9 ++ .../api/service/inout/IoCodeTempService.java | 2 + .../inout/impl/IoCodeTempServiceImpl.java | 10 ++ .../mybatis/mapper/basic/UdiRelevanceDao.xml | 24 +++++ .../mybatis/mapper/basic/UdiRlSupDao.xml | 26 ++++- .../mybatis/mapper/inout/IoCodeTempDao.xml | 22 +++- 12 files changed, 181 insertions(+), 60 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java b/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java index 44203cf3d..377ebc9b6 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java @@ -126,7 +126,7 @@ public class UdiRlSupController extends BaseController { @AuthRuleAnnotation("") @GetMapping("/sale/info/company/product/plan/relevance/filter") public BaseResponse filterCompanyProductPlanRelevance(CompanyProductRelevanceRequest companyProductRelevanceRequest, - BindingResult bindingResult) { + BindingResult bindingResult) { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } @@ -160,12 +160,12 @@ public class UdiRlSupController extends BaseController { companyProductRelevanceRequest.setDiType(1); } //查询详情id过滤 - List purApplyDetailEntityList= purApplyDetailService.findByOrderId(companyProductRelevanceRequest.getId()); + List purApplyDetailEntityList = purApplyDetailService.findByOrderId(companyProductRelevanceRequest.getId()); List idList = purApplyDetailEntityList.stream().map(PurApplyDetailEntity::getProductId).collect(Collectors.toList()); List basicInstrumentMaintainRelevanceResponses = null; - FilterUdiRelRequest filterUdiRelRequest=new FilterUdiRelRequest(); - BeanCopyUtils.copy(companyProductRelevanceRequest,filterUdiRelRequest); + FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest(); + BeanCopyUtils.copy(companyProductRelevanceRequest, filterUdiRelRequest); filterUdiRelRequest.setIds(idList); basicInstrumentMaintainRelevanceResponses = udiRelevanceService.filterUdiJoinSup(filterUdiRelRequest); PageInfo pageInfo; 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 e2bfce670..97b3f21d2 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -575,11 +575,11 @@ public class IoCodeTempController extends BaseController { BaseResponse invRes = null; if (bussinessTypeEntity.isScanPreIn()) { //校验预验收库存 - invRes = checkPreInInv(bussinessTypeEntity, exitLocalEntity); + invRes = checkPreInInv(bussinessTypeEntity, genDetaiEntity); } else if (bussinessTypeEntity.isAdvancePreIn()) { //校验寄售库存 - invRes = checkPreInv(bussinessTypeEntity, exitLocalEntity); + invRes = checkPreInv(bussinessTypeEntity, genDetaiEntity); } else { - invRes = checkInv(bussinessTypeEntity, exitLocalEntity); + invRes = checkInv(bussinessTypeEntity, genDetaiEntity); } if (invRes != null) { return invRes; @@ -791,15 +791,15 @@ public class IoCodeTempController extends BaseController { InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByOne(ConstantStatus.ACTION_TYPE_ADVANCE); int count = 0; if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_NULL) { - if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { - count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), null, codeTempEntity.getCode()); - } else - count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), null); +// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { +// count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), null, codeTempEntity.getCode()); +// } else + count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), null); } else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_SET) { - if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { - count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode()); - } else - count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode()); +// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { +// count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode()); +// } else + count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode()); } else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_CODE) { //按指定货位出库 if (StrUtil.isEmpty(codeTempEntity.getPreSpaceCode())) { @@ -816,35 +816,38 @@ public class IoCodeTempController extends BaseController { return ResultVOUtils.error(500, "添加失败,该产品未上架货位!"); } } else { - if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { - count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode()); - } else - count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode()); +// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { +// count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode()); +// } else + count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode()); } } - InvPreProductDetailEntity invPreinDetailEntity = invPreProductDetailService.findUseOneByCode(codeTempEntity.getCode()); +// InvPreProductDetailEntity invPreinDetailEntity = invPreProductDetailService.findUseOneByCode(codeTempEntity.getCode()); if (count <= 0) { return ResultVOUtils.error(500, "寄售库存数量不足!"); } else { - if (StrUtil.isNotEmpty(invPreinDetailEntity.getBatchNo()) && StrUtil.isNotEmpty(codeTempEntity.getBatchNo()) - && !invPreinDetailEntity.getBatchNo().equals(codeTempEntity.getBatchNo())) { - return ResultVOUtils.error(500, "当前批次号与预验收录入批次号不匹配!"); - } - if (StrUtil.isNotEmpty(codeTempEntity.getOrderId())) {//非首次添加 - if (StrUtil.isEmpty(codeTempEntity.getSerialNo())) {//该单据已有该产品 - //无序列号,则可能存在多个预验收入库单 - IoCodeTempEntity tempEntity = codeTempService.findByUnique(codeTempEntity.getOrderId(), codeTempEntity.getCode()); - if (tempEntity != null) { - if (count < (tempEntity.getMyCount() + 1)) { - return ResultVOUtils.error(500, "超出寄售库存数量"); - } - } - } else { - if (count < 1) { - return ResultVOUtils.error(500, "寄售库存数量不足"); - } - } +// if (StrUtil.isNotEmpty(invPreinDetailEntity.getBatchNo()) && StrUtil.isNotEmpty(codeTempEntity.getBatchNo()) +// && !invPreinDetailEntity.getBatchNo().equals(codeTempEntity.getBatchNo())) { +// return ResultVOUtils.error(500, "当前批次号与预验收录入批次号不匹配!"); +// } +// if (StrUtil.isNotEmpty(codeTempEntity.getOrderId())) {//非首次添加 +// if (StrUtil.isEmpty(codeTempEntity.getSerialNo())) {//该单据已有该产品 +// IoCodeTempEntity tempEntity = codeTempService.findByUnique(codeTempEntity.getOrderId(), codeTempEntity.getCode()); +// if (tempEntity != null) { +// if (count < (tempEntity.getMyCount() + 1)) { +// return ResultVOUtils.error(500, "超出寄售库存数量"); +// } +// } +// } else { +// if (count < 1) { +// return ResultVOUtils.error(500, "寄售库存数量不足"); +// } +// } +// } + int exitCount = IntUtil.value(codeTempService.selectExitCount(codeTempEntity.getOrderId(), codeTempEntity.getBatchNo(), codeTempEntity.getRelId(), codeTempEntity.getSupId())); + if ((codeTempEntity.getMyReCount() + exitCount) > count) { + return ResultVOUtils.error(500, "寄售库存数量不足"); } } return null; @@ -908,7 +911,7 @@ public class IoCodeTempController extends BaseController { } } else { if (count < 1) { - return ResultVOUtils.error(500, "寄售预验收数量不足"); + return ResultVOUtils.error(500, "预验收库存数量不足"); } } } @@ -1058,15 +1061,15 @@ public class IoCodeTempController extends BaseController { if (bussinessTypeEntity.isVailInv() && bussinessTypeEntity.getMainAction().equals(ConstantType.TYPE_OUT)) { int count = 0; if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_NULL) { - if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { - count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null, codeTempEntity.getCode()); - } else - count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null); +// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { +// count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null, codeTempEntity.getCode()); +// } else + count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null); } else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_SET) { - if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { - count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode()); - } else - count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode()); +// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { +// count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode()); +// } else + count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode()); } else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_CODE) { //按指定货位出库 if (StrUtil.isEmpty(codeTempEntity.getWarehouseCode())) { @@ -1082,17 +1085,18 @@ public class IoCodeTempController extends BaseController { return ResultVOUtils.error(500, "添加失败,该产品未上架货位!"); } } else { - if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { - count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode()); - } else - count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode()); +// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { +// count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode()); +// } else + count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode()); } } if (count <= 0) { return ResultVOUtils.error(500, "当前库存不足"); } else { //查询此单据已扫描的条码数量 - if (codeTempEntity.getMyReCount() > count) { + int exitCount = IntUtil.value(codeTempService.selectExitCount(codeTempEntity.getOrderId(), codeTempEntity.getBatchNo(), codeTempEntity.getRelId(), codeTempEntity.getSupId())); + if ((codeTempEntity.getMyReCount() + exitCount) > count) { return ResultVOUtils.error(500, "当前库存不足"); } } 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 64cdbff07..9cb8319a7 100644 --- a/src/main/java/com/glxp/api/controller/purchase/IoPurChangeService.java +++ b/src/main/java/com/glxp/api/controller/purchase/IoPurChangeService.java @@ -291,8 +291,13 @@ public class IoPurChangeService { ioOrderEntity.setAction(basicBusTypeChangeEntity.getTargetAction()); ioOrderEntity.setFromCorp(m.getKey()); ioOrderEntity.setFromType(ConstantStatus.FROM_PLAN); - ioOrderEntity.setStatus(1); - ioOrderEntity.setDealStatus(1); + if (basicBusTypeChangeEntity.getAuditStatus() == 1) { + ioOrderEntity.setStatus(ConstantStatus.ORDER_STATUS_TEMP_SAVE); + ioOrderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_DRAFT); + } else { + ioOrderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK); + ioOrderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_POST); + } ioOrderEntity.setOrderType(1); ioOrderEntity.setCreateTime(new Date()); ioOrderEntity.setCreateUser(purReceiveEntity.getCreateUser()); @@ -325,8 +330,6 @@ public class IoPurChangeService { ioOrderDetailBizService.insert(ioOrderDetailBizEntity); } } -// purReceiveEntity.se(billNo.substring(0, billNo.length() - 1)); -// receiveService.update(purPlanEntity1); } } 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 31dc2c92e..6a83ee3d8 100644 --- a/src/main/java/com/glxp/api/controller/thrsys/ThrProductsController.java +++ b/src/main/java/com/glxp/api/controller/thrsys/ThrProductsController.java @@ -176,6 +176,23 @@ public class ThrProductsController { } + /** + * 编辑第三方产品信息 + * + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udiwms/udiinfo/erp/products/update") + public BaseResponse updateProduct(@RequestBody ThrProductsEntity thrProductsEntity) { + + if (null == thrProductsEntity) + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + thrProductsEntity.setUpdateTime(new Date()); + thrProductsService.updateById(thrProductsEntity); + return ResultVOUtils.success("修改成功!"); + } + + /** * 第三方产品信息导入 * diff --git a/src/main/java/com/glxp/api/dao/inout/IoCodeTempDao.java b/src/main/java/com/glxp/api/dao/inout/IoCodeTempDao.java index 38a66c9d7..95f7a691a 100644 --- a/src/main/java/com/glxp/api/dao/inout/IoCodeTempDao.java +++ b/src/main/java/com/glxp/api/dao/inout/IoCodeTempDao.java @@ -16,4 +16,6 @@ public interface IoCodeTempDao extends BaseMapperPlus selectCodeList(FilterCodeRequest filterCodeRequest); + + Integer selectExitCount(FilterCodeRequest filterCodeRequest); } diff --git a/src/main/java/com/glxp/api/req/basic/CompanyProductRelevanceRequest.java b/src/main/java/com/glxp/api/req/basic/CompanyProductRelevanceRequest.java index 2b54dab8f..286bca11b 100644 --- a/src/main/java/com/glxp/api/req/basic/CompanyProductRelevanceRequest.java +++ b/src/main/java/com/glxp/api/req/basic/CompanyProductRelevanceRequest.java @@ -55,4 +55,14 @@ public class CompanyProductRelevanceRequest extends ListPageRequest { private String manufactory; private String flbm; private List uuids; + + private String basicPrductRemak1; + private String basicPrductRemak2; + private String basicPrductRemak3; + private String basicPrductRemak4; + private String basicPrductRemak5; + private String basicPrductRemak6; + private String basicPrductRemak7; + private String basicPrductRemak8; + } 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 02dcd5293..c5c15442c 100644 --- a/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java +++ b/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java @@ -77,4 +77,13 @@ public class FilterUdiRelRequest extends ListPageRequest { private List ids; private String flbm; + private String basicPrductRemak1; + private String basicPrductRemak2; + private String basicPrductRemak3; + private String basicPrductRemak4; + private String basicPrductRemak5; + private String basicPrductRemak6; + private String basicPrductRemak7; + private String basicPrductRemak8; + } diff --git a/src/main/java/com/glxp/api/service/inout/IoCodeTempService.java b/src/main/java/com/glxp/api/service/inout/IoCodeTempService.java index e1c3137c5..f39684883 100644 --- a/src/main/java/com/glxp/api/service/inout/IoCodeTempService.java +++ b/src/main/java/com/glxp/api/service/inout/IoCodeTempService.java @@ -40,4 +40,6 @@ public interface IoCodeTempService { List findCodeList(FilterCodeRequest filterCodeRequest); boolean isExit(String orderId); + + Integer selectExitCount(String orderId, String bacthNo, Long relId, String supId); } diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoCodeTempServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoCodeTempServiceImpl.java index ca44942ee..c9a743ae5 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoCodeTempServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoCodeTempServiceImpl.java @@ -92,4 +92,14 @@ public class IoCodeTempServiceImpl implements IoCodeTempService { return ioCodeTempDao.exists(new QueryWrapper().eq("orderId", orderId)); } + @Override + public Integer selectExitCount(String orderId, String bacthNo, Long relId, String supId) { + FilterCodeRequest filterCodeRequest = new FilterCodeRequest(); + filterCodeRequest.setOrderId(orderId); + filterCodeRequest.setBatchNo(bacthNo); + filterCodeRequest.setRelId(relId + ""); + filterCodeRequest.setSupId(supId); + return ioCodeTempDao.selectExitCount(filterCodeRequest); + } + } diff --git a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index dade4df0c..23e72249d 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -283,6 +283,30 @@ AND basic_corp.name like concat('%', #{companyName}, '%') + + AND basic_products.basicPrductRemak1 like concat('%', #{basicPrductRemak1}, '%') + + + AND basic_products.basicPrductRemak2 like concat('%', #{basicPrductRemak2}, '%') + + + AND basic_products.basicPrductRemak3 like concat('%', #{basicPrductRemak3}, '%') + + + AND basic_products.basicPrductRemak4 like concat('%', #{basicPrductRemak4}, '%') + + + AND basic_products.basicPrductRemak5 like concat('%', #{basicPrductRemak5}, '%') + + + AND basic_products.basicPrductRemak6 like concat('%', #{basicPrductRemak6}, '%') + + + AND basic_products.basicPrductRemak7 like concat('%', #{basicPrductRemak7}, '%') + + + AND basic_products.basicPrductRemak8 like concat('%', #{basicPrductRemak8}, '%') + diff --git a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml index 0f6e1778c..6baa5d2d8 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml @@ -117,7 +117,7 @@ AND basic_products.ylqxzcrbarmc LIKE concat(#{ylqxzcrbarmc}, '%') - AND cpmctymc LIKE concat('%',#{cpmctymc}, '%') + AND cpmctymc LIKE concat('%', #{cpmctymc}, '%') AND nameCode LIKE concat(#{nameCode}, '%') @@ -203,6 +203,30 @@ AND basic_corp.name like concat('%', #{companyName}, '%') + + AND basic_products.basicPrductRemak1 like concat('%', #{basicPrductRemak1}, '%') + + + AND basic_products.basicPrductRemak2 like concat('%', #{basicPrductRemak2}, '%') + + + AND basic_products.basicPrductRemak3 like concat('%', #{basicPrductRemak3}, '%') + + + AND basic_products.basicPrductRemak4 like concat('%', #{basicPrductRemak4}, '%') + + + AND basic_products.basicPrductRemak5 like concat('%', #{basicPrductRemak5}, '%') + + + AND basic_products.basicPrductRemak6 like concat('%', #{basicPrductRemak6}, '%') + + + AND basic_products.basicPrductRemak7 like concat('%', #{basicPrductRemak7}, '%') + + + AND basic_products.basicPrductRemak8 like concat('%', #{basicPrductRemak8}, '%') + AND basic_udirel.lockStatus = #{lockStatus} diff --git a/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml b/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml index 372730bca..d3b410844 100644 --- a/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml @@ -1,7 +1,6 @@ - - - \ No newline at end of file + + From c5b7ba7db5718a89694e124287101826421c1d08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=98=8E=E6=A2=81?= <2429105222@qq.com> Date: Wed, 14 Jun 2023 14:52:16 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E5=AE=A2=E6=88=B7=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/basic/BasicCorpController.java | 7 + .../controller/inout/PlatformController.java | 232 ++++++++++++++ .../com/glxp/api/dao/basic/BasicCorpDao.java | 3 + .../com/glxp/api/dao/inout/PlatformDao.java | 40 +++ .../dao/inout/UnitMaintainPlatformDao.java | 46 +++ .../inout/UnitMaintainPlatformEntity.java | 71 +++++ .../api/req/inout/PlatformLinkRequest.java | 46 +++ .../api/res/inout/PlatformLinkResponse.java | 42 +++ .../api/service/basic/BasicCorpService.java | 2 + .../basic/impl/BasicCorpServiceImpl.java | 5 + .../api/service/inout/PlatformService.java | 109 +++++++ .../inout/impl/PlatformServiceImpl.java | 291 ++++++++++++++++++ .../java/com/glxp/api/task/SyncHeartTask.java | 4 +- .../com/glxp/api/task/SyncThirdSysTask.java | 2 +- .../mybatis/mapper/basic/BasicCorpDao.xml | 7 + .../mybatis/mapper/inout/PlatformDao.xml | 106 +++++++ .../mapper/inout/UnitMaintainPlatformDao.xml | 168 ++++++++++ 17 files changed, 1178 insertions(+), 3 deletions(-) create mode 100644 src/main/java/com/glxp/api/controller/inout/PlatformController.java create mode 100644 src/main/java/com/glxp/api/dao/inout/PlatformDao.java create mode 100644 src/main/java/com/glxp/api/dao/inout/UnitMaintainPlatformDao.java create mode 100644 src/main/java/com/glxp/api/entity/inout/UnitMaintainPlatformEntity.java create mode 100644 src/main/java/com/glxp/api/req/inout/PlatformLinkRequest.java create mode 100644 src/main/java/com/glxp/api/res/inout/PlatformLinkResponse.java create mode 100644 src/main/java/com/glxp/api/service/inout/PlatformService.java create mode 100644 src/main/java/com/glxp/api/service/inout/impl/PlatformServiceImpl.java create mode 100644 src/main/resources/mybatis/mapper/inout/PlatformDao.xml create mode 100644 src/main/resources/mybatis/mapper/inout/UnitMaintainPlatformDao.xml 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 549b79918..c9362f972 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java @@ -522,5 +522,12 @@ public class BasicCorpController { return ResultVOUtils.success(getCorpList); } + @AuthRuleAnnotation("") + @GetMapping("/udiwms/basic/unit/maintain/getCorpLists") + public BaseResponse getCorpLists() { + List getCorpList = basicUnitMaintainService.getCorpLists(); + return ResultVOUtils.success(getCorpList); + } + } diff --git a/src/main/java/com/glxp/api/controller/inout/PlatformController.java b/src/main/java/com/glxp/api/controller/inout/PlatformController.java new file mode 100644 index 000000000..56ca604cb --- /dev/null +++ b/src/main/java/com/glxp/api/controller/inout/PlatformController.java @@ -0,0 +1,232 @@ +package com.glxp.api.controller.inout; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.fasterxml.jackson.databind.ObjectMapper; +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.inout.UnitMaintainPlatformEntity; +import com.glxp.api.entity.system.PlatformEntity; +import com.glxp.api.req.inout.PlatformLinkRequest; +import com.glxp.api.req.system.DeleteRequest; +import com.glxp.api.req.system.PlatformUserInfoRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.inout.PlatformLinkResponse; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.inout.PlatformService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.client.RestTemplate; + +import javax.annotation.Resource; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@RestController +@Slf4j +public class PlatformController { + + @Resource + private PlatformService platformService; + @Resource + private CustomerService customerService; + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/platform/remove") + public BaseResponse remove(@RequestBody PlatformEntity platformEntity) { + if (platformService.remove(platformEntity.getId()) > 0) { + ResultVOUtils.success("删除成功"); + } + return ResultVOUtils.error(500, "删除失败"); + } + + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/platform/update") + public BaseResponse update(@RequestBody PlatformEntity platformEntity) { + if (StrUtil.isBlank(platformEntity.getName()) || StrUtil.isBlank(platformEntity.getHost())) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "参数不能为空"); + } + return platformService.update(platformEntity); + } + + @AuthRuleAnnotation("") + @GetMapping("/udiwms/platform/list") + public BaseResponse list(@RequestParam Map params) { + List list = platformService.list(params); + PageInfo pageInfo = new PageInfo<>(list); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(pageInfo.getList()); + return ResultVOUtils.success(pageSimpleResponse); + } + + /** + * 测试账号连通性 + * + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udiwms/platform/testUserInfo") + public BaseResponse testUserInfo(@RequestBody PlatformUserInfoRequest platformUserInfoRequest, BindingResult bindingResult) { + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + + PlatformEntity platformEntity = platformService.getPlatformById(platformUserInfoRequest.getPlatformId()); + if (null == platformEntity || StrUtil.isBlank(platformEntity.getHost())) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + + String url = platformEntity.getHost() + "/verify"; + Map map = new HashMap<>(); + map.put("username", platformUserInfoRequest.getUsername()); + map.put("password", platformUserInfoRequest.getPassword()); + + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_JSON_UTF8); + + HttpEntity request = new HttpEntity<>(JSON.toJSONString(map), headers); + RestTemplate restTemplate = new RestTemplate(); + log.error(url); + + String result = restTemplate.postForObject(url, request, String.class, map); + log.error(result); + Map object = JSON.parseObject(result, Map.class); + if (!String.valueOf(object.get("code")).equals("20000")) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, String.valueOf(object.get("message"))); + } + Map data = JSON.parseObject(JSON.toJSONString(object.get("data")), Map.class); + + ObjectMapper mapper = new ObjectMapper(); + UnitMaintainPlatformEntity unitMaintainPlatformEntity = mapper.convertValue(data, UnitMaintainPlatformEntity.class); + return ResultVOUtils.success(unitMaintainPlatformEntity); + } + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/platform/link") + public BaseResponse update(@RequestBody PlatformLinkRequest platformLinkRequest) { + //判断此数据是否重复 + String verifyResult = platformService.verifyUnitMaintainPlatform(platformLinkRequest); + if (!verifyResult.equals("success")) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, verifyResult); + } + UnitMaintainPlatformEntity unitMaintainPlatform = new UnitMaintainPlatformEntity(); + BeanUtil.copyProperties(platformLinkRequest, unitMaintainPlatform); + unitMaintainPlatform.setCustomerId(Long.valueOf(unitMaintainPlatform.getUnitId())); + platformService.saveUnitPlatform(unitMaintainPlatform); + return ResultVOUtils.success("关联成功"); + } + + /** + * 获取往来单位与自助平台关联数据 + */ + @AuthRuleAnnotation("") + @GetMapping("/udiwms/platform/getLinkPlatformList") + public BaseResponse getLinkPlatformList(PlatformLinkRequest platformLinkRequest, BindingResult bindingResult) { + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + platformLinkRequest.setCustomerId(String.valueOf(customerService.getUserBean().getCustomerId())); + List list = platformService.getLinkPlatformList(platformLinkRequest); + PageInfo pageInfo = new PageInfo<>(list); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(pageInfo.getList()); + return ResultVOUtils.success(pageSimpleResponse); + } + + /** + * 解绑往来单位和自助平台的关联 + * + * @param deleteRequest + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udiwms/platform/unbind") + public BaseResponse unbindPlatform(DeleteRequest deleteRequest) { + if (StrUtil.isBlank(deleteRequest.getId())) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + platformService.unbindPlatform(deleteRequest.getId()); + return ResultVOUtils.success(); + } + + /** + * 获取对应平台单据类型 + * + * @return + */ + @AuthRuleAnnotation("") + @GetMapping("/udiwms/platform/getTargetActions") + public BaseResponse getTargetActions(String platformId, String invSubCode, String apiKey, String apiSecret) { + if (StrUtil.isBlank(platformId)) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + return platformService.getTargetActions(platformId, invSubCode, apiKey, apiSecret); + } + + + @AuthRuleAnnotation("") + @GetMapping("/udiwms/platform/getTargetInv") + public BaseResponse getTargetInv(String platformId, String apiKey, String apiSecret) { + if (StrUtil.isBlank(platformId)) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + return platformService.getTargetInv(platformId, apiKey, apiSecret); + } + + @AuthRuleAnnotation("") + @GetMapping("/udiwms/platform/getTargetSubInv") + public BaseResponse getTargetSubInv(String platformId, String invCode, String apiKey, String apiSecret) { + if (StrUtil.isBlank(platformId)) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + return platformService.getTargetSubInv(platformId, invCode, apiKey, apiSecret); + } + + /** + * 测试自助平台连通性 + * + * @param host + * @return + */ + @AuthRuleAnnotation("") + @GetMapping("udiwms/platform/testPlatformConnection") + public BaseResponse testPlatformConnection(String host) { + if (StrUtil.isBlank(host)) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + return platformService.testPlatformConnection(host); + } + + /** + * 获取客户详情 + * + * @param platformLinkRequest + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udiwms/platform/getPlatFormDelect") + public BaseResponse getPlatFormDelect(@RequestBody PlatformLinkRequest platformLinkRequest) { + + List platformLinkResponses = platformService.selectDelectList(platformLinkRequest); + PageInfo pageInfo = new PageInfo<>(platformLinkResponses); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(pageInfo.getList()); + + return ResultVOUtils.success(pageSimpleResponse); + } + +} diff --git a/src/main/java/com/glxp/api/dao/basic/BasicCorpDao.java b/src/main/java/com/glxp/api/dao/basic/BasicCorpDao.java index 2656ad80c..c9874040c 100644 --- a/src/main/java/com/glxp/api/dao/basic/BasicCorpDao.java +++ b/src/main/java/com/glxp/api/dao/basic/BasicCorpDao.java @@ -63,4 +63,7 @@ public interface BasicCorpDao extends BaseMapperPlus getCorpList(); + + List getCorpLists(); + } diff --git a/src/main/java/com/glxp/api/dao/inout/PlatformDao.java b/src/main/java/com/glxp/api/dao/inout/PlatformDao.java new file mode 100644 index 000000000..0101cdcd9 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/inout/PlatformDao.java @@ -0,0 +1,40 @@ +package com.glxp.api.dao.inout; + + +import com.glxp.api.entity.system.PlatformEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface PlatformDao { + + int batchSave(List list); + + List list( Map map); + + int count(Map map); + + PlatformEntity get(String id); + + /** + * 根据名称和访问地址查询平台信息 + * + * @param name + * @param host + * @return + */ + List selectByNameAndHost(@Param("name") String name, @Param("host") String host); + + PlatformEntity selectById(@Param("platformId") String platformId); + + int insert(PlatformEntity platformEntity); + + List selectList(@Param("id") String id, @Param("name") String name, @Param("host") String host); + + int deleteById(@Param("id") String id); + + void updateById(PlatformEntity platformEntity); +} diff --git a/src/main/java/com/glxp/api/dao/inout/UnitMaintainPlatformDao.java b/src/main/java/com/glxp/api/dao/inout/UnitMaintainPlatformDao.java new file mode 100644 index 000000000..35688b554 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/inout/UnitMaintainPlatformDao.java @@ -0,0 +1,46 @@ +package com.glxp.api.dao.inout; + + +import com.glxp.api.entity.inout.UnitMaintainPlatformEntity; +import com.glxp.api.req.inout.PlatformLinkRequest; +import com.glxp.api.res.inout.PlatformLinkResponse; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface UnitMaintainPlatformDao { + + /** + * 查询医院客户列表 + * + * @param page + * @param customerId + * @param key + * @return + */ + List getLinkPlatformList(@Param("customerId") String customerId, @Param("key") String key); + + /** + * 根据客户ID查询关联数据 + * + * @param customerId + * @return + */ + List selectByCustomerId(@Param("customerId") Long customerId); + + void updateById(UnitMaintainPlatformEntity maintainPlatform); + + void insert(UnitMaintainPlatformEntity unitMaintainPlatformEntity); + + List selectList(PlatformLinkRequest platformLinkRequest); + + UnitMaintainPlatformEntity findLinkData(@Param("customerId") long customerId, @Param("action") String action, @Param("unitId") String unitId); + + void deleteById(String id); + + Long selectCount(@Param("unitId") String unitId, @Param("action") String action); + + List selectDelectList(@Param("platformId") String platformId); +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/entity/inout/UnitMaintainPlatformEntity.java b/src/main/java/com/glxp/api/entity/inout/UnitMaintainPlatformEntity.java new file mode 100644 index 000000000..78d30c5b7 --- /dev/null +++ b/src/main/java/com/glxp/api/entity/inout/UnitMaintainPlatformEntity.java @@ -0,0 +1,71 @@ +package com.glxp.api.entity.inout; + +import lombok.Data; + +/** + * 医院客户表 + */ +@Data +public class UnitMaintainPlatformEntity { + + private Integer id; + + /** + * 往来单位ID + */ + private String unitId; + + /** + * 客户ID + */ + private Long customerId; + + /** + * 平台ID + */ + private String platformId; + + /** + * 源单据类型 + */ + private String sourceAction; + + /** + * 目标单据类型 + */ + private String targetAction; + + /** + * 仓库码 + */ + private String invCode; + + /** + * 分库码 + */ + private String invSubCode; + + /** + * 应用名称 + */ + private String appid; + + /** + * 秘钥 + */ + private String secretKey; + + /** + * 应用ID + */ + private String apiKey; + + + //目标单据类型 + private String targetName; + + private String invName; + + private String invSubName; + +} \ No newline at end of file diff --git a/src/main/java/com/glxp/api/req/inout/PlatformLinkRequest.java b/src/main/java/com/glxp/api/req/inout/PlatformLinkRequest.java new file mode 100644 index 000000000..0c46aecca --- /dev/null +++ b/src/main/java/com/glxp/api/req/inout/PlatformLinkRequest.java @@ -0,0 +1,46 @@ +package com.glxp.api.req.inout; + + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +/** + * 医院客户请求参数 + */ +@Data +public class PlatformLinkRequest extends ListPageRequest { + + private Integer id; + + private String unitId; + + private String corpName; + + private String platformId; + + private String platformUsername; + + private String platformPassword; + + private String appid; + + private String apiKey; + + private String secretKey; + + private String sourceAction; + + private String targetAction; + + private String invCode; + + private String invSubCode; + + private String key; + + private String customerId; + + private String invName; + private String invSubName; + private String targetName; +} diff --git a/src/main/java/com/glxp/api/res/inout/PlatformLinkResponse.java b/src/main/java/com/glxp/api/res/inout/PlatformLinkResponse.java new file mode 100644 index 000000000..e6a5ba096 --- /dev/null +++ b/src/main/java/com/glxp/api/res/inout/PlatformLinkResponse.java @@ -0,0 +1,42 @@ +package com.glxp.api.res.inout; + +import lombok.Data; + +/** + * 往来单位关联自助平台数据实体类 + */ +@Data +public class PlatformLinkResponse { + + //往来单位ID + private Long id; + //往来单位编码 + private String unitId; + //往来单位名称 + private String corpName; + //往来单位类型 + private Integer corpType; + //拼音码 + private String pinyinCode; + //自助平台名称 + private String platformName; + //自助平台ID + private String platformId; + + private String socurceName; + + //本地单据类型 + private String sourceAction; + private String sourceName; + //目标单据类型 + private String targetAction; + private String targetName; + + private String invCode; + private String invName; + private String invSubCode; + private String invSubName; + + private String name; + private String host; +} diff --git a/src/main/java/com/glxp/api/service/basic/BasicCorpService.java b/src/main/java/com/glxp/api/service/basic/BasicCorpService.java index c1ef129ea..5dc88a603 100644 --- a/src/main/java/com/glxp/api/service/basic/BasicCorpService.java +++ b/src/main/java/com/glxp/api/service/basic/BasicCorpService.java @@ -55,4 +55,6 @@ public interface BasicCorpService { List selectCorpList(BasicUnitMaintainFilterRequest basicUnitMaintainFilterRequest); + List getCorpLists(); + } diff --git a/src/main/java/com/glxp/api/service/basic/impl/BasicCorpServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/BasicCorpServiceImpl.java index 4c6638100..50e57fc33 100644 --- a/src/main/java/com/glxp/api/service/basic/impl/BasicCorpServiceImpl.java +++ b/src/main/java/com/glxp/api/service/basic/impl/BasicCorpServiceImpl.java @@ -167,4 +167,9 @@ public class BasicCorpServiceImpl implements BasicCorpService { } return false; } + + @Override + public List getCorpLists() { + return basicCorpDao.getCorpLists(); + } } diff --git a/src/main/java/com/glxp/api/service/inout/PlatformService.java b/src/main/java/com/glxp/api/service/inout/PlatformService.java new file mode 100644 index 000000000..845f181a9 --- /dev/null +++ b/src/main/java/com/glxp/api/service/inout/PlatformService.java @@ -0,0 +1,109 @@ +package com.glxp.api.service.inout; + + + +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.entity.inout.UnitMaintainPlatformEntity; +import com.glxp.api.entity.system.PlatformEntity; +import com.glxp.api.req.inout.PlatformLinkRequest; +import com.glxp.api.res.inout.PlatformLinkResponse; + +import java.util.List; +import java.util.Map; + +public interface PlatformService { + + + public int save(PlatformEntity platformEntity); + + public int remove(String id); + + public BaseResponse update(PlatformEntity platformEntity); + + List list(Map map); + + int count(Map map); + + PlatformEntity get(String id); + + /** + * 查询往来单位和自助平台关联数据 + * + * @param platformLinkRequest + * @return + */ + List getLinkPlatformList(PlatformLinkRequest platformLinkRequest); + + /** + * 往来单位和自助平台解绑 + * + * @param id + */ + void unbindPlatform(String id); + + /** + * 获取自助平台单据类型 + * + * @param platformId + * @return + */ + BaseResponse getTargetActions(String platformId, String invSubCode,String apiKey,String apiSecret); + + + //获取自助平台一级仓库 + BaseResponse getTargetInv(String platformId,String apiKey,String apiSecret); + + + //获取自助平台一级仓库所属分库 + BaseResponse getTargetSubInv(String platformId, String invCode,String apiKey,String apiSecret); + + /** + * 测试自助平台连通性 + * + * @param host + * @return + */ + BaseResponse testPlatformConnection(String host); + + /** + * 根据ID查询自助平台信息 + * + * @param platformId + * @return + */ + PlatformEntity getPlatformById(String platformId); + + /** + * 保存医院客户关联关系 + * + * @param unitMaintainPlatform + */ + void saveUnitPlatform(UnitMaintainPlatformEntity unitMaintainPlatform); + + /** + * 校验关联数据 + * + * @param platformLinkRequest + * @return + */ + public String verifyUnitMaintainPlatform(PlatformLinkRequest platformLinkRequest); + + /** + * 查询关联数据 + * + * @param customerId + * @param action + * @param unitId + * @return + */ + UnitMaintainPlatformEntity findLinkData(long customerId, String action, String unitId); + + /** + * 获取客户关联详情 + * @param platformId + * @return + */ + List selectDelectList(PlatformLinkRequest platformLinkRequest); + + +} diff --git a/src/main/java/com/glxp/api/service/inout/impl/PlatformServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/PlatformServiceImpl.java new file mode 100644 index 000000000..5f27bfe09 --- /dev/null +++ b/src/main/java/com/glxp/api/service/inout/impl/PlatformServiceImpl.java @@ -0,0 +1,291 @@ +package com.glxp.api.service.inout.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpUtil; +import cn.hutool.json.JSONUtil; +import com.alibaba.fastjson.JSON; +import com.github.pagehelper.PageHelper; + +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.dao.inout.PlatformDao; +import com.glxp.api.dao.inout.UnitMaintainPlatformDao; +import com.glxp.api.entity.inout.UnitMaintainPlatformEntity; +import com.glxp.api.entity.system.PlatformEntity; +import com.glxp.api.req.inout.PlatformLinkRequest; +import com.glxp.api.res.inout.PlatformLinkResponse; +import com.glxp.api.service.inout.PlatformService; +import com.glxp.api.util.HttpClient; +import com.glxp.api.util.OkHttpCli; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Slf4j +@Service +@Transactional(rollbackFor = Exception.class) +public class PlatformServiceImpl implements PlatformService { + + @Resource + private PlatformDao platformDao; + @Resource + private UnitMaintainPlatformDao unitMaintainPlatformDao; + @Resource + private OkHttpCli okHttpCli; + + public int save(PlatformEntity platformEntity) { + if (StringUtils.isEmpty(platformEntity.getId())) { + platformEntity.setId(String.valueOf(IdUtil.getSnowflake().nextId())); + } + return platformDao.insert(platformEntity); + } + + public int remove(String id) { + return platformDao.deleteById(id); + } + + public BaseResponse update(PlatformEntity platformEntity) { + if (StrUtil.isBlank(platformEntity.getId())) { + if (!verifyPlatformExist(platformEntity)) { + save(platformEntity); + return ResultVOUtils.success("添加成功"); + } else { + return ResultVOUtils.error(500, "已存在相同数据"); + } + } + platformDao.updateById(platformEntity); + return ResultVOUtils.success("更新成功"); + } + + private boolean verifyPlatformExist(PlatformEntity platformEntity) { + //校验名称和地址是否重复 + List list = platformDao.selectByNameAndHost(platformEntity.getName(), platformEntity.getHost()); + if (CollUtil.isEmpty(list)) { + return false; + } + return true; + } + + public List list(Map map) { + if (map.get("page") != null && map.get("limit") != null) { + Integer page = Integer.valueOf(String.valueOf(map.get("page"))); + Integer limit = Integer.valueOf(String.valueOf(map.get("limit"))); + PageHelper.offsetPage((page - 1) * limit, limit); + } + List list = platformDao.selectList(String.valueOf(map.get("id")), String.valueOf(map.get("name")), String.valueOf(map.get("host"))); + return list; + } + + public int count(Map map) { + return platformDao.count(map); + } + + public PlatformEntity get(String id) { + return platformDao.get(id); + } + + /** + * 查询往来单位和自助平台关联数据 + * + * @param platformLinkRequest + * @return + */ + public List getLinkPlatformList(PlatformLinkRequest platformLinkRequest) { + if (null == platformLinkRequest) { + return Collections.emptyList(); + } + if (null != platformLinkRequest.getPage() && null != platformLinkRequest.getLimit()) { + PageHelper.offsetPage((platformLinkRequest.getPage() - 1) * platformLinkRequest.getLimit(), platformLinkRequest.getLimit()); + } + return unitMaintainPlatformDao.getLinkPlatformList(platformLinkRequest.getCustomerId(), platformLinkRequest.getKey()); + } + + /** + * 往来单位和自助平台解绑 + * + * @param id + */ + public void unbindPlatform(String id) { + unitMaintainPlatformDao.deleteById(id); + } + + /** + * 获取自助平台单据类型 + * + * @param platformId + * @return + */ + public BaseResponse getTargetActions(String platformId, String invSubCode,String apiKey,String apiSecret) { + PlatformEntity platformEntity = platformDao.get(platformId); + if (null == platformEntity) { + return ResultVOUtils.success(); + } + String host = platformEntity.getHost(); + Map paramMap = new HashMap<>(); + paramMap.put("invSubCode", invSubCode); + String resp = okHttpCli.doGet(host + "/udiwms/bussinessType/udimsFilter",paramMap,buildHeader(apiKey,apiSecret)); + if (StrUtil.isNotBlank(resp) && resp.contains("20000")) { + return JSON.parseObject(resp, BaseResponse.class); + } else { + log.error("获取自助平台单据类型异常"); + return ResultVOUtils.error(500, "获取自助平台接口异常"); + } + } + + //获取自助平台一级仓库 + public BaseResponse getTargetInv(String platformId,String apiKey,String apiSecret) { + PlatformEntity platformEntity = platformDao.get(platformId); + if (null == platformEntity) { + return ResultVOUtils.success(); + } + String host = platformEntity.getHost(); + String url = host + "/spms/inv/warehouse/filterInv/forUdims"; + log.info("拉取自助平台仓库数据:" + url); + String resp = okHttpCli.doGet(url,buildHeader(apiKey,apiSecret)); + log.info("拉取结果:" + resp); + if (StrUtil.isNotBlank(resp) && resp.contains("20000")) { + try { + return JSON.parseObject(resp, BaseResponse.class); + } catch (Exception e) { + log.error("格式化自助平台仓库信息异常", e); + return ResultVOUtils.error(500, "调用自助平台接口异常"); + } + } else { + log.error("获取自助平台仓库失败"); + return ResultVOUtils.error(500, "调用自助平台接口异常"); + } + } + + + //获取自助平台一级仓库所属分库 + public BaseResponse getTargetSubInv(String platformId, String invCode,String apiKey,String apiSecret) { + PlatformEntity platformEntity = platformDao.get(platformId); + if (null == platformEntity) { + return ResultVOUtils.success(); + } + String host = platformEntity.getHost(); + Map paramMap = new HashMap<>(); + paramMap.put("invCode", invCode); + String resp = okHttpCli.doGet(host + "/spms/sub/inv/warehouse/getSubInvForUdims",paramMap,buildHeader(apiKey,apiSecret)); + if (StrUtil.isNotBlank(resp) && resp.contains("20000")) { + return JSON.parseObject(resp, BaseResponse.class); + } else { + log.error("获取自助平台分库失败"); + return ResultVOUtils.error(500, "获取自助平台接口异常"); + } + } + + /** + * 测试自助平台连通性 + * + * @param host + * @return + */ + public BaseResponse testPlatformConnection(String host) { + String testUrl = host + "/udiwms/auth/device/connect"; + String response = HttpUtil.get(testUrl); + if (StrUtil.isNotBlank(response)) { + try { + BaseResponse result = JSONUtil.toBean(response, BaseResponse.class); + if (result.getCode() == 20000) { + return ResultVOUtils.success(); + } + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } catch (Exception e) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + } else { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + } + + /** + * 根据ID查询自助平台信息 + * + * @param platformId + * @return + */ + public PlatformEntity getPlatformById(String platformId) { + return platformDao.selectById(platformId); + } + + /** + * 保存医院客户关联关系 + * + * @param unitMaintainPlatformEntity + */ + public void saveUnitPlatform(UnitMaintainPlatformEntity unitMaintainPlatformEntity) { + if (null != unitMaintainPlatformEntity.getId()) { + unitMaintainPlatformDao.updateById(unitMaintainPlatformEntity); + } else { + unitMaintainPlatformDao.insert(unitMaintainPlatformEntity); + } + + //更新当前客户关联数据的所有key + List list = unitMaintainPlatformDao.selectByCustomerId(unitMaintainPlatformEntity.getCustomerId()); + if (CollUtil.isNotEmpty(list)) { + for (UnitMaintainPlatformEntity maintainPlatform : list) { + maintainPlatform.setAppid(unitMaintainPlatformEntity.getAppid()); + maintainPlatform.setApiKey(unitMaintainPlatformEntity.getApiKey()); + maintainPlatform.setSecretKey(unitMaintainPlatformEntity.getSecretKey()); + unitMaintainPlatformDao.updateById(maintainPlatform); + } + } + + } + + @Override + public String verifyUnitMaintainPlatform(PlatformLinkRequest platformLinkRequest) { + List list = unitMaintainPlatformDao.selectList(platformLinkRequest); + if (CollUtil.isEmpty(list)) { + return "success"; + } else { + for (UnitMaintainPlatformEntity maintainPlatform : list) { + if (maintainPlatform.getId().equals(platformLinkRequest.getId())) { + return "success"; + } else { + return "重复添加"; + } + } + } + return "重复添加"; + } + + /** + * 查询关联数据 + * + * @param customerId + * @param action + * @param unitId + * @return + */ + public UnitMaintainPlatformEntity findLinkData(long customerId, String action, String unitId) { + return unitMaintainPlatformDao.findLinkData(customerId, action, unitId); + } + + @Override + public List selectDelectList(PlatformLinkRequest platformLinkRequest) { + if (null == platformLinkRequest) { + return Collections.emptyList(); + } + if (null != platformLinkRequest.getPage() && null != platformLinkRequest.getLimit()) { + PageHelper.offsetPage((platformLinkRequest.getPage() - 1) * platformLinkRequest.getLimit(), platformLinkRequest.getLimit()); + } + return unitMaintainPlatformDao.selectDelectList(platformLinkRequest.getPlatformId()); + } + + public String[] buildHeader(String apiKey,String apiSecret) { + String[] headers = {"api_key", apiKey, "secret_key", apiSecret}; + return headers; + } +} diff --git a/src/main/java/com/glxp/api/task/SyncHeartTask.java b/src/main/java/com/glxp/api/task/SyncHeartTask.java index 2dcc0989d..61fdbc44a 100644 --- a/src/main/java/com/glxp/api/task/SyncHeartTask.java +++ b/src/main/java/com/glxp/api/task/SyncHeartTask.java @@ -21,8 +21,8 @@ import javax.annotation.Resource; import java.util.Arrays; -@Component -@EnableScheduling +//@Component +//@EnableScheduling public class SyncHeartTask implements SchedulingConfigurer { final Logger logger = LoggerFactory.getLogger(SyncHeartTask.class); diff --git a/src/main/java/com/glxp/api/task/SyncThirdSysTask.java b/src/main/java/com/glxp/api/task/SyncThirdSysTask.java index d10c44f95..692a06f69 100644 --- a/src/main/java/com/glxp/api/task/SyncThirdSysTask.java +++ b/src/main/java/com/glxp/api/task/SyncThirdSysTask.java @@ -34,7 +34,7 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ExecutorService; @Component -@EnableScheduling +//@EnableScheduling @Slf4j public class SyncThirdSysTask implements SchedulingConfigurer { diff --git a/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml b/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml index 9644c13e2..83ac4e605 100644 --- a/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml +++ b/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml @@ -343,4 +343,11 @@ WHERE erpId NOT IN (SELECT customerId FROM sup_company) AND corpType = 2; + + diff --git a/src/main/resources/mybatis/mapper/inout/PlatformDao.xml b/src/main/resources/mybatis/mapper/inout/PlatformDao.xml new file mode 100644 index 000000000..0499e086c --- /dev/null +++ b/src/main/resources/mybatis/mapper/inout/PlatformDao.xml @@ -0,0 +1,106 @@ + + + + + + replace into auth_platform + (id, name, host) + values + + (#{item.id}, #{item.name,jdbcType=VARCHAR}, #{item.host,jdbcType=VARCHAR}) + + + + + + + + + + + + + + + insert into auth_platform(id, name, host) + VALUES (#{id}, #{name}, #{host}) + + + + + + delete + from auth_platform + where id = #{id} + + + + update auth_platform + + + name = #{name}, + + + host = #{host}, + + + where id = #{id} + + diff --git a/src/main/resources/mybatis/mapper/inout/UnitMaintainPlatformDao.xml b/src/main/resources/mybatis/mapper/inout/UnitMaintainPlatformDao.xml new file mode 100644 index 000000000..cb9cdedd7 --- /dev/null +++ b/src/main/resources/mybatis/mapper/inout/UnitMaintainPlatformDao.xml @@ -0,0 +1,168 @@ + + + + + + + + + update io_unit_maintain_platform + + + unitId = #{unitId}, + + + customerId = #{customerId}, + + + platformId = #{platformId}, + + + sourceAction = #{sourceAction}, + + + targetAction = #{targetAction}, + + + invCode = #{invCode}, + + + invSubCode = #{invSubCode}, + + + appid = #{appid}, + + + apiKey = #{apiKey}, + + + secretKey = #{secretKey}, + + + invName = #{invName}, + + + invSubName = #{invSubName}, + + + targetName = #{targetName} + + + where id = #{id} + + + + insert into io_unit_maintain_platform (unitId, customerId, platformId, sourceAction, targetAction, invCode, + invSubCode, appid, apiKey, secretKey, invName, invSubName, targetName) + VALUES (#{unitId}, #{customerId}, #{platformId}, #{sourceAction}, #{targetAction}, #{invCode}, #{invSubCode}, + #{appid}, #{apiKey}, #{secretKey}, #{invName}, #{invSubName}, #{targetName}) + + + + + + + + delete + from io_unit_maintain_platform + where id = #{id} + + + + + + \ No newline at end of file From 607414c4a13820dfa31980f46ddf48c1a9950f93 Mon Sep 17 00:00:00 2001 From: wangwei <1610949092@qq.com> Date: Thu, 15 Jun 2023 15:13:37 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E7=89=A9=E8=B5=84=E7=B1=BB=E5=88=ABbug?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basic/BasicProductCategoryController.java | 59 ++++-- .../glxp/api/dao/basic/UdiRelevanceDao.java | 2 + .../req/basic/FilterUdiProductRequest.java | 3 + .../api/req/basic/FilterUdiRelRequest.java | 1 + .../service/basic/BasicHospTypeService.java | 2 + .../basic/impl/BasicHospTypeServiceImpl.java | 15 +- .../basic/BasicProductCategoryRelMapper.xml | 6 + .../mybatis/mapper/basic/UdiRelevanceDao.xml | 182 ++++++++++++++++++ 8 files changed, 251 insertions(+), 19 deletions(-) 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 36cb2eccd..970124695 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicProductCategoryController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicProductCategoryController.java @@ -38,7 +38,6 @@ public class BasicProductCategoryController { @Resource BasicProductCategoryService basicProductCategoryService; - @GetMapping("/udiwms/basic/product/category/filter") public BaseResponse filterBasicUnitMaintain(BasicHospTypeFilterRequest basicHospTypeFilterRequest, BindingResult bindingResult) { @@ -170,18 +169,25 @@ public class BasicProductCategoryController { @GetMapping("/udiwms/basic/product/category/bindList") public BaseResponse bindList(FilterUdiProductRequest filterUdiProductRequest) { - if (StrUtil.isNotEmpty(filterUdiProductRequest.getUdiCode()) && StrUtil.isEmpty(filterUdiProductRequest.getUnionCode())) { - if (StrUtil.isNotEmpty(filterUdiProductRequest.getUdiCode())) { - UdiEntity udi = FilterUdiUtils.getUdi(filterUdiProductRequest.getUdiCode()); - filterUdiProductRequest.setNameCode(udi.getUdi()); + if (StrUtil.isNotEmpty(filterUdiProductRequest.getUdiCode())) { + UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiProductRequest.getUdiCode()); + if (udiEntity != null) { + filterUdiProductRequest.setNameCode(udiEntity.getUdi()); + filterUdiProductRequest.setUnionCode(udiEntity.getUdi()); } - List udiRelevanceResponses = basicProductCategoryService.selectAll(filterUdiProductRequest); - if(udiRelevanceResponses != null && udiRelevanceResponses.size()>0){ - filterUdiProductRequest.setOriginUuid(udiRelevanceResponses.get(0).getOriginUuid()); - filterUdiProductRequest.setNameCode(null); - } - - }else{ + } + //如果输入DI标识,精确找到不同层级对应的产品信息 + if (StrUtil.isNotEmpty(filterUdiProductRequest.getUnionCode())) { + FilterUdiRelRequest filterUdiInfoRequest = new FilterUdiRelRequest(); + filterUdiInfoRequest.setNameCode(filterUdiProductRequest.getUnionCode()); + List temps = basicHospTypeService.filterUdiGp(filterUdiInfoRequest); + if (temps != null && temps.size() > 0) { + filterUdiProductRequest.setOriginUuid(temps.get(0).getOriginUuid()); + filterUdiProductRequest.setNameCode(filterUdiInfoRequest.getNameCode()); + filterUdiProductRequest.setUnionCode(null); + } + } else { + //只查找主标识产品信息 filterUdiProductRequest.setDiType(1); } @@ -198,7 +204,19 @@ public class BasicProductCategoryController { //是否是一级分类 BasicProductCategory category = basicProductCategoryService.checkCode(filterUdiRelRequest.getParentCode()); - + //过滤已被选入的产品 + FilterUdiProductRequest request = new FilterUdiProductRequest(); + if("10000".equals(category.getParentCode())) { + request.setCode(filterUdiRelRequest.getParentCode()); + }else{ + request.setCode(category.getCode()); + } + List udiRelevanceResponses1 = basicProductCategoryService.selectAll(request); + ArrayList list = new ArrayList<>(); + for (UdiRelevanceResponse udiRelevanceResponse : udiRelevanceResponses1) { + list.add(udiRelevanceResponse.getId()); + } + filterUdiRelRequest.setExistid(list); List udiRelevanceResponses=null; @@ -213,7 +231,7 @@ public class BasicProductCategoryController { if (StrUtil.isNotEmpty(filterUdiRelRequest.getUnionCode())) { FilterUdiRelRequest filterUdiInfoRequest = new FilterUdiRelRequest(); filterUdiInfoRequest.setNameCode(filterUdiRelRequest.getUnionCode()); - List temps = udiRelevanceService.filterUdiGp(filterUdiInfoRequest); + List temps = basicHospTypeService.filterUdiGp(filterUdiInfoRequest); if (temps != null && temps.size() > 0) { filterUdiRelRequest.setOriginUuid(temps.get(0).getOriginUuid()); filterUdiRelRequest.setNameCode(filterUdiInfoRequest.getNameCode()); @@ -225,7 +243,8 @@ public class BasicProductCategoryController { } if("10000".equals(category.getParentCode())) { //查全部 - udiRelevanceResponses= basicHospTypeService.filterUdiGp(filterUdiRelRequest); + udiRelevanceResponses= basicHospTypeService.filterUdiGpexist(filterUdiRelRequest); + }else{ // 查上级 FilterUdiProductRequest filterUdiProductRequest = new FilterUdiProductRequest(); @@ -235,10 +254,12 @@ public class BasicProductCategoryController { filterUdiProductRequest.setYlqxzcrbarmc(filterUdiRelRequest.getYlqxzcrbarmc()); filterUdiProductRequest.setUnionCode(filterUdiRelRequest.getUnionCode()); filterUdiProductRequest.setThrPiId(filterUdiRelRequest.getThrPiId()); - + filterUdiProductRequest.setNameCode(filterUdiRelRequest.getNameCode()); + filterUdiProductRequest.setExistid(list); udiRelevanceResponses= basicProductCategoryService.selectAll(filterUdiProductRequest); } + PageInfo pageInfo = new PageInfo<>(udiRelevanceResponses); PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); pageSimpleResponse.setTotal(pageInfo.getTotal()); @@ -251,8 +272,7 @@ public class BasicProductCategoryController { @GetMapping("/udiwms/basic/product/category/SelcetproductList") public BaseResponse SelectproductList(FilterUdiRelRequest filterUdiRelRequest) { - //是否是一级分类 - BasicProductCategory category = basicProductCategoryService.checkCode(filterUdiRelRequest.getParentCode()); + List udiRelevanceResponses=null; @@ -278,6 +298,8 @@ public class BasicProductCategoryController { //只查找主标识产品信息 filterUdiRelRequest.setDiType(1); } + //是否是一级分类 + BasicProductCategory category = basicProductCategoryService.checkCode(filterUdiRelRequest.getParentCode()); if("10000".equals(category.getParentCode())) { //查全部 udiRelevanceResponses= basicHospTypeService.filterUdiGp(filterUdiRelRequest); @@ -290,6 +312,7 @@ public class BasicProductCategoryController { filterUdiProductRequest.setYlqxzcrbarmc(filterUdiRelRequest.getYlqxzcrbarmc()); filterUdiProductRequest.setUnionCode(filterUdiRelRequest.getUnionCode()); filterUdiProductRequest.setThrPiId(filterUdiRelRequest.getThrPiId()); + filterUdiProductRequest.setNameCode(filterUdiRelRequest.getNameCode()); udiRelevanceResponses= basicProductCategoryService.selectAll(filterUdiProductRequest); diff --git a/src/main/java/com/glxp/api/dao/basic/UdiRelevanceDao.java b/src/main/java/com/glxp/api/dao/basic/UdiRelevanceDao.java index 0667bd3d3..6580c5dda 100644 --- a/src/main/java/com/glxp/api/dao/basic/UdiRelevanceDao.java +++ b/src/main/java/com/glxp/api/dao/basic/UdiRelevanceDao.java @@ -21,6 +21,8 @@ public interface UdiRelevanceDao extends BaseMapperPlus filterUdiGp(FilterUdiRelRequest filterUdiRelRequest); + List filterUdiGpexist(FilterUdiRelRequest filterUdiRelRequest); + // UdiRelevanceResponse selectUdiByUUid List selectByUuid(@Param("uuid") String uuid); diff --git a/src/main/java/com/glxp/api/req/basic/FilterUdiProductRequest.java b/src/main/java/com/glxp/api/req/basic/FilterUdiProductRequest.java index a639efbc1..98fa46517 100644 --- a/src/main/java/com/glxp/api/req/basic/FilterUdiProductRequest.java +++ b/src/main/java/com/glxp/api/req/basic/FilterUdiProductRequest.java @@ -3,6 +3,8 @@ package com.glxp.api.req.basic; import com.glxp.api.util.page.ListPageRequest; import lombok.Data; +import java.util.List; + @Data public class FilterUdiProductRequest extends ListPageRequest { @@ -19,6 +21,7 @@ public class FilterUdiProductRequest extends ListPageRequest { private String thrPiId; private String originUuid; private Integer diType; + private List existid; 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 b7840c826..2154fe7de 100644 --- a/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java +++ b/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java @@ -77,5 +77,6 @@ public class FilterUdiRelRequest extends ListPageRequest { private List ids; private String flbm; private String parentCode; + private List existid; } diff --git a/src/main/java/com/glxp/api/service/basic/BasicHospTypeService.java b/src/main/java/com/glxp/api/service/basic/BasicHospTypeService.java index bba6e0f9d..fc0ebceaf 100644 --- a/src/main/java/com/glxp/api/service/basic/BasicHospTypeService.java +++ b/src/main/java/com/glxp/api/service/basic/BasicHospTypeService.java @@ -35,6 +35,8 @@ public interface BasicHospTypeService extends IService { List filterUdiGp(FilterUdiRelRequest filterUdiRelRequest); + List filterUdiGpexist(FilterUdiRelRequest filterUdiRelRequest); + Boolean checkName(BasicHospTypeRequest basicHospTypeRequest, Integer type); diff --git a/src/main/java/com/glxp/api/service/basic/impl/BasicHospTypeServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/BasicHospTypeServiceImpl.java index 7ba10f5f0..8c5d071cb 100644 --- a/src/main/java/com/glxp/api/service/basic/impl/BasicHospTypeServiceImpl.java +++ b/src/main/java/com/glxp/api/service/basic/impl/BasicHospTypeServiceImpl.java @@ -8,7 +8,6 @@ import com.github.pagehelper.PageHelper; import com.glxp.api.dao.basic.BasicHospTypeDao; import com.glxp.api.dao.basic.UdiRelevanceDao; import com.glxp.api.entity.basic.BasicHospTypeEntity; -import com.glxp.api.entity.basic.BasicHospTypeRelEntity; import com.glxp.api.entity.basic.UdiRelevanceEntity; import com.glxp.api.req.basic.BasicHospTypeFilterRequest; import com.glxp.api.req.basic.BasicHospTypeRequest; @@ -203,6 +202,20 @@ public class BasicHospTypeServiceImpl extends ServiceImpl filterUdiGpexist(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 = udiRelevanceDao.filterUdiGpexist(filterUdiRelRequest); + return data; + } + @Override public Boolean checkName(BasicHospTypeRequest basicHospTypeRequest, Integer type) { Long sum = null; diff --git a/src/main/resources/mybatis/mapper/basic/BasicProductCategoryRelMapper.xml b/src/main/resources/mybatis/mapper/basic/BasicProductCategoryRelMapper.xml index 5a6b4057c..4378d441b 100644 --- a/src/main/resources/mybatis/mapper/basic/BasicProductCategoryRelMapper.xml +++ b/src/main/resources/mybatis/mapper/basic/BasicProductCategoryRelMapper.xml @@ -67,6 +67,12 @@ and basic_products.originUuid = #{originUuid} + + and basic_udirel.id not in + + #{item} + + diff --git a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index dade4df0c..2263f7da6 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -461,6 +461,188 @@ ORDER BY modifyTime DESC + + + + + \ No newline at end of file From 4a45824b8ae1dadfea800f8cee7b7cb19e7e22c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=98=8E=E6=A2=81?= <2429105222@qq.com> Date: Thu, 15 Jun 2023 19:05:43 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E5=8D=95=E6=8D=AE=E6=98=8E=E7=BB=86?= =?UTF-8?q?=E6=89=93=E5=8D=B0=E4=BF=AE=E6=94=B9=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/controller/inout/IoOrderDetailResultController.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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 e77dc42f7..877281142 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java @@ -252,7 +252,8 @@ public class IoOrderDetailResultController extends BaseController { i++; } - String param = JSON.toJSONString(list); + data.put("data", list); + String param = JSON.toJSONString(data); JasperUtils.jasperReport(request, response, param, filePath+"pdf/template/"+systemPDFTemplateEntity.getPath(), "pdf"); return ResultVOUtils.success(); }