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 e9f1166d..e35dc4ae 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java @@ -372,6 +372,14 @@ public class UdiContrastController { return ResultVOUtils.success(udiRelevanceEntity); } + @AuthRuleAnnotation("") + @PostMapping("/udi/udirel/updatetDrug") + public BaseResponse updatetDrug(@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); diff --git a/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java b/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java index dfaa0cbd..3d98821a 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java @@ -756,6 +756,40 @@ public class UdiRelevanceController extends BaseController { } + + @AuthRuleAnnotation("") + @PostMapping("/udi/udirel/updateDrugProductById") + @Log(title = "入院药品维护", businessType = BusinessType.UPDATE) + public BaseResponse updateDrugProductById(@RequestBody UdiProductEntity udiProductEntity, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + boolean falg = udiProductService.updateUdiInfoById(udiProductEntity); + UdiRelevanceEntity udiRelevanceEntity = new UdiRelevanceEntity(); + udiRelevanceEntity.setId(udiProductEntity.getUid()); + udiRelevanceEntity.setUseLeverCount(udiProductEntity.getUseLeverCount()); + udiRelevanceEntity.setUseLevelDi(udiProductEntity.getUseLevelDi()); + udiRelevanceEntity.setUseLevelUnit(udiProductEntity.getUseLevelUnit()); + udiRelevanceEntity.setDistributeLevelDi(udiProductEntity.getDistributeLevelDi()); + udiRelevanceEntity.setDistributeLevelUnit(udiProductEntity.getDistributeLevelUnit()); + udiRelevanceEntity.setDistributeLevelCount(udiProductEntity.getDistributeLevelCount()); + udiRelevanceEntity.setUpdateTime(new Date()); + boolean b = udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); + if (udiProductEntity.getRelSupId() != null) { + UdiRlSupEntity udiRlSupEntity = new UdiRlSupEntity(); + udiRlSupEntity.setUpdateTime(new Date()); + udiRlSupEntity.setPrice(new BigDecimal(udiProductEntity.getPrice())); + udiRlSupEntity.setId(udiProductEntity.getRelSupId()); + udiRlSupService.updateCompanyProductRelevance(udiRlSupEntity); + } + if (falg) { + return ResultVOUtils.success("更新成功"); + } else { + return ResultVOUtils.error(999, "更新失败"); + } + + } //业务单据选入耗材字典查询列表 diff --git a/src/main/java/com/glxp/api/controller/basic/UdiSyncController.java b/src/main/java/com/glxp/api/controller/basic/UdiSyncController.java index 97b36aaa..71af330c 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiSyncController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiSyncController.java @@ -62,6 +62,7 @@ public class UdiSyncController { nameCode = filterUdiRelRequest.getNameCode(); ProductInfoFilterRequest productInfoFilterRequest = new ProductInfoFilterRequest(); + productInfoFilterRequest.setAddType(filterUdiRelRequest.getProductsType()); BeanUtil.copyProperties(filterUdiRelRequest, productInfoFilterRequest); if (StrUtil.isNotEmpty(nameCode)) { productInfoFilterRequest.setNameCode(nameCode); 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 72d64fd5..c510ad48 100644 --- a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java @@ -135,18 +135,8 @@ public class UdiProductEntity { @TableField(value = "catalogCode3") @ApiModelProperty(value = "三级分类名称(部位、功能、品种)") private Integer catalogCode3; -// - - -// + @TableField(exist = false) private Boolean isStack; - - - - - - - private Long id; @TableField(value = "uuid") private String uuid; @@ -405,7 +395,7 @@ public class UdiProductEntity { * 使用属性 */ @TableField(value = "indate") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date indate; @@ -421,6 +411,12 @@ public class UdiProductEntity { @TableField(value = "prepnSpec") private String prepnSpec; + /** + * 包装材质 + */ + @TableField(value = "packMatrial") + private String packMatrial; + /** * 药品分类 */ @@ -436,4 +432,18 @@ public class UdiProductEntity { @TableField(value = "majorStatus") private Integer majorStatus; + + @TableField(exist = false) + private String distributeLevelDi; + @TableField(exist = false) + private String distributeLevelUnit; + @TableField(exist = false) + private Integer distributeLevelCount; + @TableField(exist = false) + private String useLevelDi; + @TableField(exist = false) + private String useLevelUnit; + @TableField(exist = false) + private Integer useLeverCount; + } 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 5d6b78a4..4f65ca4b 100644 --- a/src/main/java/com/glxp/api/entity/basic/UdiRelevanceEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/UdiRelevanceEntity.java @@ -178,9 +178,11 @@ public class UdiRelevanceEntity { private Integer useExpireTime; @TableField(value = "dispatch") private Boolean dispatch; - @TableField(value = "groupBuy") //是否可配送 - private Boolean groupBuy; + //是否集采产品 + @TableField(value = "groupBuy") + private Boolean groupBuy; + //是否可配送 @TableField(value = "isDateBy") private Integer isDateBy; @TableField(value = "needCert") diff --git a/src/main/java/com/glxp/api/req/basic/AddProductRequest.java b/src/main/java/com/glxp/api/req/basic/AddProductRequest.java index e67fdd96..d1d26499 100644 --- a/src/main/java/com/glxp/api/req/basic/AddProductRequest.java +++ b/src/main/java/com/glxp/api/req/basic/AddProductRequest.java @@ -262,4 +262,16 @@ public class AddProductRequest { private Long id; + + private String distributeLevelDi; + private String distributeLevelUnit; + private Integer distributeLevelCount; + private String useLevelDi; + private String useLevelUnit; + private Integer useLeverCount; + + /** + * 收费编码 + */ + private String payFeeCode; } 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 0479f78e..a406948f 100644 --- a/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java +++ b/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java @@ -92,6 +92,7 @@ public class FilterUdiRelRequest extends ListPageRequest { private String mjfs; private String categoryName; private String deviceRecordKey; + private String packMatrial; - private Integer productsType; + private Integer productsType = 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 2ed6a81a..21a3313d 100644 --- a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java +++ b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java @@ -180,12 +180,51 @@ public class UdiRelevanceResponse { /** - * 药品新增数据 + * 制剂规格 */ - private String bzgg; private String prepnSpec; + + /** + * 制剂单位 + */ private String prepnUnit; + /** + * 制剂单位 + */ + private Integer majorStatus; + private Integer physicType; + + + /** + * 包装规格 + */ + private String bzgg; + private String packMatrial; + + + private String levelUnit; + private String storageCondition; + private String transportCondition; + private Date indate; + private Integer majorType; + private Integer medicareType; + private String productPrice; + + private String distributeLevelDi; + private String distributeLevelUnit; + private Integer distributeLevelCount; + private String useLevelDi; + private String useLevelUnit; + private Integer useLeverCount; + + private String payFeeCode; + /** + * 药品新增数据 + */ + + + 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 ce6a27ee..a7431481 100644 --- a/src/main/java/com/glxp/api/res/basic/UdiRlSupResponse.java +++ b/src/main/java/com/glxp/api/res/basic/UdiRlSupResponse.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.Date; + @Data public class UdiRlSupResponse { @@ -148,4 +150,24 @@ public class UdiRlSupResponse { private String bzgg; private String prepnSpec; private String prepnUnit; + private String packMatrial; + private String storageCondition; + private String transportCondition; + private Integer majorType; + private Integer majorStatus; + private Integer physicType; + private Integer medicareType; + private Date indate; + + + //药品参数 + private String distributeLevelDi; + private String distributeLevelUnit; + private Integer distributeLevelCount; + private String useLevelDi; + private String useLevelUnit; + private Integer useLeverCount; + + + } 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 27e33854..2710d430 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 @@ -226,6 +226,7 @@ public class UdiProductServiceImpl implements UdiProductService { @Override + /** * 新增/编辑药品信息 * @@ -241,6 +242,7 @@ public class UdiProductServiceImpl implements UdiProductService { List udiProductEntities = udiProductDao.findByUuids(udiRelevanceEntity.getUuid()); for (UdiProductEntity udiProductEntity : udiProductEntities) { addProductRequest.setNameCode(udiProductEntity.getNameCode()); + addProductRequest.setId(udiProductEntity.getId()); BeanUtils.copyProperties(addProductRequest, udiProductEntity); udiProductEntity.setCpmctymc(addProductRequest.getCpmctymc()); udiProductEntity.setProductsType(2); @@ -250,7 +252,18 @@ public class UdiProductServiceImpl implements UdiProductService { if (IntUtil.value(udiProductEntity.getPackLevel()) == 1) { udiProductEntity.setDiType(1); } - udiProductDao.updateById(udiProductEntity); + udiProductDao.updateUdiInfo(udiProductEntity); + + //修改关联表 + udiRelevanceEntity.setUseLeverCount(addProductRequest.getUseLeverCount()); + udiRelevanceEntity.setUseLevelDi(addProductRequest.getUseLevelDi()); + udiRelevanceEntity.setUseLevelUnit(addProductRequest.getUseLevelUnit()); + udiRelevanceEntity.setDistributeLevelDi(addProductRequest.getDistributeLevelDi()); + udiRelevanceEntity.setDistributeLevelUnit(addProductRequest.getDistributeLevelUnit()); + udiRelevanceEntity.setDistributeLevelCount(addProductRequest.getDistributeLevelCount()); + udiRelevanceEntity.setPayFeeCode(addProductRequest.getPayFeeCode()); + udiRelevanceDao.updateById(udiRelevanceEntity); + } } else { udiRelevanceEntity = new UdiRelevanceEntity(); @@ -263,6 +276,7 @@ public class UdiProductServiceImpl implements UdiProductService { udiRelevanceEntity.setProductsType(2); udiRelevanceEntity.setAttributeType(addProductRequest.getAttributeType()); udiRelevanceEntity.setHcType(addProductRequest.getHcType()); + udiRelevanceEntity.setPayFeeCode(addProductRequest.getPayFeeCode()); if (CollUtil.isNotEmpty(addProductRequest.getDrugLevelLists())) { for (UpdateLevelDrugRequest updateLevelDrugRequest : addProductRequest.getDrugLevelLists()) { @@ -272,8 +286,6 @@ public class UdiProductServiceImpl implements UdiProductService { } 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); diff --git a/src/main/resources/mybatis/mapper/basic/ProductInfoDao.xml b/src/main/resources/mybatis/mapper/basic/ProductInfoDao.xml index 6e503aa9..7ea31e93 100644 --- a/src/main/resources/mybatis/mapper/basic/ProductInfoDao.xml +++ b/src/main/resources/mybatis/mapper/basic/ProductInfoDao.xml @@ -313,6 +313,9 @@ AND isNewest = #{isNewest} + + AND addType = #{addType} + AND diType = #{diType} diff --git a/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml b/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml index be6b152f..67773444 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml @@ -964,6 +964,54 @@ catalogCode3=#{catalogCode3}, + + requireScanCode=#{requireScanCode}, + + + bzgg=#{bzgg}, + + + productsType=#{productsType}, + + + levelUnit=#{levelUnit}, + + + prepnUnit=#{prepnUnit}, + + + prepnSpec=#{prepnSpec}, + + + specialCode=#{specialCode}, + + + storageCondition=#{storageCondition}, + + + transportCondition=#{transportCondition}, + + + useAttribute=#{useAttribute}, + + + majorType=#{majorType}, + + + majorStatus=#{majorStatus}, + + + physicType=#{physicType}, + + + medicareType=#{medicareType}, + + + indate=#{indate}, + + + packMatrial=#{packMatrial}, + where id = #{id} diff --git a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index 9400e11a..82c4f7c1 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -475,8 +475,16 @@ basic_products.requireScanCode, basic_products.bzgg, basic_products.prepnSpec, - basic_products.prepnUnit - + basic_products.prepnUnit, + basic_products.levelUnit, + basic_products.majorStatus, + basic_products.physicType, + basic_products.packMatrial, + basic_products.storageCondition, + basic_products.transportCondition, + basic_products.indate, + basic_products.majorType, + basic_products.medicareType FROM basic_products inner JOIN basic_udirel ON basic_products.uuid = basic_udirel.uuid @@ -1177,7 +1185,24 @@ isStack=#{isStack}, - + + distributeLevelDi=#{distributeLevelDi}, + + + distributeLevelUnit=#{distributeLevelUnit}, + + + distributeLevelCount=#{distributeLevelCount}, + + + useLevelDi=#{useLevelDi}, + + + useLevelUnit=#{useLevelUnit}, + + + useLeverCount=#{useLeverCount}, + WHERE id = #{id} diff --git a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml index f93b5a07..59b515ff 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml @@ -52,7 +52,14 @@ basic_udirel.lowStockNum, basic_udirel.overStockNum, basic_udirel.recentDateTime, - basic_udirel.isDateBy,basic_udirel.isStack, + basic_udirel.isDateBy, + basic_udirel.isStack, + basic_udirel.distributeLevelDi, + basic_udirel.distributeLevelUnit, + basic_udirel.distributeLevelCount, + basic_udirel.useLevelDi, + basic_udirel.useLevelUnit, + basic_udirel.useLeverCount, bht.name classifyName, basic_products.id as PRId, basic_products.originUuid, @@ -127,7 +134,15 @@ basic_products.bzgg, basic_products.packUnit, basic_products.prepnSpec, - basic_products.prepnUnit + basic_products.prepnUnit, + basic_products.packMatrial, + basic_products.storageCondition, + basic_products.transportCondition, + basic_products.majorType, + basic_products.majorStatus, + basic_products.physicType, + basic_products.medicareType, + basic_products.indate FROM company_product_relevance inner JOIN basic_udirel ON company_product_relevance.udiRlIdFk = basic_udirel.id