|
|
|
@ -9,6 +9,7 @@ import com.glxp.api.service.thrsys.BasicInsDrugService;
|
|
|
|
|
import com.glxp.api.service.thrsys.BasicInsMaterialService;
|
|
|
|
|
import com.glxp.api.util.IntUtil;
|
|
|
|
|
import org.apache.xmlbeans.impl.xb.xsdschema.Public;
|
|
|
|
|
import org.aspectj.weaver.ast.Var;
|
|
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
|
import cn.hutool.core.util.IdUtil;
|
|
|
|
@ -32,6 +33,7 @@ import com.glxp.api.util.udi.UdiInfoUtil;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
import java.util.Collections;
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
@ -271,6 +273,7 @@ public class UdiContrastService {
|
|
|
|
|
ThrInsDrugFeeRequest thrInsDrugFeeRequest = new ThrInsDrugFeeRequest();
|
|
|
|
|
thrInsDrugFeeRequest.setMedCatalogCode(thrProductsEntity.getYbbm());
|
|
|
|
|
List<BasicInsDrugEntity> basicInsDrugEntities = basicInsDrugService.filterList(thrInsDrugFeeRequest);
|
|
|
|
|
Collections.sort(basicInsDrugEntities, (o1, o2) -> o1.getTradeName().compareTo(o2.getTradeName()));
|
|
|
|
|
List<BasicInsDrugEntity> filteredEntities = basicInsDrugEntities.stream()
|
|
|
|
|
.filter(entity -> entity.getGenericName() != null) // 过滤掉 genericName 为 null 的元素
|
|
|
|
|
.collect(Collectors.toList());
|
|
|
|
@ -282,6 +285,7 @@ public class UdiContrastService {
|
|
|
|
|
throw new JsonException(500,"系统繁忙");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
int packLevel = 1; // 初始化计数器
|
|
|
|
|
//循环插入
|
|
|
|
|
for (BasicInsDrugEntity basicInsDrug : basicInsDrugEntities){
|
|
|
|
|
UdiProductEntity udiProductEntity = new UdiProductEntity();
|
|
|
|
@ -299,6 +303,8 @@ public class UdiContrastService {
|
|
|
|
|
udiProductEntity.setPackUnit(basicInsDrug.getMinPackagingUnit() != null ? basicInsDrug.getMinPackagingUnit() : basicInsDrugEntity.getMinPackagingUnit());
|
|
|
|
|
//设置最小产品数量
|
|
|
|
|
udiProductEntity.setBhxjsl(basicInsDrug.getMinPackagingQuantity() != null ? basicInsDrug.getMinPackagingQuantity() : basicInsDrugEntity.getMinPackagingQuantity());
|
|
|
|
|
//设置包装级别
|
|
|
|
|
udiProductEntity.setPackLevel(packLevel + "");
|
|
|
|
|
//生产厂家
|
|
|
|
|
udiProductEntity.setManufactory(basicInsDrug.getManufacturerName() != null ? basicInsDrug.getManufacturerName() : basicInsDrugEntity.getManufacturerName());
|
|
|
|
|
//商品条码 essentialDrugMarkName sptm
|
|
|
|
@ -319,11 +325,12 @@ public class UdiContrastService {
|
|
|
|
|
}
|
|
|
|
|
udiProductEntity = UdiInfoUtil.initUdiInfoEntity(udiProductEntity);
|
|
|
|
|
udiProductService.insertUdiInfo(udiProductEntity);
|
|
|
|
|
packLevel++;
|
|
|
|
|
}
|
|
|
|
|
setLevel(udiRelevanceEntity.getUuid());
|
|
|
|
|
UdiProductEntity byUuid = udiProductService.findByUuid(udiRelevanceEntity.getUuid());
|
|
|
|
|
udiRelevanceEntity = udiRelevanceService.insertDefaultLevel(udiRelevanceEntity, byUuid);
|
|
|
|
|
udiRelevanceService.insertUdiRelevance(udiRelevanceEntity);
|
|
|
|
|
return ;
|
|
|
|
|
}else {
|
|
|
|
|
//器械
|
|
|
|
|
ThrInsMaterialFeeRequest request = new ThrInsMaterialFeeRequest();
|
|
|
|
@ -511,4 +518,29 @@ public class UdiContrastService {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void setLevel(String uuid){
|
|
|
|
|
List<UdiProductEntity> list = udiProductService.getList(uuid);
|
|
|
|
|
if (list.size() > 1){
|
|
|
|
|
// 根据条件设置上级和下级标识
|
|
|
|
|
for (int i = 0; i < list.size(); i++) {
|
|
|
|
|
// 设置上级标识
|
|
|
|
|
if (i > 0) {
|
|
|
|
|
list.get(i).setSjcpbm(String.valueOf(list.get(i - 1).getNameCode()));
|
|
|
|
|
} else {
|
|
|
|
|
// 第一个对象没有上级标识,可以设置为null或者特定的值
|
|
|
|
|
list.get(i).setSjcpbm(null);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 设置下级标识
|
|
|
|
|
if (i < list.size() - 1) {
|
|
|
|
|
list.get(i).setBhxjcpbm(String.valueOf(list.get(i + 1).getNameCode()));
|
|
|
|
|
} else {
|
|
|
|
|
// 最后一个对象没有下级标识,设置为null
|
|
|
|
|
list.get(i).setBhxjcpbm(null);
|
|
|
|
|
}
|
|
|
|
|
udiProductService.updateUdiInfo(list.get(i));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|