|  | @ -15,6 +15,7 @@ import com.yihu.ehr.framework.util.operator.StringUtil;
 | 
	
		
			
				|  |  | import com.yihu.ehr.framework.util.sql.BeanTransformer;
 | 
	
		
			
				|  |  | import com.yihu.ehr.framework.util.sql.SqlCreator;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.model.adapter.AdapterDatasetModel;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.model.adapter.AdapterDictModel;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.model.adapter.AdapterMetadataModel;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.model.standard.StdDataSetModel;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.model.standard.StdMetaDataModel;
 | 
	
	
		
			
				|  | @ -26,6 +27,7 @@ import org.springframework.stereotype.Service;
 | 
	
		
			
				|  |  | import org.springframework.transaction.annotation.Transactional;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import java.util.*;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | @Transactional
 | 
	
		
			
				|  |  | @Service("AdapterDatasetService")
 | 
	
		
			
				|  |  | public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
	
		
			
				|  | @ -78,7 +80,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |     public Result modify(String adapterVersion, String dataset) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             AdapterVersion version = new AdapterVersion(adapterVersion);
 | 
	
		
			
				|  |  |             ObjectMapper objectMapper =  new ObjectMapper();
 | 
	
		
			
				|  |  |             ObjectMapper objectMapper = new ObjectMapper();
 | 
	
		
			
				|  |  |             AdapterDatasetModel adapterDatasetModel = objectMapper.readValue(dataset, AdapterDatasetModel.class);
 | 
	
		
			
				|  |  |             JsonNode jsonNode = objectMapper.readTree(objectMapper.writeValueAsString(adapterDatasetModel));
 | 
	
		
			
				|  |  |             SqlCreator sqlCreator = new SqlCreator(AdapterDatasetModel.class);
 | 
	
	
		
			
				|  | @ -123,7 +125,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |         AdapterVersion adapterVersion = new AdapterVersion(version);
 | 
	
		
			
				|  |  |         String tableName = adapterVersion.getDataSetTableName();
 | 
	
		
			
				|  |  |         SqlCreator sqlCreator = new SqlCreator(tClass);
 | 
	
		
			
				|  |  |         ObjectMapper objectMapper =  new ObjectMapper();
 | 
	
		
			
				|  |  |         ObjectMapper objectMapper = new ObjectMapper();
 | 
	
		
			
				|  |  |         if (!StringUtil.isEmpty(condition)) {
 | 
	
		
			
				|  |  |             JsonNode jsonNode = objectMapper.readTree(condition);
 | 
	
		
			
				|  |  |             String name = jsonNode.get("name").asText();
 | 
	
	
		
			
				|  | @ -149,11 +151,11 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |         return query.list();
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public Integer getDatasetInt(Class tClass,  AdapterVersion adapterVersion, String condition) {
 | 
	
		
			
				|  |  |     public Integer getDatasetInt(Class tClass, AdapterVersion adapterVersion, String condition) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             String tableName = adapterVersion.getDataSetTableName();
 | 
	
		
			
				|  |  |             SqlCreator sqlCreator = new SqlCreator(tClass);
 | 
	
		
			
				|  |  |             ObjectMapper objectMapper =  new ObjectMapper();
 | 
	
		
			
				|  |  |             ObjectMapper objectMapper = new ObjectMapper();
 | 
	
		
			
				|  |  |             if (!StringUtil.isEmpty(condition)) {
 | 
	
		
			
				|  |  |                 JsonNode jsonNode = objectMapper.readTree(condition);
 | 
	
		
			
				|  |  |                 String name = jsonNode.get("name").asText();
 | 
	
	
		
			
				|  | @ -218,11 +220,11 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |         boolean check;     //是否勾选
 | 
	
		
			
				|  |  |         boolean std = false;      //标准是否添加根节点
 | 
	
		
			
				|  |  |         long childCheckCount;
 | 
	
		
			
				|  |  |         long datasetCount=0;
 | 
	
		
			
				|  |  |         long datasetCount = 0;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         //获取所有标准数据集
 | 
	
		
			
				|  |  |         StandardVersion sVersion = new StandardVersion(stdVersion);
 | 
	
		
			
				|  |  |         List<StdDataSetModel> dataSetList = getList(StdDataSetModel.class, sVersion.getDataSetTableName(),  "", "", null, null);
 | 
	
		
			
				|  |  |         List<StdDataSetModel> dataSetList = getList(StdDataSetModel.class, sVersion.getDataSetTableName(), "", "", null, null);
 | 
	
		
			
				|  |  |         String idListStr = Constants.EMPTY;
 | 
	
		
			
				|  |  |         for (StdDataSetModel dataSet : dataSetList) {
 | 
	
		
			
				|  |  |             idListStr += dataSet.getId() + Constants.COMMA;
 | 
	
	
		
			
				|  | @ -288,9 +290,9 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |             stdRoot.setId("S0");
 | 
	
		
			
				|  |  |             stdRoot.setPid("-1");
 | 
	
		
			
				|  |  |             stdRoot.setText("数据集");
 | 
	
		
			
				|  |  |             if(datasetCount==dataSetList.size()){
 | 
	
		
			
				|  |  |             if (datasetCount == dataSetList.size()) {
 | 
	
		
			
				|  |  |                 stdRoot.setIschecked(true);
 | 
	
		
			
				|  |  |             }else {
 | 
	
		
			
				|  |  |             } else {
 | 
	
		
			
				|  |  |                 stdRoot.setIschecked(false);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | 
 | 
	
	
		
			
				|  | @ -315,7 +317,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public Result updateCustomize(Integer schemeId, String adapterVersion, String stdVersion, String datasetIdStr,String metaDataIdStr) {
 | 
	
		
			
				|  |  |     public Result updateCustomize(Integer schemeId, String adapterVersion, String stdVersion, String datasetIdStr, String metaDataIdStr) {
 | 
	
		
			
				|  |  |         AdapterVersion aVersion = new AdapterVersion(adapterVersion);
 | 
	
		
			
				|  |  |         StandardVersion sVersion = new StandardVersion(stdVersion);
 | 
	
		
			
				|  |  |         try {
 | 
	
	
		
			
				|  | @ -325,40 +327,39 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |             List<Integer> newMetadataIdList = new ArrayList<>();
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             for (String datasetId : datasetIdList) {
 | 
	
		
			
				|  |  |                 if(!StringUtil.isStrEmpty(datasetId)){
 | 
	
		
			
				|  |  |                 if (!StringUtil.isStrEmpty(datasetId)) {
 | 
	
		
			
				|  |  |                     Integer newDatasetId = Integer.parseInt(datasetId);
 | 
	
		
			
				|  |  |                     newDatasetIdList.add(newDatasetId);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             for (String metadataId : metadataIdList) {
 | 
	
		
			
				|  |  |                 if(!StringUtil.isStrEmpty(metadataId)){
 | 
	
		
			
				|  |  |                 if (!StringUtil.isStrEmpty(metadataId)) {
 | 
	
		
			
				|  |  |                     Integer newMetadataId = Integer.parseInt(metadataId);
 | 
	
		
			
				|  |  |                     newMetadataIdList.add(newMetadataId);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             if (newDatasetIdList.size() == 0) {
 | 
	
		
			
				|  |  |                 return Result.error("定制内容为空");
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             updateDatasetCustomizeData(schemeId, aVersion, sVersion, newDatasetIdList, newMetadataIdList);
 | 
	
		
			
				|  |  |             return Result.success("定制数据集成功");
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             e.printStackTrace();
 | 
	
		
			
				|  |  |             return Result.error("定制数据集失败");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public void updateDatasetCustomizeData(Integer schemeId, AdapterVersion aVersion, StandardVersion sVersion, List<Integer> newDatasetIdList, List<Integer> newMetadataIdList) {
 | 
	
		
			
				|  |  |         List<String> insertSqlList = new ArrayList<>();
 | 
	
		
			
				|  |  |         insertSqlList.add(Constants.DELETE + Constants.FROM + aVersion.getDataSetTableName());
 | 
	
		
			
				|  |  |         insertSqlList.add(Constants.DELETE + Constants.FROM + aVersion.getMetaDataTableName());
 | 
	
		
			
				|  |  |         insertSqlList.add(Constants.DELETE + Constants.FROM + aVersion.getDictTableName());
 | 
	
		
			
				|  |  |         insertSqlList.add(Constants.DELETE + Constants.FROM + aVersion.getDictEntryTableName());
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public void updateDatasetCustomizeData(Integer schemeId, AdapterVersion aVersion, StandardVersion sVersion, List<Integer> newDatasetIdList, List<Integer> newMetadataIdList) throws Exception {
 | 
	
		
			
				|  |  |         List<StdMetaDataModel> metadataList = new ArrayList<StdMetaDataModel>();
 | 
	
		
			
				|  |  |         if(newMetadataIdList.size()>0){
 | 
	
		
			
				|  |  |         if (newMetadataIdList.size() > 0) {
 | 
	
		
			
				|  |  |             SqlCreator sqlCreator = new SqlCreator(StdMetaDataModel.class);
 | 
	
		
			
				|  |  |             sqlCreator.inCondition("id", newMetadataIdList);
 | 
	
		
			
				|  |  |             String sql = sqlCreator.selectData(sVersion.getMetaDataTableName());
 | 
	
		
			
				|  |  |             Query query = getQuery(sqlCreator, sql);
 | 
	
		
			
				|  |  |              metadataList = query.list();
 | 
	
		
			
				|  |  |             metadataList = query.list();
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         List<Integer> newDictdList = new ArrayList<>();
 | 
	
	
		
			
				|  | @ -368,44 +369,148 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         if(newDatasetIdList.size()>0){
 | 
	
		
			
				|  |  |         List<String> insertSqlList = new ArrayList<>();
 | 
	
		
			
				|  |  |         // 找出新增 删除  modify by cyj
 | 
	
		
			
				|  |  |         List<AdapterDatasetModel> datasetModels = selectData(aVersion.getDataSetTableName(), AdapterDatasetModel.class);
 | 
	
		
			
				|  |  |         List<AdapterMetadataModel> metadataModels = selectData(aVersion.getMetaDataTableName(), AdapterMetadataModel.class);
 | 
	
		
			
				|  |  |         List<AdapterDictModel> dictModels = selectData(aVersion.getDictTableName(), AdapterDictModel.class);
 | 
	
		
			
				|  |  | //        List<AdapterDictEntryModel> dictEntryModels = selectData(aVersion.getDictEntryTableName(), AdapterDictEntryModel.class);
 | 
	
		
			
				|  |  |         List<Integer> oldDatasetIdList = new ArrayList<>();
 | 
	
		
			
				|  |  |         for (AdapterDatasetModel datasetModel : datasetModels) {
 | 
	
		
			
				|  |  |             oldDatasetIdList.add(datasetModel.getId());
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         List<Integer> oldMetadataIdList = new ArrayList<>();
 | 
	
		
			
				|  |  |         for (AdapterMetadataModel metadataModel : metadataModels) {
 | 
	
		
			
				|  |  |             oldMetadataIdList.add(metadataModel.getId());
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         List<Integer> oldDictIdList = new ArrayList<>();
 | 
	
		
			
				|  |  |         for (AdapterDictModel dictModel : dictModels) {
 | 
	
		
			
				|  |  |             oldDictIdList.add(dictModel.getId());
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | //        List<Integer> oldDictEntryIdList = new ArrayList<>();
 | 
	
		
			
				|  |  | //        for (AdapterDictEntryModel entryModel : dictEntryModels) {
 | 
	
		
			
				|  |  | //            oldDictEntryIdList.add(entryModel.getStdDictId());
 | 
	
		
			
				|  |  | //        }
 | 
	
		
			
				|  |  |         Map<String, List<Integer>> datasetMap = getDiffId(newDatasetIdList, oldDatasetIdList);
 | 
	
		
			
				|  |  |         Map<String, List<Integer>> metaMap = getDiffId(newMetadataIdList, oldMetadataIdList);
 | 
	
		
			
				|  |  |         Map<String, List<Integer>> dicMap = getDiffId(newDictdList, oldDictIdList);
 | 
	
		
			
				|  |  | //        Map<String,List<Integer>> dicEntryMap = getDiffId(newDictdList,oldDictEntryIdList);
 | 
	
		
			
				|  |  | //        add del
 | 
	
		
			
				|  |  |         List<Integer> delDatasetList = datasetMap.get("del");
 | 
	
		
			
				|  |  |         if (delDatasetList.size() > 0) {
 | 
	
		
			
				|  |  |             insertSqlList.add(delData(aVersion.getDataSetTableName(), "id", delDatasetList));
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         List<Integer> delMetaList = metaMap.get("del");
 | 
	
		
			
				|  |  |         if (delMetaList.size() > 0) {
 | 
	
		
			
				|  |  |             insertSqlList.add(delData(aVersion.getMetaDataTableName(), "id", delMetaList));
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         List<Integer> delDicList = dicMap.get("del");
 | 
	
		
			
				|  |  |         if (delDicList.size() > 0) {
 | 
	
		
			
				|  |  |             insertSqlList.add(delData(aVersion.getDictTableName(), "id", delDicList));
 | 
	
		
			
				|  |  |             insertSqlList.add(delData(aVersion.getDictEntryTableName(), "std_dict_id", delDicList));
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | /*        insertSqlList.add(Constants.DELETE + Constants.FROM + aVersion.getDataSetTableName());
 | 
	
		
			
				|  |  |         insertSqlList.add(Constants.DELETE + Constants.FROM + aVersion.getMetaDataTableName());
 | 
	
		
			
				|  |  |         insertSqlList.add(Constants.DELETE + Constants.FROM + aVersion.getDictTableName());
 | 
	
		
			
				|  |  |         insertSqlList.add(Constants.DELETE + Constants.FROM + aVersion.getDictEntryTableName());*/
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         List<Integer> addDataSetList = datasetMap.get("add");
 | 
	
		
			
				|  |  |         if (addDataSetList.size() > 0) {
 | 
	
		
			
				|  |  |             insertSqlList.add(insertData(aVersion.getDataSetTableName(), sVersion.getDataSetTableName(),
 | 
	
		
			
				|  |  |                     new String[]{"id,std_dataset_id,std_dataset_code,std_dataset_name"},
 | 
	
		
			
				|  |  |                     new String[]{"id,id,code,name"},
 | 
	
		
			
				|  |  |                     schemeId,
 | 
	
		
			
				|  |  |                     "id",
 | 
	
		
			
				|  |  |                     newDatasetIdList));
 | 
	
		
			
				|  |  |                     addDataSetList));
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         if(newMetadataIdList.size()>0){
 | 
	
		
			
				|  |  |         List<Integer> addMetaList = metaMap.get("add");
 | 
	
		
			
				|  |  |         if (addMetaList.size() > 0) {
 | 
	
		
			
				|  |  |             insertSqlList.add(insertData(aVersion.getMetaDataTableName(), sVersion.getMetaDataTableName(),
 | 
	
		
			
				|  |  |                     new String[]{"id,std_metadata_id,std_metadata_code,std_metadata_name,std_dataset_id,std_dict_id"},
 | 
	
		
			
				|  |  |                     new String[]{"id,id,code,name,dataset_id,dict_id"},
 | 
	
		
			
				|  |  |                     schemeId,
 | 
	
		
			
				|  |  |                     "id",
 | 
	
		
			
				|  |  |                     newMetadataIdList));
 | 
	
		
			
				|  |  |                     addMetaList));
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         if(newDictdList.size()>0){
 | 
	
		
			
				|  |  |         List<Integer> addDicList = dicMap.get("add");
 | 
	
		
			
				|  |  |         if (addDicList.size() > 0) {
 | 
	
		
			
				|  |  |             insertSqlList.add(insertData(aVersion.getDictTableName(), sVersion.getDictTableName(),
 | 
	
		
			
				|  |  |                     new String[] {"id,std_dict_id,std_dict_code,std_dict_name"},
 | 
	
		
			
				|  |  |                     new String[] {"id,id,code,name"},
 | 
	
		
			
				|  |  |                     new String[]{"id,std_dict_id,std_dict_code,std_dict_name"},
 | 
	
		
			
				|  |  |                     new String[]{"id,id,code,name"},
 | 
	
		
			
				|  |  |                     schemeId,
 | 
	
		
			
				|  |  |                     "id",
 | 
	
		
			
				|  |  |                     newDictdList));
 | 
	
		
			
				|  |  |                     addDicList));
 | 
	
		
			
				|  |  |             insertSqlList.add(insertData(aVersion.getDictEntryTableName(), sVersion.getDictEntryTableName(),
 | 
	
		
			
				|  |  |                     new String[] {"id,std_entry_id,std_entry_code,std_entry_value,std_dict_id"},
 | 
	
		
			
				|  |  |                     new String[] {"id,id,code,value,dict_id"},
 | 
	
		
			
				|  |  |                     new String[]{"id,std_entry_id,std_entry_code,std_entry_value,std_dict_id"},
 | 
	
		
			
				|  |  |                     new String[]{"id,id,code,value,dict_id"},
 | 
	
		
			
				|  |  |                     schemeId,
 | 
	
		
			
				|  |  |                     "dict_id",
 | 
	
		
			
				|  |  |                     newDictdList));
 | 
	
		
			
				|  |  |                     addDicList));
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         if(insertSqlList.size()>0){
 | 
	
		
			
				|  |  |         if (insertSqlList.size() > 0) {
 | 
	
		
			
				|  |  |             insertBatch(insertSqlList);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     private String delData(String adapterTableName, String item, List<Integer> idList) {
 | 
	
		
			
				|  |  |         StringBuffer sql = new StringBuffer();
 | 
	
		
			
				|  |  |         String idStr = Constants.EMPTY;
 | 
	
		
			
				|  |  |         for (Integer id : idList) {
 | 
	
		
			
				|  |  |             idStr += id + Constants.COMMA;
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         if (!StringUtil.isEmpty(idStr)) {
 | 
	
		
			
				|  |  |             idStr = Constants.LEFT_BRACKET + idStr.substring(0, idStr.length() - 1) + Constants.RIGHT_BRACKET;
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         sql.append(Constants.DELETE + Constants.FROM).append(adapterTableName).append(Constants.WHERE).append(item).append(Constants.IN).append(idStr);
 | 
	
		
			
				|  |  |         return sql.toString();
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 将第一个数组放入map(id,1) 然后循环第二个数组,如果map中找到对应键值就+1  不存在设置 1
 | 
	
		
			
				|  |  |      *
 | 
	
		
			
				|  |  |      * @param firtList   new
 | 
	
		
			
				|  |  |      * @param secondList old
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     private Map<String, List<Integer>> getDiffId(List<Integer> firtList, List<Integer> secondList) {
 | 
	
		
			
				|  |  |         Map<Integer, Integer> map = new HashMap<>();
 | 
	
		
			
				|  |  |         for (Integer id : firtList) {
 | 
	
		
			
				|  |  |             map.put(id, 1);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         for (Integer id1 : secondList) {
 | 
	
		
			
				|  |  |             Integer flag = map.get(id1);
 | 
	
		
			
				|  |  |             if (flag != null) {
 | 
	
		
			
				|  |  |                 map.put(id1, ++flag);
 | 
	
		
			
				|  |  |             } else {
 | 
	
		
			
				|  |  |                 map.put(id1, 1);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         List<Integer> diffLs = new ArrayList<>();
 | 
	
		
			
				|  |  |         for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
 | 
	
		
			
				|  |  |             if (entry.getValue() == 1) {
 | 
	
		
			
				|  |  |                 diffLs.add(entry.getKey());
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         List<Integer> delIDLs = new ArrayList<>();
 | 
	
		
			
				|  |  |         List<Integer> addIDLs = new ArrayList<>();
 | 
	
		
			
				|  |  |         for (Integer diffL : diffLs) {
 | 
	
		
			
				|  |  |             if (firtList.contains(diffL)) {
 | 
	
		
			
				|  |  |                 addIDLs.add(diffL);
 | 
	
		
			
				|  |  |             } else if (secondList.contains(diffL)) {
 | 
	
		
			
				|  |  |                 delIDLs.add(diffL);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         Map<String, List<Integer>> listMap = new HashMap<>();
 | 
	
		
			
				|  |  |         listMap.put("del", delIDLs);
 | 
	
		
			
				|  |  |         listMap.put("add", addIDLs);
 | 
	
		
			
				|  |  |         return listMap;
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     private String insertData(String adapterTableName, String stdTableName, String[] item1, String[] item2, Integer schemeId, String item, List<Integer> idList) {
 | 
	
		
			
				|  |  |         StringBuffer sql = new StringBuffer();
 | 
	
		
			
				|  |  |         String idStr = Constants.EMPTY;
 | 
	
	
		
			
				|  | @ -413,14 +518,14 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |             idStr += id + Constants.COMMA;
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         if (!StringUtil.isEmpty(idStr)) {
 | 
	
		
			
				|  |  |             idStr = Constants.LEFT_BRACKET + idStr.substring(0, idStr.length() - 1) +  Constants.RIGHT_BRACKET;
 | 
	
		
			
				|  |  |             idStr = Constants.LEFT_BRACKET + idStr.substring(0, idStr.length() - 1) + Constants.RIGHT_BRACKET;
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         sql.append(Constants.INSERT_INTO + adapterTableName + Constants.LEFT_BRACKET);
 | 
	
		
			
				|  |  |         for (String it : item1) {
 | 
	
		
			
				|  |  |             sql.append(it + Constants.COMMA);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         sql.append("scheme_id" + Constants.RIGHT_BRACKET + Constants.LEFT_BRACKET + Constants.SELECT );
 | 
	
		
			
				|  |  |         sql.append("scheme_id" + Constants.RIGHT_BRACKET + Constants.LEFT_BRACKET + Constants.SELECT);
 | 
	
		
			
				|  |  |         for (String it : item2) {
 | 
	
		
			
				|  |  |             sql.append(it + Constants.COMMA);
 | 
	
		
			
				|  |  |         }
 | 
	
	
		
			
				|  | @ -428,6 +533,12 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |         return sql.toString();
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public List selectData(String adapterTableName, Class clazz) throws Exception {
 | 
	
		
			
				|  |  |         StringBuffer sql = new StringBuffer();
 | 
	
		
			
				|  |  |         sql.append("SELECT * FROM ").append(adapterTableName);
 | 
	
		
			
				|  |  |         return queryListBySql(sql.toString(), clazz);
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public List getAdapterDatasetNotNullList(AdapterVersion adapterVersion, String condition) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             StringBuffer sql = new StringBuffer();
 | 
	
	
		
			
				|  | @ -463,16 +574,16 @@ public class AdapterDatasetService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public AdapterDatasetModel getAdapterDatasetByCode(String version,String datasetCode) {
 | 
	
		
			
				|  |  |     public AdapterDatasetModel getAdapterDatasetByCode(String version, String datasetCode) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             if (StringUtil.isEmpty(datasetCode)) {
 | 
	
		
			
				|  |  |                 return null;
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             SqlCreator sqlCreator = new SqlCreator(AdapterDatasetModel.class);
 | 
	
		
			
				|  |  |             sqlCreator.equalCondition("stdDatasetCode", datasetCode);
 | 
	
		
			
				|  |  |             String sql = sqlCreator.selectData("adapter_dataset_"+version);
 | 
	
		
			
				|  |  |             String sql = sqlCreator.selectData("adapter_dataset_" + version);
 | 
	
		
			
				|  |  |             Query query = getQuery(sqlCreator, sql);
 | 
	
		
			
				|  |  |             return (AdapterDatasetModel)query.uniqueResult();
 | 
	
		
			
				|  |  |             return (AdapterDatasetModel) query.uniqueResult();
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             e.printStackTrace();
 | 
	
		
			
				|  |  |             return null;
 |