From 642051dbb98af5e9e864f212d3ae0399f8516703 Mon Sep 17 00:00:00 2001 From: yewj Date: Wed, 11 Sep 2024 09:28:35 +0800 Subject: [PATCH] =?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 --- .../inout/IoCodeTempController.java | 7 +-- .../basic/SysWorkplaceDocumentEntity.java | 15 ++++++- .../api/entity/collect/IoCollectOrder.java | 44 +++++++++++++++---- .../api/entity/collect/IoCollectOrderBiz.java | 24 ++++++++++ .../api/req/inout/AddEnterCodeRequest.java | 2 +- .../collect/IoCollectOrderService.java | 14 +++++- .../collect/down/ThrOrderDownload.java | 18 ++++++-- .../service/collect/down/YPCF002Download.java | 12 +++-- .../mapper/collect/IoCollectOrderMapper.xml | 10 +++-- 9 files changed, 119 insertions(+), 27 deletions(-) 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 98a0883d6..a0471889c 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -7,6 +7,7 @@ import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.inv.InvProductDetailEntity; import com.glxp.api.exception.JsonException; import com.glxp.api.req.collect.CollectOrderRequest; +import com.glxp.api.res.collect.IoCollectOrderResponse; import com.glxp.api.res.inout.IoOrderDetailCodeResponse; import com.glxp.api.res.inout.VailCodeResultResponse; import com.glxp.api.service.collect.IoCollectOrderService; @@ -226,17 +227,17 @@ public class IoCodeTempController extends BaseController { if (udiEntity == null) { String viewType = addEnterCodeRequest.getViewType(); if (viewType.equals("tagCode")) { - IoCollectOrder collectOrder = collectOrderService.getByBillNo(code); + IoCollectOrderResponse collectOrder = collectOrderService.unionSearch(addEnterCodeRequest.getWorkPlaceCode(), addEnterCodeRequest.getBusType(), code); if (collectOrder == null) { //=============================================// //本地数据库 无此单据时 触发 用billNo 到 处方下载方法 进行下载 CollectOrderRequest collectOrderRequest = new CollectOrderRequest(); - collectOrderRequest.setBusType("YPCF002"); + collectOrderRequest.setBusType(collectOrderRequest.getBusType()); collectOrderRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode()); collectOrderRequest.setBillNo(code); BaseResponse baseResponse = collectOriginService.downloadOrderV2(collectOrderRequest); if (ResultEnum.SUCCESS.getCode() == baseResponse.getCode()) { - collectOrder = collectOrderService.getByBillNo(code); + collectOrder = collectOrderService.unionSearch(addEnterCodeRequest.getWorkPlaceCode(), addEnterCodeRequest.getBusType(), code); //=============================================// BaseResponse response = ResultVOUtils.error(601, code); response.setData(collectOrder); diff --git a/src/main/java/com/glxp/api/entity/basic/SysWorkplaceDocumentEntity.java b/src/main/java/com/glxp/api/entity/basic/SysWorkplaceDocumentEntity.java index 03ef99b97..865534810 100644 --- a/src/main/java/com/glxp/api/entity/basic/SysWorkplaceDocumentEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/SysWorkplaceDocumentEntity.java @@ -78,7 +78,7 @@ public class SysWorkplaceDocumentEntity { /** - * 处理结果 1:自动添加 2自动不添加 3根据提醒决定 + * 产品不一致处理结果 1:自动添加 2自动不添加 3根据提醒决定 */ @TableField(value = "checkInsert") private Integer checkInsert; @@ -148,7 +148,7 @@ public class SysWorkplaceDocumentEntity { private Integer monopoly; /** - * 单据完成校验: 0:完全赋码 ; 1:部分赋码; 2:赋码超乎 4:扫码单生成业务单的时候设置的值 只用于前端的空白显示 + * 单据完成校验: 0:完全一致 ; 1:不一致; 2:赋码超乎 4:扫码单生成业务单的时候设置的值 只用于前端的空白显示 */ @TableField(value = "orderFinishVerify") private Integer orderFinishVerify; @@ -165,6 +165,17 @@ public class SysWorkplaceDocumentEntity { @TableField(value = "isPopular") private Integer isPopular; + /** + * 产品数量溢出处理 1:自动添加 2自动不添加 3根据提醒决定 + */ + @TableField(value = "overCount") + private Integer overCount; + + /** + * 三期不一致处理 1:自动添加 2自动不添加 3根据提醒决定 + */ + @TableField(value = "checkBatchInsert") + private Integer checkBatchInsert; } diff --git a/src/main/java/com/glxp/api/entity/collect/IoCollectOrder.java b/src/main/java/com/glxp/api/entity/collect/IoCollectOrder.java index 6485691f2..53352148e 100644 --- a/src/main/java/com/glxp/api/entity/collect/IoCollectOrder.java +++ b/src/main/java/com/glxp/api/entity/collect/IoCollectOrder.java @@ -31,11 +31,19 @@ public class IoCollectOrder implements Serializable { @ApiModelProperty(value = "") private Integer id; + /** * 单据号 */ + @TableField(value = "orderId") + @ApiModelProperty(value = "本单据号") + private String orderId; + + /** + * 原始单据号 + */ @TableField(value = "billNo") - @ApiModelProperty(value = "单据号") + @ApiModelProperty(value = "原始单据号") private String billNo; /** @@ -59,6 +67,15 @@ public class IoCollectOrder implements Serializable { @ApiModelProperty(value = "来源业务说明") private String fromTypeDesc; + + /** + * 本系统往来单位编码 + */ + @TableField(value = "localFromCorp") + @ApiModelProperty(value = "本系统往来单位编码") + private String localFromCorp; + + /** * 往来信息 */ @@ -94,12 +111,6 @@ public class IoCollectOrder implements Serializable { @ApiModelProperty(value = "采集时间") private Date collectTime; - /** - * 采集点编码 - */ - @TableField(value = "collectCode") - @ApiModelProperty(value = "采集点编码") - private String collectCode; /** * 工位编码 @@ -129,6 +140,21 @@ public class IoCollectOrder implements Serializable { @ApiModelProperty(value = "更新时间") private Date updateTime; + + /** + * 完成时间 + */ + @TableField(value = "finishTime") + @ApiModelProperty(value = "完成时间") + private Date finishTime; + /** + * 单据挂起时间 + */ + @TableField(value = "draftTime") + @ApiModelProperty(value = "单据挂起时间") + private Date draftTime; + + /** * 更新人 */ @@ -235,13 +261,13 @@ public class IoCollectOrder implements Serializable { private String errorMsg; /** - *上传状态(1.未上传,2.已上传,3.上传失败) + * 上传状态(1.未上传,2.已上传,3.上传失败) */ @TableField(value = "uploadStatus") private Integer uploadStatus; /** - *上传错误信息 + * 上传错误信息 */ @TableField(value = "uploadError") private String uploadError; diff --git a/src/main/java/com/glxp/api/entity/collect/IoCollectOrderBiz.java b/src/main/java/com/glxp/api/entity/collect/IoCollectOrderBiz.java index de00914aa..83c93c197 100644 --- a/src/main/java/com/glxp/api/entity/collect/IoCollectOrderBiz.java +++ b/src/main/java/com/glxp/api/entity/collect/IoCollectOrderBiz.java @@ -57,6 +57,14 @@ public class IoCollectOrderBiz implements Serializable { @ApiModelProperty(value = "医保编码") private String ybbm; + + /** + * 医保编码 + */ + @TableField(value = "sptm") + @ApiModelProperty(value = "商品条码") + private String sptm; + /** * 收费编码 */ @@ -205,6 +213,22 @@ public class IoCollectOrderBiz implements Serializable { @ApiModelProperty(value = "autoTagStatus") private Integer autoTagStatus; + @TableField(value = "searchRemark1") + @ApiModelProperty(value = "searchRemark1") + private String searchRemark1; + @TableField(value = "searchRemark2") + @ApiModelProperty(value = "searchRemark2") + private String searchRemark2; + @TableField(value = "searchRemark3") + @ApiModelProperty(value = "searchRemark3") + private String searchRemark3; + @TableField(value = "searchRemark4") + @ApiModelProperty(value = "searchRemark4") + private String searchRemark4; + @TableField(value = "searchRemark5") + @ApiModelProperty(value = "searchRemark5") + private String searchRemark5; + private static final long serialVersionUID = 1L; } diff --git a/src/main/java/com/glxp/api/req/inout/AddEnterCodeRequest.java b/src/main/java/com/glxp/api/req/inout/AddEnterCodeRequest.java index 6068851d5..012cbfc91 100644 --- a/src/main/java/com/glxp/api/req/inout/AddEnterCodeRequest.java +++ b/src/main/java/com/glxp/api/req/inout/AddEnterCodeRequest.java @@ -7,7 +7,7 @@ import java.util.List; @Data public class AddEnterCodeRequest { private String originCode; - private String workPlaceCode; + private Long workPlaceCode; private String busType; private String code; private List codeList; diff --git a/src/main/java/com/glxp/api/service/collect/IoCollectOrderService.java b/src/main/java/com/glxp/api/service/collect/IoCollectOrderService.java index 900168fc2..de20aeebd 100644 --- a/src/main/java/com/glxp/api/service/collect/IoCollectOrderService.java +++ b/src/main/java/com/glxp/api/service/collect/IoCollectOrderService.java @@ -128,6 +128,18 @@ public class IoCollectOrderService extends ServiceImpl().eq(IoCollectOrder::getBillNo, billNo).last("limit 1")); } + public IoCollectOrderResponse unionSearch(Long workPlaceCode, String busType, String unionKey) { + CollectOrderRequest collectOrderRequest = new CollectOrderRequest(); + collectOrderRequest.setUnionKey(unionKey); + collectOrderRequest.setWorkPlaceCode(workPlaceCode); + collectOrderRequest.setBusType(busType); + List collectOrderResponses = filterList(collectOrderRequest); + if (CollUtil.isNotEmpty(collectOrderResponses)) + return collectOrderResponses.get(0); + else + return null; + } + public int updateByBillNo(IoCollectOrder collectOrder) { return collectOrderMapper.update(collectOrder, new UpdateWrapper().eq("billNo", collectOrder.getBillNo())); } @@ -490,7 +502,7 @@ public class IoCollectOrderService extends ServiceImpl> baseResponse = erpBasicClient.getThrOrders(filterThrOrderRequest); if (baseResponse.getCode() == 20000) { List list = baseResponse.getData().getList(); - collectOrderService.importPrescribe(list,collectOrderRequest.getBusType()); + // TODO: 2024/9/11 2024/9/11 添加一张中间表(io_collect_order_origin)原始表做为转换 + importThrOrder(list, collectOrderRequest); if ((list.size() >= limit && !baseResponse.getData().getTotal().equals(-666)) || IntUtil.value(baseResponse.getData().getTotal()) == -555) { page++; } else { break; } - }else { + } else { return ResultVOUtils.error(500, "下载第三方系统产品信息异常"); } } @@ -68,6 +71,8 @@ public class ThrOrderDownload implements IDownload { // } @Resource UdiRelevanceDao udiRelevanceDao; + @Resource + BasicProductsDao basicProductsDao; /** * 下载至单据 @@ -97,6 +102,10 @@ public class ThrOrderDownload implements IDownload { UdiRelevanceEntity basicUdirelEntity = udiRelevanceDao.selectOne(new LambdaQueryWrapper().eq(UdiRelevanceEntity::getMainId, entity.getThrCode())); if (basicUdirelEntity != null) { collectOrderBiz.setRelId(basicUdirelEntity.getId()); + BasicProductsEntity basicProductsEntity = basicProductsDao.selectOne(new LambdaQueryWrapper().eq(BasicProductsEntity::getUuid, basicUdirelEntity.getUuid()).last("limit 1")); + if (StrUtil.isEmpty(basicProductsEntity.getNameCode())) { + errorMsg.append(entity.getCpmctymc()).append("字典未对照").append(";"); + } } else { errorMsg.append(entity.getCpmctymc()).append("字典未对照").append(";"); } @@ -111,6 +120,9 @@ public class ThrOrderDownload implements IDownload { ioCollectOrder.setBizList(bizList); ioCollectOrderList.add(ioCollectOrder); } + + + collectOrderService.importPrescribe(ioCollectOrderList, collectOrderRequest.getBusType()); return ResultVOUtils.success("下载成功"); } diff --git a/src/main/java/com/glxp/api/service/collect/down/YPCF002Download.java b/src/main/java/com/glxp/api/service/collect/down/YPCF002Download.java index b0e053016..cc12d6182 100644 --- a/src/main/java/com/glxp/api/service/collect/down/YPCF002Download.java +++ b/src/main/java/com/glxp/api/service/collect/down/YPCF002Download.java @@ -15,7 +15,7 @@ import javax.annotation.Resource; import java.util.List; @Service -public class YPCF002Download implements IDownload{ +public class YPCF002Download implements IDownload { @Resource private ErpBasicClient erpBasicClient; @Resource @@ -31,18 +31,22 @@ public class YPCF002Download implements IDownload{ getSickPrescribeRequest.setThirdSys("thirdId"); getSickPrescribeRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode()); getSickPrescribeRequest.setFromType(collectOrderRequest.getFromType()); - while (true){ + while (true) { getSickPrescribeRequest.setPage(page); BaseResponse> baseResponse = erpBasicClient.getPrescribeV2(getSickPrescribeRequest); + + + // TODO: 2024/9/11 添加一张中间表(io_collect_order_origin)原始表做为转换 + if (baseResponse.getCode() == 20000) { List list = baseResponse.getData().getList(); - collectOrderService.importPrescribe(list,collectOrderRequest.getBusType()); + collectOrderService.importPrescribe(list, collectOrderRequest.getBusType()); if ((list.size() >= limit && !baseResponse.getData().getTotal().equals(-666)) || IntUtil.value(baseResponse.getData().getTotal()) == -555) { page++; } else { break; } - }else { + } else { return ResultVOUtils.error(500, "下载第三方系统产品信息异常"); } } diff --git a/src/main/resources/mybatis/mapper/collect/IoCollectOrderMapper.xml b/src/main/resources/mybatis/mapper/collect/IoCollectOrderMapper.xml index 26c344586..f7dd924f4 100644 --- a/src/main/resources/mybatis/mapper/collect/IoCollectOrderMapper.xml +++ b/src/main/resources/mybatis/mapper/collect/IoCollectOrderMapper.xml @@ -47,9 +47,6 @@ AND fromCorp LIKE concat('%', #{fromCorp}, '%') - - AND collectCode = #{collectCode} - AND busType = #{busType} @@ -120,7 +117,12 @@ TRUNCATE io_collect_order; TRUNCATE io_collect_order_biz; TRUNCATE io_collect_order_code_auto; - TRUNCATE io_collect_order_code_man + TRUNCATE io_collect_order_code_man; + + + TRUNCATE io_split_des_order; + TRUNCATE io_split_des_order_code; + TRUNCATE io_split_des_order_detail;