|  | @ -1,296 +0,0 @@
 | 
	
		
			
				|  |  | package com.yihu.ehr.standard.service.adapter;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import com.fasterxml.jackson.databind.JsonNode;
 | 
	
		
			
				|  |  | import com.fasterxml.jackson.databind.ObjectMapper;
 | 
	
		
			
				|  |  | import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
 | 
	
		
			
				|  |  | import com.yihu.ehr.framework.constrant.ErrorCode;
 | 
	
		
			
				|  |  | import com.yihu.ehr.framework.exception.ApiException;
 | 
	
		
			
				|  |  | import com.yihu.ehr.framework.util.operator.CollectionUtil;
 | 
	
		
			
				|  |  | import com.yihu.ehr.framework.util.operator.StringUtil;
 | 
	
		
			
				|  |  | import com.yihu.ehr.framework.util.sql.SqlCreator;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.model.adapter.AdapterDictModel;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.model.adapter.AdapterDictEntryModel;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.model.adapter.AdapterSchemeModel;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.model.adapter.resultModel.AdapterDictEntryResultDetailModel;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.model.standard.StdDictionaryModel;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.service.bo.AdapterVersion;
 | 
	
		
			
				|  |  | import com.yihu.ehr.standard.service.bo.StandardVersion;
 | 
	
		
			
				|  |  | import org.hibernate.Query;
 | 
	
		
			
				|  |  | import org.hibernate.Session;
 | 
	
		
			
				|  |  | import org.springframework.stereotype.Service;
 | 
	
		
			
				|  |  | import org.springframework.transaction.annotation.Transactional;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import java.io.IOException;
 | 
	
		
			
				|  |  | import java.util.*;
 | 
	
		
			
				|  |  | @Transactional
 | 
	
		
			
				|  |  | @Service("AdapterDictEntryService")
 | 
	
		
			
				|  |  | public class AdapterDictEntryService extends SQLGeneralDAO {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public static final String BEAN_ID = "AdapterDictEntryService";
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public AdapterDictEntryService() {
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public void finalize() throws Throwable {
 | 
	
		
			
				|  |  |         super.finalize();
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public AdapterDictEntryModel add(String adapterVersion, String dictentry) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             AdapterVersion version = new AdapterVersion(adapterVersion);
 | 
	
		
			
				|  |  |             ObjectMapper objectMapper = new ObjectMapper();
 | 
	
		
			
				|  |  |             AdapterDictEntryModel adapterDictEntryModel = objectMapper.readValue(dictentry, AdapterDictEntryModel.class);
 | 
	
		
			
				|  |  |             Session session = getCurrentSession();
 | 
	
		
			
				|  |  |             String sql = "select max(id) from " + version.getDictEntryTableName();
 | 
	
		
			
				|  |  |             Query query = session.createSQLQuery(sql);
 | 
	
		
			
				|  |  |             Object object = query.uniqueResult();
 | 
	
		
			
				|  |  |             adapterDictEntryModel.setId(object == null ? 1 : Integer.parseInt(object.toString()) + 1);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             JsonNode jsonNode = objectMapper.readTree(objectMapper.writeValueAsString(adapterDictEntryModel));
 | 
	
		
			
				|  |  |             SqlCreator sqlCreator = new SqlCreator(AdapterDictEntryModel.class);
 | 
	
		
			
				|  |  |             sql = sqlCreator.insertData(version.getDictEntryTableName(), jsonNode);
 | 
	
		
			
				|  |  |             query = getExeuteQuery(sqlCreator, sql);
 | 
	
		
			
				|  |  |             query.executeUpdate();
 | 
	
		
			
				|  |  |             return adapterDictEntryModel;
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             throw new ApiException(ErrorCode.saveDictEntryFailed);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public void delete(String adapterVersion, Integer dictentryId) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             if (adapterVersion == null || adapterVersion.length() == 0) throw new IllegalArgumentException("无效版本");
 | 
	
		
			
				|  |  |             AdapterVersion version = new AdapterVersion(adapterVersion);
 | 
	
		
			
				|  |  |             Session session = getCurrentSession();
 | 
	
		
			
				|  |  |             String sql = "delete from " + version.getDictEntryTableName() + " where id = :id";
 | 
	
		
			
				|  |  |             Query query = session.createSQLQuery(sql);
 | 
	
		
			
				|  |  |             query.setInteger("id", dictentryId);
 | 
	
		
			
				|  |  |             query.executeUpdate();
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             throw new ApiException(ErrorCode.DeleteDictEntryFailed);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public AdapterDictEntryModel modify(String adapterVersion, String dictentry) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             AdapterVersion version = new AdapterVersion(adapterVersion);
 | 
	
		
			
				|  |  |             ObjectMapper objectMapper = new ObjectMapper();
 | 
	
		
			
				|  |  |             AdapterDictEntryModel adapterDictEntryModel = objectMapper.readValue(dictentry, AdapterDictEntryModel.class);
 | 
	
		
			
				|  |  |             JsonNode jsonNode = objectMapper.readTree(objectMapper.writeValueAsString(adapterDictEntryModel));
 | 
	
		
			
				|  |  |             SqlCreator sqlCreator = new SqlCreator(AdapterDictEntryModel.class);
 | 
	
		
			
				|  |  |             String sql = sqlCreator.updateDataByTableKey(version.getDictEntryTableName(), jsonNode);
 | 
	
		
			
				|  |  |             Query query = getExeuteQuery(sqlCreator, sql);
 | 
	
		
			
				|  |  |             query.executeUpdate();
 | 
	
		
			
				|  |  |             return adapterDictEntryModel;
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             throw new ApiException(ErrorCode.UpdateDictEntryFailed);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public List getDictEntryList(Class tClass, String adapterVersion, String condition, String order, Integer limit, Integer offset) {
 | 
	
		
			
				|  |  |         AdapterVersion version = new AdapterVersion(adapterVersion);
 | 
	
		
			
				|  |  |         String tableName = version.getDictEntryTableName();
 | 
	
		
			
				|  |  |         SqlCreator sqlCreator = new SqlCreator(tClass);
 | 
	
		
			
				|  |  |         ObjectMapper objectMapper = new ObjectMapper();
 | 
	
		
			
				|  |  |         if (!StringUtil.isEmpty(condition)) {
 | 
	
		
			
				|  |  |             try {
 | 
	
		
			
				|  |  |                 JsonNode jsonNode = objectMapper.readTree(condition);
 | 
	
		
			
				|  |  |                 String name = jsonNode.get("name").asText();
 | 
	
		
			
				|  |  |                 sqlCreator.equalCondition("stdDictId", jsonNode.get("stdDictId").asInt());
 | 
	
		
			
				|  |  |                 sqlCreator.likeOrCondition("stdEntryCode", "stdEntryValue", name);
 | 
	
		
			
				|  |  |             } catch (IOException e) {
 | 
	
		
			
				|  |  |                 e.printStackTrace();
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             if (!StringUtil.isEmpty(order)) {
 | 
	
		
			
				|  |  |                 JsonNode jsonNode = objectMapper.readTree(order);
 | 
	
		
			
				|  |  |                 Iterator<String> fieldNames = jsonNode.fieldNames();
 | 
	
		
			
				|  |  |                 while (fieldNames.hasNext()) {
 | 
	
		
			
				|  |  |                     String fieldName = fieldNames.next();
 | 
	
		
			
				|  |  |                     String value = jsonNode.get(fieldName).asText().toUpperCase();
 | 
	
		
			
				|  |  |                     sqlCreator.order(fieldName, value);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             e.printStackTrace();
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         String sql = sqlCreator.selectData(tableName);
 | 
	
		
			
				|  |  |         Query query = getQuery(sqlCreator, sql);
 | 
	
		
			
				|  |  |         if (limit != null) {
 | 
	
		
			
				|  |  |             query.setMaxResults(limit);
 | 
	
		
			
				|  |  |             if (offset != null) {
 | 
	
		
			
				|  |  |                 query.setFirstResult(offset * limit);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         List<AdapterDictEntryModel> modelList = query.list();
 | 
	
		
			
				|  |  |         List<Integer> idList = new ArrayList<>();
 | 
	
		
			
				|  |  |         Map<Integer, StdDictionaryModel> stdDictModelMap = new HashMap<>();
 | 
	
		
			
				|  |  |         Integer schemeId = null;
 | 
	
		
			
				|  |  |         for (AdapterDictEntryModel model : modelList) {
 | 
	
		
			
				|  |  |             if (model.getAdapterDictId() != null) {
 | 
	
		
			
				|  |  |                 schemeId = model.getSchemeId();
 | 
	
		
			
				|  |  |                 idList.add(model.getAdapterDictId());
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         if (!CollectionUtil.isEmpty(idList)) {
 | 
	
		
			
				|  |  |             AdapterSchemeModel scheme = getEntity(AdapterSchemeModel.class, schemeId);
 | 
	
		
			
				|  |  |             StandardVersion standardVersion = new StandardVersion(scheme.getAdapterStdVersion());
 | 
	
		
			
				|  |  |             tableName = standardVersion.getDictTableName();
 | 
	
		
			
				|  |  |             sqlCreator = new SqlCreator(StdDictionaryModel.class);
 | 
	
		
			
				|  |  |             sqlCreator.inCondition("id", idList);
 | 
	
		
			
				|  |  |             sql = sqlCreator.selectData(tableName);
 | 
	
		
			
				|  |  |             query = getQuery(sqlCreator, sql);
 | 
	
		
			
				|  |  |             List<StdDictionaryModel> stdDictModelList = query.list();
 | 
	
		
			
				|  |  |             for (StdDictionaryModel model : stdDictModelList) {
 | 
	
		
			
				|  |  |                 stdDictModelMap.put(model.getId(), model);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         List<AdapterDictEntryResultDetailModel> detailModelList = new ArrayList<>();
 | 
	
		
			
				|  |  |         for (AdapterDictEntryModel model : modelList) {
 | 
	
		
			
				|  |  |             AdapterDictEntryResultDetailModel detailModel = new AdapterDictEntryResultDetailModel();
 | 
	
		
			
				|  |  |             detailModel.setId(model.getId());
 | 
	
		
			
				|  |  |             detailModel.setSchemeId(model.getSchemeId());
 | 
	
		
			
				|  |  |             detailModel.setAdapterDictId(model.getAdapterDictId());
 | 
	
		
			
				|  |  |             detailModel.setAdapterEntryId(model.getAdapterEntryId());
 | 
	
		
			
				|  |  |             detailModel.setAdapterEntryCode(model.getAdapterEntryCode());
 | 
	
		
			
				|  |  |             detailModel.setAdapterEntryValue(model.getAdapterEntryValue());
 | 
	
		
			
				|  |  |             detailModel.setStdDictId(model.getStdDictId());
 | 
	
		
			
				|  |  |             detailModel.setStdEntryId(model.getStdEntryId());
 | 
	
		
			
				|  |  |             detailModel.setStdEntryCode(model.getStdEntryCode());
 | 
	
		
			
				|  |  |             detailModel.setStdEntryValue(model.getStdEntryValue());
 | 
	
		
			
				|  |  |             if (stdDictModelMap.get(model.getAdapterDictId()) != null) {
 | 
	
		
			
				|  |  |                 detailModel.setAdapterDictCode(stdDictModelMap.get(model.getAdapterDictId()).getCode());
 | 
	
		
			
				|  |  |                 detailModel.setAdapterDictName(stdDictModelMap.get(model.getAdapterDictId()).getName());
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             detailModelList.add(detailModel);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         return detailModelList;
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public Integer getDictEntryInt(Class tClass, String adapterVersion, String condition) {
 | 
	
		
			
				|  |  |         AdapterVersion version = new AdapterVersion(adapterVersion);
 | 
	
		
			
				|  |  |         String tableName = version.getDictEntryTableName();
 | 
	
		
			
				|  |  |         SqlCreator sqlCreator = new SqlCreator(tClass);
 | 
	
		
			
				|  |  |         ObjectMapper objectMapper = new ObjectMapper();
 | 
	
		
			
				|  |  |         if (!StringUtil.isEmpty(condition)) {
 | 
	
		
			
				|  |  |             try {
 | 
	
		
			
				|  |  |                 JsonNode jsonNode = objectMapper.readTree(condition);
 | 
	
		
			
				|  |  |                 String name = jsonNode.get("name").asText();
 | 
	
		
			
				|  |  |                 sqlCreator.equalCondition("stdDictId", jsonNode.get("stdDictId").asInt());
 | 
	
		
			
				|  |  |                 sqlCreator.likeOrCondition("stdEntryCode", "stdEntryValue", name);
 | 
	
		
			
				|  |  |             } catch (IOException e) {
 | 
	
		
			
				|  |  |                 e.printStackTrace();
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         String sql = sqlCreator.countData(tableName);
 | 
	
		
			
				|  |  |         Query query = getCurrentSession().createSQLQuery(sql);
 | 
	
		
			
				|  |  |         for (String key : sqlCreator.getKeyValueMap().keySet()) {
 | 
	
		
			
				|  |  |             query.setParameter(key, sqlCreator.getKeyValueMap().get(key));
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         Integer count = Integer.parseInt(StringUtil.toString(query.list().get(0)));
 | 
	
		
			
				|  |  |         return count;
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public List<AdapterDictEntryResultDetailModel> updateDictEntrys(String adapterVersion, String list) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             AdapterVersion version = new AdapterVersion(adapterVersion);
 | 
	
		
			
				|  |  |             ObjectMapper objectMapper = new ObjectMapper();
 | 
	
		
			
				|  |  |             List<AdapterDictEntryResultDetailModel> adapterDictEntryList = Arrays.asList(objectMapper.readValue(list, AdapterDictEntryResultDetailModel[].class));
 | 
	
		
			
				|  |  |             List<Integer> idList = new ArrayList<>();
 | 
	
		
			
				|  |  |             Map<Integer, AdapterDictEntryResultDetailModel> dictEntryResultMap = new HashMap<>();
 | 
	
		
			
				|  |  |             Integer maxId = null;
 | 
	
		
			
				|  |  |             for (AdapterDictEntryResultDetailModel dictEntryModel : adapterDictEntryList) {
 | 
	
		
			
				|  |  |                 AdapterDictEntryModel adapterDictEntryModel = new AdapterDictEntryModel();
 | 
	
		
			
				|  |  |                 adapterDictEntryModel.setId(dictEntryModel.getId());
 | 
	
		
			
				|  |  |                 adapterDictEntryModel.setSchemeId(dictEntryModel.getSchemeId());
 | 
	
		
			
				|  |  |                 adapterDictEntryModel.setAdapterDictId(dictEntryModel.getAdapterDictId());
 | 
	
		
			
				|  |  |                 adapterDictEntryModel.setAdapterEntryId(dictEntryModel.getAdapterEntryId());
 | 
	
		
			
				|  |  |                 adapterDictEntryModel.setAdapterEntryCode(dictEntryModel.getAdapterEntryCode());
 | 
	
		
			
				|  |  |                 adapterDictEntryModel.setAdapterEntryValue(dictEntryModel.getAdapterEntryValue());
 | 
	
		
			
				|  |  |                 adapterDictEntryModel.setStdDictId(dictEntryModel.getStdDictId());
 | 
	
		
			
				|  |  |                 adapterDictEntryModel.setStdEntryId(dictEntryModel.getStdEntryId());
 | 
	
		
			
				|  |  |                 adapterDictEntryModel.setStdEntryCode(dictEntryModel.getStdEntryCode());
 | 
	
		
			
				|  |  |                 adapterDictEntryModel.setStdEntryValue(dictEntryModel.getStdEntryValue());
 | 
	
		
			
				|  |  |                 idList.add(dictEntryModel.getStdDictId());
 | 
	
		
			
				|  |  |                 dictEntryResultMap.put(dictEntryModel.getStdDictId(), dictEntryModel);
 | 
	
		
			
				|  |  |                 SqlCreator sqlCreator = new SqlCreator(AdapterDictEntryModel.class);
 | 
	
		
			
				|  |  |                 String sql;
 | 
	
		
			
				|  |  |                 if (dictEntryModel.getId() == null) {
 | 
	
		
			
				|  |  |                     if (maxId == null) {
 | 
	
		
			
				|  |  |                         sql = "select max(id) from " + version.getDictEntryTableName();
 | 
	
		
			
				|  |  |                         Query query = getCurrentSession().createSQLQuery(sql);
 | 
	
		
			
				|  |  |                         Object object = query.uniqueResult();
 | 
	
		
			
				|  |  |                         maxId = object == null ? 1 : Integer.parseInt(object.toString()) + 1;
 | 
	
		
			
				|  |  |                     }
 | 
	
		
			
				|  |  |                     adapterDictEntryModel.setId(maxId++);
 | 
	
		
			
				|  |  |                     JsonNode jsonNode = objectMapper.readTree(objectMapper.writeValueAsString(adapterDictEntryModel));
 | 
	
		
			
				|  |  |                     sql = sqlCreator.insertData(version.getDictEntryTableName(), jsonNode);
 | 
	
		
			
				|  |  |                 } else {
 | 
	
		
			
				|  |  |                     JsonNode jsonNode = objectMapper.readTree(objectMapper.writeValueAsString(adapterDictEntryModel));
 | 
	
		
			
				|  |  |                     sql = sqlCreator.updateDataByTableKey(version.getDictEntryTableName(), jsonNode);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |                 Query query = getExeuteQuery(sqlCreator, sql);
 | 
	
		
			
				|  |  |                 query.executeUpdate();
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             if (!CollectionUtil.isEmpty(idList)) {
 | 
	
		
			
				|  |  |                 String tableName = version.getDictTableName();
 | 
	
		
			
				|  |  |                 SqlCreator sqlCreator = new SqlCreator(AdapterDictModel.class);
 | 
	
		
			
				|  |  |                 sqlCreator.inCondition("stdDictId", idList);
 | 
	
		
			
				|  |  |                 String sql = sqlCreator.selectData(tableName);
 | 
	
		
			
				|  |  |                 Query query = getQuery(sqlCreator, sql);
 | 
	
		
			
				|  |  |                 List<AdapterDictModel> adapterDictModelList = query.list();
 | 
	
		
			
				|  |  |                 for (AdapterDictModel model : adapterDictModelList) {
 | 
	
		
			
				|  |  |                     AdapterDictEntryResultDetailModel dictentryModel = dictEntryResultMap.get(model.getStdDictId());
 | 
	
		
			
				|  |  |                     model.setAdapterDictId(dictentryModel.getAdapterDictId());
 | 
	
		
			
				|  |  |                     model.setAdapterDictCode(dictentryModel.getAdapterDictCode());
 | 
	
		
			
				|  |  |                     model.setAdapterDictName(dictentryModel.getAdapterDictName());
 | 
	
		
			
				|  |  |                     JsonNode jsonNode = objectMapper.readTree(objectMapper.writeValueAsString(model));
 | 
	
		
			
				|  |  |                     sqlCreator = new SqlCreator(AdapterDictModel.class);
 | 
	
		
			
				|  |  |                     sql = sqlCreator.updateDataByTableKey(version.getDictTableName(), jsonNode);
 | 
	
		
			
				|  |  |                     query = getExeuteQuery(sqlCreator, sql);
 | 
	
		
			
				|  |  |                     query.executeUpdate();
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             return adapterDictEntryList;
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             throw new ApiException(ErrorCode.saveDictEntryFailed);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public void deleteMultiple(String adapterVersion, Integer dictEntryId, Integer stdDictId, Integer adapterDictId) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             if (adapterVersion == null || adapterVersion.length() == 0) {
 | 
	
		
			
				|  |  |                 throw new ApiException(ErrorCode.InvalidStdVersion);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             AdapterVersion version = new AdapterVersion(adapterVersion);
 | 
	
		
			
				|  |  |             Session session = getCurrentSession();
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             String sql = "delete from " + version.getDictEntryTableName() + " where id = :id";
 | 
	
		
			
				|  |  |             Query query = session.createSQLQuery(sql);
 | 
	
		
			
				|  |  |             query.setInteger("id", dictEntryId);
 | 
	
		
			
				|  |  |             query.executeUpdate();
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             SqlCreator sqlCreator = new SqlCreator(AdapterDictEntryModel.class);
 | 
	
		
			
				|  |  |             sqlCreator.equalCondition("stdDictId", stdDictId);
 | 
	
		
			
				|  |  |             sqlCreator.equalCondition("adapterDictId", adapterDictId);
 | 
	
		
			
				|  |  |             sql = sqlCreator.countData(version.getDictEntryTableName());
 | 
	
		
			
				|  |  |             query = getExeuteQuery(sqlCreator, sql);
 | 
	
		
			
				|  |  |             Integer count = Integer.parseInt(StringUtil.toString(query.list().get(0)));
 | 
	
		
			
				|  |  |             if (count == 0) {
 | 
	
		
			
				|  |  |                 sql = "delete from " + version.getDictTableName() + " where std_dict_id = :stdDictId and adapter_dict_id = :adapterDictId";
 | 
	
		
			
				|  |  |                 query = session.createSQLQuery(sql);
 | 
	
		
			
				|  |  |                 query.setInteger("stdDictId", stdDictId);
 | 
	
		
			
				|  |  |                 query.setInteger("adapterDictId", adapterDictId);
 | 
	
		
			
				|  |  |                 query.executeUpdate();
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             throw new ApiException(ErrorCode.DeleteDictEntryFailed);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | }
 |