From bec91b93ca2e6f41a56c1fc091fba35d96e5eca0 Mon Sep 17 00:00:00 2001 From: anthonywj Date: Tue, 4 Jul 2023 18:46:33 +0800 Subject: [PATCH 01/21] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=8D=8F=E8=B0=83?= =?UTF-8?q?=E5=B9=B3=E5=8F=B0=E8=BF=BD=E6=BA=AF=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inout/IoOrderDetailResultController.java | 74 +++++++-- .../api/dao/inout/IoOrderDetailResultDao.java | 4 + .../glxp/api/req/inout/CptTraceRequest.java | 89 +++++++++++ .../api/res/inout/CptTraceOrderResponse.java | 21 +++ .../api/res/inout/CptTraceResultResponse.java | 146 ++++++++++++++++++ .../inout/IoOrderDetailResultService.java | 3 + .../impl/IoOrderDetailResultServiceImpl.java | 6 + src/main/resources/application-dev.yml | 2 +- .../mapper/inout/IoOrderDetailResultDao.xml | 31 ++++ 9 files changed, 365 insertions(+), 11 deletions(-) create mode 100644 src/main/java/com/glxp/api/req/inout/CptTraceRequest.java create mode 100644 src/main/java/com/glxp/api/res/inout/CptTraceOrderResponse.java create mode 100644 src/main/java/com/glxp/api/res/inout/CptTraceResultResponse.java 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 d4dbaf346..a7aea8de6 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java @@ -1,6 +1,7 @@ package com.glxp.api.controller.inout; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSON; import com.github.pagehelper.PageInfo; @@ -15,15 +16,20 @@ import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.inout.IoOrderDetailBizEntity; import com.glxp.api.entity.inout.IoOrderDetailCodeEntity; import com.glxp.api.entity.inout.IoOrderEntity; +import com.glxp.api.entity.system.CompanyEntity; import com.glxp.api.entity.system.SysPdfTemplateRelevanceStatemenEntity; import com.glxp.api.entity.system.SystemPDFTemplateEntity; +import com.glxp.api.req.inout.CptTraceRequest; import com.glxp.api.req.inout.FilterOrderDetailResultRequest; import com.glxp.api.req.inout.FilterOrderRequest; import com.glxp.api.req.inout.InspectionPDFTemplateRequest; +import com.glxp.api.res.inout.CptTraceOrderResponse; +import com.glxp.api.res.inout.CptTraceResultResponse; import com.glxp.api.res.inout.IoOrderDetailResultResponse; import com.glxp.api.service.auth.CustomerService; import com.glxp.api.service.basic.IBasicBussinessTypeService; import com.glxp.api.service.inout.*; +import com.glxp.api.service.system.CompanyService; import com.glxp.api.service.system.SystemPDFModuleService; import com.glxp.api.service.system.SystemPDFTemplateService; import com.glxp.api.util.JasperUtils; @@ -98,8 +104,8 @@ public class IoOrderDetailResultController extends BaseController { return ResultVOUtils.success(""); } orderDetailResultRequest.setActions(actions); - AuthAdmin authAdmin= customerService.getUserBean(); - if (StrUtil.isBlank(orderDetailResultRequest.getInvCode())){ + AuthAdmin authAdmin = customerService.getUserBean(); + if (StrUtil.isBlank(orderDetailResultRequest.getInvCode())) { orderDetailResultRequest.setInvCode(authAdmin.getLocInvCode()); } List list = orderDetailResultService.filterOrderList(orderDetailResultRequest); @@ -196,8 +202,8 @@ public class IoOrderDetailResultController extends BaseController { */ @AuthRuleAnnotation("") @PostMapping("/udiwms/inout/resultDetail/filterOrderPrint") - public BaseResponse filterOrderPrint(@RequestBody FilterOrderDetailResultRequest filterOrderDetailResultRequest, HttpServletRequest request, HttpServletResponse response) throws JRException, IOException { - List ioOrderDetailResultResponseList=new ArrayList<>(); + public BaseResponse filterOrderPrint(@RequestBody FilterOrderDetailResultRequest filterOrderDetailResultRequest, HttpServletRequest request, HttpServletResponse response) throws JRException, IOException { + List ioOrderDetailResultResponseList = new ArrayList<>(); SystemPDFTemplateEntity systemPDFTemplateEntity = systemPDFTemplateService.selectById(filterOrderDetailResultRequest.getTemplateId()); //打印单号标签 Map data = new HashMap<>(1); @@ -205,9 +211,9 @@ public class IoOrderDetailResultController extends BaseController { SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");//定义新的日期格式 //按选入打印 - if(filterOrderDetailResultRequest.getList() != null && filterOrderDetailResultRequest.getList().size()>0){ - ioOrderDetailResultResponseList =filterOrderDetailResultRequest.getList(); - }else{ + if (filterOrderDetailResultRequest.getList() != null && filterOrderDetailResultRequest.getList().size() > 0) { + ioOrderDetailResultResponseList = filterOrderDetailResultRequest.getList(); + } else { //按查询打印 FilterOrderRequest filterOrderRequest = new FilterOrderRequest(); filterOrderRequest.setVueType(filterOrderDetailResultRequest.getActionType()); @@ -227,7 +233,7 @@ public class IoOrderDetailResultController extends BaseController { } } } - int i=1; + int i = 1; for (IoOrderDetailResultResponse ioOrderDetailResultResponse : ioOrderDetailResultResponseList) { //组装数据 Map ioOrderDetailResultData = new HashMap<>(); @@ -244,7 +250,7 @@ public class IoOrderDetailResultController extends BaseController { ioOrderDetailResultData.put("spec", ioOrderDetailResultResponse.getSpec() == null ? ' ' : ioOrderDetailResultResponse.getSpec()); ioOrderDetailResultData.put("price", ioOrderDetailResultResponse.getPrice() == null ? ' ' : ioOrderDetailResultResponse.getPrice()); ioOrderDetailResultData.put("count", ioOrderDetailResultResponse.getCount()); - ioOrderDetailResultData.put("reCount",ioOrderDetailResultResponse.getReCount()); + ioOrderDetailResultData.put("reCount", ioOrderDetailResultResponse.getReCount()); ioOrderDetailResultData.put("inCount", ioOrderDetailResultResponse.getInCount()); ioOrderDetailResultData.put("acceptCount", ioOrderDetailResultResponse.getAcceptCount()); ioOrderDetailResultData.put("fromCorpName", ioOrderDetailResultResponse.getFromCorpName() == null ? ' ' : ioOrderDetailResultResponse.getFromCorpName()); @@ -257,10 +263,58 @@ public class IoOrderDetailResultController extends BaseController { data.put("data", list); String param = JSON.toJSONString(data); - JasperUtils.jasperReport(request, response, param, filePath+"pdf/template/"+systemPDFTemplateEntity.getPath(), "pdf"); + JasperUtils.jasperReport(request, response, param, filePath + "pdf/template/" + systemPDFTemplateEntity.getPath(), "pdf"); return ResultVOUtils.success(); } + @Resource + CompanyService companyService; + /** + * 提供UDI协调调用单据明细 + */ + @PostMapping("/udiCpt/inout/trace/search") + public BaseResponse cptTraceOrder(@RequestBody CptTraceRequest cptTraceRequest) { + if (StrUtil.isEmpty(cptTraceRequest.getBatchNo()) || CollUtil.isEmpty(cptTraceRequest.getDiList())) { + return ResultVOUtils.error(500, "参数有误!"); + } + CompanyEntity authCompany = companyService.findCompany(); + List cptTraceOrderResponses = orderDetailResultService.cptTrace(cptTraceRequest); + List cptTraceResultResponses = new ArrayList<>(); + if (CollUtil.isNotEmpty(cptTraceOrderResponses)) { + for (CptTraceOrderResponse cptTraceOrderResponse : cptTraceOrderResponses) { + CptTraceResultResponse cptTraceResultResponse = new CptTraceResultResponse(); + cptTraceResultResponse.setBillNo(cptTraceOrderResponse.getBillNo()); + cptTraceResultResponse.setBillDate(DateUtil.formatDate(cptTraceOrderResponse.getCreateTime())); + cptTraceResultResponse.setBillType(cptTraceOrderResponse.getBillType()); + if (cptTraceOrderResponse.getMainAction().equals(ConstantType.TYPE_OUT)) { + if (StrUtil.isNotEmpty(cptTraceOrderResponse.getFromInvCode())) + continue; + cptTraceResultResponse.setInOutType(2); + cptTraceResultResponse.setFromCorp(authCompany.getName()); + cptTraceResultResponse.setFromCorpCreditNum(authCompany.getCreditCode()); + + //往来单位为病人 + if (cptTraceOrderResponse.getCorpType() == 1 && cptTraceOrderResponse.getOutType() == 1) { + cptTraceResultResponse.setToUserInfo(cptTraceOrderResponse.getFromCorpName()); + } else { + cptTraceResultResponse.setToCorp(cptTraceOrderResponse.getFromCorpName()); + cptTraceResultResponse.setToCorpCreditNum(cptTraceOrderResponse.getCreditNo()); + } + } else { + cptTraceResultResponse.setInOutType(1); + cptTraceResultResponse.setFromCorp(cptTraceOrderResponse.getFromCorpName()); + cptTraceResultResponse.setFromCorpCreditNum(cptTraceOrderResponse.getCreditNo()); + cptTraceResultResponse.setToCorp(authCompany.getName()); + cptTraceResultResponse.setToCorpCreditNum(authCompany.getCreditCode()); + } + + cptTraceResultResponses.add(cptTraceResultResponse); + } + } + + return ResultVOUtils.success(cptTraceResultResponses); + + } } diff --git a/src/main/java/com/glxp/api/dao/inout/IoOrderDetailResultDao.java b/src/main/java/com/glxp/api/dao/inout/IoOrderDetailResultDao.java index d4548eb7a..69683c5c9 100644 --- a/src/main/java/com/glxp/api/dao/inout/IoOrderDetailResultDao.java +++ b/src/main/java/com/glxp/api/dao/inout/IoOrderDetailResultDao.java @@ -2,7 +2,9 @@ package com.glxp.api.dao.inout; import com.glxp.api.dao.BaseMapperPlus; import com.glxp.api.entity.inout.IoOrderDetailResultEntity; +import com.glxp.api.req.inout.CptTraceRequest; import com.glxp.api.req.inout.FilterOrderDetailResultRequest; +import com.glxp.api.res.inout.CptTraceOrderResponse; import com.glxp.api.res.inout.IoOrderDetailResultResponse; import io.lettuce.core.dynamic.annotation.Param; @@ -32,4 +34,6 @@ public interface IoOrderDetailResultDao extends BaseMapperPlus selectStatDataByTime(@Param("list") List orderIdFk); + + List cptTrace(CptTraceRequest cptTraceRequest); } diff --git a/src/main/java/com/glxp/api/req/inout/CptTraceRequest.java b/src/main/java/com/glxp/api/req/inout/CptTraceRequest.java new file mode 100644 index 000000000..64a3c849e --- /dev/null +++ b/src/main/java/com/glxp/api/req/inout/CptTraceRequest.java @@ -0,0 +1,89 @@ +package com.glxp.api.req.inout; + +import lombok.Data; + +import java.util.Date; +import java.util.List; + +/** + * 客户端查询任务列表实体类 + */ +@Data +public class CptTraceRequest { + + + /** + * 按UDI码查询出入库信息 + */ + private String udiCode; + + /** + * 查询记录表ID外键 + */ + private Long produdctRecordIdFk; + + /** + * 任务类型 1:关联关系;2:入库;3:出库 + */ + private Integer taskType; + + /** + * DI标识列表,多级包装会有多个DI + * DI标识数组,逗号隔开 + */ + private List diList; + + /** + * 企业信息ID外键 + */ + private Long companyIdFk; + + /** + * 医疗器械注册人 + */ + private String ylqxzcrbarmc; + + /** + * 医疗器械注册人统一社会信用号 + */ + private String creditNum; + + /** + * 产品名称 + */ + private String cpmctymc; + + /** + * 规格型号 + */ + private String ggxh; + + /** + * 批次号 + */ + private String batchNo; + /** + * 生成日期 + */ + private String produceDate; + /** + * 失效日期 + */ + private String expireDate; + + /** + * 序列号 + */ + private String serialNo; + + /** + * 任务创建时间 + */ + private Date createTime; + /** + * 任务更新时间 + */ + private Date updateTime; + + +} diff --git a/src/main/java/com/glxp/api/res/inout/CptTraceOrderResponse.java b/src/main/java/com/glxp/api/res/inout/CptTraceOrderResponse.java new file mode 100644 index 000000000..53de6cace --- /dev/null +++ b/src/main/java/com/glxp/api/res/inout/CptTraceOrderResponse.java @@ -0,0 +1,21 @@ +package com.glxp.api.res.inout; + +import lombok.Data; + +import java.util.Date; + +@Data +public class CptTraceOrderResponse { + + private String billNo; + private Date createTime; + private String mainAction; + private String billType; + private String fromCorpName; + private String creditNo; + private String action; + private String fromInvCode; + private Integer outType; + private Integer corpType; + private Integer count; +} diff --git a/src/main/java/com/glxp/api/res/inout/CptTraceResultResponse.java b/src/main/java/com/glxp/api/res/inout/CptTraceResultResponse.java new file mode 100644 index 000000000..c8c6599dc --- /dev/null +++ b/src/main/java/com/glxp/api/res/inout/CptTraceResultResponse.java @@ -0,0 +1,146 @@ +package com.glxp.api.res.inout; + +import cn.hutool.core.util.StrUtil; +import lombok.Data; + +import java.util.Date; + +@Data +public class CptTraceResultResponse { + + + private Long id; + + /** + * 单据号 + */ + private String billNo; + + /** + * 单据时间 + */ + private String billDate; + + /** + * 1:入库;2:出库 + */ + private Integer inOutType; + + /** + * 单据类型 + */ + private String billType; + + /** + * 发货企业 + */ + private String fromCorp; + + /** + * 发货企业统一社会信用号 + */ + private String fromCorpCreditNum; + + /** + * 收货企业 + */ + private String toCorp; + + /** + * 收货企业统一社会信用号 + */ + private String toCorpCreditNum; + + private String toUserInfo; + + /** + * 单据创建者 + */ + private Long createUser; + + /** + * 当前企业信息ID外键 + */ + private Long companyIdFk; + + /** + * 当前企业名称 + */ + private String companyName; + + /** + * 当前企业统一社会信用号 + */ + private String companyCertNum; + + /** + * 客户端类型 + */ + private Integer clientType; + + /** + * 退货原因(退货时填写) + */ + private String returnReason; + + /** + * 销毁原因(销毁时填写) + */ + private String destoryReason; + + /** + * 执行销毁人(销毁时填写) + */ + private String excuseUser; + + /** + * 执行销毁人证件号(销毁时填写) + */ + private String excuseCode; + + /** + * 监督人姓名【销毁出库时填写】 + */ + private String superviserUser; + + /** + * 监督人证件号【销毁出库时填写】 + */ + private String superviserCode; + + /** + * 上传着ID + */ + private Long uploadUser; + + /** + * 备注 + */ + private String remark; + + /** + * 更新时间 + */ + private Date updateTime; + + //关联信息 + private String cpmctymc; + private String nameCode; + private String ggxh; + private String ylqxzcrbarmc; + private String batchNo; + private String produceDate; + private String expireDate; + private String serialNo; + private String udiCode; + private String zczbhhzbapzbh; + private String recordCode; + private Integer count; + + public String getToCorp() { + if (StrUtil.isEmpty(toCorp)) + return toUserInfo; + return toCorp; + } + +} diff --git a/src/main/java/com/glxp/api/service/inout/IoOrderDetailResultService.java b/src/main/java/com/glxp/api/service/inout/IoOrderDetailResultService.java index fc8e1f92f..9f6affdf1 100644 --- a/src/main/java/com/glxp/api/service/inout/IoOrderDetailResultService.java +++ b/src/main/java/com/glxp/api/service/inout/IoOrderDetailResultService.java @@ -2,7 +2,9 @@ package com.glxp.api.service.inout; import com.glxp.api.entity.inout.IoOrderDetailCodeEntity; import com.glxp.api.entity.inout.IoOrderDetailResultEntity; +import com.glxp.api.req.inout.CptTraceRequest; import com.glxp.api.req.inout.FilterOrderDetailResultRequest; +import com.glxp.api.res.inout.CptTraceOrderResponse; import com.glxp.api.res.inout.IoOrderDetailResultResponse; import java.util.List; @@ -24,4 +26,5 @@ public interface IoOrderDetailResultService { List filterOrderList(FilterOrderDetailResultRequest orderDetailResultRequest); + List cptTrace(CptTraceRequest cptTraceRequest); } diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java index 00f6e3669..23ba1b5ed 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java @@ -6,7 +6,9 @@ import com.github.pagehelper.PageHelper; import com.glxp.api.dao.inout.IoOrderDetailResultDao; import com.glxp.api.entity.inout.IoOrderDetailCodeEntity; import com.glxp.api.entity.inout.IoOrderDetailResultEntity; +import com.glxp.api.req.inout.CptTraceRequest; import com.glxp.api.req.inout.FilterOrderDetailResultRequest; +import com.glxp.api.res.inout.CptTraceOrderResponse; import com.glxp.api.res.inout.IoOrderDetailResultResponse; import com.glxp.api.service.inout.IoOrderDetailResultService; import org.springframework.stereotype.Service; @@ -72,4 +74,8 @@ public class IoOrderDetailResultServiceImpl implements IoOrderDetailResultServic return orderDetailResultDao.filterOrderList(orderDetailResultRequest); } + @Override + public List cptTrace(CptTraceRequest cptTraceRequest) { + return orderDetailResultDao.cptTrace(cptTraceRequest); + } } diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index a87e0a10b..6035f3d23 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/udi_wms?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_zyy?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true username: root password: 123456 hikari: diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml index 4069e8825..cc532bb24 100644 --- a/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml @@ -108,4 +108,35 @@ + + + From 95e7c673c99b0d6419f6d9dbf2bdf59059a42735 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, 5 Jul 2023 11:22:09 +0800 Subject: [PATCH 02/21] =?UTF-8?q?=E5=8D=95=E6=8D=AE=E6=89=AB=E7=A0=81?= =?UTF-8?q?=E5=BA=8F=E5=88=97=E5=8F=B7=E4=B8=BA=E7=A9=BA=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/glxp/api/controller/inout/IoCodeTempController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 7d113c064..c98593566 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -272,7 +272,7 @@ public class IoCodeTempController extends BaseController { checkSuccess = false; lostMsg = lostMsg + ",失效日期"; } - if (!checkUdi.getAllowNoSerial() && StrUtil.isEmpty(udiEntity.getSerialNo()) + if (checkUdi.getAllowNoSerial()!=null && !checkUdi.getAllowNoSerial() && StrUtil.isEmpty(udiEntity.getSerialNo()) ) { checkSuccess = false; lostMsg = lostMsg + ",序列号"; From 7480c8edbe386e521b303e9f05df35ee71dce07d Mon Sep 17 00:00:00 2001 From: anthonywj Date: Wed, 5 Jul 2023 11:46:21 +0800 Subject: [PATCH 03/21] =?UTF-8?q?=E5=85=B3=E8=81=94DI=E5=BF=85=E5=A1=AB?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E4=B8=8D=E8=A2=AB=E8=A6=86=E7=9B=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basic/UdiContrastController.java | 52 ++++++++++++++++++- 1 file changed, 51 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java b/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java index e47e57b41..f23c051ab 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java @@ -296,6 +296,57 @@ public class UdiContrastController { public void updateDi(UdiRelevanceEntity udiRelevanceEntity, String key) { List udiInfoEntities = udiDlHttpClient.getOrUpdateByUuid(key); + List originProductEntities = udiProductService.findByUuids(udiRelevanceEntity.getUuid()); + if (CollUtil.isNotEmpty(originProductEntities) && CollUtil.isNotEmpty(udiInfoEntities)) { + UdiProductEntity originProductEntity = originProductEntities.get(0); + for (UdiProductEntity udiProductEntity : udiInfoEntities) { + if (StrUtil.isEmpty(udiProductEntity.getSptm())) { + udiProductEntity.setSptm(originProductEntity.getSptm()); + } + if (StrUtil.isEmpty(udiProductEntity.getYbbm())) { + udiProductEntity.setYbbm(originProductEntity.getYbbm()); + } + if (StrUtil.isEmpty(udiProductEntity.getMeasname())) { + udiProductEntity.setMeasname(originProductEntity.getMeasname()); + } + if (StrUtil.isEmpty(udiProductEntity.getManufactory())) { + udiProductEntity.setManufactory(originProductEntity.getManufactory()); + } + if (StrUtil.isEmpty(udiProductEntity.getPrice())) { + udiProductEntity.setPrice(originProductEntity.getPrice()); + } + if (StrUtil.isEmpty(udiProductEntity.getSpmc())) { + udiProductEntity.setSpmc(originProductEntity.getSpmc()); + } + if (StrUtil.isEmpty(udiProductEntity.getCpms())) { + udiProductEntity.setCpms(originProductEntity.getCpms()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak1())) { + udiProductEntity.setBasicPrductRemak1(originProductEntity.getBasicPrductRemak1()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak2())) { + udiProductEntity.setBasicPrductRemak2(originProductEntity.getBasicPrductRemak2()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak3())) { + udiProductEntity.setBasicPrductRemak3(originProductEntity.getBasicPrductRemak3()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak4())) { + udiProductEntity.setBasicPrductRemak4(originProductEntity.getBasicPrductRemak4()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak5())) { + udiProductEntity.setBasicPrductRemak5(originProductEntity.getBasicPrductRemak5()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak6())) { + udiProductEntity.setBasicPrductRemak6(originProductEntity.getBasicPrductRemak6()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak7())) { + udiProductEntity.setBasicPrductRemak7(originProductEntity.getBasicPrductRemak7()); + } + if (StrUtil.isEmpty(udiProductEntity.getBasicPrductRemak8())) { + udiProductEntity.setBasicPrductRemak8(originProductEntity.getBasicPrductRemak8()); + } + } + } udiProductService.deleteByUuid(udiRelevanceEntity.getUuid()); udiRelevanceEntity.setUuid(udiInfoEntities.get(0).getUuid()); udiRelevanceEntity.setUpdateTime(new Date()); @@ -304,7 +355,6 @@ public class UdiContrastController { insertUdiInfos(udiInfoEntities); } - public UdiRelevanceEntity setThird(UdiCombineRequest udiCombineRequest, UdiRelevanceEntity udiRelevanceEntity) { FilterBasicThirdSysRequest request = new FilterBasicThirdSysRequest(); if ("thirdId".equals(udiCombineRequest.getThirdSys())) { From 883084f4c5da991d0f7a5a933e787ffda5d2dfed 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, 5 Jul 2023 14:33:32 +0800 Subject: [PATCH 04/21] =?UTF-8?q?=E5=AE=9A=E6=95=B0=E5=8C=85=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basic/BasicDestinyRelController.java | 1 + .../inout/IoDestinyProcessController.java | 139 ++++++++++++ .../dao/inout/IoDestinyProcessCodeMapper.java | 6 + .../inout/IoDestinyProcessDetailMapper.java | 16 +- .../inout/IoDestinyProcessCodeEntity.java | 11 + .../inout/IoDestinyProcessDetailEntity.java | 11 + .../entity/inout/IoDestinyProcessEntity.java | 4 +- .../api/req/basic/FilterUdiRelRequest.java | 10 + .../req/inout/IodestinyProcessRequest.java | 15 ++ .../api/res/basic/UdiRelevanceResponse.java | 2 + .../res/inout/IodestinyProcessResponse.java | 101 +++++++++ .../inout/IoDestinyProcessCodeService.java | 7 + .../inout/IoDestinyProcessDetailService.java | 16 ++ .../inout/IoDestinyProcessService.java | 8 + .../impl/IoDestinyProcessCodeServiceImpl.java | 20 ++ .../IoDestinyProcessDetailServiceImpl.java | 212 +++++++++++++++++- .../impl/IoDestinyProcessServiceImpl.java | 45 ++++ .../mapper/basic/BasicDestinyRelMapper.xml | 4 + .../inout/IoDestinyProcessCodeMapper.xml | 25 +++ .../inout/IoDestinyProcessDetailMapper.xml | 76 +++++++ 20 files changed, 725 insertions(+), 4 deletions(-) create mode 100644 src/main/java/com/glxp/api/controller/inout/IoDestinyProcessController.java create mode 100644 src/main/java/com/glxp/api/req/inout/IodestinyProcessRequest.java create mode 100644 src/main/java/com/glxp/api/res/inout/IodestinyProcessResponse.java diff --git a/src/main/java/com/glxp/api/controller/basic/BasicDestinyRelController.java b/src/main/java/com/glxp/api/controller/basic/BasicDestinyRelController.java index c14fef462..ee5ca7b8b 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicDestinyRelController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicDestinyRelController.java @@ -234,6 +234,7 @@ public class BasicDestinyRelController { //查询详情id过滤 List idList = basicDestinyRelService.filterDestinyRelIds(Long.valueOf(filterUdiRelRequest.getId())); if (idList != null && idList.size() > 0) { + filterUdiRelRequest.setDestinyId(filterUdiRelRequest.getId()+""); filterUdiRelRequest.setIds(idList); filterUdiRelRequest.setDiType(1); thrProductsEntities = basicDestinyRelService.filterDestinyProducts(filterUdiRelRequest); diff --git a/src/main/java/com/glxp/api/controller/inout/IoDestinyProcessController.java b/src/main/java/com/glxp/api/controller/inout/IoDestinyProcessController.java new file mode 100644 index 000000000..495b85e5d --- /dev/null +++ b/src/main/java/com/glxp/api/controller/inout/IoDestinyProcessController.java @@ -0,0 +1,139 @@ +package com.glxp.api.controller.inout; + +import com.github.pagehelper.PageInfo; +import com.glxp.api.common.enums.ResultEnum; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.entity.inout.IoDestinyProcessDetailEntity; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.res.inout.IoCodeRelResponse; +import com.glxp.api.res.inout.IodestinyProcessResponse; +import com.glxp.api.service.basic.BasicDestinyRelService; +import com.glxp.api.service.inout.IoDestinyProcessCodeService; +import com.glxp.api.service.inout.IoDestinyProcessDetailService; +import com.glxp.api.service.inout.IoDestinyProcessService; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +@RestController +public class IoDestinyProcessController { + + @Resource + private BasicDestinyRelService basicDestinyRelService; + @Resource + private IoDestinyProcessDetailService ioDestinyProcessDetailService; + @Resource + private IoDestinyProcessCodeService ioDestinyProcessCodeService; + @Resource + private IoDestinyProcessService ioDestinyProcessService; + + + @PostMapping("/udiwms/basic/destiny/model/addDestinyDelect") + public BaseResponse addDestinyDelect(@RequestBody FilterUdiRelRequest filterUdiRelRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + ioDestinyProcessDetailService.insertProcessDetail(filterUdiRelRequest); + + return ResultVOUtils.success(); + } + + @GetMapping("/udiwms/basic/destiny/model/filterDestinyProcessDelect") + public BaseResponse filterDestinyProcessDelect(FilterUdiRelRequest filterUdiRelRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List udiRelevanceResponseList = ioDestinyProcessDetailService.filterProcessDetail(filterUdiRelRequest); + + return ResultVOUtils.success(udiRelevanceResponseList); + } + + @GetMapping("/udiwms/basic/destiny/model/filterDestinyProcess") + public BaseResponse filterDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List iodestinyProcessResponseList = ioDestinyProcessDetailService.filterDestinyProcess(iodestinyProcessRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(iodestinyProcessResponseList); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(iodestinyProcessResponseList); + + return ResultVOUtils.success(pageSimpleResponse); + } + + @GetMapping("/udiwms/basic/destiny/model/checkDestinyProcess") + public BaseResponse checkDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + BaseResponse baseResponse = ioDestinyProcessDetailService.checkDestinyProcess(iodestinyProcessRequest); + + + return baseResponse; + } + + @GetMapping("/udiwms/basic/destiny/model/filterDestinyProcessCode") + public BaseResponse filterDestinyProcessCode(IodestinyProcessRequest iodestinyProcessRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List iodestinyProcessResponseList = ioDestinyProcessCodeService.filterDestinyProcessCode(iodestinyProcessRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(iodestinyProcessResponseList); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(iodestinyProcessResponseList); + + return ResultVOUtils.success(pageSimpleResponse); + } + + @GetMapping("/udiwms/basic/destiny/model/addDestinyProcess") + public BaseResponse addDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List ioDestinyProcessDetailEntityList= ioDestinyProcessDetailService.addDestinyProcess(iodestinyProcessRequest); + + for (IoDestinyProcessDetailEntity ioDestinyProcessDetailEntity : ioDestinyProcessDetailEntityList) { + if(ioDestinyProcessDetailEntity.getCount()-ioDestinyProcessDetailEntity.getReCount()>0){ + return ResultVOUtils.error(999,"该单还未完全扫码校验!"); + } + } + //更新状态 + ioDestinyProcessService.uploadDestinyProcess(iodestinyProcessRequest); + + return ResultVOUtils.success(); + } + + @GetMapping("/udiwms/basic/destiny/model/delectDestinyProcess") + public BaseResponse delectDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + + //更新状态 + ioDestinyProcessService.delectDestinyProcess(iodestinyProcessRequest); + + return ResultVOUtils.success(); + } + +} diff --git a/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessCodeMapper.java b/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessCodeMapper.java index 01a97f2b2..f52bd6d16 100644 --- a/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessCodeMapper.java +++ b/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessCodeMapper.java @@ -2,8 +2,14 @@ package com.glxp.api.dao.inout; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.glxp.api.entity.inout.IoDestinyProcessCodeEntity; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.inout.IodestinyProcessResponse; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + @Mapper public interface IoDestinyProcessCodeMapper extends BaseMapper { + + List filterDestinyProcessCode(IodestinyProcessRequest iodestinyProcessRequest); } \ No newline at end of file diff --git a/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessDetailMapper.java b/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessDetailMapper.java index 6c9c05b32..3c59f7e55 100644 --- a/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessDetailMapper.java +++ b/src/main/java/com/glxp/api/dao/inout/IoDestinyProcessDetailMapper.java @@ -1,9 +1,23 @@ package com.glxp.api.dao.inout; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.glxp.api.dao.BaseMapperPlus; +import com.glxp.api.entity.inout.IoCodeTempEntity; import com.glxp.api.entity.inout.IoDestinyProcessDetailEntity; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.res.inout.IodestinyProcessResponse; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + @Mapper -public interface IoDestinyProcessDetailMapper extends BaseMapper { +public interface IoDestinyProcessDetailMapper extends BaseMapperPlus { + + List filterDestinyProducts(FilterUdiRelRequest filterUdiRelRequest); + + List filterDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); + + } \ No newline at end of file diff --git a/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessCodeEntity.java b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessCodeEntity.java index 0a1b789e3..ab955ed8d 100644 --- a/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessCodeEntity.java +++ b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessCodeEntity.java @@ -79,4 +79,15 @@ public class IoDestinyProcessCodeEntity { @TableField(value = "updateTime") private Date updateTime; + + @TableField(value = "code") + private String code; + + + @TableField(value = "serialNo") + private String serialNo; + + @TableField(value = "reCount") + private int reCount; + } \ No newline at end of file diff --git a/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessDetailEntity.java b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessDetailEntity.java index 864eb342a..70970557c 100644 --- a/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessDetailEntity.java +++ b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessDetailEntity.java @@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; +import java.util.Date; + /** * 定数包产品关联表 */ @@ -32,4 +34,13 @@ public class IoDestinyProcessDetailEntity { */ @TableField(value = "reCount") private Integer reCount; + + @TableField(value = "updateTime") + private Date updateTime; + + /** + * 订单号外键 + */ + @TableField(value = "orderIdFk") + private String orderIdFk; } \ No newline at end of file diff --git a/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessEntity.java b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessEntity.java index 4f502b5b2..96da4722a 100644 --- a/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessEntity.java +++ b/src/main/java/com/glxp/api/entity/inout/IoDestinyProcessEntity.java @@ -20,13 +20,13 @@ public class IoDestinyProcessEntity { * 定数包模板id */ @TableField(value = "destinyId") - private Long destinyId; + private String destinyId; /** * 唯一编码 */ @TableField(value = "destinyNo") - private Long destinyNo; + private String destinyNo; /** * 单据号 diff --git a/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java b/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java index 9d4ac2525..e793b3db6 100644 --- a/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java +++ b/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java @@ -3,6 +3,7 @@ package com.glxp.api.req.basic; import com.glxp.api.util.page.ListPageRequest; import lombok.Data; +import java.util.Date; import java.util.List; @Data @@ -89,4 +90,13 @@ public class FilterUdiRelRequest extends ListPageRequest { private String basicPrductRemak7; private String basicPrductRemak8; + //定数包参数 + private String destinyId; + private String destinyNo; + private String billNo; + private Date billDate; + private String invCode; + private String remark; + + } diff --git a/src/main/java/com/glxp/api/req/inout/IodestinyProcessRequest.java b/src/main/java/com/glxp/api/req/inout/IodestinyProcessRequest.java new file mode 100644 index 000000000..5ef885472 --- /dev/null +++ b/src/main/java/com/glxp/api/req/inout/IodestinyProcessRequest.java @@ -0,0 +1,15 @@ +package com.glxp.api.req.inout; + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +@Data +public class IodestinyProcessRequest extends ListPageRequest { + + private String billNo; + + private String invCode; + + private String code; + +} diff --git a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java index dde051c2d..4d588f774 100644 --- a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java +++ b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java @@ -100,6 +100,8 @@ public class UdiRelevanceResponse { private String relCode; private int index; + private int reCount; + //关联查询字典 private String unitFk; //供应商ID private String companyName; //供应商名称 diff --git a/src/main/java/com/glxp/api/res/inout/IodestinyProcessResponse.java b/src/main/java/com/glxp/api/res/inout/IodestinyProcessResponse.java new file mode 100644 index 000000000..0701fa134 --- /dev/null +++ b/src/main/java/com/glxp/api/res/inout/IodestinyProcessResponse.java @@ -0,0 +1,101 @@ +package com.glxp.api.res.inout; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +public class IodestinyProcessResponse { + + + private Long id; + + private String destinyId; + + private String destinyNo; + + private String billNo; + + private Date billDate; + + private String invCode; + + private String remark; + + private Date createTime; + + private Date updateTime; + + private String createUser; + + private String updateUser; + + private Integer status; + + private String invName; + + private String updateName; + private String createName; + private String code; + + private String serialNo; + private String productDate; + private String expireDate; + private BigDecimal price; + private String batchNo; + private int count; + private int reCount; + + + + + //产品 + private String originUuid; + private String nameCode; + private String deviceRecordKey; + private String packRatio; + private String packLevel; + private String packUnit; + private Integer bhxjsl; + private Integer bhzxxsbzsl; + private Integer zxxsbzbhsydysl; + private String bhxjcpbm; + private String bzcj; + private String cpmctymc; + private String cplb; + private String flbm; + private String ggxh; + private String qxlb; + private String tyshxydm; + private String ylqxzcrbarmc; + private String zczbhhzbapzbh; + private String ylqxzcrbarywmc; + private String sydycpbs; + private String sjcpbm; + private Integer versionNumber; + private Integer diType; + private String ybbm; + private String sptm; + private String manufactory; + private String measname; + private Integer productType; + private String scbssfbhph; + private String scbssfbhxlh; + private String scbssfbhscrq; + private String scbssfbhsxrq; + private String cpms; + private Boolean allowNoBatch; + private Boolean allowNoExpire; + private Boolean allowNoProduct; + private Boolean allowNoSerial; + private String spmc; + private String cplx; + private String hchzsb; + private String cpdls; + +} diff --git a/src/main/java/com/glxp/api/service/inout/IoDestinyProcessCodeService.java b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessCodeService.java index 76a0e54fb..c7abffd21 100644 --- a/src/main/java/com/glxp/api/service/inout/IoDestinyProcessCodeService.java +++ b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessCodeService.java @@ -2,7 +2,14 @@ package com.glxp.api.service.inout; import com.glxp.api.entity.inout.IoDestinyProcessCodeEntity; import com.baomidou.mybatisplus.extension.service.IService; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.inout.IodestinyProcessResponse; + +import java.util.List; + public interface IoDestinyProcessCodeService{ + List filterDestinyProcessCode(IodestinyProcessRequest iodestinyProcessRequest); + } diff --git a/src/main/java/com/glxp/api/service/inout/IoDestinyProcessDetailService.java b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessDetailService.java index b51861a54..d6d1c6bad 100644 --- a/src/main/java/com/glxp/api/service/inout/IoDestinyProcessDetailService.java +++ b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessDetailService.java @@ -1,8 +1,24 @@ package com.glxp.api.service.inout; +import com.glxp.api.common.res.BaseResponse; import com.glxp.api.entity.inout.IoDestinyProcessDetailEntity; import com.baomidou.mybatisplus.extension.service.IService; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.res.inout.IodestinyProcessResponse; + +import java.util.List; + public interface IoDestinyProcessDetailService{ + Boolean insertProcessDetail(FilterUdiRelRequest filterUdiRelRequest); + + List addDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); + + List filterProcessDetail(FilterUdiRelRequest filterUdiRelRequest); + + List filterDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); + BaseResponse checkDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); } diff --git a/src/main/java/com/glxp/api/service/inout/IoDestinyProcessService.java b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessService.java index 24633790e..bdf36276a 100644 --- a/src/main/java/com/glxp/api/service/inout/IoDestinyProcessService.java +++ b/src/main/java/com/glxp/api/service/inout/IoDestinyProcessService.java @@ -1,6 +1,14 @@ package com.glxp.api.service.inout; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.inout.IodestinyProcessRequest; + public interface IoDestinyProcessService{ + Boolean uploadDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); + + Boolean delectDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest); + + } diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessCodeServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessCodeServiceImpl.java index e98d51ac2..621fd43b2 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessCodeServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessCodeServiceImpl.java @@ -1,8 +1,28 @@ package com.glxp.api.service.inout.impl; +import com.github.pagehelper.PageHelper; +import com.glxp.api.dao.inout.IoDestinyProcessCodeMapper; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.inout.IodestinyProcessResponse; import org.springframework.stereotype.Service; import com.glxp.api.service.inout.IoDestinyProcessCodeService; + +import javax.annotation.Resource; +import java.util.List; + @Service public class IoDestinyProcessCodeServiceImpl implements IoDestinyProcessCodeService { + @Resource + IoDestinyProcessCodeMapper ioDestinyProcessCodeMapper; + + @Override + public List filterDestinyProcessCode(IodestinyProcessRequest iodestinyProcessRequest) { + + if (iodestinyProcessRequest.getPage() != null) { + int offset = (iodestinyProcessRequest.getPage() - 1) * iodestinyProcessRequest.getLimit(); + PageHelper.offsetPage(offset, iodestinyProcessRequest.getLimit()); + } + return ioDestinyProcessCodeMapper.filterDestinyProcessCode(iodestinyProcessRequest); + } } diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessDetailServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessDetailServiceImpl.java index 5812f8875..b89b3c989 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessDetailServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessDetailServiceImpl.java @@ -1,11 +1,221 @@ package com.glxp.api.service.inout.impl; +import cn.hutool.core.util.IdUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.github.pagehelper.PageHelper; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.dao.inout.IoDestinyProcessCodeMapper; +import com.glxp.api.dao.inout.IoDestinyProcessMapper; +import com.glxp.api.entity.auth.AuthAdmin; +import com.glxp.api.entity.basic.UdiEntity; +import com.glxp.api.entity.inout.IoDestinyProcessCodeEntity; +import com.glxp.api.entity.inout.IoDestinyProcessEntity; +import com.glxp.api.req.basic.FilterUdiRelRequest; +import com.glxp.api.req.inout.IodestinyProcessRequest; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.res.inout.IodestinyProcessResponse; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.basic.BasicDestinyRelService; +import com.glxp.api.service.basic.UdiRelevanceService; +import com.glxp.api.service.inout.IoDestinyProcessService; +import com.glxp.api.util.udi.FilterUdiUtils; +import com.glxp.api.util.udi.UdiCalCountUtil; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.glxp.api.dao.inout.IoDestinyProcessDetailMapper; import com.glxp.api.entity.inout.IoDestinyProcessDetailEntity; import com.glxp.api.service.inout.IoDestinyProcessDetailService; + +import javax.annotation.Resource; +import java.awt.geom.QuadCurve2D; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Date; +import java.util.List; + @Service -public class IoDestinyProcessDetailServiceImpl implements IoDestinyProcessDetailService{ +public class IoDestinyProcessDetailServiceImpl implements IoDestinyProcessDetailService { + + + @Resource + private BasicDestinyRelService basicDestinyRelService; + @Resource + private IoDestinyProcessDetailMapper ioDestinyProcessDetailMapper; + @Resource + private IoDestinyProcessCodeMapper ioDestinyProcessCodeMapper; + + @Resource + CustomerService customerService; + @Resource + IoDestinyProcessMapper ioDestinyProcessMapper; + @Resource + UdiRelevanceService udiRelevanceService; + @Resource + UdiCalCountUtil udiCalCountUtil; + + + @Override + public Boolean insertProcessDetail(FilterUdiRelRequest filterUdiRelRequest) { + //删除原数据 + QueryWrapper ew=new QueryWrapper<>(); + ew.eq("orderIdFk",filterUdiRelRequest.getBillNo()); + long count= ioDestinyProcessDetailMapper.delete(ew); + + QueryWrapper ew1=new QueryWrapper<>(); + ew1.eq("orderIdFk",filterUdiRelRequest.getBillNo()); + ioDestinyProcessCodeMapper.delete(ew1); + filterUdiRelRequest.setDestinyId(filterUdiRelRequest.getDestinyId()); + filterUdiRelRequest.setDiType(1); + List thrProductsEntities = basicDestinyRelService.filterDestinyProducts(filterUdiRelRequest); + + AuthAdmin authAdmin= customerService.getUserBean(); + IoDestinyProcessEntity ioDestinyProcessEntity=new IoDestinyProcessEntity(); + // 插入主表 + if(count>0){ + QueryWrapper ew2=new QueryWrapper<>(); + ew2.eq("billNo",filterUdiRelRequest.getBillNo()); + ioDestinyProcessEntity=ioDestinyProcessMapper.selectOne(ew2); + ioDestinyProcessEntity.setCreateTime(new Date()); + ioDestinyProcessEntity.setUpdateTime(new Date()); + ioDestinyProcessEntity.setCreateUser(authAdmin.getId() + ""); + ioDestinyProcessEntity.setUpdateUser(authAdmin.getId() + ""); + ioDestinyProcessEntity.setInvCode(filterUdiRelRequest.getInvCode()); + ioDestinyProcessEntity.setRemark(filterUdiRelRequest.getRemark()); + ioDestinyProcessMapper.updateById(ioDestinyProcessEntity); + }else{ + ioDestinyProcessEntity.setId(IdUtil.getSnowflakeNextId()); + ioDestinyProcessEntity.setDestinyNo(filterUdiRelRequest.getDestinyNo()); + ioDestinyProcessEntity.setDestinyId(filterUdiRelRequest.getDestinyId()); + ioDestinyProcessEntity.setBillNo(filterUdiRelRequest.getBillNo()); + ioDestinyProcessEntity.setBillDate(filterUdiRelRequest.getBillDate()); + ioDestinyProcessEntity.setRemark(filterUdiRelRequest.getRemark()); + ioDestinyProcessEntity.setInvCode(filterUdiRelRequest.getInvCode()); + ioDestinyProcessEntity.setCreateTime(new Date()); + ioDestinyProcessEntity.setUpdateTime(new Date()); + ioDestinyProcessEntity.setCreateUser(authAdmin.getId() + ""); + ioDestinyProcessEntity.setUpdateUser(authAdmin.getId() + ""); + ioDestinyProcessEntity.setStatus(0); + ioDestinyProcessMapper.insert(ioDestinyProcessEntity); + } + + // 插入详情表 + List ioDestinyProcessDetailEntityList=new ArrayList<>(); + for (UdiRelevanceResponse thrProductsEntity : thrProductsEntities) { + IoDestinyProcessDetailEntity ioDestinyProcessDetailEntity=new IoDestinyProcessDetailEntity(); + ioDestinyProcessDetailEntity.setId(IdUtil.getSnowflakeNextId()); + ioDestinyProcessDetailEntity.setCount(thrProductsEntity.getCount()); + ioDestinyProcessDetailEntity.setRelId(thrProductsEntity.getId()); + ioDestinyProcessDetailEntity.setReCount(0); + ioDestinyProcessDetailEntity.setUpdateTime(new Date()); + ioDestinyProcessDetailEntity.setOrderIdFk(ioDestinyProcessEntity.getBillNo()); + ioDestinyProcessDetailEntityList.add(ioDestinyProcessDetailEntity); + thrProductsEntity.setReCount(0); + } + ioDestinyProcessDetailMapper.insertBatch(ioDestinyProcessDetailEntityList); + + return true; + } + + @Override + public List addDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest) { + + QueryWrapper ew=new QueryWrapper<>(); + ew.eq("orderIdFk",iodestinyProcessRequest.getBillNo()); + List ioDestinyProcessDetailEntity=ioDestinyProcessDetailMapper.selectList(ew); + return ioDestinyProcessDetailEntity; + } + + @Override + public List filterProcessDetail(FilterUdiRelRequest filterUdiRelRequest) { + //查询详情 + List thrProductsEntities = ioDestinyProcessDetailMapper.filterDestinyProducts(filterUdiRelRequest); + return thrProductsEntities; + } + + @Override + public List filterDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest) { + + if (iodestinyProcessRequest.getPage() != null) { + int offset = (iodestinyProcessRequest.getPage() - 1) * iodestinyProcessRequest.getLimit(); + PageHelper.offsetPage(offset, iodestinyProcessRequest.getLimit()); + } + return ioDestinyProcessDetailMapper.filterDestinyProcess(iodestinyProcessRequest); + } + + @Override + public BaseResponse checkDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest) { + + UdiEntity udiEntity = FilterUdiUtils.getUdi(iodestinyProcessRequest.getCode()); + UdiRelevanceResponse checkUdi = udiRelevanceService.selectByNameCode(udiEntity.getUdi()); + if (checkUdi ==null){ + return ResultVOUtils.error(500, "耗材字典不存在此产品!"); + } + QueryWrapper ew=new QueryWrapper<>(); + ew.eq("orderIdFk",iodestinyProcessRequest.getBillNo()); + ew.eq("relId",checkUdi.getRelId()); + IoDestinyProcessDetailEntity ioDestinyProcessDetailEntity=ioDestinyProcessDetailMapper.selectOne(ew); + if(ioDestinyProcessDetailEntity == null){ + return ResultVOUtils.error(500, "定数包不存在此产品!"); + } + if(ioDestinyProcessDetailEntity.getCount()-ioDestinyProcessDetailEntity.getReCount()<=0){ + return ResultVOUtils.error(500, "该产品已足够!"); + } + int count = udiCalCountUtil.getActCount(udiEntity.getUdi()); + ioDestinyProcessDetailEntity.setReCount(ioDestinyProcessDetailEntity.getReCount()+count); + ioDestinyProcessDetailMapper.updateById(ioDestinyProcessDetailEntity); + //判断有没有序列号 + //有 + if (udiEntity.getSerialNo()!=null){ + //插入详细表 + IoDestinyProcessCodeEntity ioDestinyProcessCodeEntity=new IoDestinyProcessCodeEntity(); + ioDestinyProcessCodeEntity.setCode(iodestinyProcessRequest.getCode()); + ioDestinyProcessCodeEntity.setId(IdUtil.getSnowflakeNextId()); + ioDestinyProcessCodeEntity.setOrderIdFk(iodestinyProcessRequest.getBillNo()); + ioDestinyProcessCodeEntity.setBindRlFk(checkUdi.getRelId() + ""); + ioDestinyProcessCodeEntity.setUuidFk(checkUdi.getUuid()); + ioDestinyProcessCodeEntity.setNameCode(checkUdi.getNameCode()); + ioDestinyProcessCodeEntity.setCount(1); + ioDestinyProcessCodeEntity.setReCount(count); + ioDestinyProcessCodeEntity.setProductDate(udiEntity.getProduceDate()); + ioDestinyProcessCodeEntity.setExpireDate(udiEntity.getExpireDate()); + ioDestinyProcessCodeEntity.setBatchNo(udiEntity.getBatchNo()); + ioDestinyProcessCodeEntity.setPrice(checkUdi.getPrice()); + ioDestinyProcessCodeEntity.setSerialNo(udiEntity.getSerialNo()); + ioDestinyProcessCodeEntity.setUpdateTime(new Date()); + ioDestinyProcessCodeMapper.insert(ioDestinyProcessCodeEntity); + }else{ + //无批次号的时候判断是不是第一次是第一次就插入不是第一此就更新 + QueryWrapper ew1=new QueryWrapper<>(); + ew1.eq("code",iodestinyProcessRequest.getCode()); + ew1.eq("orderIdFk",iodestinyProcessRequest.getBillNo()); + ew1.last("limit 1"); + IoDestinyProcessCodeEntity ioDestinyProcessCodeEntity=ioDestinyProcessCodeMapper.selectOne(ew1); + if(ioDestinyProcessCodeEntity==null){ + //插入详细表 + ioDestinyProcessCodeEntity=new IoDestinyProcessCodeEntity(); + ioDestinyProcessCodeEntity.setCode(iodestinyProcessRequest.getCode()); + ioDestinyProcessCodeEntity.setId(IdUtil.getSnowflakeNextId()); + ioDestinyProcessCodeEntity.setOrderIdFk(iodestinyProcessRequest.getBillNo()); + ioDestinyProcessCodeEntity.setBindRlFk(checkUdi.getRelId() + ""); + ioDestinyProcessCodeEntity.setUuidFk(checkUdi.getUuid()); + ioDestinyProcessCodeEntity.setNameCode(checkUdi.getNameCode()); + ioDestinyProcessCodeEntity.setCount(1); + ioDestinyProcessCodeEntity.setReCount(count); + ioDestinyProcessCodeEntity.setProductDate(udiEntity.getProduceDate()); + ioDestinyProcessCodeEntity.setExpireDate(udiEntity.getExpireDate()); + ioDestinyProcessCodeEntity.setBatchNo(udiEntity.getBatchNo()); + ioDestinyProcessCodeEntity.setPrice(checkUdi.getPrice()); + ioDestinyProcessCodeEntity.setSerialNo(udiEntity.getSerialNo()); + ioDestinyProcessCodeEntity.setUpdateTime(new Date()); + ioDestinyProcessCodeMapper.insert(ioDestinyProcessCodeEntity); + return ResultVOUtils.success(); + } + ioDestinyProcessCodeEntity.setCount(ioDestinyProcessCodeEntity.getReCount()+1); + ioDestinyProcessCodeEntity.setReCount(ioDestinyProcessCodeEntity.getReCount()+count); + ioDestinyProcessCodeMapper.updateById(ioDestinyProcessCodeEntity); + } + return ResultVOUtils.success(); + } } diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessServiceImpl.java index fa72cff7c..ced10c56e 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoDestinyProcessServiceImpl.java @@ -1,10 +1,55 @@ package com.glxp.api.service.inout.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.glxp.api.dao.inout.IoDestinyProcessCodeMapper; +import com.glxp.api.dao.inout.IoDestinyProcessDetailMapper; +import com.glxp.api.dao.inout.IoDestinyProcessMapper; +import com.glxp.api.entity.inout.IoDestinyProcessCodeEntity; +import com.glxp.api.entity.inout.IoDestinyProcessDetailEntity; +import com.glxp.api.entity.inout.IoDestinyProcessEntity; +import com.glxp.api.req.inout.IodestinyProcessRequest; import com.glxp.api.service.inout.IoDestinyProcessService; import org.springframework.stereotype.Service; +import javax.annotation.Resource; + @Service public class IoDestinyProcessServiceImpl implements IoDestinyProcessService { + @Resource + IoDestinyProcessMapper ioDestinyProcessMapper; + @Resource + private IoDestinyProcessDetailMapper ioDestinyProcessDetailMapper; + @Resource + private IoDestinyProcessCodeMapper ioDestinyProcessCodeMapper; + + @Override + public Boolean uploadDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest) { + + QueryWrapper ew = new QueryWrapper<>(); + ew.eq("billNo", iodestinyProcessRequest.getBillNo()); + IoDestinyProcessEntity ioDestinyProcessEntity = ioDestinyProcessMapper.selectOne(ew); + ioDestinyProcessEntity.setStatus(2); + ioDestinyProcessMapper.updateById(ioDestinyProcessEntity); + return null; + } + + @Override + public Boolean delectDestinyProcess(IodestinyProcessRequest iodestinyProcessRequest) { + + + QueryWrapper ew=new QueryWrapper<>(); + ew.eq("orderIdFk",iodestinyProcessRequest.getBillNo()); + long count= ioDestinyProcessDetailMapper.delete(ew); + + QueryWrapper ew1=new QueryWrapper<>(); + ew1.eq("orderIdFk",iodestinyProcessRequest.getBillNo()); + ioDestinyProcessCodeMapper.delete(ew1); + + QueryWrapper ew3 = new QueryWrapper<>(); + ew3.eq("billNo", iodestinyProcessRequest.getBillNo()); + ioDestinyProcessMapper.delete(ew3); + return null; + } } diff --git a/src/main/resources/mybatis/mapper/basic/BasicDestinyRelMapper.xml b/src/main/resources/mybatis/mapper/basic/BasicDestinyRelMapper.xml index 4eb4ee9c4..3013cca15 100644 --- a/src/main/resources/mybatis/mapper/basic/BasicDestinyRelMapper.xml +++ b/src/main/resources/mybatis/mapper/basic/BasicDestinyRelMapper.xml @@ -292,7 +292,11 @@ AND basic_products.cpmctymc like concat('%', #{cpmctymc}, '%') + + AND basic_destiny_rel.pId = #{destinyId} + + group by basic_products.uuid diff --git a/src/main/resources/mybatis/mapper/inout/IoDestinyProcessCodeMapper.xml b/src/main/resources/mybatis/mapper/inout/IoDestinyProcessCodeMapper.xml index cb71a6f81..aa8ec5b29 100644 --- a/src/main/resources/mybatis/mapper/inout/IoDestinyProcessCodeMapper.xml +++ b/src/main/resources/mybatis/mapper/inout/IoDestinyProcessCodeMapper.xml @@ -22,4 +22,29 @@ id, orderIdFk, bindRlFk, uuidFk, nameCode, batchNo, productDate, expireDate, price, supId, `count`, updateTime + + + + \ No newline at end of file diff --git a/src/main/resources/mybatis/mapper/inout/IoDestinyProcessDetailMapper.xml b/src/main/resources/mybatis/mapper/inout/IoDestinyProcessDetailMapper.xml index 9357cd2dc..7f483b0a2 100644 --- a/src/main/resources/mybatis/mapper/inout/IoDestinyProcessDetailMapper.xml +++ b/src/main/resources/mybatis/mapper/inout/IoDestinyProcessDetailMapper.xml @@ -13,4 +13,80 @@ id, relId, `count`, reCount + + + + + + \ No newline at end of file From 23d7d1623f08e341e2d484598ed2aa501be8f770 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, 5 Jul 2023 14:38:20 +0800 Subject: [PATCH 05/21] =?UTF-8?q?=E5=AE=9A=E6=95=B0=E5=8C=85sql=E6=8F=90?= =?UTF-8?q?=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/schemas/schema_v2.1.sql | 60 ++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/src/main/resources/schemas/schema_v2.1.sql b/src/main/resources/schemas/schema_v2.1.sql index 5a136ca66..6cfabda69 100644 --- a/src/main/resources/schemas/schema_v2.1.sql +++ b/src/main/resources/schemas/schema_v2.1.sql @@ -531,3 +531,63 @@ CREATE TABLE if not exists `basic_destiny_rel` CALL Pro_Temp_ColumnWork('thr_products', 'type', 'int', 1); + +CREATE TABLE if not exists `io_destiny_process` +( + `id` bigint(0) NOT NULL, + `destinyId` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '定数包模板id', + `destinyNo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '唯一编码', + `billNo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '单据号', + `billDate` datetime(0) NULL DEFAULT NULL COMMENT '单据时间', + `invCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '单前仓库', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', + `createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', + `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人', + `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新人', + `status` int(0) NULL DEFAULT NULL COMMENT '状态 0 :草稿 1:待校验 2:已校验', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB + CHARACTER SET = utf8mb4 + COLLATE = utf8mb4_0900_ai_ci COMMENT = '定数包表' + ROW_FORMAT = Dynamic; + +CREATE TABLE if not exists `io_destiny_process_code` +( + `id` bigint(0) NOT NULL, + `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `orderIdFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '订单号外键', + `bindRlFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '耗材字典ID外键', + `uuidFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'DI信息UUID外键', + `nameCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'DI', + `batchNo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '批次号', + `productDate` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '生产日期', + `expireDate` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '失效日期', + `price` decimal(10, 2) NULL DEFAULT NULL COMMENT '价格', + `supId` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '供应商ID外键', + `count` int(0) NULL DEFAULT NULL COMMENT '单据数量', + `updateTime` datetime(0) NULL DEFAULT NULL, + `serialNo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `reCount` int(0) NULL DEFAULT NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB + CHARACTER SET = utf8mb4 + COLLATE = utf8mb4_0900_ai_ci COMMENT = '定速包加工明细表' + ROW_FORMAT = Dynamic; + +CREATE TABLE if not exists `io_destiny_process_detail` +( + `id` bigint(0) NOT NULL, + `relId` bigint(0) NULL DEFAULT NULL COMMENT '耗材产品id', + `count` int(0) NULL DEFAULT NULL COMMENT '数量', + `reCount` int(0) NULL DEFAULT 0 COMMENT '实际数量', + `updateTime` datetime(0) NULL DEFAULT NULL, + `orderIdFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '订单号外键', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB + CHARACTER SET = utf8mb4 + COLLATE = utf8mb4_0900_ai_ci COMMENT = '定数包产品关联表' + ROW_FORMAT = Dynamic; + + + From 1f260cb9dec86cce9646a722bf1a43043e7e50c0 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, 5 Jul 2023 17:54:33 +0800 Subject: [PATCH 06/21] =?UTF-8?q?=E5=8D=95=E6=8D=AE=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E6=8B=89=E5=8F=96=E5=AE=A2=E6=88=B7=E4=BF=AE=E6=94=B9outType?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml b/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml index 0d87032a9..2988e29c1 100644 --- a/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml +++ b/src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml @@ -362,6 +362,6 @@ SELECT * FROM basic_corp WHERE corpType = 1 - AND outType = 2; + AND outType = 1; From 1e29c762ce25d6802a1b991f2ac698d321f524d5 Mon Sep 17 00:00:00 2001 From: anthonywj Date: Wed, 5 Jul 2023 22:17:28 +0800 Subject: [PATCH 07/21] =?UTF-8?q?=E7=AC=AC=E4=B8=89=E6=96=B9=E4=BA=A7?= =?UTF-8?q?=E5=93=81=E4=BF=A1=E6=81=AF=E6=9B=B4=E6=96=B0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/mybatis/mapper/thrsys/ThrProductsDao.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/mybatis/mapper/thrsys/ThrProductsDao.xml b/src/main/resources/mybatis/mapper/thrsys/ThrProductsDao.xml index 3866964f7..d6ee52e4e 100644 --- a/src/main/resources/mybatis/mapper/thrsys/ThrProductsDao.xml +++ b/src/main/resources/mybatis/mapper/thrsys/ThrProductsDao.xml @@ -329,7 +329,7 @@ remark3 = #{remark3,jdbcType=VARCHAR}, price = #{price,jdbcType=VARCHAR}, manufactoryCode = #{manufactoryCode,jdbcType=VARCHAR}, - supCode = #{supCode,jdbcType=VARCHAR} + supCode = #{supCode,jdbcType=VARCHAR}, type = #{type,jdbcType=VARCHAR} where id = #{id,jdbcType=INTEGER} From b1fc3a50ef5ad7a05767ff3587e8a3bdc1184c8c 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, 6 Jul 2023 09:18:39 +0800 Subject: [PATCH 08/21] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/inout/IoOrderMutiController.java | 15 +++++++++++++++ .../api/entity/inout/IoOrderMutiUseEntity.java | 9 +++++++++ .../mybatis/mapper/inout/IoOrderMutiMapper.xml | 2 +- 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderMutiController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderMutiController.java index 7893e1ee9..cfcfd7fda 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderMutiController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderMutiController.java @@ -328,6 +328,21 @@ public class IoOrderMutiController { @PostMapping("/udiwms/inout/order/muti/addMutiDetail") public BaseResponse addMutiDetail(@RequestBody IoOrderMutiUseEntity ioOrderMutiUseEntity) { + + if (ioOrderMutiUseEntity.getCheckType() !=null && ioOrderMutiUseEntity.getCheckType() == 1) { + IoOrderMutiRequest ioOrderMutiRequest=new IoOrderMutiRequest(); + ioOrderMutiRequest.setStatus(0); + ioOrderMutiRequest.setUdiCode(ioOrderMutiUseEntity.getUdiCode()); + ioOrderMutiRequest.setMark(ioOrderMutiUseEntity.getMark()); + List ioOrderMutiEntityList = ioOrderMutiService.filterList(ioOrderMutiRequest); + if (ioOrderMutiEntityList.size() <= 0) { + return ResultVOUtils.error(999, "该产品不存在此标识!"); + } + if (ioOrderMutiEntityList.get(0).getReCount() <= 0) { + return ResultVOUtils.error(999, "该产品可使用数量不足!"); + } + } + //判断是不是个人使用 AuthAdmin authAdmin = customerService.getUserBean(); QueryWrapper setEw = new QueryWrapper<>(); diff --git a/src/main/java/com/glxp/api/entity/inout/IoOrderMutiUseEntity.java b/src/main/java/com/glxp/api/entity/inout/IoOrderMutiUseEntity.java index 806bd3a48..f7989c410 100644 --- a/src/main/java/com/glxp/api/entity/inout/IoOrderMutiUseEntity.java +++ b/src/main/java/com/glxp/api/entity/inout/IoOrderMutiUseEntity.java @@ -64,4 +64,13 @@ public class IoOrderMutiUseEntity { @TableField(exist=false) private String createUserName; + + @TableField(exist = false) + private Integer checkType; + + @TableField(exist = false) + private String mark; + + @TableField(exist = false) + private String udiCode; } diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderMutiMapper.xml b/src/main/resources/mybatis/mapper/inout/IoOrderMutiMapper.xml index 625cccb2d..780470d91 100644 --- a/src/main/resources/mybatis/mapper/inout/IoOrderMutiMapper.xml +++ b/src/main/resources/mybatis/mapper/inout/IoOrderMutiMapper.xml @@ -33,7 +33,7 @@ and b1.ggxh = #{ggxh} - and b1.cpmctymc = #{cpmctymc} + AND b1.cpmctymc LIKE CONCAT('%', #{cpmctymc}, '%') and io.status = #{status} From f1245c8fc9391d3813a6b2bb20b1e3a74394118a Mon Sep 17 00:00:00 2001 From: anthonywj Date: Thu, 6 Jul 2023 09:48:19 +0800 Subject: [PATCH 09/21] =?UTF-8?q?=E5=88=87=E6=8D=A2=E5=88=86=E6=94=AF?= =?UTF-8?q?=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/application-dev.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 6035f3d23..73c3e77e0 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -4,9 +4,9 @@ server: spring: datasource: driver-class-name: com.p6spy.engine.spy.P6SpyDriver - jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_zyy?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true + jdbc-url: jdbc:p6spy:mysql://192.168.0.66:3364/udi_wms_pzh?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true username: root - password: 123456 + password: Glxp@6066 hikari: connection-timeout: 60000 maximum-pool-size: 20 @@ -44,7 +44,8 @@ ok: logging: level: - com.glxp.api.dao: debug + com.glxp.api.dao: debu + file_path: D:/udi/inUdiwms/udiwmsfile/ UDI_KEY: 6b137c66-6286-46c6-8efa-c2f5dd9237df From 133f841b7cd42a4500bc0439f67373420074eabc Mon Sep 17 00:00:00 2001 From: wangwei <1610949092@qq.com> Date: Thu, 6 Jul 2023 11:24:12 +0800 Subject: [PATCH 10/21] =?UTF-8?q?UdiRelevanceResponse=E5=AE=9E=E4=BD=93?= =?UTF-8?q?=E7=B1=BBcount=E4=BF=AE=E6=94=B9=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java index 4d588f774..23fa63ee6 100644 --- a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java +++ b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java @@ -123,7 +123,7 @@ public class UdiRelevanceResponse { private String syqsfxyjxmj; private String mjfs; private String categoryName; - private int count; + private Integer count; private Long deId; From e20a65a00cb0818ab5f26847e8c0587edbdb93d1 Mon Sep 17 00:00:00 2001 From: 1178634255 <1178634255@qq.com> Date: Thu, 6 Jul 2023 14:29:49 +0800 Subject: [PATCH 11/21] =?UTF-8?q?=20=E6=96=B0=E5=A2=9E=E6=89=AB=E7=A0=81?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E5=9D=97=E5=88=B0=E5=BE=85=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E5=8D=95=E6=8D=AE=E6=A8=A1=E5=9D=97=EF=BC=8C=E5=A4=87=E6=B3=A8?= =?UTF-8?q?=E4=BC=9A=E6=B6=88=E5=A4=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/glxp/api/controller/inout/IoOrderController.java | 2 +- src/main/java/com/glxp/api/res/inout/IoCodeTempResponse.java | 2 ++ src/main/resources/mybatis/mapper/auth/SysMenuDao.xml | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java index 41aaa7365..c98143e4d 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java @@ -241,7 +241,7 @@ public class IoOrderController extends BaseController { return ResultVOUtils.error(500, "单据未扫码或扫码校验无法通过,提交失败,请检查后重新提交!"); } IoOrderEntity orderEntity = orderService.findByBillNo(addOrderRequest.getBillNo()); - + orderEntity.setRemark(addOrderRequest.getRemark()); BaseResponse tempResponse = checkSubmitEnable(orderEntity); if (tempResponse != null) return tempResponse; diff --git a/src/main/java/com/glxp/api/res/inout/IoCodeTempResponse.java b/src/main/java/com/glxp/api/res/inout/IoCodeTempResponse.java index 7012b514c..5ab80ef06 100644 --- a/src/main/java/com/glxp/api/res/inout/IoCodeTempResponse.java +++ b/src/main/java/com/glxp/api/res/inout/IoCodeTempResponse.java @@ -120,5 +120,7 @@ public class IoCodeTempResponse { * 供应商名称 */ private String supName; + private String remark; + } diff --git a/src/main/resources/mybatis/mapper/auth/SysMenuDao.xml b/src/main/resources/mybatis/mapper/auth/SysMenuDao.xml index 63e4d220b..901aae348 100644 --- a/src/main/resources/mybatis/mapper/auth/SysMenuDao.xml +++ b/src/main/resources/mybatis/mapper/auth/SysMenuDao.xml @@ -4,7 +4,7 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + From d2a56b42a1fe0b5be05db920c43bfade498659fc Mon Sep 17 00:00:00 2001 From: anthonywj Date: Thu, 6 Jul 2023 17:36:39 +0800 Subject: [PATCH 12/21] =?UTF-8?q?=E9=BB=98=E8=AE=A4=E5=85=81=E8=AE=B8?= =?UTF-8?q?=E6=97=A0=E6=89=B9=E6=AC=A1=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/glxp/api/res/basic/UdiRelevanceResponse.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java index 4d588f774..e192f98a9 100644 --- a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java +++ b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java @@ -155,6 +155,12 @@ public class UdiRelevanceResponse { return allowNoProduct; } + public Boolean getAllowNoSerial() { + + if (allowNoSerial == null) + return true; + return allowNoSerial; + } public Boolean getUseDy() { if (isUseDy == null) From f89247401a7120f87c6c7fddba6a44c755b30756 Mon Sep 17 00:00:00 2001 From: schry <2433098676@qq.com> Date: Thu, 6 Jul 2023 18:06:26 +0800 Subject: [PATCH 13/21] =?UTF-8?q?=E5=AF=BC=E5=87=BA=E4=BA=A7=E5=93=81?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E7=AA=97=E5=8F=A3=E6=89=A7=E8=A1=8C=E2=80=98?= =?UTF-8?q?=E7=BB=93=E6=9E=9C=E5=85=A8=E9=83=A8=E5=AF=BC=E5=87=BA=E2=80=99?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=EF=BC=8C=E5=AF=BC=E5=87=BA=E7=9A=84=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E6=95=B0=E6=8D=AE=E4=B8=BA=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ThrProductsExportLogController.java | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/src/main/java/com/glxp/api/controller/thrsys/ThrProductsExportLogController.java b/src/main/java/com/glxp/api/controller/thrsys/ThrProductsExportLogController.java index ae2db63d8..73f568f57 100644 --- a/src/main/java/com/glxp/api/controller/thrsys/ThrProductsExportLogController.java +++ b/src/main/java/com/glxp/api/controller/thrsys/ThrProductsExportLogController.java @@ -118,6 +118,45 @@ public class ThrProductsExportLogController { //产品信息导出生成Excel,并创建生成记录 @PostMapping("/udiwms/thrProducts/importLog/export") public BaseResponse excelDownload(@RequestBody ThrProductsExportRequest thrProductsExportRequest) { + ThrProductsExportLogEntity thrProductsExportLogEntity = new ThrProductsExportLogEntity(); + FilterThrProductsRequest filterThrProductsRequest = new FilterThrProductsRequest(); + filterThrProductsRequest.setThirdSysFk(thrProductsExportRequest.getThirdSys()); + filterThrProductsRequest.setThirdSys(thrProductsExportRequest.getThirdSys()); + //List thrProductsEntities = thrProductsService.filterThrProducts1(filterThrProductsRequest); + //thrProductsExportRequest.setThrProductsEntities(thrProductsEntities); + thrProductsExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_PROCESS); + String genKey = CustomUtil.getId(); + String fileName = "D:\\udiwms\\exportFile\\" + "第三方产品信息" + genKey + ".UpperIn"; + File file = new File(fileName); + if (!file.exists()) { + try { + file.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + List thrProductsEntityList = thrProductsExportRequest.getThrProductsEntities(); + thrProductsExportLogEntity.setGenKey(genKey); + thrProductsExportLogEntity.setFilePath(fileName); + thrProductsExportLogEntity.setUpdateTime(new Date()); + thrProductsExportLogEntity.setDlCount(0); + thrProductsExportLogEntity.setType(BasicProcessStatus.EXPORT_JSON); + thrProductsExportLogEntity.setUpdateUser(String.valueOf(customerService.getUserId())); + thrProductsExportLogEntity.setCreateUser(String.valueOf(customerService.getUserId())); + thrProductsExportLogEntity.setUpdateTime(new Date()); + thrProductsExportLogEntity.setCreateTime(new Date()); + thrProductsExportLogEntity.setRemark("本次导出数据" + thrProductsEntityList.size() + "条"); + thrProductsExportLogService.insertThrProductsExportLog(thrProductsExportLogEntity); + //thrProductsDlService.genExcel(genKey, thrProductsExportRequest); + //修改为导出json文件 + thrProductsDlService.genJsonFile(genKey, thrProductsExportRequest); + + return ResultVOUtils.success("后台正在导出生成udi文件,请稍后刷新查看!"); + } + + //产品信息导出生成Excel,并创建生成记录 + @PostMapping("/udiwms/thrProducts/importLog/exportAll") + public BaseResponse excelDownloadAll(@RequestBody ThrProductsExportRequest thrProductsExportRequest) { ThrProductsExportLogEntity thrProductsExportLogEntity = new ThrProductsExportLogEntity(); FilterThrProductsRequest filterThrProductsRequest = new FilterThrProductsRequest(); filterThrProductsRequest.setThirdSysFk(thrProductsExportRequest.getThirdSys()); @@ -135,6 +174,7 @@ public class ThrProductsExportLogController { e.printStackTrace(); } } + List thrProductsEntityList = thrProductsExportRequest.getThrProductsEntities(); thrProductsExportLogEntity.setGenKey(genKey); thrProductsExportLogEntity.setFilePath(fileName); thrProductsExportLogEntity.setUpdateTime(new Date()); @@ -144,6 +184,7 @@ public class ThrProductsExportLogController { thrProductsExportLogEntity.setCreateUser(String.valueOf(customerService.getUserId())); thrProductsExportLogEntity.setUpdateTime(new Date()); thrProductsExportLogEntity.setCreateTime(new Date()); + thrProductsExportLogEntity.setRemark("本次导出数据" + thrProductsEntityList.size() + "条"); thrProductsExportLogService.insertThrProductsExportLog(thrProductsExportLogEntity); //thrProductsDlService.genExcel(genKey, thrProductsExportRequest); //修改为导出json文件 From 5fe7fb40670ba73514ab8ff81b59e9c06de014a0 Mon Sep 17 00:00:00 2001 From: schry <2433098676@qq.com> Date: Fri, 7 Jul 2023 11:07:10 +0800 Subject: [PATCH 14/21] =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/glxp/api/req/auth/FilterAuthUserRequest.java | 2 ++ .../java/com/glxp/api/req/auth/FilterDeptUserReqeust.java | 2 +- src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml | 6 ++++++ src/main/resources/mybatis/mapper/basic/BasicCorpDao.xml | 2 +- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/glxp/api/req/auth/FilterAuthUserRequest.java b/src/main/java/com/glxp/api/req/auth/FilterAuthUserRequest.java index 5037b4a75..11859c1d5 100644 --- a/src/main/java/com/glxp/api/req/auth/FilterAuthUserRequest.java +++ b/src/main/java/com/glxp/api/req/auth/FilterAuthUserRequest.java @@ -12,6 +12,8 @@ public class FilterAuthUserRequest extends ListPageRequest { private String userName; + private String deptName; + private Integer userFlag; private Long roleId; diff --git a/src/main/java/com/glxp/api/req/auth/FilterDeptUserReqeust.java b/src/main/java/com/glxp/api/req/auth/FilterDeptUserReqeust.java index 998eabc46..163b74e6d 100644 --- a/src/main/java/com/glxp/api/req/auth/FilterDeptUserReqeust.java +++ b/src/main/java/com/glxp/api/req/auth/FilterDeptUserReqeust.java @@ -7,6 +7,6 @@ import lombok.Data; public class FilterDeptUserReqeust extends ListPageRequest { private Long deptId; private Long userId; - + private String deptName; private String key; } diff --git a/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml b/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml index 8ba584c10..f3cf1b4a5 100644 --- a/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml +++ b/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml @@ -23,6 +23,12 @@ AND userName != #{neUserName} + + AND auth_dept.name LIKE CONCAT('%', #{deptName}, '%') + + + AND auth_dept.name != #{deptName} + - AND (outType ]]> #{outType} or outType is NULL) + AND (outType = #{outType} or outType is NULL) Date: Fri, 7 Jul 2023 11:33:24 +0800 Subject: [PATCH 15/21] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/glxp/api/controller/auth/AuthUserController.java | 9 +++++++++ .../glxp/api/controller/inout/IoCodeTempController.java | 4 ++-- .../java/com/glxp/api/req/inout/AddOrderRequest.java | 3 ++- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java index f080e0d74..ad15c27e1 100644 --- a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java +++ b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java @@ -136,4 +136,13 @@ public class AuthUserController extends BaseController { return ResultVOUtils.success(authAdmin); } + //查询用户名信息 + @AuthRuleAnnotation("") + @PostMapping("/admin/auth/admin/updateUser") + public BaseResponse updateUser() { + + AuthAdmin authAdmin = customerService.getUserBean(); + return ResultVOUtils.success(authAdmin); + } + } 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 c98593566..98d2ee7b0 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -433,7 +433,7 @@ public class IoCodeTempController extends BaseController { String expireDate = "20" + udiEntity.getExpireDate(); long expireTime = MsDateUtil.parseDateExpire(expireDate); if (expireTime - System.currentTimeMillis() < 0) { - return ResultVOUtils.error(604, "当前产品已过期,无法添加?"); + return ResultVOUtils.error(604, "当前产品已过期,无法添加!"); } } } @@ -455,7 +455,7 @@ public class IoCodeTempController extends BaseController { if (resultTime > 0) { long time = resultTime / (24 * 60 * 60 * 1000); if (resultTime < recentTieme) { - return ResultVOUtils.error(505, "当前产品临近过期,距过期还剩" + time + "天,是否确定继续添加?"); + return ResultVOUtils.error(505, "当前产品临近过期,距过期还剩" + time + "时,是否确定继续添加?"); } } } diff --git a/src/main/java/com/glxp/api/req/inout/AddOrderRequest.java b/src/main/java/com/glxp/api/req/inout/AddOrderRequest.java index f800b82f6..ad736bdca 100644 --- a/src/main/java/com/glxp/api/req/inout/AddOrderRequest.java +++ b/src/main/java/com/glxp/api/req/inout/AddOrderRequest.java @@ -9,6 +9,7 @@ public class AddOrderRequest { private String mainAction; private String action; private String fromCorp; + private String fromCorpName; private String fromInvCode; private String deptCode; private String invCode; @@ -30,7 +31,7 @@ public class AddOrderRequest { private String checkPreInOrders; private String selectSupId; private Long relId; - + private Integer checkVailDate; // 预验收货位 private String checkPreInSpaceCode; private String curSpaceCode; From de6f13ec2767c003ee4983a7b7725445ec284c64 Mon Sep 17 00:00:00 2001 From: 1178634255 <1178634255@qq.com> Date: Fri, 7 Jul 2023 14:01:15 +0800 Subject: [PATCH 16/21] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AF=86=E7=A0=81?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/auth/AuthUserController.java | 26 ++++++++----- .../com/glxp/api/dao/auth/AuthAdminDao.java | 3 ++ .../glxp/api/req/auth/UpdateUserRequset.java | 38 +++++++++++++++++++ .../api/service/auth/AuthAdminService.java | 3 ++ .../api/service/auth/CustomerService.java | 7 ++++ .../auth/impl/AuthAdminServiceImpl.java | 18 +++++++++ .../mybatis/mapper/auth/AuthAdminDao.xml | 10 +++++ 7 files changed, 96 insertions(+), 9 deletions(-) create mode 100644 src/main/java/com/glxp/api/req/auth/UpdateUserRequset.java diff --git a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java index ad15c27e1..b5da0f74f 100644 --- a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java +++ b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java @@ -6,10 +6,7 @@ import com.glxp.api.annotation.Log; import com.glxp.api.constant.BusinessType; import com.glxp.api.controller.BaseController; import com.glxp.api.entity.auth.*; -import com.glxp.api.req.auth.AuthUserSaveRequest; -import com.glxp.api.req.auth.FilterInvLinkDataRequest; -import com.glxp.api.req.auth.FilterInvWarehouseRequest; -import com.glxp.api.req.auth.FilterNoSelectUserRequest; +import com.glxp.api.req.auth.*; import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; @@ -136,13 +133,24 @@ public class AuthUserController extends BaseController { return ResultVOUtils.success(authAdmin); } - //查询用户名信息 + //修改用户名信息 @AuthRuleAnnotation("") @PostMapping("/admin/auth/admin/updateUser") - public BaseResponse updateUser() { - - AuthAdmin authAdmin = customerService.getUserBean(); - return ResultVOUtils.success(authAdmin); + public BaseResponse updateUser(@RequestBody UpdateUserRequset updateUserRequset) { + AuthAdmin authAdmin=customerService.getUserBean(); + System.out.println(updateUserRequset.toString()); + if (!updateUserRequset.getPassWord().equals(authAdmin.getPassWord())){ + return ResultVOUtils.success("当前密码输入错误!请重新输入!"); + } + if (updateUserRequset.getNewPassword().equals(authAdmin.getPassWord())){ + return ResultVOUtils.error(ResultEnum.valueOf("新密码与旧密码重复!请重新修改!")); + } + if (updateUserRequset.getNewPassword().equals(updateUserRequset.getConfirmPassword())&&updateUserRequset.getPassWord().equals(authAdmin.getPassWord())){ + customerService.update(updateUserRequset); + }else { + return ResultVOUtils.error(ResultEnum.valueOf("新密码与确认密码不相同!请重新修改!")); + } + return ResultVOUtils.success("修改成功"); } } diff --git a/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java b/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java index e496b2901..7ddf8ebdb 100644 --- a/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java +++ b/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java @@ -3,6 +3,7 @@ package com.glxp.api.dao.auth; import com.glxp.api.dao.BaseMapperPlus; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.req.auth.FilterAuthUserRequest; +import com.glxp.api.req.auth.UpdateUserRequset; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -60,6 +61,8 @@ public interface AuthAdminDao extends BaseMapperPlus roles; + private Long[] roleIds; + + +} diff --git a/src/main/java/com/glxp/api/service/auth/AuthAdminService.java b/src/main/java/com/glxp/api/service/auth/AuthAdminService.java index 9ecd12eff..9eee80df9 100644 --- a/src/main/java/com/glxp/api/service/auth/AuthAdminService.java +++ b/src/main/java/com/glxp/api/service/auth/AuthAdminService.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.req.auth.FilterAuthUserRequest; import com.glxp.api.req.auth.FilterNoSelectUserRequest; +import com.glxp.api.req.auth.UpdateUserRequset; import java.util.List; @@ -24,6 +25,8 @@ public interface AuthAdminService extends IService { boolean updateAuthAdmin(AuthAdmin authAdmin); + boolean updateUser(UpdateUserRequset updateUserRequset); + boolean deleteById(Long id); /** diff --git a/src/main/java/com/glxp/api/service/auth/CustomerService.java b/src/main/java/com/glxp/api/service/auth/CustomerService.java index 747bfe855..4ac834d2f 100644 --- a/src/main/java/com/glxp/api/service/auth/CustomerService.java +++ b/src/main/java/com/glxp/api/service/auth/CustomerService.java @@ -3,6 +3,8 @@ package com.glxp.api.service.auth; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.exception.JsonException; +import com.glxp.api.req.auth.UpdateUserRequset; +import lombok.val; import org.springframework.stereotype.Service; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; @@ -50,4 +52,9 @@ public class CustomerService { return authAdmin.getUserName(); } + + public boolean update(UpdateUserRequset updateUserRequset) { + + return authAdminService.updateUser(updateUserRequset); + } } diff --git a/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java b/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java index 14057b69a..ef1e8996d 100644 --- a/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java +++ b/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java @@ -12,6 +12,7 @@ import com.glxp.api.exception.JsonException; import com.glxp.api.req.auth.FilterAuthUserRequest; import com.glxp.api.req.auth.FilterNoSelectUserRequest; import com.glxp.api.req.auth.FilterUserRoleRequest; +import com.glxp.api.req.auth.UpdateUserRequset; import com.glxp.api.service.auth.AuthAdminService; import com.glxp.api.common.enums.ResultEnum; import org.springframework.stereotype.Service; @@ -115,6 +116,23 @@ public class AuthAdminServiceImpl extends ServiceImpl i return authAdminDao.updateAuthAdmin(authAdmin); } + @Override + public boolean updateUser(UpdateUserRequset updateUserRequset) { + if (updateUserRequset.getId() == null) { + return false; + } + return authAdminDao.updateUser(updateUserRequset); + } + +// @Override +// public boolean updateAuthAdmin(UpdateUserRequset updateUserRequset) { +// +// if (updateUserRequset.getId() == null) { +// return false; +// } +// return authAdminDao.updateUser(updateUserRequset); +// } + /** * 根据id删除 * diff --git a/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml b/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml index f3cf1b4a5..9e9dbfc60 100644 --- a/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml +++ b/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml @@ -170,6 +170,16 @@ WHERE id = #{id} + + UPDATE auth_user + + + passWord=#{newPassword}, + + + WHERE id = #{id} + + delete from auth_user From 91cf593506d32b2f45aefe7ae239c1b6a2bb4b3d Mon Sep 17 00:00:00 2001 From: 1178634255 <1178634255@qq.com> Date: Fri, 7 Jul 2023 14:06:57 +0800 Subject: [PATCH 17/21] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AF=86=E7=A0=81?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/glxp/api/controller/auth/AuthUserController.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java index b5da0f74f..fde191033 100644 --- a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java +++ b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java @@ -140,17 +140,18 @@ public class AuthUserController extends BaseController { AuthAdmin authAdmin=customerService.getUserBean(); System.out.println(updateUserRequset.toString()); if (!updateUserRequset.getPassWord().equals(authAdmin.getPassWord())){ - return ResultVOUtils.success("当前密码输入错误!请重新输入!"); + return ResultVOUtils.error(500,"当前密码输入错误!请重新输入!"); } if (updateUserRequset.getNewPassword().equals(authAdmin.getPassWord())){ - return ResultVOUtils.error(ResultEnum.valueOf("新密码与旧密码重复!请重新修改!")); + return ResultVOUtils.error(500,"新密码与旧密码重复!请重新修改!"); } if (updateUserRequset.getNewPassword().equals(updateUserRequset.getConfirmPassword())&&updateUserRequset.getPassWord().equals(authAdmin.getPassWord())){ customerService.update(updateUserRequset); + return ResultVOUtils.success("修改成功"); }else { - return ResultVOUtils.error(ResultEnum.valueOf("新密码与确认密码不相同!请重新修改!")); + return ResultVOUtils.error(500,"新密码与确认密码不相同!请重新修改!"); } - return ResultVOUtils.success("修改成功"); + } } From 3438e4e2fb00763206014b1d345ffbde88bb7933 Mon Sep 17 00:00:00 2001 From: anthonywj Date: Fri, 7 Jul 2023 17:46:25 +0800 Subject: [PATCH 18/21] =?UTF-8?q?bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/glxp/api/config/ReplaceBatch.java | 10 +++++----- .../glxp/api/res/thrsys/ThrBusTypeOriginResponse.java | 2 +- src/main/java/com/glxp/api/task/SyncThirdSysTask.java | 2 +- src/main/resources/schemas/schema_v2.1.sql | 2 ++ 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/glxp/api/config/ReplaceBatch.java b/src/main/java/com/glxp/api/config/ReplaceBatch.java index f009e3478..2de71b37b 100644 --- a/src/main/java/com/glxp/api/config/ReplaceBatch.java +++ b/src/main/java/com/glxp/api/config/ReplaceBatch.java @@ -40,11 +40,11 @@ public class ReplaceBatch extends AbstractMethod { CustomerSqlMethod sqlMethod = CustomerSqlMethod.REPLACE_ONE; List fieldList = tableInfo.getFieldList(); - String columnScript = SqlScriptUtils.convertTrim(tableInfo.getAllInsertSqlColumnMaybeIf(null), - LEFT_BRACKET, RIGHT_BRACKET, null, COMMA); -// String insertSqlColumn = tableInfo.getKeyInsertSqlColumn(true, true) + -// this.filterTableFieldInfo(fieldList, predicate, TableFieldInfo::getInsertSqlColumn, EMPTY); -// String columnScript = LEFT_BRACKET + insertSqlColumn.substring(0, insertSqlColumn.length() - 1) + RIGHT_BRACKET; +// String columnScript = SqlScriptUtils.convertTrim(tableInfo.getAllInsertSqlColumnMaybeIf(ENTITY_DOT), +// LEFT_BRACKET, RIGHT_BRACKET, null, COMMA); + String insertSqlColumn = tableInfo.getKeyInsertSqlColumn(true, true) + + this.filterTableFieldInfo(fieldList, predicate, TableFieldInfo::getInsertSqlColumn, EMPTY); + String columnScript = LEFT_BRACKET + insertSqlColumn.substring(0, insertSqlColumn.length() - 1) + RIGHT_BRACKET; String insertSqlProperty = tableInfo.getKeyInsertSqlProperty(true, ENTITY_DOT, true) + this.filterTableFieldInfo(fieldList, predicate, i -> i.getInsertSqlProperty(ENTITY_DOT), EMPTY); insertSqlProperty = LEFT_BRACKET + insertSqlProperty.substring(0, insertSqlProperty.length() - 1) + RIGHT_BRACKET; diff --git a/src/main/java/com/glxp/api/res/thrsys/ThrBusTypeOriginResponse.java b/src/main/java/com/glxp/api/res/thrsys/ThrBusTypeOriginResponse.java index e194717be..1d0c28da6 100644 --- a/src/main/java/com/glxp/api/res/thrsys/ThrBusTypeOriginResponse.java +++ b/src/main/java/com/glxp/api/res/thrsys/ThrBusTypeOriginResponse.java @@ -16,7 +16,7 @@ public class ThrBusTypeOriginResponse { /** * id */ - private Integer id; + private Long id; /** * 单据类型名称 diff --git a/src/main/java/com/glxp/api/task/SyncThirdSysTask.java b/src/main/java/com/glxp/api/task/SyncThirdSysTask.java index fe6c696f3..d02b6f61d 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/schemas/schema_v2.1.sql b/src/main/resources/schemas/schema_v2.1.sql index 6cfabda69..531f8f880 100644 --- a/src/main/resources/schemas/schema_v2.1.sql +++ b/src/main/resources/schemas/schema_v2.1.sql @@ -502,6 +502,8 @@ CALL Pro_Temp_ColumnWork('inv_place_order_detail', 'topInvSpaceCode', 'varchar(2 call Modify_index('basic_products', 'uuid', 'idx_uuid', 'BTREE'); + + CALL Pro_Temp_ColumnWork('basic_products', 'sfwblztlcp', 'varchar(255)', 1); CALL Pro_Temp_ColumnWork('basic_products', 'cgzmraqxgxx', 'varchar(255)', 1); CALL Pro_Temp_ColumnWork('basic_products', 'sfbjwycxsy', 'varchar(255)', 1); From c241831d6db785c7f3525f120aac2a339cae9079 Mon Sep 17 00:00:00 2001 From: 1178634255 <1178634255@qq.com> Date: Fri, 7 Jul 2023 18:02:48 +0800 Subject: [PATCH 19/21] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/glxp/api/controller/auth/AuthUserController.java | 2 +- src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml | 7 ++----- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java index fde191033..cea724cb9 100644 --- a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java +++ b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java @@ -133,7 +133,7 @@ public class AuthUserController extends BaseController { return ResultVOUtils.success(authAdmin); } - //修改用户名信息 + //修改用户信息 @AuthRuleAnnotation("") @PostMapping("/admin/auth/admin/updateUser") public BaseResponse updateUser(@RequestBody UpdateUserRequset updateUserRequset) { diff --git a/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml b/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml index 9e9dbfc60..282aadcac 100644 --- a/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml +++ b/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml @@ -26,9 +26,6 @@ AND auth_dept.name LIKE CONCAT('%', #{deptName}, '%') - - AND auth_dept.name != #{deptName} - - ORDER BY id - DESC + ORDER BY id DESC +