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 3db09b75..180bd3e8 100644 --- a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java +++ b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java @@ -188,6 +188,13 @@ public class AuthUserController extends BaseController { return ResultVOUtils.error(500, "新密码与确认密码不相同!请重新修改!"); } - } + + } + @AuthRuleAnnotation("") + @GetMapping("/admin/auth/admin/selectUser") + public BaseResponse selectUser() { + AuthAdmin authAdmin = customerService.getUserBean(); + return ResultVOUtils.success(authAdmin); + } } 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 8a1e973c..e9f1166d 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java @@ -20,9 +20,7 @@ import com.glxp.api.entity.system.CompanyEntity; import com.glxp.api.entity.thrsys.ThrProductsEntity; import com.glxp.api.entity.thrsys.ThrSystemEntity; import com.glxp.api.http.NmpaUdiClient; -import com.glxp.api.req.basic.UdiCombineRequest; -import com.glxp.api.req.basic.ProductInfoFilterRequest; -import com.glxp.api.req.basic.RemoveUdiRelRequest; +import com.glxp.api.req.basic.*; import com.glxp.api.req.thrsys.FilterBasicThirdSysRequest; import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.basic.UdiRelevanceResponse; @@ -367,6 +365,20 @@ public class UdiContrastController { } + @AuthRuleAnnotation("") + @PostMapping("/udi/udirel/addDrug") + public BaseResponse addDrug(@RequestBody AddProductRequest addProductRequest) { + AddProductRequest udiRelevanceEntity = udiProductService.addDrug(addProductRequest); + return ResultVOUtils.success(udiRelevanceEntity); + } + + @PostMapping("/udi/udirel/updateLevelDrug") + public BaseResponse updateLevelDrug(@RequestBody UpdateLevelDrugRequest updateLevelDrugRequest) { + udiProductService.saveOrUpadateLevelDrug(updateLevelDrugRequest); + return ResultVOUtils.success("更新成功"); + + } + public void updateDi(UdiRelevanceEntity udiRelevanceEntity, String key) { List udiInfoEntities = udiDlHttpClient.getOrUpdateByUuid(key); List originProductEntities = udiProductService.findByUuids(udiRelevanceEntity.getUuid()); diff --git a/src/main/java/com/glxp/api/controller/inout/IoCodeController.java b/src/main/java/com/glxp/api/controller/inout/IoCodeController.java index 10d999c8..bb181e19 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeController.java @@ -38,6 +38,14 @@ public class IoCodeController extends BaseController { return ResultVOUtils.page(pageInfo); } + @GetMapping("/udiwms/inout/code/drug/filterList") + public BaseResponse filterDrugList(FilterCodeRequest filterCodeRequest) { + List list = ioCodeService.filterDrugList(filterCodeRequest); + PageInfo pageInfo = new PageInfo<>(list); + return ResultVOUtils.page(pageInfo); + } + + /** * 根据单据号查询正式码表数据 * 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 abb23735..6601507c 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java @@ -190,6 +190,7 @@ public class IoOrderController extends BaseController { if (StringUtils.isNotBlank(addOrderRequest.getRemark())) { orderEntity.setRemark(addOrderRequest.getRemark()); } + orderEntity.setProductType(addOrderRequest.getProductType()); BaseResponse tempResponse = checkSubmitEnable(orderEntity); if (tempResponse != null) return tempResponse; @@ -234,6 +235,7 @@ public class IoOrderController extends BaseController { if (StringUtils.isNotBlank(addOrderRequest.getRemark())) { orderEntity.setRemark(addOrderRequest.getRemark()); } + orderEntity.setProductType(addOrderRequest.getProductType()); BaseResponse tempResponse = checkSubmitEnable(orderEntity); if (tempResponse != null) return tempResponse; @@ -271,6 +273,7 @@ public class IoOrderController extends BaseController { orderEntity.setDeptCode(addOrderRequest.getDeptCode()); orderEntity.setBillNo(addOrderRequest.getBillNo()); orderEntity.setInvCode(addOrderRequest.getInvCode()); + orderEntity.setProductType(addOrderRequest.getProductType()); orderService.updateByBillNo(orderEntity); @@ -295,6 +298,7 @@ public class IoOrderController extends BaseController { if (StringUtils.isNotBlank(addOrderRequest.getRemark())) { orderEntity.setRemark(addOrderRequest.getRemark()); } + orderEntity.setProductType(addOrderRequest.getProductType()); if (StringUtils.isNotBlank(addOrderRequest.getAction())) { orderEntity.setAction(addOrderRequest.getAction()); orderService.update(orderEntity); diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java index 5ecee2a9..4c751cb5 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java @@ -595,6 +595,22 @@ public class IoOrderDetailBizController extends BaseController { return ResultVOUtils.page(pageInfo); } + + @GetMapping("/udiwms/inout/bizDetail/drug/filterList") + public BaseResponse filterDrugList(FilterOrderDetailBizRequest orderDetailBizRequest) { + List list = orderDetailBizService.filterDrugList(orderDetailBizRequest); + String value = systemParamConfigService.selectValueByParamKey("order_detail_visible"); + if (IntUtil.value(value) == 1) { + list = list.stream() + .sorted(Comparator.comparing(IoOrderDetailBizResponse::getNameCode)) + .collect(Collectors.toList()); + } + List orderDetailCodeEntities = orderDetailCodeService.findByOrderId(orderDetailBizRequest.getOrderIdFk()); + ioCheckInoutService.bizOrderCheck2(list, orderDetailCodeEntities); + PageInfo pageInfo = new PageInfo<>(list); + return ResultVOUtils.page(pageInfo); + } + // @GetMapping("/udiwms/inout/bizDetail/filterListInv") // public BaseResponse filterListInv(FilterOrderDetailBizRequest orderDetailBizRequest) { // List list = orderDetailBizService.getfilterList(orderDetailBizRequest); diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailCodeController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailCodeController.java index 53f51860..d36399bf 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailCodeController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailCodeController.java @@ -70,5 +70,26 @@ public class IoOrderDetailCodeController { return ResultVOUtils.page(pageInfo); } + /** + * 查询单据详情 + * + * @param detailCodeRequest + * @return + */ + @GetMapping("udiwms/inout/codeDetail/drug/filterList") + public BaseResponse filterDrugList(FilterOrderDetailCodeRequest detailCodeRequest) { + List list = ioOrderDetailCodeService.filterDrugList(detailCodeRequest); + String value = systemParamConfigService.selectValueByParamKey("order_detail_visible"); + if (IntUtil.value(value) == 1) { + list = list.stream() + .sorted(Comparator.comparing(IoOrderDetailCodeResponse::getNameCode)) + .collect(Collectors.toList()); + } + List orderDetailBizEntities = orderDetailBizService.findByOrderId(detailCodeRequest.getOrderIdFk()); + ioCheckInoutService.codeOrderCheck2(list, orderDetailBizEntities); + PageInfo pageInfo = new PageInfo<>(list); + return ResultVOUtils.page(pageInfo); + } + } 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 eb31e1ff..a422955f 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java @@ -1,7 +1,9 @@ package com.glxp.api.controller.inout; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.EasyExcel; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageInfo; @@ -9,10 +11,12 @@ import com.glxp.api.annotation.AuthRuleAnnotation; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.constant.Constant; import com.glxp.api.constant.ConstantType; import com.glxp.api.controller.BaseController; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.auth.AuthCompany; +import com.glxp.api.entity.auth.InvWarehouseEntity; import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.inout.IoOrderDetailBizEntity; import com.glxp.api.entity.inout.IoOrderDetailCodeEntity; @@ -27,6 +31,7 @@ import com.glxp.api.res.inout.CptTraceResultResponse; import com.glxp.api.res.inout.IoCodeResponse; import com.glxp.api.res.inout.IoOrderDetailResultResponse; import com.glxp.api.service.auth.AuthCompanyService; +import com.glxp.api.service.auth.InvWarehouseService; import com.glxp.api.service.basic.IBasicBussinessTypeService; import com.glxp.api.service.inout.*; import com.glxp.api.service.inout.impl.IoCodeService; @@ -49,6 +54,8 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; import java.text.SimpleDateFormat; import java.util.*; @@ -340,4 +347,6 @@ public class IoOrderDetailResultController extends BaseController { } + + } diff --git a/src/main/java/com/glxp/api/controller/purchase/PurOrderController.java b/src/main/java/com/glxp/api/controller/purchase/PurOrderController.java index 6f2e5f83..2bcbde9f 100644 --- a/src/main/java/com/glxp/api/controller/purchase/PurOrderController.java +++ b/src/main/java/com/glxp/api/controller/purchase/PurOrderController.java @@ -317,6 +317,23 @@ public class PurOrderController { } + + /** + * 查询药品采购订单列表 + */ + @GetMapping("/purchase/order/drug/list/detail") + public BaseResponse drugDetailList(PurOrderDetailRequest purApplyDetailRequest) { + + List purOrderDetailResponseList = purOrderDetailService.joinQueryDrugList(purApplyDetailRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(purOrderDetailResponseList); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(purOrderDetailResponseList); + return ResultVOUtils.success(pageSimpleResponse); + + } + /** * 添加申购单到采购单里面 */ diff --git a/src/main/java/com/glxp/api/dao/basic/UdiProductDao.java b/src/main/java/com/glxp/api/dao/basic/UdiProductDao.java index 20dc16b7..76a64a8a 100644 --- a/src/main/java/com/glxp/api/dao/basic/UdiProductDao.java +++ b/src/main/java/com/glxp/api/dao/basic/UdiProductDao.java @@ -1,5 +1,6 @@ package com.glxp.api.dao.basic; +import com.glxp.api.dao.BaseMapperPlus; import com.glxp.api.entity.basic.UdiProductEntity; import com.glxp.api.req.basic.FilterUdiRelRequest; import com.glxp.api.req.basic.UdiInfoRequest; @@ -10,7 +11,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; @Mapper -public interface UdiProductDao { +public interface UdiProductDao extends BaseMapperPlus { List filterUdiInfo(FilterUdiRelRequest filterUdiRelRequest); diff --git a/src/main/java/com/glxp/api/dao/inout/IoCodeDao.java b/src/main/java/com/glxp/api/dao/inout/IoCodeDao.java index ef767432..8ed6ec89 100644 --- a/src/main/java/com/glxp/api/dao/inout/IoCodeDao.java +++ b/src/main/java/com/glxp/api/dao/inout/IoCodeDao.java @@ -25,6 +25,7 @@ public interface IoCodeDao extends BaseMapperPlus filterList(FilterCodeRequest filterCodeRequest); + List filterDrugList(FilterCodeRequest filterCodeRequest); /** * code分组sum实际库存数量 diff --git a/src/main/java/com/glxp/api/dao/inout/IoOrderDetailBizDao.java b/src/main/java/com/glxp/api/dao/inout/IoOrderDetailBizDao.java index 2979371f..e5b33347 100644 --- a/src/main/java/com/glxp/api/dao/inout/IoOrderDetailBizDao.java +++ b/src/main/java/com/glxp/api/dao/inout/IoOrderDetailBizDao.java @@ -21,6 +21,7 @@ public interface IoOrderDetailBizDao extends BaseMapperPlus filterList(FilterOrderDetailBizRequest orderDetailBizRequest); + List filterDrugList(FilterOrderDetailBizRequest orderDetailBizRequest); List getfilterList(FilterOrderDetailCodeRequest orderDetailBizRequest); diff --git a/src/main/java/com/glxp/api/dao/inout/IoOrderDetailCodeDao.java b/src/main/java/com/glxp/api/dao/inout/IoOrderDetailCodeDao.java index bea93f42..98b3584e 100644 --- a/src/main/java/com/glxp/api/dao/inout/IoOrderDetailCodeDao.java +++ b/src/main/java/com/glxp/api/dao/inout/IoOrderDetailCodeDao.java @@ -17,6 +17,7 @@ public interface IoOrderDetailCodeDao extends BaseMapperPlus filterList(FilterOrderDetailCodeRequest detailCodeRequest); + List filterDrugList(FilterOrderDetailCodeRequest detailCodeRequest); /** * 更新数量字段 diff --git a/src/main/java/com/glxp/api/dao/purchase/PurOrderDetailDao.java b/src/main/java/com/glxp/api/dao/purchase/PurOrderDetailDao.java index 7af0b48e..6382769e 100644 --- a/src/main/java/com/glxp/api/dao/purchase/PurOrderDetailDao.java +++ b/src/main/java/com/glxp/api/dao/purchase/PurOrderDetailDao.java @@ -18,6 +18,7 @@ public interface PurOrderDetailDao extends BaseMapper { List queryPageList(PurOrderDetailRequest purOrderDetailRequest); List joinQueryList(PurOrderDetailRequest purOrderDetailRequest); + List joinQueryDrugList(PurOrderDetailRequest purOrderDetailRequest); Boolean update(PurOrderDetailEntity purOrderDetailEntity); diff --git a/src/main/java/com/glxp/api/entity/basic/BasicProductsEntity.java b/src/main/java/com/glxp/api/entity/basic/BasicProductsEntity.java index 70619c7f..8aef7cf6 100644 --- a/src/main/java/com/glxp/api/entity/basic/BasicProductsEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/BasicProductsEntity.java @@ -401,6 +401,12 @@ public class BasicProductsEntity { @ApiModelProperty(value="三级分类名称(部位、功能、品种)") private Integer catalogcode3; + /** + * 是否扫码 + */ + @TableField(value = "requireScanCode") + private Integer requireScanCode; + /** * 耗材材质 */ @@ -408,6 +414,92 @@ public class BasicProductsEntity { @ApiModelProperty(value="耗材材质") private String matrial; + + + + /** + * 产品类型 1:药品 2:耗材 + */ + @TableField(value = "productsType") + private Integer productsType; + + + /** + * 每个层级的单位(例如:箱,盒,支) + */ + @TableField(value = "levelUnit") + private String levelUnit; + + /** + * 制剂单位 + */ + @TableField(value = "prepnUnit") + private String prepnUnit; + + /** + * 包装材质 + */ + @TableField(value = "packMatrial") + private String packMatrial; + + /** + * 使用属性 + */ + @TableField(value = "useAttribute") + private String useAttribute; + + /** + * 运输条件 + */ + @TableField(value = "transportCondition") + private String transportCondition; + + /** + * 存储条件 + */ + @TableField(value = "storageCondition") + private String storageCondition; + + /** + * 特殊分类码 + */ + @TableField(value = "specialCode") + private String specialCode; + + + /** + * 使用属性 + */ + @TableField(value = "indate") + private Date indate; + + + /** + * 药品类型(详见码表) 1:特殊药品原料药,2:特殊药品制剂,3:普通药品,9:未分类 + */ + @TableField(value = "physicType") + private Integer physicType; + + + /** + *制剂规格 + */ + @TableField(value = "prepnSpec") + private String prepnSpec; + /** + * 药品分类 + */ + @TableField(value = "majorType") + private Integer majorType; + + /** + * 医保分类 1:甲类;2:乙类;3:丙类 + */ + @TableField(value = "medicareType") + private Integer medicareType; + + + public static final String COL_ID = "id"; public static final String COL_UUID = "uuid"; diff --git a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java index 10ca3285..72d64fd5 100644 --- a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java @@ -1,6 +1,8 @@ package com.glxp.api.entity.basic; import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -10,103 +12,314 @@ import java.util.Date; * 耗材字典信息表 */ @Data +@TableName("basic_products") public class UdiProductEntity { +// +// private Long id; +// private String uuid; +// 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 manufactoryCode; +// 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; +// private String basicPrductRemak1; +// private String basicPrductRemak2; +// private String basicPrductRemak3; +// private String basicPrductRemak4; +// private String basicPrductRemak5; +// private String basicPrductRemak6; +// private String basicPrductRemak7; +// private String basicPrductRemak8; +// private String price; +// +// +// private String sfwblztlcp; +// private String cgzmraqxgxx; +// private String sfbjwycxsy; +// private String zdcfsycs; +// private String sfwwjbz; +// private String syqsfxyjxmj; +// private String mjfs; +// private String categoryName; +// +// +// //本地生成信息 +// private String batchNo; +// private String produceDate; +// private String expireDate; +// private String serialNo; +// private String udi; +// private String code; +// private Integer count; +// private String warehouseCode; +// private String deptCode; +// private String udplatCode; +// private String relId;//关联ID主键 +// private Integer status; +// private String supId; + + + + private Long relSupId; + + private Boolean groupBuy; + + private Long uid; + + private Integer attributeType; + + + +// + + + + private String remark; + private String catalogcode; +// + /** + * 一级分类名称(学科,品名) + */ + @TableField(value = "catalogCode1") + @ApiModelProperty(value = "一级分类名称(学科,品名)") + private Integer catalogCode1; +// + /** + * 二级分类名称(用途、品目) + */ + @TableField(value = "catalogCode2") + @ApiModelProperty(value = "二级分类名称(用途、品目)") + private Integer catalogCode2; +// +// /** +// * 三级分类名称(部位、功能、品种) +// */ + @TableField(value = "catalogCode3") + @ApiModelProperty(value = "三级分类名称(部位、功能、品种)") + private Integer catalogCode3; +// + + +// + private Boolean isStack; + + + + + + private Long id; + @TableField(value = "uuid") private String uuid; + @TableField(value = "originUuid") private String originUuid; + @TableField(value = "nameCode") private String nameCode; + @TableField(value = "deviceRecordKey") private String deviceRecordKey; + @TableField(value = "packRatio") private String packRatio; + @TableField(value = "packLevel") private String packLevel; + @TableField(value = "packUnit") private String packUnit; + @TableField(value = "bhxjsl") private Integer bhxjsl; + @TableField(value = "bhzxxsbzsl") private Integer bhzxxsbzsl; + @TableField(value = "zxxsbzbhsydysl") private Integer zxxsbzbhsydysl; + @TableField(value = "bhxjcpbm") private String bhxjcpbm; + @TableField(value = "bzcj") private String bzcj; + @TableField(value = "cpmctymc") private String cpmctymc; + @TableField(value = "cplb") private String cplb; + @TableField(value = "flbm") private String flbm; + @TableField(value = "ggxh") private String ggxh; + @TableField(value = "qxlb") private String qxlb; + @TableField(value = "tyshxydm") private String tyshxydm; + @TableField(value = "ylqxzcrbarmc") private String ylqxzcrbarmc; + @TableField(value = "zczbhhzbapzbh") private String zczbhhzbapzbh; + @TableField(value = "ylqxzcrbarywmc") private String ylqxzcrbarywmc; + @TableField(value = "sydycpbs") private String sydycpbs; + @TableField(value = "sjcpbm") private String sjcpbm; + @TableField(value = "versionNumber") private Integer versionNumber; + @TableField(value = "diType") private Integer diType; + @TableField(value = "ybbm") private String ybbm; + @TableField(value = "sptm") private String sptm; + @TableField(value = "manufactory") private String manufactory; - private String manufactoryCode; + @TableField(value = "measname") private String measname; + @TableField(value = "productType") private Integer productType; + @TableField(value = "scbssfbhph") private String scbssfbhph; + @TableField(value = "scbssfbhxlh") private String scbssfbhxlh; + @TableField(value = "scbssfbhscrq") private String scbssfbhscrq; + @TableField(value = "scbssfbhsxrq") private String scbssfbhsxrq; + @TableField(value = "cpms") private String cpms; + @TableField(value = "allowNoBatch") private Boolean allowNoBatch; + @TableField(value = "allowNoExpire") private Boolean allowNoExpire; + @TableField(value = "allowNoProduct") private Boolean allowNoProduct; + @TableField(value = "allowNoSerial") private Boolean allowNoSerial; + @TableField(value = "spmc") private String spmc; + @TableField(value = "cplx") private String cplx; + @TableField(value = "hchzsb") private String hchzsb; + @TableField(value = "cpdls") private String cpdls; + @TableField(value = "basicPrductRemak1") private String basicPrductRemak1; + @TableField(value = "basicPrductRemak2") private String basicPrductRemak2; + @TableField(value = "basicPrductRemak3") private String basicPrductRemak3; + @TableField(value = "basicPrductRemak4") private String basicPrductRemak4; + @TableField(value = "basicPrductRemak5") private String basicPrductRemak5; + @TableField(value = "basicPrductRemak6") private String basicPrductRemak6; + @TableField(value = "basicPrductRemak7") private String basicPrductRemak7; + @TableField(value = "basicPrductRemak8") private String basicPrductRemak8; + @TableField(value = "price") private String price; - - private String sfwblztlcp; - private String cgzmraqxgxx; - private String sfbjwycxsy; - private String zdcfsycs; - private String sfwwjbz; - private String syqsfxyjxmj; - private String mjfs; - private String categoryName; - - + @TableField(exist = false) //本地生成信息 private String batchNo; + @TableField(exist = false) private String produceDate; + @TableField(exist = false) private String expireDate; + @TableField(exist = false) private String serialNo; + @TableField(exist = false) private String udi; + @TableField(exist = false) private String code; + @TableField(exist = false) private Integer count; + @TableField(exist = false) private String warehouseCode; + @TableField(exist = false) private String deptCode; + @TableField(exist = false) private String udplatCode; + @TableField(exist = false) private String relId;//关联ID主键 + @TableField(exist = false) private Integer status; + @TableField(exist = false) private String supId; + @TableField(exist = false) + private Boolean useMuti; //是否多次使用 - private Date updateTime; - - - private Long relSupId; + @TableField(value = "pinyinInitial") + private String pinyinInitial; + @TableField(value = "zdcfsycs") + private String zdcfsycs; - private Boolean groupBuy; + @TableField(value = "sfwblztlcp") + private String sfwblztlcp; + @TableField(value = "cgzmraqxgxx") + private String cgzmraqxgxx; + @TableField(value = "sfbjwycxsy") + private String sfbjwycxsy; + @TableField(value = "sfwwjbz") + private String sfwwjbz; + @TableField(value = "syqsfxyjxmj") + private String syqsfxyjxmj; + @TableField(value = "mjfs") + private String mjfs; + @TableField(value = "categoryName") + private String categoryName; + @TableField(value = "updateTime") + private Date updateTime; + @TableField(value = "useNum") + private Integer useNum; + @TableField(value = "updateUser") + private String updateUser; + @TableField(value = "createTime") + private Date createTime; + @TableField(value = "createUser") + private String createUser; + @TableField(value = "destinyType") + private Integer destinyType; - private Long uid; - private Integer purType; - private Integer attributeType; /** - * 产品分类高值 :1:高值耗材;2.普通耗材 + * 包装规格 */ - private Integer hcType; + @TableField(value = "bzgg") + private String bzgg; /** * 一级分类名称(学科,品名) @@ -135,37 +348,92 @@ public class UdiProductEntity { @TableField(value = "matrial") @ApiModelProperty(value = "耗材材质") private String matrial; + @TableField(exist = false) + private Integer purType; + @TableField(exist = false) + private Integer hcType; + @TableField(value = "requireScanCode") + private Integer requireScanCode; - private String remark; - private String catalogcode; /** - * 一级分类名称(学科,品名) + * 产品类型 1:药品 2:耗材 */ - @TableField(value = "catalogCode1") - @ApiModelProperty(value = "一级分类名称(学科,品名)") - private Integer catalogCode1; + @TableField(value = "productsType") + private Integer productsType; + /** - * 二级分类名称(用途、品目) + * 每个层级的单位(例如:箱,盒,支) */ - @TableField(value = "catalogCode2") - @ApiModelProperty(value = "二级分类名称(用途、品目)") - private Integer catalogCode2; + @TableField(value = "levelUnit") + private String levelUnit; /** - * 三级分类名称(部位、功能、品种) + * 制剂单位 */ - @TableField(value = "catalogCode3") - @ApiModelProperty(value = "三级分类名称(部位、功能、品种)") - private Integer catalogCode3; + @TableField(value = "prepnUnit") + private String prepnUnit; - private Integer requireScanCode; /** - * 包装规格 + * 使用属性 */ - private String bzgg; + @TableField(value = "useAttribute") + private String useAttribute; - private Boolean isStack; + /** + * 运输条件 + */ + @TableField(value = "transportCondition") + private String transportCondition; + + /** + * 存储条件 + */ + @TableField(value = "storageCondition") + private String storageCondition; + + /** + * 特殊分类码 + */ + @TableField(value = "specialCode") + private String specialCode; + + + /** + * 使用属性 + */ + @TableField(value = "indate") + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'") + private Date indate; + + + /** + * 药品类型(详见码表) 1:特殊药品原料药,2:特殊药品制剂,3:普通药品,9:未分类 + */ + @TableField(value = "physicType") + private Integer physicType; + + /** + * 制剂规格 + */ + @TableField(value = "prepnSpec") + private String prepnSpec; + + /** + * 药品分类 + */ + @TableField(value = "majorType") + private Integer majorType; + + + /** + * 医保分类 1:甲类;2:乙类;3:丙类 + */ + @TableField(value = "medicareType") + private Integer medicareType; + + @TableField(value = "majorStatus") + private Integer majorStatus; } diff --git a/src/main/java/com/glxp/api/entity/basic/UdiRelevanceEntity.java b/src/main/java/com/glxp/api/entity/basic/UdiRelevanceEntity.java index cc57185e..5d6b78a4 100644 --- a/src/main/java/com/glxp/api/entity/basic/UdiRelevanceEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/UdiRelevanceEntity.java @@ -200,4 +200,49 @@ public class UdiRelevanceEntity { @TableField(value = "isStack") private Boolean isStack; + /** + * 流通计量层层级标识 + */ + @TableField(value = "distributeLevelDi") + private String distributeLevelDi; + + /** + * 流通计量层级单位 + */ + @TableField(value = "distributeLevelUnit") + private String distributeLevelUnit; + + /** + * 流通时包含计量单元的数量 + */ + @TableField(value = "distributeLevelCount") + private Integer distributeLevelCount; + + /** + * 使用计量层级标识 + */ + @TableField(value = "useLevelDi") + private String useLevelDi; + + /** + * 使用计量层级单位 + */ + @TableField(value = "useLevelUnit") + private String useLevelUnit; + + /** + * 使用是当前层级包含计量单元数量 + */ + @TableField(value = "useLeverCount") + private Integer useLeverCount; + + + /** + * 收费项目编码 + */ + @TableField(value = "payFeeCode") + private String payFeeCode; + + @TableField(value = "productsType") + private Integer productsType; } diff --git a/src/main/java/com/glxp/api/entity/inout/IoOrderEntity.java b/src/main/java/com/glxp/api/entity/inout/IoOrderEntity.java index 7faf107f..00dfaeae 100644 --- a/src/main/java/com/glxp/api/entity/inout/IoOrderEntity.java +++ b/src/main/java/com/glxp/api/entity/inout/IoOrderEntity.java @@ -271,4 +271,11 @@ public class IoOrderEntity { private String outSickInfo; + /** + * 产品类型(1.耗材,2.药品) + */ + @TableField(value = "productType") + private Integer productType; + + } diff --git a/src/main/java/com/glxp/api/entity/inout/PurReceiveEntity.java b/src/main/java/com/glxp/api/entity/inout/PurReceiveEntity.java index da0f3e17..c277a6db 100644 --- a/src/main/java/com/glxp/api/entity/inout/PurReceiveEntity.java +++ b/src/main/java/com/glxp/api/entity/inout/PurReceiveEntity.java @@ -112,6 +112,15 @@ public class PurReceiveEntity { private String targetDeptCode; + /** + * 产品类型(1.耗材,2.药品) + */ + @TableField(value = "productType") + private Integer productType; + + + + public static final String COL_ID = "id"; public static final String COL_BILLNO = "billNo"; diff --git a/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java index bbb26e72..046767e2 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java @@ -121,6 +121,13 @@ public class PurApplyEntity { @TableField(value = "generatePlan") private boolean generatePlan; + + /** + * 产品类型(1.耗材,2.药品) + */ + @TableField(value = "productType") + private Integer productType; + public static final String COL_ID = "id"; public static final String COL_BILLNO = "billNo"; @@ -158,4 +165,4 @@ public class PurApplyEntity { public static final String COL_PLANBILLNO = "planBillNo"; public static final String COL_GENERATEPLAN = "generatePlan"; -} \ No newline at end of file +} diff --git a/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java index a60bbfbe..920eff29 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java @@ -147,6 +147,13 @@ public class PurOrderEntity { private int dealStatus; + /** + * 产品类型(1.耗材,2.药品) + */ + @TableField(value = "productType") + private Integer productType; + + public static final String COL_ID = "id"; public static final String COL_BILLNO = "billNo"; diff --git a/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java index 30235e98..93928037 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java @@ -127,6 +127,13 @@ public class PurPlanEntity { @TableField(value = "stockOrderNo") private String stockOrderNo; + + /** + * 产品类型(1.耗材,2.药品) + */ + @TableField(value = "productType") + private Integer productType; + public static final String COL_ID = "id"; public static final String COL_BILLNO = "billNo"; @@ -166,4 +173,4 @@ public class PurPlanEntity { public static final String COL_APPLYBILLNO = "applyBillNo"; public static final String COL_STOCKORDERNO = "stockOrderNo"; -} \ No newline at end of file +} diff --git a/src/main/java/com/glxp/api/req/basic/AddProductRequest.java b/src/main/java/com/glxp/api/req/basic/AddProductRequest.java new file mode 100644 index 00000000..e67fdd96 --- /dev/null +++ b/src/main/java/com/glxp/api/req/basic/AddProductRequest.java @@ -0,0 +1,265 @@ +package com.glxp.api.req.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +@NoArgsConstructor +@Data +public class AddProductRequest { + + /** + * 产品名称 + */ + @JsonProperty("name") + @NotEmpty(message = "产品名称必填!") + private String name; + + /** + * 规格型号 + */ + @JsonProperty("spec") + @NotEmpty(message = "规格型号必填!") + private String spec; + + /** + * 计量单位 + */ + @JsonProperty("measname") + @NotEmpty(message = "计量单位必填!") + private String measname; + + /** + * 生产企业 + */ + @JsonProperty("manufactory") + @NotEmpty(message = "生产企业必填!") + private String manufactory; + + /** + * 注册证号 + */ + @JsonProperty("registerNo") + @NotEmpty(message = "注册证号必填!") + private String registerNo; + + /** + * 产品属性 + */ + @JsonProperty("attributeType") + @NotNull(message = "产品属性必填!") + private Integer attributeType; + /** + * 耗材分类高值 :1:高值耗材;2.普通耗材 + */ + @JsonProperty("hcType") + @NotNull(message = "耗材分类必填!") + private Integer hcType; + + /** + * 医疗器械注册人 + */ + @JsonProperty("ylqxzcrbarmc") + private String ylqxzcrbarmc; + + /** + * 注册人英文名称 + */ + @JsonProperty("ylqxzcrbarywmc") + private String ylqxzcrbarywmc; + + /** + * 产品类别 + */ + @JsonProperty("cplb") + private String cplb; + + /** + * 分类编码 + */ + @JsonProperty("flbm") + private String flbm; + + /** + * 商品条码 + */ + @JsonProperty("sptm") + private String sptm; + + + /** + * 医保编码 + */ + @JsonProperty("ybbm") + private String ybbm; + + /** + * 统一社会信用号 + */ + @JsonProperty("tyshxydm") + private String tyshxydm; + + /** + * 器械类别 + */ + @JsonProperty("qxlb") + private String qxlb; + + /** + * 产品描述 + */ + @JsonProperty("cpms") + private String cpms; + + /** + * 一级分类名称(学科,品名) + */ + @TableField(value = "catalogname1") + @ApiModelProperty(value = "一级分类名称(学科,品名)") + private String catalogname1; + + /** + * 二级分类名称(用途、品目) + */ + @TableField(value = "catalogname2") + @ApiModelProperty(value = "二级分类名称(用途、品目)") + private String catalogname2; + + /** + * 三级分类名称(部位、功能、品种) + */ + @TableField(value = "catalogname3") + @ApiModelProperty(value = "三级分类名称(部位、功能、品种)") + private String catalogname3; + + /** + * 耗材材质 + */ + @TableField(value = "matrial") + @ApiModelProperty(value = "耗材材质") + private String matrial; + + private BigDecimal price; + private Integer destinyType; + private String code; + + private Integer requireScanCode; + + + //商品名称 + private String spmc; + + /** + * 产品类型 1:药品 2:耗材 + */ + @TableField(value = "productsType") + private Integer productsType; + + + /** + * 每个层级的单位(例如:箱,盒,支) + */ + @TableField(value = "levelUnit") + private String levelUnit; + + /** + * 制剂单位 + */ + @TableField(value = "prepnUnit") + private String prepnUnit; + + /** + * 包装材质 + */ + @TableField(value = "packMatrial") + private String packMatrial; + + /** + * 使用属性 + */ + @TableField(value = "useAttribute") + private String useAttribute; + + /** + * 运输条件 + */ + @TableField(value = "transportCondition") + private String transportCondition; + + /** + * 存储条件 + */ + @TableField(value = "storageCondition") + private String storageCondition; + + /** + * 特殊分类码 + */ + @TableField(value = "specialCode") + private String specialCode; + + + /** + * 有效期 + */ + @TableField(value = "indate") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date indate; + + + /** + * 药品类型(详见码表) 1:特殊药品原料药,2:特殊药品制剂,3:普通药品,9:未分类 + */ + @TableField(value = "physicType") + private Integer physicType; + + + /** + * 制剂规格 + */ + @TableField(value = "prepnSpec") + private String prepnSpec; + /** + * 药品分类 + */ + @TableField(value = "majorType") + private Integer majorType; + + /** + * 医保分类 1:甲类;2:乙类;3:丙类 + */ + @TableField(value = "medicareType") + private Integer medicareType; + private Integer majorStatus; + + /** + * 批准文号 + */ + private String zczbhhzbapzbh; + /** + * 包装规格 + */ + private String bzgg; + private String packRatio; + private String uuid; + private String nameCode; + private String cpmctymc; + private List drugLevelLists; + + /** + * 关联表主键 + */ + private Long relId; + + + private Long id; +} diff --git a/src/main/java/com/glxp/api/req/basic/CompanyProductRelevanceRequest.java b/src/main/java/com/glxp/api/req/basic/CompanyProductRelevanceRequest.java index 480ce2ed..c9151253 100644 --- a/src/main/java/com/glxp/api/req/basic/CompanyProductRelevanceRequest.java +++ b/src/main/java/com/glxp/api/req/basic/CompanyProductRelevanceRequest.java @@ -95,4 +95,6 @@ public class CompanyProductRelevanceRequest extends ListPageRequest { * 是否开启校验扫码 :0:不校验;1:只允许录入扫码产品;2:只允许录入不扫码产品 */ private Integer codeCheck; + + private Integer productType = 1; } 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 c2ba7bb5..0479f78e 100644 --- a/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java +++ b/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java @@ -92,4 +92,6 @@ public class FilterUdiRelRequest extends ListPageRequest { private String mjfs; private String categoryName; private String deviceRecordKey; + + private Integer productsType; } diff --git a/src/main/java/com/glxp/api/req/basic/UpdateLevelDrugRequest.java b/src/main/java/com/glxp/api/req/basic/UpdateLevelDrugRequest.java new file mode 100644 index 00000000..9d6c86a7 --- /dev/null +++ b/src/main/java/com/glxp/api/req/basic/UpdateLevelDrugRequest.java @@ -0,0 +1,35 @@ +package com.glxp.api.req.basic; + +import lombok.Data; + +@Data +public class UpdateLevelDrugRequest { + + private Long id; + /** + * 层级标识 + */ + private String nameCode; + /** + * 包装级别 + */ + private Integer packLevel; + /** + * 包装层级 + */ + private String packUnit; + /** + * 上级产品编码 + */ + private String sjcpbm; + /** + * 下级产品编码 + */ + private String bhxjcpbm; + /** + * 包含下级数量 + */ + private Integer bhxjsl; + private Long relId; + private String uuid; +} 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 78ab31c0..e97087d5 100644 --- a/src/main/java/com/glxp/api/req/inout/AddOrderRequest.java +++ b/src/main/java/com/glxp/api/req/inout/AddOrderRequest.java @@ -30,4 +30,6 @@ public class AddOrderRequest { private String checkPreInOrders; private int fromVailPi; //是否需要校验三期;1:不需要,2:需要 + + private Integer productType = 1;//默认器械 } diff --git a/src/main/java/com/glxp/api/req/inout/FilterCodeRequest.java b/src/main/java/com/glxp/api/req/inout/FilterCodeRequest.java index eeaedce7..e7274fec 100644 --- a/src/main/java/com/glxp/api/req/inout/FilterCodeRequest.java +++ b/src/main/java/com/glxp/api/req/inout/FilterCodeRequest.java @@ -67,4 +67,10 @@ public class FilterCodeRequest extends ListPageRequest { * 单据类型集合 */ List actions; + + /** + * 产品类型 + */ + + private Integer productType = 1;//默认是器械 } diff --git a/src/main/java/com/glxp/api/req/inout/FilterOrderDetailBizRequest.java b/src/main/java/com/glxp/api/req/inout/FilterOrderDetailBizRequest.java index 7e821569..fc602519 100644 --- a/src/main/java/com/glxp/api/req/inout/FilterOrderDetailBizRequest.java +++ b/src/main/java/com/glxp/api/req/inout/FilterOrderDetailBizRequest.java @@ -30,4 +30,7 @@ public class FilterOrderDetailBizRequest extends ListPageRequest { private String productName; private Long bizIdFk; + + + private Integer productType = 1; } diff --git a/src/main/java/com/glxp/api/req/inout/FilterOrderDetailCodeRequest.java b/src/main/java/com/glxp/api/req/inout/FilterOrderDetailCodeRequest.java index 6e5d2edb..815c02fd 100644 --- a/src/main/java/com/glxp/api/req/inout/FilterOrderDetailCodeRequest.java +++ b/src/main/java/com/glxp/api/req/inout/FilterOrderDetailCodeRequest.java @@ -42,4 +42,6 @@ public class FilterOrderDetailCodeRequest extends ListPageRequest { private Long bizIdFk; + private Integer productType = 1;//默认器械 + } diff --git a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java index 52ee9de0..f95647eb 100644 --- a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java +++ b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java @@ -202,4 +202,7 @@ public class FilterOrderRequest extends ListPageRequest { */ private Integer invoiceRegStatus; + + private Integer productType = 1; + } diff --git a/src/main/java/com/glxp/api/req/inout/IoOrderInvoiceRequest.java b/src/main/java/com/glxp/api/req/inout/IoOrderInvoiceRequest.java index fef4990d..ce64b1ee 100644 --- a/src/main/java/com/glxp/api/req/inout/IoOrderInvoiceRequest.java +++ b/src/main/java/com/glxp/api/req/inout/IoOrderInvoiceRequest.java @@ -86,6 +86,11 @@ public class IoOrderInvoiceRequest extends ListPageRequest { //供应商ID private String supId; + /** + * 订单产品类别 1。器械 2。药品 默认器械 + */ + private Integer productType = 1; + public static final String COL_ID = "id"; public static final String COL_ORDERIDFK = "orderIdFk"; diff --git a/src/main/java/com/glxp/api/req/inv/FilterInvProductRequest.java b/src/main/java/com/glxp/api/req/inv/FilterInvProductRequest.java index 6f0ce835..c0545e77 100644 --- a/src/main/java/com/glxp/api/req/inv/FilterInvProductRequest.java +++ b/src/main/java/com/glxp/api/req/inv/FilterInvProductRequest.java @@ -107,4 +107,9 @@ public class FilterInvProductRequest extends ListPageRequest { private Integer filterNoInv; private Integer highValue; + /** + * 订单产品类别 1。器械 2。药品 默认器械 + */ + private Integer productsType = 1; + } diff --git a/src/main/java/com/glxp/api/req/purchase/PurOrderDetailRequest.java b/src/main/java/com/glxp/api/req/purchase/PurOrderDetailRequest.java index d9165941..d7c6b4bd 100644 --- a/src/main/java/com/glxp/api/req/purchase/PurOrderDetailRequest.java +++ b/src/main/java/com/glxp/api/req/purchase/PurOrderDetailRequest.java @@ -39,5 +39,7 @@ public class PurOrderDetailRequest extends ListPageRequest { */ private String supId; + private Integer productType = 1;//默认器械 + } diff --git a/src/main/java/com/glxp/api/req/purchase/PurOrderRequest.java b/src/main/java/com/glxp/api/req/purchase/PurOrderRequest.java index 1bd594b9..c7997382 100644 --- a/src/main/java/com/glxp/api/req/purchase/PurOrderRequest.java +++ b/src/main/java/com/glxp/api/req/purchase/PurOrderRequest.java @@ -100,5 +100,6 @@ public class PurOrderRequest extends ListPageRequest { private String endAuditDate; private Integer dealStatus; private String orderBy; + private Integer productType = 1; } 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 16356a23..2ed6a81a 100644 --- a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java +++ b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java @@ -178,10 +178,14 @@ public class UdiRelevanceResponse { private Integer requireScanCode; + /** - * 包装规格 + * 药品新增数据 */ private String bzgg; + private String prepnSpec; + private String prepnUnit; + public int getBhzxxsbzsl() { if (bhzxxsbzsl == null || bhzxxsbzsl == 0) { diff --git a/src/main/java/com/glxp/api/res/basic/UdiRlSupResponse.java b/src/main/java/com/glxp/api/res/basic/UdiRlSupResponse.java index 185ca50b..ce6a27ee 100644 --- a/src/main/java/com/glxp/api/res/basic/UdiRlSupResponse.java +++ b/src/main/java/com/glxp/api/res/basic/UdiRlSupResponse.java @@ -141,4 +141,11 @@ public class UdiRlSupResponse { private Integer hcType; private Boolean isStack; private Integer requireScanCode; + + /** + * 药品新增数据 + */ + private String bzgg; + private String prepnSpec; + private String prepnUnit; } diff --git a/src/main/java/com/glxp/api/res/inout/IoCodeResponse.java b/src/main/java/com/glxp/api/res/inout/IoCodeResponse.java index 6472ee4a..86e50c4b 100644 --- a/src/main/java/com/glxp/api/res/inout/IoCodeResponse.java +++ b/src/main/java/com/glxp/api/res/inout/IoCodeResponse.java @@ -148,4 +148,14 @@ public class IoCodeResponse { private String ylqxzcrbarmc; private String zczbhhzbapzbh; private String manufactory; + + + + /** + * 药品新增数据 + */ + private String bzgg; + private String packUnit; + private String prepnSpec; + private String prepnUnit; } diff --git a/src/main/java/com/glxp/api/res/inout/IoOrderDetailBizResponse.java b/src/main/java/com/glxp/api/res/inout/IoOrderDetailBizResponse.java index aaec546a..eb9d52e9 100644 --- a/src/main/java/com/glxp/api/res/inout/IoOrderDetailBizResponse.java +++ b/src/main/java/com/glxp/api/res/inout/IoOrderDetailBizResponse.java @@ -181,5 +181,13 @@ public class IoOrderDetailBizResponse { private String checkColdFileName; + /** + * 药品新增数据 + */ + private String bzgg; + private String packUnit; + private String prepnSpec; + private String prepnUnit; + } diff --git a/src/main/java/com/glxp/api/res/inout/IoOrderDetailResultResponse.java b/src/main/java/com/glxp/api/res/inout/IoOrderDetailResultResponse.java index 2f363dfc..451c432a 100644 --- a/src/main/java/com/glxp/api/res/inout/IoOrderDetailResultResponse.java +++ b/src/main/java/com/glxp/api/res/inout/IoOrderDetailResultResponse.java @@ -1,5 +1,7 @@ package com.glxp.api.res.inout; +import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import lombok.Data; import java.math.BigDecimal; @@ -188,6 +190,31 @@ public class IoOrderDetailResultResponse { private Boolean isStack; private String invoiceEncode; + @ExcelProperty(value = "发票确认时间", index = 12) + private Date confirmTime; + @ExcelProperty(value = "配送商", index = 7) + private String corpName; + private String fromInvName; + + @ExcelProperty(value = "往来单位", index = 0) + private String fromName; + + + /** + * 药品新增数据 + */ + private String bzgg; + private String prepnSpec;; + + public String getFromName() { + if (StrUtil.isNotEmpty(fromCorpName)) + return fromCorpName; + if (StrUtil.isNotEmpty(fromInvName)) + return fromInvName; + + + return fromName; + } } diff --git a/src/main/java/com/glxp/api/res/inout/IoOrderInvoiceResponse.java b/src/main/java/com/glxp/api/res/inout/IoOrderInvoiceResponse.java index 0f5606fd..ba4061da 100644 --- a/src/main/java/com/glxp/api/res/inout/IoOrderInvoiceResponse.java +++ b/src/main/java/com/glxp/api/res/inout/IoOrderInvoiceResponse.java @@ -100,6 +100,15 @@ public class IoOrderInvoiceResponse { private BigDecimal amout; + /** + * 药品新增数据 + */ + private String bzgg; + private String packUnit; + private String prepnSpec; + private String prepnUnit; + + public static final String COL_ID = "id"; public static final String COL_ORDERIDFK = "orderIdFk"; diff --git a/src/main/java/com/glxp/api/res/inv/InvProductResponse.java b/src/main/java/com/glxp/api/res/inv/InvProductResponse.java index da0401d3..1e8237c2 100644 --- a/src/main/java/com/glxp/api/res/inv/InvProductResponse.java +++ b/src/main/java/com/glxp/api/res/inv/InvProductResponse.java @@ -119,4 +119,11 @@ public class InvProductResponse { private BigDecimal price; + /** + * 药品数据 + */ + private String packUnit; + private String prepnUnit; + private String prepnSpec; + } diff --git a/src/main/java/com/glxp/api/res/purchase/PurOrderDetailResponse.java b/src/main/java/com/glxp/api/res/purchase/PurOrderDetailResponse.java index c15e3796..379b4b0b 100644 --- a/src/main/java/com/glxp/api/res/purchase/PurOrderDetailResponse.java +++ b/src/main/java/com/glxp/api/res/purchase/PurOrderDetailResponse.java @@ -51,4 +51,14 @@ public class PurOrderDetailResponse { private String billNo; private String nameCode; + + + /** + * 药品新增数据 + */ + private String bzgg; + private String packUnit; + private String prepnSpec; + private String prepnUnit; + } diff --git a/src/main/java/com/glxp/api/service/basic/UdiProductService.java b/src/main/java/com/glxp/api/service/basic/UdiProductService.java index 14ebbb5d..1a696ee4 100644 --- a/src/main/java/com/glxp/api/service/basic/UdiProductService.java +++ b/src/main/java/com/glxp/api/service/basic/UdiProductService.java @@ -1,10 +1,11 @@ package com.glxp.api.service.basic; import com.glxp.api.entity.basic.UdiProductEntity; +import com.glxp.api.req.basic.AddProductRequest; import com.glxp.api.req.basic.FilterUdiRelRequest; import com.glxp.api.req.basic.UdiInfoRequest; +import com.glxp.api.req.basic.UpdateLevelDrugRequest; import com.glxp.api.res.basic.UdiRelevanceResponse; -import org.apache.ibatis.annotations.Param; import java.util.List; @@ -65,4 +66,8 @@ public interface UdiProductService { * @return */ UdiProductEntity getAllowNoBatch(String nameCode); + + AddProductRequest addDrug(AddProductRequest addProductRequest); + + void saveOrUpadateLevelDrug(UpdateLevelDrugRequest updateLevelDrugRequest); } diff --git a/src/main/java/com/glxp/api/service/basic/impl/UdiProductServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/UdiProductServiceImpl.java index 7f9968bf..27e33854 100644 --- a/src/main/java/com/glxp/api/service/basic/impl/UdiProductServiceImpl.java +++ b/src/main/java/com/glxp/api/service/basic/impl/UdiProductServiceImpl.java @@ -4,13 +4,22 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageHelper; +import com.glxp.api.constant.ConstantStatus; import com.glxp.api.dao.basic.UdiProductDao; +import com.glxp.api.dao.basic.UdiRelevanceDao; import com.glxp.api.entity.basic.UdiProductEntity; +import com.glxp.api.entity.basic.UdiRelevanceEntity; +import com.glxp.api.exception.JsonException; +import com.glxp.api.req.basic.AddProductRequest; import com.glxp.api.req.basic.FilterUdiRelRequest; import com.glxp.api.req.basic.UdiInfoRequest; +import com.glxp.api.req.basic.UpdateLevelDrugRequest; import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.service.auth.CustomerService; import com.glxp.api.service.basic.UdiProductService; +import com.glxp.api.util.IntUtil; import com.glxp.api.util.udi.FilterUdiUtils; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -18,6 +27,7 @@ import javax.annotation.Resource; import java.util.Collections; import java.util.Date; import java.util.List; +import java.util.Optional; @Service @Transactional(rollbackFor = Exception.class) @@ -26,6 +36,12 @@ public class UdiProductServiceImpl implements UdiProductService { @Resource UdiProductDao udiProductDao; + @Resource + UdiRelevanceDao udiRelevanceDao; + + @Resource + private CustomerService customerService; + @Override public List filterUdiInfo(FilterUdiRelRequest filterUdiRelRequest) { if (filterUdiRelRequest == null) { @@ -207,4 +223,195 @@ public class UdiProductServiceImpl implements UdiProductService { String di = FilterUdiUtils.getDiStr(nameCode); return udiProductDao.selectAllowNoBatch(di); } + + @Override + + /** + * 新增/编辑药品信息 + * + * @param addProductRequest + * @return + */ + public AddProductRequest addDrug(AddProductRequest addProductRequest) { + + UdiRelevanceEntity udiRelevanceEntity; + //编辑保存 + if (addProductRequest.getRelId() != null) { + udiRelevanceEntity = udiRelevanceDao.selectById(addProductRequest.getRelId()); + List udiProductEntities = udiProductDao.findByUuids(udiRelevanceEntity.getUuid()); + for (UdiProductEntity udiProductEntity : udiProductEntities) { + addProductRequest.setNameCode(udiProductEntity.getNameCode()); + BeanUtils.copyProperties(addProductRequest, udiProductEntity); + udiProductEntity.setCpmctymc(addProductRequest.getCpmctymc()); + udiProductEntity.setProductsType(2); + udiProductEntity.setGgxh(addProductRequest.getSpec()); + udiProductEntity.setPrice(addProductRequest.getPrice() == null ? "0" : addProductRequest.getPrice().toString()); + udiProductEntity.setZczbhhzbapzbh(addProductRequest.getRegisterNo()); + if (IntUtil.value(udiProductEntity.getPackLevel()) == 1) { + udiProductEntity.setDiType(1); + } + udiProductDao.updateById(udiProductEntity); + } + } else { + udiRelevanceEntity = new UdiRelevanceEntity(); + udiRelevanceEntity.setId(IdUtil.getSnowflakeNextId()); + udiRelevanceEntity.setIsDisable(false); + udiRelevanceEntity.setIsUseDy(false); + udiRelevanceEntity.setUuid(IdUtil.getSnowflakeNextId() + ""); + udiRelevanceEntity.setNeedCert(false); + udiRelevanceEntity.setPurType(1); + udiRelevanceEntity.setProductsType(2); + udiRelevanceEntity.setAttributeType(addProductRequest.getAttributeType()); + udiRelevanceEntity.setHcType(addProductRequest.getHcType()); + + if (CollUtil.isNotEmpty(addProductRequest.getDrugLevelLists())) { + for (UpdateLevelDrugRequest updateLevelDrugRequest : addProductRequest.getDrugLevelLists()) { + UdiProductEntity udiProductEntity1 = udiProductDao.findByNameCode(updateLevelDrugRequest.getNameCode()); + if (udiProductEntity1 != null) { + throw new JsonException(500, "层级编码已存在!"); + } + UdiProductEntity udiProductEntity = new UdiProductEntity(); + BeanUtils.copyProperties(updateLevelDrugRequest, udiProductEntity); + BeanUtils.copyProperties(addProductRequest,udiProductEntity); + udiProductEntity.setNameCode(updateLevelDrugRequest.getNameCode()); + udiProductEntity.setCpmctymc(addProductRequest.getCpmctymc()); + udiProductEntity.setUuid(udiRelevanceEntity.getUuid()); + udiProductEntity.setProductsType(2); + udiProductEntity.setGgxh(addProductRequest.getSpec()); + udiProductEntity.setPrice(addProductRequest.getPrice() == null ? "0" : addProductRequest.getPrice().toString()); + udiProductEntity.setZczbhhzbapzbh(addProductRequest.getRegisterNo()); + udiProductEntity.setPackLevel(updateLevelDrugRequest.getPackLevel() + ""); + udiProductEntity.setUuid(udiProductEntity.getUuid()); + if (IntUtil.value(udiProductEntity.getPackLevel()) == 1 || addProductRequest.getDrugLevelLists().size() == 1) { + udiProductEntity.setDiType(1); + if (IntUtil.value(udiProductEntity.getPackLevel()) == 1) { + calculateDistCount(udiProductEntity, udiRelevanceEntity); + calculateUseCount(udiProductEntity, udiRelevanceEntity); + } + } + setUpdateInfo(udiProductEntity, udiRelevanceEntity); + udiProductEntity.setId(IdUtil.getSnowflakeNextId()); + udiProductDao.insert(udiProductEntity); + } + + } + udiRelevanceDao.insertUdiRelevance(udiRelevanceEntity); + } + return addProductRequest; + } + + @Override + public void saveOrUpadateLevelDrug(UpdateLevelDrugRequest updateLevelDrugRequest) { + //编辑保存 + if (updateLevelDrugRequest.getRelId() != null) { + UdiRelevanceEntity udiRelevanceEntity = udiRelevanceDao.selectById(updateLevelDrugRequest.getRelId()); + + UdiProductEntity udiProductEntity1 = udiProductDao.findByNameCode(updateLevelDrugRequest.getNameCode()); + if (udiProductEntity1 != null) { + //更新 + udiProductEntity1.setNameCode(updateLevelDrugRequest.getNameCode()); + udiProductEntity1.setPackLevel(updateLevelDrugRequest.getPackLevel() + ""); + udiProductEntity1.setPackUnit(updateLevelDrugRequest.getPackUnit()); + udiProductEntity1.setSjcpbm(updateLevelDrugRequest.getSjcpbm()); + udiProductEntity1.setBhxjcpbm(updateLevelDrugRequest.getBhxjcpbm()); + udiProductEntity1.setBhxjsl(updateLevelDrugRequest.getBhxjsl()); + udiProductDao.updateById(udiProductEntity1); + } else { + //新增 + udiProductEntity1 = udiProductDao.findByUuid(udiRelevanceEntity.getUuid()); + udiProductEntity1.setNameCode(updateLevelDrugRequest.getNameCode()); + udiProductEntity1.setPackLevel(updateLevelDrugRequest.getPackLevel() + ""); + udiProductEntity1.setPackUnit(updateLevelDrugRequest.getPackUnit()); + udiProductEntity1.setSjcpbm(updateLevelDrugRequest.getSjcpbm()); + udiProductEntity1.setBhxjcpbm(updateLevelDrugRequest.getBhxjcpbm()); + udiProductEntity1.setBhxjsl(updateLevelDrugRequest.getBhxjsl()); + udiProductEntity1.setUuid(udiRelevanceEntity.getUuid()); + udiProductEntity1.setId(IdUtil.getSnowflakeNextId()); + udiProductDao.insert(udiProductEntity1); + } + } else { + //必须先提交后才能保存 + UdiProductEntity udiProductEntity1 = udiProductDao.findByNameCode(updateLevelDrugRequest.getNameCode()); + if (udiProductEntity1 != null) { + throw new JsonException(500, "层级编码已存在!"); + } + } + } + + + /** + * 根据当前层级标识计算流通拆零数量 + */ + public void calculateDistCount(UdiProductEntity udiProductEntity, UdiRelevanceEntity udiRelevanceEntity) { + List udiProductEntities = udiProductDao.findByOriginUuid(udiProductEntity.getUuid()); + CountWrapper xjCountWrapper = new CountWrapper(); + findUltimateEntity(udiProductEntity, udiProductEntities, xjCountWrapper); + udiRelevanceEntity.setDistributeLevelDi(udiProductEntity.getNameCode()); + udiRelevanceEntity.setDistributeLevelUnit(udiProductEntity.getPackUnit()); + udiRelevanceEntity.setDistributeLevelCount(xjCountWrapper.getCount()); + } + + /** + * 根据当前层级标识计算使用拆零数量 + */ + public void calculateUseCount(UdiProductEntity udiProductEntity, UdiRelevanceEntity udiRelevanceEntity) { + List udiProductEntities = udiProductDao.findByOriginUuid(udiProductEntity.getUuid()); + CountWrapper xjCountWrapper = new CountWrapper(); + findUltimateEntity(udiProductEntity, udiProductEntities, xjCountWrapper); + udiRelevanceEntity.setUseLevelDi(udiProductEntity.getNameCode()); + udiRelevanceEntity.setUseLevelUnit(udiProductEntity.getPackUnit()); + udiRelevanceEntity.setUseLeverCount(xjCountWrapper.getCount()); + } + + public static UdiProductEntity findUltimateEntity(UdiProductEntity udiProductEntity, List udiProductEntities, CountWrapper xjCountWrapper) { + if (StrUtil.isEmpty(udiProductEntity.getBhxjcpbm())) { + xjCountWrapper.addCount(udiProductEntity.getBhxjsl()); + return udiProductEntity; + } + + Optional nextEntityOptional = udiProductEntities.stream() + .filter(item -> item.getNameCode().equals(udiProductEntity.getBhxjcpbm())) + .findFirst(); + + nextEntityOptional.ifPresent(entity -> xjCountWrapper.addCount(udiProductEntity.getBhxjsl())); + + return nextEntityOptional + .map(entity -> findUltimateEntity(entity, udiProductEntities, xjCountWrapper)) + .orElse(null); + } + + + + /** + * 根据当前层级标识计算流通拆零数量 + */ + + + private void setUpdateInfo(UdiProductEntity udiProductEntity, UdiRelevanceEntity udiRelevanceEntity) { + Date now = new Date(); + String userId = String.valueOf(customerService.getUserBean().getId()); + udiProductEntity.setUpdateTime(now); + udiProductEntity.setUpdateUser(userId); + udiRelevanceEntity.setModifyTime(now); + udiRelevanceEntity.setUpdateTime(now); + udiRelevanceEntity.setUpdateUser(userId); + } + public static class CountWrapper { + private int count; + + public CountWrapper() { + this.count = 1; + } + + public int getCount() { + return count; + } + + public void addCount(int value) { + if (value == 0) + value = 1; + this.count = this.count * value; + } + } + } diff --git a/src/main/java/com/glxp/api/service/inout/IoOrderDetailBizService.java b/src/main/java/com/glxp/api/service/inout/IoOrderDetailBizService.java index c0e9fe2c..3d6d4c92 100644 --- a/src/main/java/com/glxp/api/service/inout/IoOrderDetailBizService.java +++ b/src/main/java/com/glxp/api/service/inout/IoOrderDetailBizService.java @@ -38,6 +38,7 @@ public interface IoOrderDetailBizService { IoOrderDetailBizEntity findByRelId(String orderId, Long relId); List filterList(FilterOrderDetailBizRequest orderDetailBizRequest); + List filterDrugList(FilterOrderDetailBizRequest orderDetailBizRequest); List getfilterList(FilterOrderDetailCodeRequest orderDetailBizRequest); diff --git a/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java b/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java index ffeb4c1f..0f0a3792 100644 --- a/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java +++ b/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java @@ -29,6 +29,7 @@ public interface IoOrderDetailCodeService { * @return */ List filterList(FilterOrderDetailCodeRequest detailCodeRequest); + List filterDrugList(FilterOrderDetailCodeRequest detailCodeRequest); /** * 根据单据号删除单据扫码详情 diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoCodeService.java b/src/main/java/com/glxp/api/service/inout/impl/IoCodeService.java index 4aee862e..0d82fbbc 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoCodeService.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoCodeService.java @@ -121,6 +121,17 @@ public class IoCodeService extends ServiceImpl { } + public List filterDrugList(FilterCodeRequest filterCodeRequest) { + if (null == filterCodeRequest) { + return Collections.emptyList(); + } + if (null != filterCodeRequest.getPage() && null != filterCodeRequest.getLimit()) { + PageHelper.offsetPage((filterCodeRequest.getPage() - 1) * filterCodeRequest.getLimit(), filterCodeRequest.getLimit()); + } + return ioCodeDao.filterDrugList(filterCodeRequest); + } + + public BaseResponse deleteCodeByOrderId(String orderId) { if (StrUtil.isBlank(orderId)) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "单据号不能为空"); diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java index 6f3fc1c6..879b7cae 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java @@ -129,6 +129,18 @@ public class IoOrderDetailBizServiceImpl implements IoOrderDetailBizService { return ioOrderDetailBizDao.filterList(orderDetailBizRequest); } + + @Override + public List filterDrugList(FilterOrderDetailBizRequest orderDetailBizRequest) { + if (null == orderDetailBizRequest) { + return Collections.emptyList(); + } + if (null != orderDetailBizRequest.getPage() && null != orderDetailBizRequest.getLimit()) { + PageHelper.offsetPage((orderDetailBizRequest.getPage() - 1) * orderDetailBizRequest.getLimit(), orderDetailBizRequest.getLimit()); + } + return ioOrderDetailBizDao.filterDrugList(orderDetailBizRequest); + } + @Override public List getfilterList(FilterOrderDetailCodeRequest OrderDetailCodeRequest) { if (null == OrderDetailCodeRequest) { diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailCodeServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailCodeServiceImpl.java index 41278756..58e4303c 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailCodeServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailCodeServiceImpl.java @@ -85,6 +85,17 @@ public class IoOrderDetailCodeServiceImpl implements IoOrderDetailCodeService { return ioOrderDetailCodeDao.filterList(detailCodeRequest); } + @Override + public List filterDrugList(FilterOrderDetailCodeRequest detailCodeRequest) { + if (null == detailCodeRequest) { + return Collections.emptyList(); + } + if (null != detailCodeRequest.getPage() && null != detailCodeRequest.getLimit()) { + PageHelper.offsetPage((detailCodeRequest.getPage() - 1) * detailCodeRequest.getLimit(), detailCodeRequest.getLimit()); + } + return ioOrderDetailCodeDao.filterDrugList(detailCodeRequest); + } + @Override public int deleteByOrderId(String orderId) { return ioOrderDetailCodeDao.delete(new QueryWrapper().eq("orderIdFk", orderId)); diff --git a/src/main/java/com/glxp/api/service/purchase/PurOrderDetailService.java b/src/main/java/com/glxp/api/service/purchase/PurOrderDetailService.java index 0bf1c5bf..c869063c 100644 --- a/src/main/java/com/glxp/api/service/purchase/PurOrderDetailService.java +++ b/src/main/java/com/glxp/api/service/purchase/PurOrderDetailService.java @@ -12,6 +12,7 @@ import java.util.List; public interface PurOrderDetailService { List joinQueryList(PurOrderDetailRequest purOrderDetailRequest); + List joinQueryDrugList(PurOrderDetailRequest purOrderDetailRequest); List findByOrderId(String orderId); diff --git a/src/main/java/com/glxp/api/service/purchase/impl/PurOrderDetailServiceImpl.java b/src/main/java/com/glxp/api/service/purchase/impl/PurOrderDetailServiceImpl.java index b08f5407..04651b99 100644 --- a/src/main/java/com/glxp/api/service/purchase/impl/PurOrderDetailServiceImpl.java +++ b/src/main/java/com/glxp/api/service/purchase/impl/PurOrderDetailServiceImpl.java @@ -36,6 +36,19 @@ public class PurOrderDetailServiceImpl implements PurOrderDetailService { return data; } + @Override + public List joinQueryDrugList(PurOrderDetailRequest purOrderDetailRequest) { + if (purOrderDetailRequest == null) { + return Collections.emptyList(); + } + if (purOrderDetailRequest.getPage() != null) { + int offset = (purOrderDetailRequest.getPage() - 1) * purOrderDetailRequest.getLimit(); + PageHelper.offsetPage(offset, purOrderDetailRequest.getLimit()); + } + List data = purOrderDetailDao.joinQueryDrugList(purOrderDetailRequest); + return data; + } + @Override public List findByOrderId(String orderId) { PurOrderDetailRequest purOrderDetailRequest = new PurOrderDetailRequest(); diff --git a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index d3f8f8ed..9400e11a 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -66,7 +66,8 @@ basic_products.syqsfxyjxmj, basic_products.mjfs, basic_products.categoryName, - basic_products.cphhhbh + basic_products.cphhhbh, + basic_products.bzgg FROM basic_udirel inner JOIN basic_products ON basic_products.uuid = basic_udirel.uuid @@ -472,7 +473,9 @@ basic_products.catalogname3, basic_products.matrial, basic_products.requireScanCode, - basic_products.bzgg + basic_products.bzgg, + basic_products.prepnSpec, + basic_products.prepnUnit FROM basic_products inner JOIN basic_udirel @@ -485,6 +488,9 @@ AND mainId LIKE concat('%', #{mainIdLike}, '%') + + AND basic_products.productsType = #{productsType} + AND relCode = #{relCode} diff --git a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml index 8c8df8ab..f93b5a07 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml @@ -123,7 +123,11 @@ basic_products.catalogname1, basic_products.catalogname2, basic_products.catalogname3, - basic_products.matrial + basic_products.matrial, + basic_products.bzgg, + basic_products.packUnit, + basic_products.prepnSpec, + basic_products.prepnUnit FROM company_product_relevance inner JOIN basic_udirel ON company_product_relevance.udiRlIdFk = basic_udirel.id @@ -150,6 +154,9 @@ AND basic_udirel.purType = #{purType} + + AND basic_products.productsType = #{productType} + AND basic_products.requireScanCode = #{codeCheck} diff --git a/src/main/resources/mybatis/mapper/inout/IoCodeDao.xml b/src/main/resources/mybatis/mapper/inout/IoCodeDao.xml index d61a3dd0..706c4869 100644 --- a/src/main/resources/mybatis/mapper/inout/IoCodeDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoCodeDao.xml @@ -68,6 +68,76 @@ AND ic.code = #{code} + + AND bp.productsType = #{productType} + + + AND ic.orderId like concat('%', #{orderId}, '%') + + + AND ic.nameCode like concat('%', #{nameCode}, '%') + + + AND ic.supId like concat('%', #{supId}, '%') + + + AND ic.relId like concat('%', #{relId}, '%') + + + AND ic.deptCode = #{deptCode} + + + AND ic.invCode = #{invCode} + + + AND ic.warehouseCode = #{warehouseCode} + + + AND ic.packageLevel = #{packageLevel} + + + AND ic.batchNo = #{batchNo} + + + AND ic.corpOrderId = #{corpOrderId} + + + AND ic.action in + + #{item} + + + + group by ic.id + + + + select io_order_detail_biz.* + from io_order_detail_biz + left join basic_udirel bu on bu.id = io_order_detail_biz.bindRlFk + left join basic_products bp on bu.uuid = bp.uuid + + + AND orderIdFk = #{orderIdFk} + + + AND bp.productsType = #{productType} + + + AND bindRlFk = #{relId} + + + AND batchNo = #{batchNo} + + + AND bp.cpmctymc like concat('%', #{productName}, '%') + + + group by io_order_detail_biz.id + + + - SELECT ic.*, cpmctymc, ggxh + SELECT ic.*, cpmctymc, ggxh, + bp.bzgg, + bp.packUnit, + bp.prepnSpec, + bp.prepnUnit FROM io_order_invoice ic LEFT JOIN basic_udirel bu ON bu.id = ic.bindRlFk LEFT JOIN basic_products bp ON bu.uuid = bp.uuid diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDetailCodeDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDetailCodeDao.xml index 5512df08..fd2758ff 100644 --- a/src/main/resources/mybatis/mapper/inout/IoOrderDetailCodeDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoOrderDetailCodeDao.xml @@ -8,6 +8,49 @@ left join basic_udirel bu on bu.id = io_order_detail_code.bindRlFk left join basic_products bp on bp.uuid = bu.uuid + + AND orderIdFk = #{orderIdFk} + + + AND bp.productsType = #{productType} + + + AND bindRlFk = #{relIdFk} + + + AND nameCode = #{nameCode} + + + AND batchNo = #{batchNo} + + + AND uuidFk = #{uuidFk} + + + AND bp.cpmctymc like concat('%', #{productName}, '%') + + + group by io_order_detail_code.id + + + + + + +