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 418c228c1..901ff6284 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java @@ -319,7 +319,7 @@ public class UdiContrastController { @AuthRuleAnnotation("") @PostMapping("/udi/udirel/addDrug") public BaseResponse addDrug(@RequestBody AddProductRequest addProductRequest) { - udiProductService.addProduct(addProductRequest); + udiProductService.addDrug(addProductRequest); return ResultVOUtils.success(); } diff --git a/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java b/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java index 7afa44d29..69a863c18 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java @@ -160,6 +160,7 @@ public class UdiRlSupController extends BaseController { if (StrUtil.isNotEmpty(companyProductRelevanceRequest.getUnionCode())) { FilterUdiRelRequest filterUdiInfoRequest = new FilterUdiRelRequest(); filterUdiInfoRequest.setNameCode(companyProductRelevanceRequest.getUnionCode()); + filterUdiInfoRequest.setProductsType(companyProductRelevanceRequest.getProductsType()); List temps = udiRelevanceService.filterUdiGp(filterUdiInfoRequest); if (temps != null && temps.size() > 0) { companyProductRelevanceRequest.setOriginUuid(temps.get(0).getOriginUuid()); 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 dbba17e8e..91b44c6a5 100644 --- a/src/main/java/com/glxp/api/req/basic/AddProductRequest.java +++ b/src/main/java/com/glxp/api/req/basic/AddProductRequest.java @@ -3,6 +3,7 @@ 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 com.glxp.api.vo.basic.DrugLevelList; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.NoArgsConstructor; @@ -12,6 +13,7 @@ import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.util.Date; +import java.util.List; @NoArgsConstructor @Data @@ -256,4 +258,6 @@ public class AddProductRequest { private String packRatio; private String uuid; private String nameCode; + private String cpmctymc; + private List drugLevelLists; } 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 d1684b3f1..d430608f0 100644 --- a/src/main/java/com/glxp/api/req/basic/CompanyProductRelevanceRequest.java +++ b/src/main/java/com/glxp/api/req/basic/CompanyProductRelevanceRequest.java @@ -87,4 +87,6 @@ public class CompanyProductRelevanceRequest extends ListPageRequest { */ @TableField(value = "codeCheck") private Integer codeCheck; + + private Integer productsType = 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 d61925479..f5ca701b6 100644 --- a/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java +++ b/src/main/java/com/glxp/api/req/basic/FilterUdiRelRequest.java @@ -115,9 +115,8 @@ public class FilterUdiRelRequest extends ListPageRequest { private String deviceRecordKey; //药品参数 - private String productsType; private String cpms; - + private Integer productsType = 1;//默认是耗材 } 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 923cd963d..925accd09 100644 --- a/src/main/java/com/glxp/api/service/basic/UdiProductService.java +++ b/src/main/java/com/glxp/api/service/basic/UdiProductService.java @@ -73,4 +73,5 @@ public interface UdiProductService { UdiProductEntity selectMinUdiByUuid(String uuid, Integer diType); void addProduct(AddProductRequest addProductRequest); + void addDrug(AddProductRequest addProductRequest); } 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 a670aff58..12c399f4d 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 @@ -263,6 +263,43 @@ public class UdiProductServiceImpl implements UdiProductService { udiRelevanceDao.insertUdiRelevance(udiRelevanceEntity); } + @Override + public void addDrug(AddProductRequest addProductRequest) { + UdiProductEntity udiProductEntity = new UdiProductEntity(); + BeanUtils.copyProperties(addProductRequest, udiProductEntity); + long relId = gennerOrderUtils.getRelId(); + udiProductEntity.setId(relId); + String code = addProductRequest.getCode(); + if (StrUtil.isEmpty(code)){ + udiProductEntity.setNameCode(relId + ""); + }else { + udiProductEntity.setNameCode(code); + } + udiProductEntity.setUuid(IdUtil.getSnowflakeNextId() + ""); + + udiProductEntity.setCpmctymc(addProductRequest.getCpmctymc()); + udiProductEntity.setGgxh(addProductRequest.getSpec()); + udiProductEntity.setPrice(addProductRequest.getPrice().toString()); + udiProductEntity.setZczbhhzbapzbh(addProductRequest.getRegisterNo()); + udiProductEntity.setDiType(ConstantStatus.DI_TYPE_MAIN); + + UdiRelevanceEntity udiRelevanceEntity = new UdiRelevanceEntity(); + udiRelevanceEntity.setId(IdUtil.getSnowflakeNextId()); + udiRelevanceEntity.setIsDisable(false); + udiRelevanceEntity.setIsUseDy(false); + udiRelevanceEntity.setUuid(udiProductEntity.getUuid()); + udiRelevanceEntity.setNeedCert(false); + udiRelevanceEntity.setPurType(1); + udiRelevanceEntity.setAttributeType(addProductRequest.getAttributeType()); + udiRelevanceEntity.setHcType(addProductRequest.getHcType()); + // TODO: 2024/2/27 初始化其他字段 + setUpdateInfo(udiProductEntity,udiRelevanceEntity); + //处理是否需要扫码字段 + classifyCodeService.updateRequireScanCode(udiProductEntity); + udiProductDao.insertUdiInfo(udiProductEntity); + udiRelevanceDao.insertUdiRelevance(udiRelevanceEntity); + } + private void setUpdateInfo(UdiProductEntity udiProductEntity, UdiRelevanceEntity udiRelevanceEntity) { Date now = new Date(); String userId = String.valueOf(customerService.getUserBean().getId()); diff --git a/src/main/java/com/glxp/api/vo/basic/DrugLevelList.java b/src/main/java/com/glxp/api/vo/basic/DrugLevelList.java new file mode 100644 index 000000000..b7f059964 --- /dev/null +++ b/src/main/java/com/glxp/api/vo/basic/DrugLevelList.java @@ -0,0 +1,17 @@ +package com.glxp.api.vo.basic; + +import lombok.Data; + +/** + * @author : zhangsan + * @date : 2024/7/30 11:25 + * @modyified By : + */ + +@Data +public class DrugLevelList { + + private String nameCode; + private String packLevel; + private String bhxjsl; +} diff --git a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index 60aecbcd6..8f1bdc811 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -356,6 +356,9 @@ AND basic_product_category.name = #{category} + + AND basic_products.productsType = #{productsType} + AND basic_products.manufactory LIKE concat('%', #{manufactory}, '%') diff --git a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml index 00e31e15a..305f53234 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml @@ -137,6 +137,9 @@ AND basic_udirel.purType = #{purType} + + AND basic_products.productsType = #{productsType} + AND basic_products.requireScanCode = #{codeCheck} diff --git a/src/main/resources/mybatis/mapper/purchase/PurPlanDetailDao.xml b/src/main/resources/mybatis/mapper/purchase/PurPlanDetailDao.xml index 1ed8e08f0..eaeeb399c 100644 --- a/src/main/resources/mybatis/mapper/purchase/PurPlanDetailDao.xml +++ b/src/main/resources/mybatis/mapper/purchase/PurPlanDetailDao.xml @@ -51,6 +51,39 @@ +