|
@@ -73,13 +73,14 @@ public class CommonRule {
|
|
*
|
|
*
|
|
* @param input
|
|
* @param input
|
|
* @param ruleBaseDTO
|
|
* @param ruleBaseDTO
|
|
- * @param billMsgList
|
|
|
|
- * @param conType
|
|
|
|
* @param ruleSimpleDTO
|
|
* @param ruleSimpleDTO
|
|
|
|
+ * @param conType
|
|
* @param <T>
|
|
* @param <T>
|
|
|
|
+ * @return
|
|
*/
|
|
*/
|
|
- public <T> void compareNameWithBill(List<T> input, RuleBaseDTO ruleBaseDTO, List<BillMsg> billMsgList,
|
|
|
|
- String conType, RuleSimpleDTO ruleSimpleDTO) {
|
|
|
|
|
|
+ public <T> Boolean compareNameWithBill(List<T> input, RuleBaseDTO ruleBaseDTO, RuleSimpleDTO ruleSimpleDTO, String conType) {
|
|
|
|
+ boolean flag = false;
|
|
|
|
+ List<String> contentList = Lists.newArrayList();
|
|
if (ListUtil.isNotEmpty(input)) {
|
|
if (ListUtil.isNotEmpty(input)) {
|
|
for (T d : input) {
|
|
for (T d : input) {
|
|
Negative val = (Negative) CoreUtil.getFieldValue(d, "negative");
|
|
Negative val = (Negative) CoreUtil.getFieldValue(d, "negative");
|
|
@@ -87,14 +88,18 @@ public class CommonRule {
|
|
String standName = (String) CoreUtil.getFieldValue(d, "standName");
|
|
String standName = (String) CoreUtil.getFieldValue(d, "standName");
|
|
String name = (String) CoreUtil.getFieldValue(d, "name");
|
|
String name = (String) CoreUtil.getFieldValue(d, "name");
|
|
if (StringUtils.isNotBlank(standName) && CoreUtil.compareName(ruleBaseDTO, standName)) {
|
|
if (StringUtils.isNotBlank(standName) && CoreUtil.compareName(ruleBaseDTO, standName)) {
|
|
- ruleSimpleDTO.setContent(name);
|
|
|
|
- ruleSimpleDTO.setConType(conType);
|
|
|
|
- BillMsg billMsg = msgNewUtil.getCommonBillMsg(ruleSimpleDTO);
|
|
|
|
- CoreUtil.addBeanToList(billMsgList, billMsg);
|
|
|
|
|
|
+ if (!contentList.contains(name)) {
|
|
|
|
+ contentList.add(name);
|
|
|
|
+ }
|
|
|
|
+ flag = true;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ if (flag) {
|
|
|
|
+ CoreUtil.setListAndType(ruleSimpleDTO, contentList, conType);
|
|
|
|
+ }
|
|
|
|
+ return flag;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -172,25 +177,28 @@ public class CommonRule {
|
|
*
|
|
*
|
|
* @param input
|
|
* @param input
|
|
* @param ruleBaseDTO
|
|
* @param ruleBaseDTO
|
|
- * @param billMsgList
|
|
|
|
- * @param conType
|
|
|
|
* @param ruleSimpleDTO
|
|
* @param ruleSimpleDTO
|
|
* @param <T>
|
|
* @param <T>
|
|
*/
|
|
*/
|
|
- public <T> void compareItemWithBill(List<T> input, RuleBaseDTO ruleBaseDTO, List<BillMsg> billMsgList,
|
|
|
|
- String conType, RuleSimpleDTO ruleSimpleDTO) {
|
|
|
|
|
|
+ public <T> Boolean compareItemWithBill(List<T> input, RuleBaseDTO ruleBaseDTO, RuleSimpleDTO ruleSimpleDTO, String conType) {
|
|
|
|
+ boolean flag = false;
|
|
|
|
+ List<String> contentList = Lists.newArrayList();
|
|
if (ListUtil.isNotEmpty(input)) {
|
|
if (ListUtil.isNotEmpty(input)) {
|
|
for (T t : input) {
|
|
for (T t : input) {
|
|
- String uniqueName = (String) CoreUtil.getFieldValue(t, "uniqueName"); // 标准名称
|
|
|
|
- String inputName = (String) CoreUtil.getFieldValue(t, "name"); // 界面名称
|
|
|
|
|
|
+ String uniqueName = ReflectUtil.getProperty(t, "uniqueName"); // 标准名称
|
|
|
|
+ String inputName = ReflectUtil.getProperty(t, "name"); // 界面名称
|
|
if (CoreUtil.compareName(ruleBaseDTO, uniqueName)) {
|
|
if (CoreUtil.compareName(ruleBaseDTO, uniqueName)) {
|
|
- ruleSimpleDTO.setContent(inputName);
|
|
|
|
- ruleSimpleDTO.setConType(conType);
|
|
|
|
- BillMsg billMsg = msgNewUtil.getCommonBillMsg(ruleSimpleDTO);
|
|
|
|
- CoreUtil.addBeanToList(billMsgList, billMsg);
|
|
|
|
|
|
+ if (!contentList.contains(inputName)) {
|
|
|
|
+ contentList.add(inputName);
|
|
|
|
+ }
|
|
|
|
+ flag = true;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ if (flag) {
|
|
|
|
+ CoreUtil.setListAndType(ruleSimpleDTO, contentList, conType);
|
|
|
|
+ }
|
|
|
|
+ return flag;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -263,8 +271,7 @@ public class CommonRule {
|
|
if (flag == 1) {
|
|
if (flag == 1) {
|
|
ruleSimpleDTO.setContent(result);
|
|
ruleSimpleDTO.setContent(result);
|
|
ruleSimpleDTO.setConType(conType);
|
|
ruleSimpleDTO.setConType(conType);
|
|
- BillMsg billMsg = msgNewUtil.getCommonBillMsg(ruleSimpleDTO);
|
|
|
|
- CoreUtil.addBeanToList(billMsgList, billMsg);
|
|
|
|
|
|
+ msgNewUtil.getCommonBillMsg(ruleSimpleDTO, billMsgList);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -293,8 +300,7 @@ public class CommonRule {
|
|
if (flag == 1) { // 有效期范围内
|
|
if (flag == 1) { // 有效期范围内
|
|
ruleSimpleDTO.setContent(matchDTO.getContent());
|
|
ruleSimpleDTO.setContent(matchDTO.getContent());
|
|
ruleSimpleDTO.setConType(conType);
|
|
ruleSimpleDTO.setConType(conType);
|
|
- BillMsg billMsg = msgNewUtil.getCommonBillMsg(ruleSimpleDTO);
|
|
|
|
- CoreUtil.addBeanToList(billMsgList, billMsg);
|
|
|
|
|
|
+ msgNewUtil.getCommonBillMsg(ruleSimpleDTO, billMsgList);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -366,18 +372,21 @@ public class CommonRule {
|
|
*
|
|
*
|
|
* @param orderList 开单列表
|
|
* @param orderList 开单列表
|
|
* @param ruleBaseDTO
|
|
* @param ruleBaseDTO
|
|
- * @param billMsgList
|
|
|
|
* @param ruleSimpleDTO
|
|
* @param ruleSimpleDTO
|
|
|
|
+ * @param conType
|
|
* @param set 用于记录:A与B不宜同时进行, B与A不宜同时进行 只能提示一个
|
|
* @param set 用于记录:A与B不宜同时进行, B与A不宜同时进行 只能提示一个
|
|
|
|
+ * @param <T>
|
|
*/
|
|
*/
|
|
- public <T> void exclusionBillOrder(List<T> orderList, RuleBaseDTO ruleBaseDTO, List<BillMsg> billMsgList, String conType, RuleSimpleDTO ruleSimpleDTO, Set<String> set) {
|
|
|
|
|
|
+ public <T> Boolean exclusionBillOrder(List<T> orderList, RuleBaseDTO ruleBaseDTO, RuleSimpleDTO ruleSimpleDTO, String conType, Set<String> set) {
|
|
|
|
+ boolean flag = false;
|
|
|
|
+ List<String> contentList = Lists.newArrayList();
|
|
if (ListUtil.isNotEmpty(orderList) && orderList.size() > 1) {
|
|
if (ListUtil.isNotEmpty(orderList) && orderList.size() > 1) {
|
|
String baseLibName = ruleBaseDTO.getBaseLibName(); // 互斥名称
|
|
String baseLibName = ruleBaseDTO.getBaseLibName(); // 互斥名称
|
|
String libName = ruleSimpleDTO.getLibName(); // 标准名称
|
|
String libName = ruleSimpleDTO.getLibName(); // 标准名称
|
|
String inputName = ruleSimpleDTO.getInputName(); // 医院名称
|
|
String inputName = ruleSimpleDTO.getInputName(); // 医院名称
|
|
// 加入集合后,会出现自己与自己互斥的数据,这些数据不提示
|
|
// 加入集合后,会出现自己与自己互斥的数据,这些数据不提示
|
|
if (libName.equals(baseLibName)) {
|
|
if (libName.equals(baseLibName)) {
|
|
- return;
|
|
|
|
|
|
+ return flag;
|
|
}
|
|
}
|
|
// 不同的项目可能对应同一个uniqueName,提示显示多条
|
|
// 不同的项目可能对应同一个uniqueName,提示显示多条
|
|
Map<String, List<T>> map = EntityUtil.makeEntityListMap(orderList, "uniqueName");
|
|
Map<String, List<T>> map = EntityUtil.makeEntityListMap(orderList, "uniqueName");
|
|
@@ -389,14 +398,18 @@ public class CommonRule {
|
|
if (!set.contains(inputName + CommonEnum.splitSymbol.getName() + orginName)) {
|
|
if (!set.contains(inputName + CommonEnum.splitSymbol.getName() + orginName)) {
|
|
set.add(inputName + CommonEnum.splitSymbol.getName() + orginName);
|
|
set.add(inputName + CommonEnum.splitSymbol.getName() + orginName);
|
|
set.add(orginName + CommonEnum.splitSymbol.getName() + inputName);
|
|
set.add(orginName + CommonEnum.splitSymbol.getName() + inputName);
|
|
- ruleSimpleDTO.setContent(orginName);
|
|
|
|
- ruleSimpleDTO.setConType(conType);
|
|
|
|
- BillMsg billMsg = msgNewUtil.getCommonBillMsg(ruleSimpleDTO);
|
|
|
|
- CoreUtil.addBeanToList(billMsgList, billMsg);
|
|
|
|
|
|
+ if (!contentList.contains(orginName)) {
|
|
|
|
+ contentList.add(orginName);
|
|
|
|
+ }
|
|
|
|
+ flag = true;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ if (flag) {
|
|
|
|
+ CoreUtil.setListAndType(ruleSimpleDTO, contentList, conType);
|
|
|
|
+ }
|
|
|
|
+ return flag;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -404,17 +417,21 @@ public class CommonRule {
|
|
*
|
|
*
|
|
* @param orderList 开单列表
|
|
* @param orderList 开单列表
|
|
* @param ruleBaseDTO
|
|
* @param ruleBaseDTO
|
|
- * @param billMsgList
|
|
|
|
|
|
+ * @param conType
|
|
* @param ruleSimpleDTO
|
|
* @param ruleSimpleDTO
|
|
* @param set 用于记录:A与B不宜同时进行, B与A不宜同时进行 只能提示一个
|
|
* @param set 用于记录:A与B不宜同时进行, B与A不宜同时进行 只能提示一个
|
|
|
|
+ * @param <T>
|
|
|
|
+ * @return
|
|
*/
|
|
*/
|
|
- public <T> void exclusionBillStruct(List<T> orderList, RuleBaseDTO ruleBaseDTO, List<BillMsg> billMsgList, String conType, RuleSimpleDTO ruleSimpleDTO, Set<String> set) {
|
|
|
|
|
|
+ public <T> Boolean exclusionBillStruct(List<T> orderList, RuleBaseDTO ruleBaseDTO, RuleSimpleDTO ruleSimpleDTO, String conType, Set<String> set) {
|
|
|
|
+ boolean flag = false;
|
|
|
|
+ List<String> contentList = Lists.newArrayList();
|
|
if (ListUtil.isNotEmpty(orderList)) {
|
|
if (ListUtil.isNotEmpty(orderList)) {
|
|
String baseLibName = ruleBaseDTO.getBaseLibName(); // 互斥名称
|
|
String baseLibName = ruleBaseDTO.getBaseLibName(); // 互斥名称
|
|
String libName = ruleSimpleDTO.getLibName(); // 标准名称
|
|
String libName = ruleSimpleDTO.getLibName(); // 标准名称
|
|
// 加入集合后,会出现自己与自己互斥的数据,这些数据不提示
|
|
// 加入集合后,会出现自己与自己互斥的数据,这些数据不提示
|
|
if (libName.equals(baseLibName)) {
|
|
if (libName.equals(baseLibName)) {
|
|
- return;
|
|
|
|
|
|
+ return flag;
|
|
}
|
|
}
|
|
// 不同的项目可能对应同一个uniqueName,提示显示多条
|
|
// 不同的项目可能对应同一个uniqueName,提示显示多条
|
|
Map<String, List<T>> map = EntityUtil.makeEntityListMap(orderList, "uniqueName");
|
|
Map<String, List<T>> map = EntityUtil.makeEntityListMap(orderList, "uniqueName");
|
|
@@ -440,16 +457,20 @@ public class CommonRule {
|
|
if (!set.contains(libName + CommonEnum.splitSymbol.getName() + orginName)) {
|
|
if (!set.contains(libName + CommonEnum.splitSymbol.getName() + orginName)) {
|
|
set.add(libName + CommonEnum.splitSymbol.getName() + orginName);
|
|
set.add(libName + CommonEnum.splitSymbol.getName() + orginName);
|
|
set.add(orginName + CommonEnum.splitSymbol.getName() + libName);
|
|
set.add(orginName + CommonEnum.splitSymbol.getName() + libName);
|
|
- ruleSimpleDTO.setContent(orginName);
|
|
|
|
- ruleSimpleDTO.setConType(conType);
|
|
|
|
- BillMsg billMsg = msgNewUtil.getCommonBillMsg(ruleSimpleDTO);
|
|
|
|
- CoreUtil.addBeanToList(billMsgList, billMsg);
|
|
|
|
|
|
+ if (!contentList.contains(orginName)) {
|
|
|
|
+ contentList.add(orginName);
|
|
|
|
+ }
|
|
|
|
+ flag = true;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ if (flag) {
|
|
|
|
+ CoreUtil.setListAndType(ruleSimpleDTO, contentList, conType);
|
|
|
|
+ }
|
|
|
|
+ return flag;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -505,8 +526,7 @@ public class CommonRule {
|
|
String name = (String) CoreUtil.getFieldValue(it, "name");
|
|
String name = (String) CoreUtil.getFieldValue(it, "name");
|
|
String uniqueName = (String) CoreUtil.getFieldValue(it, "uniqueName");
|
|
String uniqueName = (String) CoreUtil.getFieldValue(it, "uniqueName");
|
|
RuleSimpleDTO ruleSimpleDTO = new RuleSimpleDTO(name, uniqueName, type, name, conType);
|
|
RuleSimpleDTO ruleSimpleDTO = new RuleSimpleDTO(name, uniqueName, type, name, conType);
|
|
- BillMsg billMsg = msgNewUtil.getCommonBillMsg(ruleSimpleDTO);
|
|
|
|
- CoreUtil.addBeanToList(billMsgList, billMsg);
|
|
|
|
|
|
+ msgNewUtil.getCommonBillMsg(ruleSimpleDTO, billMsgList);
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -557,8 +577,7 @@ public class CommonRule {
|
|
getFrquenceType(ReflectUtil.getProperty(it, "frequency"))
|
|
getFrquenceType(ReflectUtil.getProperty(it, "frequency"))
|
|
.equals(getFrquenceType(ReflectUtil.getProperty(it, "frequency")))) {
|
|
.equals(getFrquenceType(ReflectUtil.getProperty(it, "frequency")))) {
|
|
RuleSimpleDTO ruleSimpleDTO = new RuleSimpleDTO(orderName, orderUniqueName, type, orderName, conType);
|
|
RuleSimpleDTO ruleSimpleDTO = new RuleSimpleDTO(orderName, orderUniqueName, type, orderName, conType);
|
|
- BillMsg billMsg = msgNewUtil.getCommonBillMsg(ruleSimpleDTO);
|
|
|
|
- CoreUtil.addBeanToList(billMsgList, billMsg);
|
|
|
|
|
|
+ msgNewUtil.getCommonBillMsg(ruleSimpleDTO, billMsgList);
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|