Browse Source

标准模块前后台传值规范

lingfeng 9 years ago
parent
commit
b65940e7d6
62 changed files with 1333 additions and 1019 deletions
  1. 70 85
      Hos-Framework/src/main/java/com/yihu/ehr/framework/common/dao/SQLGeneralDAO.java
  2. 5 5
      Hos-Framework/src/main/java/com/yihu/ehr/framework/common/dao/XSQLGeneralDAO.java
  3. 16 60
      Hos-Framework/src/main/java/com/yihu/ehr/framework/constrant/Result.java
  4. 0 2
      Hos-Framework/src/main/java/com/yihu/ehr/framework/model/DictItem.java
  5. 16 1
      Hos-Framework/src/main/java/com/yihu/ehr/framework/model/DictionaryResult.java
  6. 3 3
      Hos-Framework/src/main/java/com/yihu/ehr/framework/model/Result.java
  7. 7 11
      Hos-Framework/src/main/java/com/yihu/ehr/framework/util/controller/BaseController.java
  8. 11 3
      Hos-resource/src/main/java/com/yihu/ehr/crawler/controller/CrawlerController.java
  9. 1 4
      Hos-resource/src/main/java/com/yihu/ehr/crawler/model/adapter/AdapterDataSet.java
  10. 2 2
      Hos-resource/src/main/java/com/yihu/ehr/crawler/model/adapter/AdapterDict.java
  11. 1 6
      Hos-resource/src/main/java/com/yihu/ehr/crawler/model/adapter/AdapterMetaData.java
  12. 17 13
      Hos-resource/src/main/java/com/yihu/ehr/crawler/service/CrawlerManager.java
  13. 5 7
      Hos-resource/src/main/java/com/yihu/ehr/resource/service/impl/StdService.java
  14. 17 51
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/AdapterController.java
  15. 13 34
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/AdapterVersionController.java
  16. 3 2
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/PublisherController.java
  17. 13 14
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeController.java
  18. 20 29
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeDatasetController.java
  19. 12 22
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeDictController.java
  20. 18 28
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeDictEntryController.java
  21. 17 25
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeMetadataController.java
  22. 12 12
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeVersionController.java
  23. 15 17
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StandardController.java
  24. 14 33
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StandardVersionController.java
  25. 18 25
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StdDatasetController.java
  26. 43 25
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StdDictController.java
  27. 23 29
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StdDictEntryController.java
  28. 18 66
      Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StdMetadataController.java
  29. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterDatasetModel.java
  30. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterDatasetRelationModel.java
  31. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterDictEntryModel.java
  32. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterDictModel.java
  33. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterMetadataModel.java
  34. 3 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterSchemeDispatchModel.java
  35. 3 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterSchemeModel.java
  36. 3 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterSchemeVersionModel.java
  37. 3 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StandardModel.java
  38. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StandardVersionModel.java
  39. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdCDACatalogModel.java
  40. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdCDADatasetModel.java
  41. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdCDAModel.java
  42. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdDataSetModel.java
  43. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdDatasetCatalogModel.java
  44. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdDictionaryEntryModel.java
  45. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdDictionaryModel.java
  46. 2 1
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdMetaDataModel.java
  47. 27 0
      Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/resultModel/PublisherResultModel.java
  48. 4 0
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterDatasetRelationService.java
  49. 76 47
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterDatasetService.java
  50. 44 10
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterDictEntryService.java
  51. 40 9
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterDictService.java
  52. 44 11
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterMetadataService.java
  53. 141 117
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterSchemeService.java
  54. 54 16
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterSchemeVersionService.java
  55. 62 26
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StandardService.java
  56. 78 19
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StandardVersionService.java
  57. 83 59
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdDatasetService.java
  58. 50 21
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdDictEntryService.java
  59. 77 19
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdDictService.java
  60. 50 20
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdMetadataService.java
  61. 34 3
      Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdPublisherService.java
  62. 19 10
      Hos-resource/src/main/webapp/WEB-INF/ehr/jsp/standard/adapterplan/adapterDetailJs.jsp

+ 70 - 85
Hos-Framework/src/main/java/com/yihu/ehr/framework/common/dao/SQLGeneralDAO.java

@ -3,14 +3,12 @@ package com.yihu.ehr.framework.common.dao;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DataGridResult;
import com.yihu.ehr.framework.util.log.LogService;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.NumberUtil;
import com.yihu.ehr.framework.util.sql.SqlCreator;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.SqlCreator;
import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.Session;
@ -25,6 +23,7 @@ import org.springframework.stereotype.Repository;
import javax.annotation.Resource;
import javax.transaction.Transactional;
import java.io.IOException;
import java.io.Serializable;
import java.sql.Connection;
import java.sql.ResultSet;
@ -251,94 +250,86 @@ public class SQLGeneralDAO implements XSQLGeneralDAO {
    }
    @Override
    public <T> List getEntityList(Class<T> cls, String condition, String order, Integer limit, Integer offset, ErrorCode errorCode) {
        try {
            Session session = getCurrentSession();
            Criteria criteria = session.createCriteria(cls);
            ObjectMapper objectMapper = new ObjectMapper();
            if (!StringUtil.isEmpty(condition)) {
                JsonNode jsonNode = objectMapper.readTree(condition);
                Iterator<String> fieldNames = jsonNode.fieldNames();
                while (fieldNames.hasNext()) {
                    String fieldName = fieldNames.next();
                    if (jsonNode.get(fieldName).isInt()) {
                        criteria.add(Restrictions.eq(fieldName, jsonNode.get(fieldName).asInt()));
                    } else {
                        criteria.add(Restrictions.eq(fieldName, jsonNode.get(fieldName).asText()));
                    }
    public <T> List getEntityList(Class<T> cls, String condition, String order, Integer limit, Integer offset) throws IOException {
        Session session = getCurrentSession();
        Criteria criteria = session.createCriteria(cls);
        ObjectMapper objectMapper = new ObjectMapper();
        if (!StringUtil.isEmpty(condition)) {
            JsonNode jsonNode = objectMapper.readTree(condition);
            Iterator<String> fieldNames = jsonNode.fieldNames();
            while (fieldNames.hasNext()) {
                String fieldName = fieldNames.next();
                if (jsonNode.get(fieldName).isInt()) {
                    criteria.add(Restrictions.eq(fieldName, jsonNode.get(fieldName).asInt()));
                } else {
                    criteria.add(Restrictions.eq(fieldName, jsonNode.get(fieldName).asText()));
                }
            }
        }
            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();
                    if (value.equals(Constants.ASC)) {
                        criteria.addOrder(Order.asc(fieldName));
                    } else if (value.equals(Constants.DESC)) {
                        criteria.addOrder(Order.desc(fieldName));
                    }
        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();
                if (value.equals(Constants.ASC)) {
                    criteria.addOrder(Order.asc(fieldName));
                } else if (value.equals(Constants.DESC)) {
                    criteria.addOrder(Order.desc(fieldName));
                }
            }
            if (limit != null) {
                criteria.setMaxResults(limit);
                if (offset != null) {
                    criteria.setFirstResult((offset - 1) * limit);
                }
        }
        if (limit != null) {
            criteria.setMaxResults(limit);
            if (offset != null) {
                criteria.setFirstResult((offset - 1) * limit);
            }
            return criteria.list();
        } catch (Exception e) {
            throw new ApiException(errorCode);
        }
        return criteria.list();
    }
    public <T> List getEntityListByParentId(Class<T> cls, String parentFiledName, Integer patentId, String condition, String order, Integer limit, Integer offset, ErrorCode errorCode) {
        try {
            Session session = getCurrentSession();
            Criteria criteria = session.createCriteria(cls);
            criteria.add(Restrictions.eq(parentFiledName, patentId));
            ObjectMapper objectMapper = new ObjectMapper();
            if (!StringUtil.isEmpty(condition)) {
                JsonNode jsonNode = objectMapper.readTree(condition);
                Iterator<String> fieldNames = jsonNode.fieldNames();
                while (fieldNames.hasNext()) {
                    String fieldName = fieldNames.next();
                    if (jsonNode.get(fieldName).isInt()) {
                        criteria.add(Restrictions.eq(fieldName, jsonNode.get(fieldName).asInt()));
                    } else {
                        criteria.add(Restrictions.eq(fieldName, jsonNode.get(fieldName).asText()));
                    }
    public <T> List getEntityListByParentId(Class<T> cls, String parentFiledName, Integer patentId, String condition, String order, Integer limit, Integer offset) throws IOException {
        Session session = getCurrentSession();
        Criteria criteria = session.createCriteria(cls);
        criteria.add(Restrictions.eq(parentFiledName, patentId));
        ObjectMapper objectMapper = new ObjectMapper();
        if (!StringUtil.isEmpty(condition)) {
            JsonNode jsonNode = objectMapper.readTree(condition);
            Iterator<String> fieldNames = jsonNode.fieldNames();
            while (fieldNames.hasNext()) {
                String fieldName = fieldNames.next();
                if (jsonNode.get(fieldName).isInt()) {
                    criteria.add(Restrictions.eq(fieldName, jsonNode.get(fieldName).asInt()));
                } else {
                    criteria.add(Restrictions.eq(fieldName, jsonNode.get(fieldName).asText()));
                }
            }
        }
            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();
                    if (value.equals(Constants.ASC)) {
                        criteria.addOrder(Order.asc(fieldName));
                    } else if (value.equals(Constants.DESC)) {
                        criteria.addOrder(Order.desc(fieldName));
                    }
        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();
                if (value.equals(Constants.ASC)) {
                    criteria.addOrder(Order.asc(fieldName));
                } else if (value.equals(Constants.DESC)) {
                    criteria.addOrder(Order.desc(fieldName));
                }
            }
            if (limit != null) {
                criteria.setMaxResults(limit);
                if (offset != null) {
                    criteria.setFirstResult((offset - 1) * limit);
                }
        }
        if (limit != null) {
            criteria.setMaxResults(limit);
            if (offset != null) {
                criteria.setFirstResult((offset - 1) * limit);
            }
            return criteria.list();
        } catch (Exception e) {
            throw new ApiException(errorCode);
        }
        return criteria.list();
    }
    public List getList(Class tClass, String tableName, String condition, String order, Integer limit, Integer offset, ErrorCode errorCode) {
    public List getList(Class tClass, String tableName, String condition, String order, Integer limit, Integer offset) {
        SqlCreator sqlCreator = new SqlCreator(tClass);
        ObjectMapper objectMapper = new ObjectMapper();
        try {
@ -408,20 +399,14 @@ public class SQLGeneralDAO implements XSQLGeneralDAO {
        return count;
    }
    @Override
    public Object get(Class tClass, String tableName, Integer id, ErrorCode errorCode) {
        try {
            SqlCreator sqlCreator = new SqlCreator(tClass);
            sqlCreator.equalCondition("id", id);
            String sql = sqlCreator.selectData(tableName);
            Query query = getQuery(sqlCreator, sql);
            return query.uniqueResult();
        } catch (Exception e) {
            throw new ApiException(errorCode);
        }
    public Object get(Class tClass, String tableName, Integer id) {
        SqlCreator sqlCreator = new SqlCreator(tClass);
        sqlCreator.equalCondition("id", id);
        String sql = sqlCreator.selectData(tableName);
        Query query = getQuery(sqlCreator, sql);
        return query.uniqueResult();
    }
    @Override
    public Query getQuery(SqlCreator sqlCreator, String sql) {
        Query query = getCurrentSession().createSQLQuery(sql);
        for (String key : sqlCreator.getKeyValueMap().keySet()) {

+ 5 - 5
Hos-Framework/src/main/java/com/yihu/ehr/framework/common/dao/XSQLGeneralDAO.java

@ -1,11 +1,11 @@
package com.yihu.ehr.framework.common.dao;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.model.DataGridResult;
import com.yihu.ehr.framework.util.sql.SqlCreator;
import org.hibernate.Query;
import org.hibernate.Session;
import java.io.IOException;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
@ -119,15 +119,15 @@ public interface XSQLGeneralDAO {
    public <T> List getEntityList(Class<T> cls, String hql);
    public <T> List getEntityList(Class<T> cls, String query, String order, Integer limit, Integer offset, ErrorCode errorCode);
    public <T> List getEntityList(Class<T> cls, String query, String order, Integer limit, Integer offset) throws IOException;
    public <T> List getEntityListByParentId(Class<T> cls, String patentFiledName, Integer parentId, String query, String order, Integer limit, Integer offset, ErrorCode errorCode);
    public <T> List getEntityListByParentId(Class<T> cls, String patentFiledName, Integer parentId, String query, String order, Integer limit, Integer offset) throws IOException;
    public <T> List getList(Class<T> cls, String tableName, String condition, String order, Integer limit, Integer offset, ErrorCode errorCode);
    public <T> List getList(Class<T> cls, String tableName, String condition, String order, Integer limit, Integer offset);
    public <T> Integer getDataSetInt(Class<T> cls, String tableName, String condition);
    public <T> Object get(Class<T> cls, String tableName, Integer id, ErrorCode errorCode);
    public <T> Object get(Class<T> cls, String tableName, Integer id);
    public Session getCurrentSession();

+ 16 - 60
Hos-Framework/src/main/java/com/yihu/ehr/framework/constrant/Result.java

@ -1,24 +1,11 @@
package com.yihu.ehr.framework.constrant;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.ehr.framework.util.log.LogService;
import com.yihu.ehr.framework.util.springutil.SpringBeanUtil;
import net.sf.json.JSONObject;
package com.yihu.ehr.framework.model;
import java.io.Serializable;
import java.util.List;
/**
 * ���VO
 * @author llh
 *
 */
public class Result implements Serializable{
public class DetailModelResult extends Result implements Serializable{
	private static final long serialVersionUID = 2076324875575488461L;
	
	private boolean successFlg;
	private int pageSize = 10;
@ -32,14 +19,6 @@ public class Result implements Serializable{
	private Object obj;
	private String errorMsg;
	private int errorCode;
	public String toJson(){
		return JSONObject.fromObject(this).toString();
    }
	public int getPageSize() {
		return pageSize;
	}
@ -91,20 +70,26 @@ public class Result implements Serializable{
		return 0;
	}
	public int getTotalCount() {
		return totalCount;
	public static DetailModelResult success(String message) {
		DetailModelResult detailModelResult = new DetailModelResult();
		detailModelResult.setSuccessFlg(true);
		detailModelResult.setMessage(message);
		return detailModelResult;
	}
	public void setTotalCount(int totalCount) {
		this.totalCount = totalCount;
	public static DetailModelResult error(String message) {
		DetailModelResult detailModelResult = new DetailModelResult();
		detailModelResult.setSuccessFlg(false);
		detailModelResult.setMessage(message);
		return detailModelResult;
	}
	public boolean isSuccessFlg() {
		return successFlg;
	public int getTotalCount() {
		return totalCount;
	}
	public void setSuccessFlg(boolean successFlg) {
		this.successFlg = successFlg;
	public void setTotalCount(int totalCount) {
		this.totalCount = totalCount;
	}
	public List getDetailModelList() {
@ -114,33 +99,4 @@ public class Result implements Serializable{
	public void setDetailModelList(List detailModelList) {
		this.detailModelList = detailModelList;
	}
	public String getErrorMsg() {
		return errorMsg;
	}
	public void setErrorMsg(String errorMsg) {
		this.errorMsg = errorMsg;
	}
	public int getErrorCode() {
		return errorCode;
	}
	public void setErrorCode(int errorCode) {
		this.errorCode = errorCode;
	}
	
	public String toString() {
		StringBuffer sb = new StringBuffer();
		sb.append("result=");
		sb.append(successFlg);
		sb.append("obj=");
		sb.append(detailModelList);
		sb.append("errorMsg");
		sb.append(errorMsg);
		sb.append("errorCode");
		sb.append(errorCode);
		return sb.toString();
	}
}

+ 0 - 2
Hos-Framework/src/main/java/com/yihu/ehr/framework/model/DictItem.java

@ -1,7 +1,5 @@
package com.yihu.ehr.framework.model;
import java.util.List;
/**
 * 字典项
 * Created by hzp on 2016/1/15

+ 16 - 1
Hos-Framework/src/main/java/com/yihu/ehr/framework/model/DictionaryResult.java

@ -1,12 +1,13 @@
package com.yihu.ehr.framework.model;
import java.io.Serializable;
import java.util.List;
/**
 * 返回字典对象
 * Created by chenweida on 2016/1/13.
 */
public class DictionaryResult extends Result {
public class DictionaryResult extends Result implements Serializable {
    private String name;
    private List<DictItem> detailModelList;
@ -14,6 +15,20 @@ public class DictionaryResult extends Result {
    public DictionaryResult()
    {}
    public static DictionaryResult success(String message) {
        DictionaryResult dictionaryResult = new DictionaryResult();
        dictionaryResult.setSuccessFlg(true);
        dictionaryResult.setMessage(message);
        return dictionaryResult;
    }
    public static DictionaryResult error(String message) {
        DictionaryResult dictionaryResult = new DictionaryResult();
        dictionaryResult.setSuccessFlg(false);
        dictionaryResult.setMessage(message);
        return dictionaryResult;
    }
    public DictionaryResult(String name)
    {
        this.name=name;

+ 3 - 3
Hos-Framework/src/main/java/com/yihu/ehr/framework/model/Result.java

@ -5,9 +5,9 @@ package com.yihu.ehr.framework.model;
 * 基础对象
 */
public class Result {
    private boolean successFlg = true;
    private String message;
    private int errorCode;
    protected boolean successFlg = true;
    protected String message;
    protected int errorCode;
    public boolean isSuccessFlg() {
        return successFlg;

+ 7 - 11
Hos-Framework/src/main/java/com/yihu/ehr/framework/util/controller/BaseController.java

@ -1,6 +1,6 @@
package com.yihu.ehr.framework.util.controller;
import com.yihu.ehr.framework.constrant.Result;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.util.log.LogService;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import net.sf.json.JSONArray;
@ -11,7 +11,10 @@ import org.springframework.web.servlet.mvc.AbstractController;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.util.*;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
public class BaseController extends AbstractController{
@ -21,9 +24,9 @@ public class BaseController extends AbstractController{
        return null;
    }
    public Result getResult(List detaiModelList, int totalCount, int currPage, int rows) {
    public DetailModelResult getResult(List detaiModelList, int totalCount, int currPage, int rows) {
        Result result = new Result();
        DetailModelResult result = new DetailModelResult();
        result.setSuccessFlg(true);
        result.setDetailModelList(detaiModelList);
        result.setTotalCount(totalCount);
@ -38,13 +41,6 @@ public class BaseController extends AbstractController{
        return result;
    }
    public Result getSuccessResult(Boolean flg) {
        Map<String,Object> mp = new HashMap<String,Object>();
        Result result = new Result();
        result.setSuccessFlg(flg);
        return result;
    }
    public String encodeStr(String str) {
        try {
            if (str == null) {

+ 11 - 3
Hos-resource/src/main/java/com/yihu/ehr/crawler/controller/CrawlerController.java

@ -2,6 +2,8 @@ package com.yihu.ehr.crawler.controller;
import com.yihu.ehr.crawler.model.patient.Patient;
import com.yihu.ehr.crawler.service.CrawlerManager;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.StringUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@ -23,14 +25,20 @@ public class CrawlerController {
    @RequestMapping(value = "patient", method = RequestMethod.POST)
    @ApiOperation(value = "采集病人健康档案", produces = "application/json", notes = "采集病人健康档案")
    public Boolean crawler(
    public Result crawler(
            @ApiParam(name = "patient", value = "病人索引信息", required = true)
            @RequestParam(value = "patient", required = true) String patientInfo) {
        Patient patient = CrawlerManager.getInstance().parsePatient(patientInfo);
        if (patient != null) {
            return CrawlerManager.getInstance().collectProcess(patient);
            String message = CrawlerManager.getInstance().collectProcess(patient);
            if (StringUtil.isEmpty(message)){
                return Result.success("采集上传成功");
            } else {
                return Result.error(message);
            }
        } else {
            return Result.error("参数转换病人实体失败");
        }
        return false;
    }
}

+ 1 - 4
Hos-resource/src/main/java/com/yihu/ehr/crawler/model/adapter/AdapterDataSet.java

@ -1,18 +1,15 @@
package com.yihu.ehr.crawler.model.adapter;
import com.yihu.ehr.crawler.model.patient.PatientIdentity;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.springutil.SpringBeanUtil;
import com.yihu.ehr.standard.model.adapter.AdapterDatasetModel;
import com.yihu.ehr.standard.model.adapter.AdapterMetadataModel;
import com.yihu.ehr.standard.model.standard.StdMetaDataModel;
import com.yihu.ehr.standard.service.adapter.AdapterMetadataService;
import com.yihu.ehr.standard.service.bo.AdapterVersion;
import net.sf.json.JSONObject;
import javax.annotation.Resource;
import java.util.*;
/**
@ -46,7 +43,7 @@ public class AdapterDataSet {
            condition.put("stdDatasetId", StringUtil.toString(adapterDatasetModel.getStdDatasetId()));
            JSONObject jsonpObject = JSONObject.fromObject(condition);
            AdapterMetadataService metadataService = SpringBeanUtil.getService(AdapterMetadataService.BEAN_ID);
            List<AdapterMetadataModel> adapterMetaDataModelList = metadataService.getList(AdapterMetadataModel.class, adapterVersion.getMetaDataTableName(), jsonpObject.toString(), null, null, null, ErrorCode.GetMetaDataListFaield);
            List<AdapterMetadataModel> adapterMetaDataModelList = metadataService.getList(AdapterMetadataModel.class, adapterVersion.getMetaDataTableName(), jsonpObject.toString(), null, null, null);
            if (!CollectionUtil.isEmpty(adapterMetaDataModelList)) {
                for (AdapterMetadataModel adapterMetadataModel : adapterMetaDataModelList) {
                    adapterMetaDataList.add(new AdapterMetaData(adapterMetadataModel, adapterVersion));

+ 2 - 2
Hos-resource/src/main/java/com/yihu/ehr/crawler/model/adapter/AdapterDict.java

@ -38,7 +38,7 @@ public class AdapterDict {
        condition.put("stdEntryValue", esbDictEntryValue);
        JSONObject jsonpObject = JSONObject.fromObject(condition);
        AdapterDictEntryService adapterDictEntryService = SpringBeanUtil.getService(AdapterDictEntryService.BEAN_ID);
        List<AdapterDictEntryModel> adapterDictEntryModelList = adapterDictEntryService.getList(AdapterDictEntryModel.class, adapterVersion.getDictEntryTableName(), jsonpObject.toString(), null, null, null, null);
        List<AdapterDictEntryModel> adapterDictEntryModelList = adapterDictEntryService.getList(AdapterDictEntryModel.class, adapterVersion.getDictEntryTableName(), jsonpObject.toString(), null, null, null);
        if (!CollectionUtil.isEmpty(adapterDictEntryModelList)) {
            String ehrDictEntryCode = adapterDictEntryModelList.get(0).getAdapterEntryCode();
            if (!StringUtil.isEmpty(ehrDictEntryCode)) {
@ -54,7 +54,7 @@ public class AdapterDict {
        condition.put("stdEntryCode", esbDictEntryCode);
        JSONObject jsonpObject = JSONObject.fromObject(condition);
        AdapterDictEntryService adapterDictEntryService = SpringBeanUtil.getService(AdapterDictEntryService.BEAN_ID);
        List<AdapterDictEntryModel> adapterDictEntryModelList = adapterDictEntryService.getList(AdapterDictEntryModel.class, adapterVersion.getDictEntryTableName(), jsonpObject.toString(), null, null, null, null);
        List<AdapterDictEntryModel> adapterDictEntryModelList = adapterDictEntryService.getList(AdapterDictEntryModel.class, adapterVersion.getDictEntryTableName(), jsonpObject.toString(), null, null, null);
        if (!CollectionUtil.isEmpty(adapterDictEntryModelList)) {
            String ehrDictEntryCode = adapterDictEntryModelList.get(0).getAdapterEntryCode();
            if (!StringUtil.isEmpty(ehrDictEntryCode)) {

+ 1 - 6
Hos-resource/src/main/java/com/yihu/ehr/crawler/model/adapter/AdapterMetaData.java

@ -1,18 +1,13 @@
package com.yihu.ehr.crawler.model.adapter;
import com.yihu.ehr.crawler.model.transform.DictDataType;
import com.yihu.ehr.crawler.model.transform.MetaDataType;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.util.operator.NumberUtil;
import com.yihu.ehr.framework.util.springutil.SpringBeanUtil;
import com.yihu.ehr.standard.model.adapter.AdapterDictModel;
import com.yihu.ehr.standard.model.adapter.AdapterMetadataModel;
import com.yihu.ehr.standard.model.standard.StdMetaDataModel;
import com.yihu.ehr.standard.service.adapter.AdapterDictService;
import com.yihu.ehr.standard.service.bo.AdapterVersion;
import com.yihu.ehr.standard.service.standard.StdMetadataService;
import javax.annotation.Resource;
/**
 * @author Air
@ -37,7 +32,7 @@ public class AdapterMetaData {
        if (adapterDict == null) {
            if (!NumberUtil.isZero(adapterMetadataModel.getStdDictId())) {
                AdapterDictService adapterDictService = SpringBeanUtil.getService(AdapterDictService.BEAN_ID);
                AdapterDictModel adapterDictModel = (AdapterDictModel) adapterDictService.get(AdapterDictModel.class, adapterVersion.getDictTableName(), adapterMetadataModel.getStdDictId(), ErrorCode.GetDictFaild);
                AdapterDictModel adapterDictModel = (AdapterDictModel) adapterDictService.get(AdapterDictModel.class, adapterVersion.getDictTableName(), adapterMetadataModel.getStdDictId());
                if (adapterDictModel != null) {
                    adapterDict = new AdapterDict(adapterDictModel, adapterVersion);
                }

+ 17 - 13
Hos-resource/src/main/java/com/yihu/ehr/crawler/service/CrawlerManager.java

@ -6,7 +6,6 @@ import com.yihu.ehr.crawler.model.adapter.AdapterDataSet;
import com.yihu.ehr.crawler.model.config.SysConfig;
import com.yihu.ehr.crawler.model.patient.Patient;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.util.log.LogService;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
@ -16,10 +15,7 @@ import com.yihu.ehr.standard.service.adapter.AdapterDatasetService;
import com.yihu.ehr.standard.service.adapter.AdapterSchemeVersionService;
import com.yihu.ehr.standard.service.bo.AdapterVersion;
import net.sf.json.JSONObject;
import org.hibernate.Query;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@ -74,11 +70,13 @@ public class CrawlerManager {
        return message;
    }
    public Boolean collectProcess(Patient patient) {
    public String collectProcess(Patient patient) {
        SysConfig.getInstance().setOrgCode(patient.getOrgCode());
        String message = Constants.EMPTY;
        if (!getAdapterDataSetList()) {
            LogService.getLogger().error("适配数据尚未准备");
            return false;
            message = "适配数据尚未准备";
            LogService.getLogger().error(message);
            return message;
        }
        patient.setReUploadFlg(StringUtil.toString(false));
        LogService.getLogger().trace("采集->注册->打包上传,任务ID:,patient_id:" + patient.getPatientId() + ", event_no:" + patient.getEventNo());
@ -87,7 +85,9 @@ public class CrawlerManager {
            List<JsonNode> dataList = new ArrayList<>();
            //采集、注册
            if (!dispatch.getToken()) {
                return false;
                message = "token获取失败";
                LogService.getLogger().error(message);
                return message;
            }
            for (AdapterDataSet adapterDataSet : adapterDataSetList) {
                String data = dispatch.fecthData(patient, adapterDataSet);
@ -111,18 +111,22 @@ public class CrawlerManager {
            try {
                if (!CollectionUtil.isEmpty(dataList)) {
                    if (!dispatch.upload(dataList, patient, dataSetMap)) {
                        return false;
                        message = "上传档案失败";
                        LogService.getLogger().error(message);
                        return message;
                    }
                }
            } catch (Exception e) {
                message = "上传档案失败";
                LogService.getLogger().error("档案上传失败,patient_id:" + patient.getPatientId() + ", event_no:" + patient.getEventNo());
                return false;
                return message;
            }
        } catch (Exception e) {
            message = "采集病人失败";
            LogService.getLogger().error("采集病人失败,patient_id:" + patient.getPatientId() + ", event_no:" + patient.getEventNo(), e);
            return false;
            return message;
        }
        return true;
        return Constants.EMPTY;
    }
    public Boolean getAdapterDataSetList() {
@ -138,7 +142,7 @@ public class CrawlerManager {
            Map<String, String> condition = new HashMap<>();
            condition.put("column", "adapter_dataset_code");
            JSONObject jsonpObject = JSONObject.fromObject(condition);
            List<AdapterDatasetModel> adapterDataSetModelList = adapterDatasetService.getAdapterDatasetNotNullList(AdapterDatasetModel.class, adapterVersion.getDataSetTableName(), jsonpObject.toString(), ErrorCode.GetDataSetListFailed);
            List<AdapterDatasetModel> adapterDataSetModelList = adapterDatasetService.getAdapterDatasetNotNullList(AdapterDatasetModel.class, adapterVersion.getDataSetTableName(), jsonpObject.toString());
            for (AdapterDatasetModel adapterDatasetModel : adapterDataSetModelList) {
                adapterDataSetList.add(new AdapterDataSet(adapterDatasetModel, adapterVersion));
            }

+ 5 - 7
Hos-resource/src/main/java/com/yihu/ehr/resource/service/impl/StdService.java

@ -1,14 +1,12 @@
package com.yihu.ehr.resource.service.impl;
import com.yihu.ehr.common.Services;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.resource.service.IStdService;
import com.yihu.ehr.standard.model.adapter.AdapterDatasetModel;
import com.yihu.ehr.standard.model.adapter.AdapterDictEntryModel;
import com.yihu.ehr.standard.model.adapter.AdapterDictModel;
import com.yihu.ehr.standard.model.adapter.resultModel.AdapterMetadataResultDetailModel;
import com.yihu.ehr.standard.model.adapter.resultModel.SchemeVersionResultDetailModel;
import com.yihu.ehr.standard.model.standard.StdDataSetModel;
@ -62,7 +60,7 @@ public class StdService implements IStdService {
     */
    public List<AdapterDatasetModel> getDatasetByScheme(String schemeVersion) {
        AdapterVersion version = new AdapterVersion(schemeVersion);
        return datasetService.getList(AdapterDatasetModel.class, version.getDataSetTableName(), null, null, null, null, ErrorCode.GetDataSetFailed);
        return datasetService.getList(AdapterDatasetModel.class, version.getDataSetTableName(), null, null, null, null);
    }
    /**
@ -72,7 +70,7 @@ public class StdService implements IStdService {
        Map<String,Object> map = new HashMap<String,Object>();
        map.put("adapterDatasetId", adapterDatasetId);
        AdapterVersion version = new AdapterVersion(schemeVersion);
        return datasetService.getList(AdapterDatasetModel.class, version.getDataSetTableName(), net.sf.json.JSONObject.fromObject(map).toString(), null, null, null, ErrorCode.GetDataSetFailed);
        return datasetService.getList(AdapterDatasetModel.class, version.getDataSetTableName(), net.sf.json.JSONObject.fromObject(map).toString(), null, null, null);
    }
@ -92,7 +90,7 @@ public class StdService implements IStdService {
        Map<String,Object> map = new HashMap<String,Object>();
        map.put("adapterDictId", dictId);
        AdapterVersion version = new AdapterVersion(schemeVersion);
        return dictentryService.getList(AdapterDictEntryModel.class, version.getDictEntryTableName(), net.sf.json.JSONObject.fromObject(map).toString(), null, null, null, ErrorCode.GetDictEntryListFailed);
        return dictentryService.getList(AdapterDictEntryModel.class, version.getDictEntryTableName(), net.sf.json.JSONObject.fromObject(map).toString(), null, null, null);
    }
    /**
@ -103,7 +101,7 @@ public class StdService implements IStdService {
        Map<String,Object> map = new HashMap<String,Object>();
        map.put("adapterDictId", dictId);
        AdapterVersion version = new AdapterVersion(schemeVersion);
        List<AdapterDictEntryModel> dictentryList =  dictentryService.getList(AdapterDictEntryModel.class, version.getDictEntryTableName(), net.sf.json.JSONObject.fromObject(map).toString(), null, null, null, ErrorCode.GetDictEntryListFailed);
        List<AdapterDictEntryModel> dictentryList =  dictentryService.getList(AdapterDictEntryModel.class, version.getDictEntryTableName(), net.sf.json.JSONObject.fromObject(map).toString(), null, null, null);
        List<DictItem> list = new ArrayList<>();
@ -131,7 +129,7 @@ public class StdService implements IStdService {
        Map<String,Object> map = new HashMap<String,Object>();
        map.put("stdDatasetCode", stdDatasetCode);
        AdapterVersion version = new AdapterVersion(schemeVersion);
        List<AdapterDatasetModel> list =  datasetService.getList(AdapterDatasetModel.class, version.getDataSetTableName(), net.sf.json.JSONObject.fromObject(map).toString(), null, null, null, ErrorCode.GetDataSetFailed);
        List<AdapterDatasetModel> list =  datasetService.getList(AdapterDatasetModel.class, version.getDataSetTableName(), net.sf.json.JSONObject.fromObject(map).toString(), null, null, null);
        if(list!=null&&list.size()>0)
        {

+ 17 - 51
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/AdapterController.java

@ -1,8 +1,9 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.standard.model.adapter.AdapterSchemeModel;
import com.yihu.ehr.standard.model.standard.StandardModel;
@ -15,7 +16,6 @@ import com.yihu.ehr.system.model.SystemOrganization;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@ -44,8 +44,8 @@ public class AdapterController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/searchSchemesList")
    @ApiOperation(value = "获取适配方案列表", response = AdapterSchemeModel.class, responseContainer = "List", produces = "application/json", notes = "获取适配方案列表")
    public List<AdapterSchemeModel> getList(
    @ApiOperation(value = "获取适配方案列表", response = DetailModelResult.class, responseContainer = "List", produces = "application/json", notes = "获取适配方案列表")
    public DetailModelResult getList(
            @ApiParam(name = "condition", value = "Search param,Must be json")
            @RequestParam(value = "condition", required = false) String condition,
            @ApiParam(name = "order", value = "Order param,Must be json.ascending:asc,descending:desc")
@ -54,7 +54,7 @@ public class AdapterController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        return adapterSchemeService.getEntityList(AdapterSchemeModel.class, condition, order, rows, page, ErrorCode.GetSchemeListFailed);
       return adapterSchemeService.getEntityList(condition, order, rows, page);
    }
    /**
@ -64,8 +64,8 @@ public class AdapterController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/getForSchemeId")
    @ApiOperation(value = "获取适配方案", response = AdapterSchemeModel.class, produces = "application/json", notes = "获取适配方案")
    public AdapterSchemeModel get(
    @ApiOperation(value = "获取适配方案", response = Result.class, produces = "application/json", notes = "获取适配方案")
    public Result get(
            @ApiParam(name = "schemeId", value = "标准版本ID")
            @RequestParam(value = "schemeId") Integer schemeId) {
        return adapterSchemeService.get(schemeId);
@ -78,8 +78,8 @@ public class AdapterController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/updateScheme")
    @ApiOperation(value = "修改适配方案", response = AdapterSchemeModel.class, produces = "application/json", notes = "修改适配方案")
    public AdapterSchemeModel modify(
    @ApiOperation(value = "修改适配方案", response = Result.class, produces = "application/json", notes = "修改适配方案")
    public Result modify(
            @ApiParam(name = "scheme", value = "适配方案")
            @RequestParam(value = "scheme") String scheme) {
        return adapterSchemeService.update(scheme);
@ -92,8 +92,8 @@ public class AdapterController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/addScheme")
    @ApiOperation(value = "保存适配方案", response = AdapterSchemeModel.class, produces = "application/json", notes = "保存适配方案")
    public AdapterSchemeModel add(
    @ApiOperation(value = "保存适配方案", response = Result.class, produces = "application/json", notes = "保存适配方案")
    public Result add(
            @ApiParam(name = "scheme", value = "适配方案信息")
            @RequestParam(value = "scheme") String scheme) {
        return adapterSchemeService.add(scheme);
@ -106,11 +106,11 @@ public class AdapterController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/deleteScheme")
    @ApiOperation(value = "删除适配方案", produces = "application/json", notes = "删除适配方案")
    public void delete(
    @ApiOperation(value = "删除适配方案", response = Result.class, produces = "application/json", notes = "删除适配方案")
    public Result delete(
            @ApiParam(name = "schemeId", value = "适配方案ID")
            @RequestParam(value = "schemeId") Integer schemeId) {
        adapterSchemeService.delete(schemeId);
        return adapterSchemeService.delete(schemeId);
    }
    /**
@ -130,17 +130,7 @@ public class AdapterController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<StandardModel> standardModelList = standardService.getList(condition, order, rows, page);
        DictionaryResult dictionaryResult = new DictionaryResult();
        List<DictItem> detailModelList = new ArrayList<DictItem>();
        for(StandardModel standardModel : standardModelList){
            DictItem items = new DictItem();
            Integer id = standardModel.getId();
            items.setCode(id.toString());
            items.setValue(standardModel.getName());
            detailModelList.add(items);
        }
        dictionaryResult.setDetailModelList(detailModelList);
        DictionaryResult dictionaryResult = standardService.getDictionaryResult(condition, order, rows, page);
        return dictionaryResult;
    }
@ -163,19 +153,7 @@ public class AdapterController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<StandardVersionModel> standardVersionModelList = standardVersionService.getVersionList(standardId, condition, order, rows, page);
        DictionaryResult dictionaryResult = new DictionaryResult();
        List<DictItem> detailModelList = new ArrayList<DictItem>();
        for(StandardVersionModel standardVersionModel : standardVersionModelList){
            DictItem items = new DictItem();
            String id = standardVersionModel.getVersion();
            String name = standardVersionModel.getName();
            items.setCode(id.toString());
            items.setValue(name);
            detailModelList.add(items);
        }
        dictionaryResult.setDetailModelList(detailModelList);
        return dictionaryResult;
        return standardService.getDictionaryResult(condition, order, rows, page);
    }
    /**
@ -194,18 +172,6 @@ public class AdapterController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<SystemOrganization> stdPublisherModelList = stdPublisherService.getList(condition, order, rows, page);
        DictionaryResult dictionaryResult = new DictionaryResult();
        List<DictItem> detailModelList = new ArrayList<DictItem>();
        for(SystemOrganization systemOrganization : stdPublisherModelList){
            DictItem items = new DictItem();
            String id = systemOrganization.getCode();
            String name = systemOrganization.getFullName();
            items.setCode(id.toString());
            items.setValue(name);
            detailModelList.add(items);
        }
        dictionaryResult.setDetailModelList(detailModelList);
        return dictionaryResult;
        return stdPublisherService.getDictionaryResult(condition, order, rows, page);
    }
}

+ 13 - 34
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/AdapterVersionController.java

@ -1,10 +1,8 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.standard.model.adapter.AdapterSchemeVersionModel;
import com.yihu.ehr.standard.service.adapter.AdapterSchemeVersionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -14,8 +12,6 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
 * Created by LLH on 2016/1/6.
@ -34,8 +30,8 @@ public class AdapterVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/getForVersionId")
    @ApiOperation(value = "获取适配版本", response = AdapterSchemeVersionModel.class, produces = "application/json", notes = "获取适配版本")
    public AdapterSchemeVersionModel getForVersionId(
    @ApiOperation(value = "获取适配版本", response = Result.class, produces = "application/json", notes = "获取适配版本")
    public Result getForVersionId(
            @ApiParam(name = "versionId", value = "适配版本ID")
            @RequestParam(value = "versionId") Integer versionId) {
        return adapterSchemeVersion.get(versionId);
@ -48,8 +44,8 @@ public class AdapterVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/addVersion")
    @ApiOperation(value = "保存适配版本", response = AdapterSchemeVersionModel.class, produces = "application/json", notes = "保存适配版本")
    public AdapterSchemeVersionModel add(
    @ApiOperation(value = "保存适配版本", response = Result.class, produces = "application/json", notes = "保存适配版本")
    public Result add(
            @ApiParam(name = "version", value = "适配版本信息")
            @RequestParam(value = "version") String version) {
        return adapterSchemeVersion.add(version);
@ -62,8 +58,8 @@ public class AdapterVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/updateVersion")
    @ApiOperation(value = "修改适配版本", response = AdapterSchemeVersionModel.class, produces = "application/json", notes = "修改适配版本")
    public AdapterSchemeVersionModel updateVersion(
    @ApiOperation(value = "修改适配版本", response = Result.class, produces = "application/json", notes = "修改适配版本")
    public Result updateVersion(
            @ApiParam(name = "version", value = "标准版本")
            @RequestParam(value = "version") String version) {
        return adapterSchemeVersion.update(version);
@ -76,8 +72,8 @@ public class AdapterVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/publishVersion")
    @ApiOperation(value = "发布适配版本", response = AdapterSchemeVersionModel.class, produces = "application/json", notes = "修改适配版本")
    public AdapterSchemeVersionModel publishVersion(
    @ApiOperation(value = "发布适配版本", response = Result.class, produces = "application/json", notes = "修改适配版本")
    public Result publishVersion(
            @ApiParam(name = "version", value = "标准版本")
            @RequestParam(value = "version") String version) {
        return adapterSchemeVersion.publish(version);
@ -90,11 +86,11 @@ public class AdapterVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/deleteVersion")
    @ApiOperation(value = "删除版本", produces = "application/json", notes = "删除版本")
    public void delete(
    @ApiOperation(value = "删除版本", response = Result.class, produces = "application/json", notes = "删除版本")
    public Result delete(
            @ApiParam(name = "versionId", value = "标准版本ID")
            @RequestParam(value = "versionId") Integer versionId) {
        adapterSchemeVersion.delete(versionId);
        return adapterSchemeVersion.delete(versionId);
    }
    /**
@ -116,23 +112,6 @@ public class AdapterVersionController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<AdapterSchemeVersionModel> adapterSchemeVersionModelList = adapterSchemeVersion.getEntityListByParentId(
                AdapterSchemeVersionModel.class, "schemeId", schemeId, condition, order, rows, page, ErrorCode.GetSchemeVersionListFailed);
        DictionaryResult dictionaryResult = new DictionaryResult();
        List<DictItem> detailModelList = new ArrayList<DictItem>();
        DictItem item = new DictItem();
        item.setCode("");
        item.setValue("-无-");
        detailModelList.add(item);
        for(AdapterSchemeVersionModel adapterSchemeVersionModel : adapterSchemeVersionModelList){
            DictItem items = new DictItem();
            String id = adapterSchemeVersionModel.getVersion();
            String name = adapterSchemeVersionModel.getName();
            items.setCode(id.toString());
            items.setValue(name);
            detailModelList.add(items);
        }
        dictionaryResult.setDetailModelList(detailModelList);
        return dictionaryResult;
        return adapterSchemeVersion.getDictionaryResult(schemeId, condition, order, rows, page);
    }
}

+ 3 - 2
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/PublisherController.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.standard.service.standard.StdPublisherService;
import com.yihu.ehr.system.model.SystemOrganization;
@ -29,8 +30,8 @@ public class PublisherController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/getForPublisherId")
    @ApiOperation(value = "获取发布机构", response = SystemOrganization.class, produces = "application/json", notes = "获取发布机构")
    public SystemOrganization get(
    @ApiOperation(value = "获取发布机构", response = Result.class, produces = "application/json", notes = "获取发布机构")
    public Result get(
            @ApiParam(name = "publisherId", value = "机构ID")
            @RequestParam(value = "publisherId") String publisherId) {
        return stdPublisherService.get(publisherId);

+ 13 - 14
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeController.java

@ -1,8 +1,8 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.standard.model.adapter.AdapterSchemeModel;
import com.yihu.ehr.standard.model.adapter.resultModel.SchemeResultDetailModel;
import com.yihu.ehr.standard.service.adapter.AdapterSchemeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -12,7 +12,6 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
@RestController("SchemeController")
@RequestMapping("/adapterCenter")
@ -27,8 +26,8 @@ public class SchemeController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/searchScheme")
    @ApiOperation(value = "获取方案列表", response = SchemeResultDetailModel.class, responseContainer = "List", notes = "获取方案列表")
    public List<SchemeResultDetailModel> searchScheme(
    @ApiOperation(value = "获取方案列表", response = DetailModelResult.class, responseContainer = "List", notes = "获取方案列表")
    public DetailModelResult searchScheme(
            @ApiParam(name = "condition", value = "查询条件:适配方案名称、适配方案版本名称")
            @RequestParam(value = "condition", required = false) String condition) {
        return adapterSchemeService.getSchemeList(condition);
@ -41,8 +40,8 @@ public class SchemeController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/getForSchemeId")
    @ApiOperation(value = "获取适配方案", response = AdapterSchemeModel.class, produces = "application/json", notes = "获取适配方案")
    public AdapterSchemeModel getForSchemeId(
    @ApiOperation(value = "获取适配方案", response = Result.class, produces = "application/json", notes = "获取适配方案")
    public Result getForSchemeId(
            @ApiParam(name = "schemeId", value = "标准版本ID")
            @RequestParam(value = "schemeId") Integer schemeId) {
        return adapterSchemeService.get(schemeId);
@ -55,8 +54,8 @@ public class SchemeController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/updateScheme")
    @ApiOperation(value = "修改适配方案", response = AdapterSchemeModel.class, produces = "application/json", notes = "修改适配方案")
    public AdapterSchemeModel updateScheme(
    @ApiOperation(value = "修改适配方案", response = Result.class, produces = "application/json", notes = "修改适配方案")
    public Result updateScheme(
            @ApiParam(name = "scheme", value = "适配方案")
            @RequestParam(value = "scheme") String scheme) {
        return adapterSchemeService.update(scheme);
@ -69,8 +68,8 @@ public class SchemeController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/addScheme")
    @ApiOperation(value = "保存适配方案", response = AdapterSchemeModel.class, produces = "application/json", notes = "保存适配方案")
    public AdapterSchemeModel addScheme(
    @ApiOperation(value = "保存适配方案", response = Result.class, produces = "application/json", notes = "保存适配方案")
    public Result addScheme(
            @ApiParam(name = "scheme", value = "适配方案信息")
            @RequestParam(value = "scheme") String scheme) {
        return adapterSchemeService.add(scheme);
@ -83,10 +82,10 @@ public class SchemeController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/deleteScheme")
    @ApiOperation(value = "删除适配方案", produces = "application/json", notes = "删除适配方案")
    public void deleteScheme(
    @ApiOperation(value = "删除适配方案", response = Result.class, produces = "application/json", notes = "删除适配方案")
    public Result deleteScheme(
            @ApiParam(name = "schemeId", value = "适配方案ID")
            @RequestParam(value = "schemeId") Integer schemeId) {
        adapterSchemeService.delete(schemeId);
        return adapterSchemeService.delete(schemeId);
    }
}

+ 20 - 29
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeDatasetController.java

@ -1,12 +1,9 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.constrant.Result;
import com.yihu.ehr.framework.constrant.TreeView;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.standard.model.adapter.AdapterDatasetModel;
import com.yihu.ehr.standard.service.adapter.AdapterDatasetService;
import com.yihu.ehr.standard.service.bo.AdapterVersion;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@ -17,7 +14,6 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.io.UnsupportedEncodingException;
import java.util.List;
/**
 * Created by LLH on 2016/1/6.
@ -40,8 +36,8 @@ public class SchemeDatasetController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/searchDatasetList")
    @ApiOperation(value = "获取数据集列表", response = Result.class, produces = "application/json", notes = "获取数据集列表")
    public Result getDatasetList(
    @ApiOperation(value = "获取数据集列表", response = DetailModelResult.class, produces = "application/json", notes = "获取数据集列表")
    public DetailModelResult getDatasetList(
            @ApiParam(name = "adapterVersion", value = "适配方案版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "condition", value = "查询条件:编码或名称")
@ -53,38 +49,33 @@ public class SchemeDatasetController extends BaseController {
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<AdapterDatasetModel> dataSetModelList = datasetService.getDatasetList(AdapterDatasetModel.class, adapterVersion, condition, order, rows, page);
        Integer count = datasetService.getDatasetInt(AdapterDatasetModel.class, adapterVersion, condition);
        Result result = new Result();
        result.setDetailModelList(dataSetModelList);
        result.setTotalCount(count);
        return result;
        return datasetService.getDetailModelResult(adapterVersion, condition, order, rows, page);
    }
    @RequestMapping("/getForDatasetId")
    @ApiOperation(value = "获取适配数据集", response = AdapterDatasetModel.class, produces = "application/json", notes = "获取适配数据集")
    public AdapterDatasetModel getForDatasetId(
    @ApiOperation(value = "获取适配数据集", response = Result.class, produces = "application/json", notes = "获取适配数据集")
    public Result getForDatasetId(
            @ApiParam(name = "adapterVersion", value = "适配版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "datasetId", value = "适配数据集ID")
            @RequestParam(value = "datasetId") Integer datasetId) {
        AdapterVersion version = new AdapterVersion(adapterVersion);
        return (AdapterDatasetModel) datasetService.get(AdapterDatasetModel.class, version.getDataSetTableName(), datasetId, ErrorCode.GetDataSetListFailed);
        return datasetService.get(adapterVersion, datasetId);
    }
    @RequestMapping(value = "/delDataset")
    @ApiOperation(value = "删除数据集", produces = "application/json", notes = "删除适配数据集")
    public void delDataset(
    @ApiOperation(value = "删除数据集", response = Result.class, produces = "application/json", notes = "删除适配数据集")
    public Result delDataset(
            @ApiParam(name = "adapterVersion", value = "适配版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "datasetId", value = "适配数据集ID")
            @RequestParam(value = "datasetId") Integer datasetId) {
        datasetService.delete(adapterVersion, datasetId);
       return datasetService.delete(adapterVersion, datasetId);
    }
    @RequestMapping(value = "/updateDataset")
    @ApiOperation(value = "修改适配数据集", response = AdapterDatasetModel.class, produces = "application/json", notes = "修改适配数据集")
    public AdapterDatasetModel modify(
    @ApiOperation(value = "修改适配数据集", response = Result.class, produces = "application/json", notes = "修改适配数据集")
    public Result modify(
            @ApiParam(name = "adapterVersion", value = "适配版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "dataset", value = "数据集,JSON")
@ -93,8 +84,8 @@ public class SchemeDatasetController extends BaseController {
    }
    @RequestMapping(value = "/addDataset")
    @ApiOperation(value = "保存适配数据集", response = AdapterDatasetModel.class, produces = "application/json", notes = "保存数据集")
    public AdapterDatasetModel add(
    @ApiOperation(value = "保存适配数据集", response = Result.class, produces = "application/json", notes = "保存数据集")
    public Result add(
            @ApiParam(name = "adapterVersion", value = "适配版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "dataset", value = "数据集信息")
@ -103,8 +94,8 @@ public class SchemeDatasetController extends BaseController {
    }
    @RequestMapping(value = "/getAdapterDataset")
    @ApiOperation(value = "获取定制数据集列表", response = TreeView.class, responseContainer = "List",produces = "application/json", notes = "获取数据集列表")
    public List<TreeView> getDatasetCustomize(
    @ApiOperation(value = "获取定制数据集列表", response = DetailModelResult.class, responseContainer = "List",produces = "application/json", notes = "获取数据集列表")
    public DetailModelResult getDatasetCustomize(
            @ApiParam(name = "adapterVersion", value = "适配版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "stdVersion", value = "标准版本号")
@ -113,8 +104,8 @@ public class SchemeDatasetController extends BaseController {
    }
    @RequestMapping(value = "/saveAdapterDataset", method = RequestMethod.POST)
    @ApiOperation(value = "定制适配数据集", response = TreeView.class, responseContainer = "List",produces = "application/json", notes = "获取数据集列表")
    public boolean adapterDataSet(
    @ApiOperation(value = "定制适配数据集", response = Result.class, responseContainer = "List",produces = "application/json", notes = "获取数据集列表")
    public Result adapterDataSet(
            @ApiParam(name = "schemeId", value = "适配方案ID")
            @RequestParam(value = "schemeId") Integer schemeId,
            @ApiParam(name = "adapterVersion", value = "适配版本号")

+ 12 - 22
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeDictController.java

@ -1,11 +1,9 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.constrant.Result;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.standard.model.adapter.AdapterDictModel;
import com.yihu.ehr.standard.service.adapter.AdapterDictService;
import com.yihu.ehr.standard.service.bo.AdapterVersion;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@ -14,7 +12,6 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
 * Created by LLH on 2016/1/6.
@ -37,8 +34,8 @@ public class SchemeDictController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/searchDictList")
    @ApiOperation(value = "获取字典列表", response = Result.class, produces = "application/json", notes = "获取字典列表")
    public Result searchDictList(
    @ApiOperation(value = "获取字典列表", response = DetailModelResult.class, produces = "application/json", notes = "获取字典列表")
    public DetailModelResult searchDictList(
            @ApiParam(name = "adapterVersion", value = "适配标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "condition", value = "查询条件:编码或名称")
@ -49,24 +46,17 @@ public class SchemeDictController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<AdapterDictModel> dictModelList = dictService.getDictList(AdapterDictModel.class, adapterVersion, condition, order, rows, page);
        Integer count = dictService.getDictInt(AdapterDictModel.class, adapterVersion, condition);
        Result result = new Result();
        result.setDetailModelList(dictModelList);
        result.setTotalCount(count);
        return result;
        return dictService.getDetailResult(adapterVersion, condition, order, rows, page);
    }
    @RequestMapping(value = "/getForDictId")
    @ApiOperation(value = "获取字典", response = AdapterDictModel.class, produces = "application/json", notes = "获取字典")
    public AdapterDictModel get(
    @ApiOperation(value = "获取字典", response = Result.class, produces = "application/json", notes = "获取字典")
    public Result get(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "dictId", value = "字典ID")
            @RequestParam(value = "dictId") Integer dictId) {
        AdapterVersion version = new AdapterVersion(adapterVersion);
        return (AdapterDictModel) dictService.get(AdapterDictModel.class, version.getDictTableName(), dictId, ErrorCode.GetDictFaild);
        return dictService.get(adapterVersion, dictId);
    }
    @RequestMapping(value = "/delDict")
@ -80,8 +70,8 @@ public class SchemeDictController extends BaseController {
    }
    
    @RequestMapping(value = "/updateDict")
    @ApiOperation(value = "修改字典", response = AdapterDictModel.class, produces = "application/json", notes = "修改字典")
    public AdapterDictModel updateDict(
    @ApiOperation(value = "修改字典", response = Result.class, produces = "application/json", notes = "修改字典")
    public Result updateDict(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "dict", value = "字典")
@ -90,8 +80,8 @@ public class SchemeDictController extends BaseController {
    }
    @RequestMapping(value = "/addDict")
    @ApiOperation(value = "保存字典", response = AdapterDictModel.class, produces = "application/json", notes = "保存字典")
    public AdapterDictModel addDict(
    @ApiOperation(value = "保存字典", response = Result.class, produces = "application/json", notes = "保存字典")
    public Result addDict(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "dict", value = "字典")

+ 18 - 28
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeDictEntryController.java

@ -1,12 +1,9 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.constrant.Result;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.standard.model.adapter.AdapterDictEntryModel;
import com.yihu.ehr.standard.model.adapter.resultModel.AdapterDictEntryResultDetailModel;
import com.yihu.ehr.standard.service.adapter.AdapterDictEntryService;
import com.yihu.ehr.standard.service.bo.AdapterVersion;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@ -15,7 +12,6 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
 * Created by LLH on 2016/1/6.
@ -38,8 +34,8 @@ public class SchemeDictEntryController extends BaseController {
     * @throws Exception
     */
    @RequestMapping(value = "/searchDictEntryList")
    @ApiOperation(value = "获取字典项列表", response = Result.class, produces = "application/json", notes = "获取字典项列表")
    public Result getDictEntryList(
    @ApiOperation(value = "获取字典项列表", response = DetailModelResult.class, produces = "application/json", notes = "获取字典项列表")
    public DetailModelResult getDictEntryList(
            @ApiParam(name = "adapterVersion", value = "适配版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "condition", value = "查询条件")
@ -50,28 +46,22 @@ public class SchemeDictEntryController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) throws Exception{
        List<AdapterDictEntryResultDetailModel> detailModelList = dictentryService.getDictEntryList(AdapterDictEntryModel.class, adapterVersion, condition, order, rows, page);
        Integer count = dictentryService.getDictEntryInt(AdapterDictEntryModel.class, adapterVersion, condition);
        Result result = new Result();
        result.setDetailModelList(detailModelList);
        result.setTotalCount(count);
        return result;
        return dictentryService.getDetailResult(adapterVersion, condition, order, rows, page);
    }
    @RequestMapping(value = "/getForDictEntryId")
    @ApiOperation(value = "获取字典项", response = AdapterDictEntryModel.class, produces = "application/json", notes = "获取字典项")
    public AdapterDictEntryModel get(
    @ApiOperation(value = "获取字典项", response = Result.class, produces = "application/json", notes = "获取字典项")
    public Result get(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "dictEntryId", value = "字典项ID")
            @RequestParam(value = "dictEntryId") Integer dictentryId) {
        AdapterVersion version = new AdapterVersion(adapterVersion);
        return (AdapterDictEntryModel) dictentryService.get(AdapterDictEntryModel.class, version.getDictEntryTableName(), dictentryId, ErrorCode.GetDictEntryFailed);
        return dictentryService.get(adapterVersion, dictentryId);
    }
    @RequestMapping(value = "/updateDictEntry")
    @ApiOperation(value = "修改字典项", response = AdapterDictEntryModel.class, produces = "application/json", notes = "修改字典项")
    public AdapterDictEntryModel updateDictEntry(
    @ApiOperation(value = "修改字典项", response = Result.class, produces = "application/json", notes = "修改字典项")
    public Result updateDictEntry(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "dictEntry", value = "字典项")
@ -80,8 +70,8 @@ public class SchemeDictEntryController extends BaseController {
    }
    @RequestMapping(value = "/addDictEntry")
    @ApiOperation(value = "保存字典项", response = AdapterDictEntryModel.class, produces = "application/json", notes = "保存字典项")
    public AdapterDictEntryModel add(
    @ApiOperation(value = "保存字典项", response = Result.class, produces = "application/json", notes = "保存字典项")
    public Result add(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "dictEntry", value = "字典项")
@ -90,18 +80,18 @@ public class SchemeDictEntryController extends BaseController {
    }
    @RequestMapping("/updateDictEntrys")
    @ApiOperation(value = "保存字典项", response = AdapterDictEntryResultDetailModel.class, responseContainer = "list", produces = "application/json", notes = "保存数据元")
    public List<AdapterDictEntryResultDetailModel> updateDictEntrys(
    @ApiOperation(value = "保存字典项", response = DetailModelResult.class, produces = "application/json", notes = "保存数据元")
    public DetailModelResult updateDictEntrys(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "list", value = "字典项列表")
            @RequestParam(value = "list") String list) {
        return  dictentryService.updateDictEntrys(adapterVersion, list);
        return dictentryService.updateDictEntrys(adapterVersion, list);
    }
    @RequestMapping("/delDictEntry")
    @ApiOperation(value = "删除字典项", response = AdapterDictEntryModel.class, produces = "application/json", notes = "删除字典项,若字典项表为空管理字典清掉")
    public void delete(
    @ApiOperation(value = "删除字典项", response = Result.class, produces = "application/json", notes = "删除字典项,若字典项表为空管理字典清掉")
    public Result delete(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "dictEntryId", value = "字典项ID")
@ -110,6 +100,6 @@ public class SchemeDictEntryController extends BaseController {
            @RequestParam(value = "stdDictId") Integer stdDictId,
            @ApiParam(name = "adapterDictId", value = "适配字典ID")
            @RequestParam(value = "adapterDictId") Integer adapterDictId) {
        dictentryService.deleteMultiple(adapterVersion, dictEntryId, stdDictId, adapterDictId);
        return dictentryService.deleteMultiple(adapterVersion, dictEntryId, stdDictId, adapterDictId);
    }
}

+ 17 - 25
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeMetadataController.java

@ -1,10 +1,8 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.constrant.Result;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.standard.model.adapter.AdapterMetadataModel;
import com.yihu.ehr.standard.model.adapter.resultModel.ApiMetadataResultDetailModel;
import com.yihu.ehr.standard.service.adapter.AdapterMetadataService;
import com.yihu.ehr.standard.service.bo.AdapterVersion;
import io.swagger.annotations.Api;
@ -15,7 +13,6 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
 * Created by LLH on 2016/1/6.
@ -37,8 +34,8 @@ public class SchemeMetadataController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/searchMetadataList")
    @ApiOperation(value = "获取数据元列表", response = Result.class, produces = "application/json", notes = "获取数据元列表")
    public Result getMetadataList(
    @ApiOperation(value = "获取数据元列表", response = DetailModelResult.class, produces = "application/json", notes = "获取数据元列表")
    public DetailModelResult getMetadataList(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "condition", value = "查询条件")
@ -49,28 +46,23 @@ public class SchemeMetadataController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page)  throws Exception{
        List<ApiMetadataResultDetailModel> metadataModelList = metadataService.getMetadataList(AdapterMetadataModel.class, adapterVersion, condition, order, rows, page);
        Integer count = metadataService.getMetadataCount(AdapterMetadataModel.class, adapterVersion, condition);
        Result result = new Result();
        result.setDetailModelList(metadataModelList);
        result.setTotalCount(count);
        return result;
       return metadataService.getDetailResult(adapterVersion, condition, order, rows, page);
    }
    @RequestMapping("/getForMetadataId")
    @ApiOperation(value = "获取数据元", response = AdapterMetadataModel.class, produces = "application/json", notes = "获取数据元")
    public AdapterMetadataModel get(
    @ApiOperation(value = "获取数据元", response = Result.class, produces = "application/json", notes = "获取数据元")
    public Result get(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "metadataId", value = "数据元ID")
            @RequestParam(value = "metadataId") Integer metadataId) {
        AdapterVersion version = new AdapterVersion(adapterVersion);
        return (AdapterMetadataModel) metadataService.get(AdapterMetadataModel.class, version.getMetaDataTableName(), metadataId, ErrorCode.GetMetaDataFailed);
        return metadataService.get(version.getMetaDataTableName(), metadataId);
    }
    @RequestMapping("/updateMetadata")
    @ApiOperation(value = "修改数据元", response = AdapterMetadataModel.class, produces = "application/json", notes = "修改数据元")
    public AdapterMetadataModel updateMetadata(
    @ApiOperation(value = "修改数据元", response = Result.class, produces = "application/json", notes = "修改数据元")
    public Result updateMetadata(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "metadata", value = "数据元")
@ -79,8 +71,8 @@ public class SchemeMetadataController extends BaseController {
    }
    @RequestMapping("/addMetadata")
    @ApiOperation(value = "保存数据元", response = AdapterMetadataModel.class, produces = "application/json", notes = "保存数据元")
    public AdapterMetadataModel addMetadata(
    @ApiOperation(value = "保存数据元", response = Result.class, produces = "application/json", notes = "保存数据元")
    public Result addMetadata(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "metadata", value = "数据元")
@ -89,8 +81,8 @@ public class SchemeMetadataController extends BaseController {
    }
    @RequestMapping("/updateMetadatas")
    @ApiOperation(value = "保存数据元", response = ApiMetadataResultDetailModel.class, responseContainer = "list", produces = "application/json", notes = "保存数据元")
    public List<ApiMetadataResultDetailModel> updateMetadatas(
    @ApiOperation(value = "修改数据元", response = DetailModelResult.class, produces = "application/json", notes = "保存数据元")
    public DetailModelResult updateMetadatas(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "list", value = "数据元列表")
@ -99,8 +91,8 @@ public class SchemeMetadataController extends BaseController {
    }
    @RequestMapping("/delMetadata")
    @ApiOperation(value = "删除数据元", produces = "application/json", notes = "删除数据元")
    public void delete(
    @ApiOperation(value = "删除数据元", response = Result.class, produces = "application/json", notes = "删除数据元")
    public Result delete(
            @ApiParam(name = "adapterVersion", value = "标准版本号")
            @RequestParam(value = "adapterVersion") String adapterVersion,
            @ApiParam(name = "metadataId", value = "数据元ID")
@ -109,6 +101,6 @@ public class SchemeMetadataController extends BaseController {
            @RequestParam(value = "stdDatasetId") Integer stdDatasetId,
            @ApiParam(name = "adapterDatasetId", value = "适配数据集ID")
            @RequestParam(value = "adapterDatasetId") Integer adapterDatasetId) {
        metadataService.deleteMultiple(adapterVersion, metadataId, stdDatasetId, adapterDatasetId);
        return metadataService.deleteMultiple(adapterVersion, metadataId, stdDatasetId, adapterDatasetId);
    }
}

+ 12 - 12
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/SchemeVersionController.java

@ -1,7 +1,7 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.standard.model.adapter.AdapterSchemeVersionModel;
import com.yihu.ehr.standard.service.adapter.AdapterSchemeVersionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -25,8 +25,8 @@ public class SchemeVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/getForVersionId")
    @ApiOperation(value = "获取适配版本", response = AdapterSchemeVersionModel.class, produces = "application/json", notes = "获取适配版本")
    public AdapterSchemeVersionModel get(
    @ApiOperation(value = "获取适配版本", response = Result.class, produces = "application/json", notes = "获取适配版本")
    public Result get(
            @ApiParam(name = "versionId", value = "适配版本ID")
            @RequestParam(value = "versionId") Integer versionId) {
        return adapterSchemeVersion.get(versionId);
@ -39,8 +39,8 @@ public class SchemeVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/addVersion")
    @ApiOperation(value = "保存适配版本", response = AdapterSchemeVersionModel.class, produces = "application/json", notes = "保存适配版本")
    public AdapterSchemeVersionModel add(
    @ApiOperation(value = "保存适配版本", response = Result.class, produces = "application/json", notes = "保存适配版本")
    public Result add(
            @ApiParam(name = "version", value = "适配版本信息")
            @RequestParam(value = "version") String version) {
        return adapterSchemeVersion.add(version);
@ -53,8 +53,8 @@ public class SchemeVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/updateVersion")
    @ApiOperation(value = "修改适配版本", response = AdapterSchemeVersionModel.class, produces = "application/json", notes = "修改适配版本")
    public AdapterSchemeVersionModel modify(
    @ApiOperation(value = "修改适配版本", response = Result.class, produces = "application/json", notes = "修改适配版本")
    public Result modify(
            @ApiParam(name = "version", value = "标准版本")
            @RequestParam(value = "version") String version) {
        return adapterSchemeVersion.update(version);
@ -67,8 +67,8 @@ public class SchemeVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/publishVersion")
    @ApiOperation(value = "发布适配版本", response = AdapterSchemeVersionModel.class, produces = "application/json", notes = "发布适配版本")
    public AdapterSchemeVersionModel publish(
    @ApiOperation(value = "发布适配版本", response = Result.class, produces = "application/json", notes = "发布适配版本")
    public Result publish(
            @ApiParam(name = "versionId", value = "适配版本ID")
            @RequestParam(value = "versionId") Integer versionId,
            @ApiParam(name = "publisher", value = "发布者")
@ -83,10 +83,10 @@ public class SchemeVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/deleteVersion")
    @ApiOperation(value = "删除版本", produces = "application/json", notes = "删除版本")
    public void delete(
    @ApiOperation(value = "删除版本", response = Result.class, produces = "application/json", notes = "删除版本")
    public Result delete(
            @ApiParam(name = "versionId", value = "标准版本ID")
            @RequestParam(value = "versionId") Integer versionId) {
        adapterSchemeVersion.delete(versionId);
        return adapterSchemeVersion.delete(versionId);
    }
}

+ 15 - 17
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StandardController.java

@ -1,9 +1,8 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.standard.model.standard.StandardModel;
import com.yihu.ehr.standard.model.standard.resultModel.StandardResultDetailModel;
import com.yihu.ehr.standard.service.standard.StandardService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -13,7 +12,6 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
@RestController("StandardController")
@RequestMapping("/standardCenter")
@ -29,11 +27,11 @@ public class StandardController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/searchStandard")
    @ApiOperation(value = "获取标准列表", response = StandardResultDetailModel.class, responseContainer = "List", notes = "获取标准列表")
    public List<StandardResultDetailModel> searchStandard(
    @ApiOperation(value = "获取标准列表", response = DetailModelResult.class, responseContainer = "List", notes = "获取标准列表")
    public DetailModelResult searchStandard(
            @ApiParam(name = "condition", value = "查询条件name:厂商、标准、标准版本名称,标准类别type:0为集成标准,1为应用标准")
            @RequestParam(value = "condition", required = false) String condition) {
        return standardService.getStandardList(condition);
        return standardService.getDetailModelResult(condition);
    }
    /**
@ -56,8 +54,8 @@ public class StandardController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/getForStandardId")
    @ApiOperation(value = "获取标准", response = StandardModel.class, produces = "application/json", notes = "获取标准")
    public StandardModel getForStandardId(
    @ApiOperation(value = "获取标准", response = Result.class, produces = "application/json", notes = "获取标准")
    public Result getForStandardId(
            @ApiParam(name = "standardId", value = "标准ID")
            @RequestParam(value = "standardId") Integer standardId){
        return standardService.get(standardId);
@ -70,8 +68,8 @@ public class StandardController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/updateStandard")
    @ApiOperation(value = "修改标准", response = StandardModel.class, produces = "application/json", notes = "修改标准")
    public StandardModel modify(
    @ApiOperation(value = "修改标准", response = Result.class, produces = "application/json", notes = "修改标准")
    public Result modify(
            @ApiParam(name = "standard", value = "标准基本信息")
            @RequestParam(value = "standard") String standard) {
        return standardService.update(standard);
@ -84,11 +82,11 @@ public class StandardController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/addStandard")
    @ApiOperation(value = "保存标准", response = StandardModel.class, produces = "application/json", notes = "保存标准")
    public StandardModel add(
    @ApiOperation(value = "保存标准", response = Result.class, produces = "application/json", notes = "保存标准")
    public Result add(
            @ApiParam(name = "standard", value = "标准基本信息")
            @RequestParam(value = "standard") String standard) {
        return (StandardModel) standardService.add(standard);
        return standardService.add(standard);
    }
    /**
@ -98,10 +96,10 @@ public class StandardController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/deleteStandard")
    @ApiOperation(value = "删除标准", produces = "application/json", notes = "删除标准")
    public void delete(
    @ApiOperation(value = "删除标准", response = Result.class, produces = "application/json", notes = "删除标准")
    public Result delete(
            @ApiParam(name = "standardId", value = "标准ID")
            @RequestParam(value = "standardId") Integer standardId) {
        standardService.delete(standardId);
        return standardService.delete(standardId);
    }
}

+ 14 - 33
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StandardVersionController.java

@ -1,9 +1,8 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.standard.model.standard.StandardVersionModel;
import com.yihu.ehr.standard.service.standard.StandardVersionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -13,8 +12,6 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
 * Created by LLH on 2016/1/6.
@ -32,8 +29,8 @@ public class StandardVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/getForVersionId")
    @ApiOperation(value = "获取标准版本", response = StandardVersionModel.class, produces = "application/json", notes = "获取标准版本")
    public StandardVersionModel getForVersionId(
    @ApiOperation(value = "获取标准版本", response = Result.class, produces = "application/json", notes = "获取标准版本")
    public Result getForVersionId(
            @ApiParam(name = "versionId", value = "标准版本ID")
            @RequestParam(value = "versionId") Integer versionId) {
        return standardVersionService.get(versionId);
@ -46,11 +43,11 @@ public class StandardVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/addVersion")
    @ApiOperation(value = "保存标准版本", response = StandardVersionModel.class, produces = "application/json", notes = "保存标准版本")
    public StandardVersionModel addVersion(
    @ApiOperation(value = "保存标准版本", response = Result.class, produces = "application/json", notes = "保存标准版本")
    public Result addVersion(
            @ApiParam(name = "version", value = "标准版本信息")
            @RequestParam(value = "version") String version) throws Exception {
        return (StandardVersionModel) standardVersionService.add(version);
        return standardVersionService.add(version);
    }
    /**
@ -60,8 +57,8 @@ public class StandardVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/updateVersion")
    @ApiOperation(value = "修改版本", response = StandardVersionModel.class, produces = "application/json", notes = "修改版本")
    public StandardVersionModel updateVersion(
    @ApiOperation(value = "修改版本", response = Result.class, produces = "application/json", notes = "修改版本")
    public Result updateVersion(
            @ApiParam(name = "version", value = "标准版本")
            @RequestParam(value = "version") String version) throws Exception {
        return standardVersionService.update(version);
@ -75,8 +72,8 @@ public class StandardVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/publishVersion")
    @ApiOperation(value = "发布版本", response = StandardVersionModel.class, produces = "application/json", notes = "发布版本")
    public StandardVersionModel publish(
    @ApiOperation(value = "发布版本", response = Result.class, produces = "application/json", notes = "发布版本")
    public Result publish(
            @ApiParam(name = "versionId", value = "标准版本ID")
            @RequestParam(value = "versionId") Integer versionId,
            @ApiParam(name = "publisher", value = "发布者")
@ -91,13 +88,13 @@ public class StandardVersionController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/deleteVersion")
    @ApiOperation(value = "删除版本", produces = "application/json", notes = "删除版本")
    public void delete(
    @ApiOperation(value = "删除版本", response = Result.class, produces = "application/json", notes = "删除版本")
    public Result delete(
            @ApiParam(name = "versionId", value = "标准版本ID")
            @RequestParam(value = "versionId") Integer versionId,
            @ApiParam(name = "version", value = "标准版本值")
            @RequestParam(value = "version") String version) throws Exception {
        standardVersionService.delete(versionId,version);
        return standardVersionService.delete(versionId,version);
    }
    /**
@ -119,22 +116,6 @@ public class StandardVersionController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<StandardVersionModel> standardVersionModelList = standardVersionService.getVersionList(standardId, condition, order, rows, page);
        DictionaryResult dictionaryResult = new DictionaryResult();
        List<DictItem> detailModelList = new ArrayList<DictItem>();
        DictItem item = new DictItem();
        item.setCode("");
        item.setValue("-无-");
        detailModelList.add(item);
        for (StandardVersionModel standardVersionModel : standardVersionModelList) {
            DictItem items = new DictItem();
            String  id = standardVersionModel.getVersion();
            String name = standardVersionModel.getName();
            items.setCode(id.toString());
            items.setValue(name);
            detailModelList.add(items);
        }
        dictionaryResult.setDetailModelList(detailModelList);
        return dictionaryResult;
        return standardVersionService.getDetailResultModelList(standardId, condition, order, rows, page);
    }
}

+ 18 - 25
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StdDatasetController.java

@ -1,6 +1,7 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.constrant.Result;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.standard.model.Select2;
@ -39,8 +40,8 @@ public class StdDatasetController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/searchDatasetList")
    @ApiOperation(value = "获取数据集列表", response = Result.class, produces = "application/json", notes = "获取数据集列表")
    public Result searchDatasetList(
    @ApiOperation(value = "获取数据集列表", response = DetailModelResult.class, produces = "application/json", notes = "获取数据集列表")
    public DetailModelResult searchDatasetList(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "condition", value = "查询条件:编码或名称")
@ -51,17 +52,12 @@ public class StdDatasetController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<StdDataSetModel> dataSetModelList = stdDatasetService.getDatasetList(StdDataSetModel.class, stdVersion, condition, order, rows, page);
        Integer count = stdDatasetService.getDatasetInt(StdDataSetModel.class, stdVersion, condition);
        Result result = new Result();
        result.setDetailModelList(dataSetModelList);
        result.setTotalCount(count);
        return result;
        return stdDatasetService.getDetailModelList(stdVersion, condition, order, rows, page);
    }
    @RequestMapping("/getForDatasetId")
    @ApiOperation(value = "获取数据集", response = StdDataSetModel.class, produces = "application/json", notes = "获取数据集")
    public StdDataSetModel getForDatasetId(
    @ApiOperation(value = "获取数据集", response = Result.class, produces = "application/json", notes = "获取数据集")
    public Result getForDatasetId(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "datasetId", value = "数据集ID")
@ -70,28 +66,28 @@ public class StdDatasetController extends BaseController {
    }
    @RequestMapping("/delDataset")
    @ApiOperation(value = "删除数据集", produces = "application/json", notes = "删除数据集")
    public void delDataset(
    @ApiOperation(value = "删除数据集", response = Result.class, produces = "application/json", notes = "删除数据集")
    public Result delDataset(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "datasetId", value = "数据集ID")
            @RequestParam(value = "datasetId") Integer datasetId) {
        stdDatasetService.delete(stdVersion, datasetId);
        return stdDatasetService.delete(stdVersion, datasetId);
    }
    @RequestMapping("/updateDataset")
    @ApiOperation(value = "修改数据集", response = StdDataSetModel.class, produces = "application/json", notes = "修改数据集")
    public StdDataSetModel updateDataset(
    @ApiOperation(value = "修改数据集", response = Result.class, produces = "application/json", notes = "修改数据集")
    public Result updateDataset(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dataset", value = "数据集")
            @RequestParam(value = "dataset") String dataset) {
        return (StdDataSetModel) stdDatasetService.update(stdVersion, dataset);
        return stdDatasetService.update(stdVersion, dataset);
    }
    @RequestMapping("/addDataset")
    @ApiOperation(value = "保存数据集", response = StdDataSetModel.class, produces = "application/json", notes = "保存数据集")
    public StdDataSetModel add(
    @ApiOperation(value = "保存数据集", response = Result.class, produces = "application/json", notes = "保存数据集")
    public Result add(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dataset", value = "数据集")
@ -100,8 +96,8 @@ public class StdDatasetController extends BaseController {
    }
    @RequestMapping(value="/getDatasetCodeValues")
    @ApiOperation(value = "获取数据集下拉框信息", response = Result.class, produces = "application/json", notes = "获取机构数据元下拉框信息")
    public Result getSelectList(
    @ApiOperation(value = "获取数据集下拉框信息", response = DetailModelResult.class, produces = "application/json", notes = "获取机构数据元下拉框信息")
    public DetailModelResult getSelectList(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "q", value = "数据集名称或编码", required = false)
@ -123,9 +119,6 @@ public class StdDatasetController extends BaseController {
            condition.put("initVal", initVal);//默认值
        }
        JSONObject jsonpObject = JSONObject.fromObject(condition);
        List<Select2> detailModelList = stdDatasetService.getDatasetSelectList(stdVersion, jsonpObject.toString(), order, rows, 0);
        Result result = getResult(detailModelList, detailModelList.size(), 1, rows);
        return result;
        return stdDatasetService.getDatasetSelectList(stdVersion, jsonpObject.toString(), order, rows, 0);
    }
}

+ 43 - 25
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StdDictController.java

@ -1,6 +1,9 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.constrant.Result;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.standard.model.Select2;
@ -15,6 +18,7 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -39,8 +43,8 @@ public class StdDictController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/searchDictList")
    @ApiOperation(value = "获取字典列表", response = Result.class, produces = "application/json", notes = "获取字典列表")
    public Result getDictList(
    @ApiOperation(value = "获取字典列表", response = DetailModelResult.class, produces = "application/json", notes = "获取字典列表")
    public DetailModelResult getDictList(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "condition", value = "查询条件:编码或名称")
@ -51,17 +55,12 @@ public class StdDictController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<StdDictionaryModel> dictModelList = stdDictService.getDictList(StdDictionaryModel.class, stdVersion, condition, order, rows, page);
        Integer count = stdDictService.getDictInt(StdDictionaryModel.class, stdVersion, condition);
        Result result = new Result();
        result.setDetailModelList(dictModelList);
        result.setTotalCount(count);
        return result;
        return stdDictService.getDetailModelList(stdVersion, condition, order, rows, page);
    }
    @RequestMapping("/getForDictId")
    @ApiOperation(value = "获取字典", response = StdDictionaryModel.class, produces = "application/json", notes = "获取字典")
    public StdDictionaryModel get(
    @ApiOperation(value = "获取字典", response = Result.class, produces = "application/json", notes = "获取字典")
    public Result get(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dictId", value = "字典ID")
@ -70,38 +69,38 @@ public class StdDictController extends BaseController {
    }
    @RequestMapping("/delDict")
    @ApiOperation(value = "删除字典", produces = "application/json", notes = "删除字典")
    public void delete(
    @ApiOperation(value = "删除字典", response = Result.class, produces = "application/json", notes = "删除字典")
    public Result delete(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dictId", value = "字典ID")
            @RequestParam(value = "dictId") Integer dictId) {
        stdDictService.delete(stdVersion, dictId);
        return stdDictService.delete(stdVersion, dictId);
    }
    
    @RequestMapping("/updateDict")
    @ApiOperation(value = "修改字典", response = StdDictionaryModel.class, produces = "application/json", notes = "修改字典")
    public StdDictionaryModel modify(
    @ApiOperation(value = "修改字典", response = Result.class, produces = "application/json", notes = "修改字典")
    public Result modify(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dict", value = "字典")
            @RequestParam(value = "dict") String dict) {
        return (StdDictionaryModel) stdDictService.update(stdVersion, dict);
        return stdDictService.update(stdVersion, dict);
    }
    @RequestMapping("/addDict")
    @ApiOperation(value = "保存字典", response = StdDictionaryModel.class, produces = "application/json", notes = "保存字典")
    public StdDictionaryModel addDict(
    @ApiOperation(value = "保存字典", response = Result.class, produces = "application/json", notes = "保存字典")
    public Result addDict(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dict", value = "字典")
            @RequestParam(value = "dict") String dict) {
        return (StdDictionaryModel) stdDictService.add(stdVersion, dict);
        return stdDictService.add(stdVersion, dict);
    }
    @RequestMapping(value="/getDictCodeValues")
    @ApiOperation(value = "获取字典下拉框信息", response = Result.class, produces = "application/json", notes = "获取字典下拉框信息")
    public Result getSelectList(
    @ApiOperation(value = "获取字典下拉框信息", response = DetailModelResult.class, produces = "application/json", notes = "获取字典下拉框信息")
    public DetailModelResult getSelectList(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "q", value = "数据集名称或编码", required = false)
@ -124,9 +123,28 @@ public class StdDictController extends BaseController {
        }
        JSONObject jsonpObject = JSONObject.fromObject(condition);
        List<StdDictionaryModel> dictList = stdDictService.getDictList(StdDictionaryModel.class, stdVersion, jsonpObject.toString(), order, rows, 0);
        List<Select2> detailModelList = stdDictService.getDictSelectList(dictList);
        return stdDictService.getDictSelectList(dictList);
    }
        Result result = getResult(detailModelList, detailModelList.size(), 1, rows);
        return result;
    /**
     * 获取对应字典/参考字典列表
     * @param stdVersion
     * @return
     * @throws Exception
     */
    @RequestMapping("/getDicts")
    @ApiOperation(value = "获取字典列表", response = DictionaryResult.class, produces = "application/json", notes = "获取字典列表")
    public DictionaryResult getList(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "condition", value = "Must be Json")
            @RequestParam(value = "condition", required = false) String condition,
            @ApiParam(name = "order", value = "Must be Json")
            @RequestParam(value = "order", required = false) String order,
            @ApiParam(name = "rows", value = "Limit the size of result set. Must be an integer")
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        return stdDictService.getDictionaryList(stdVersion, condition, order, rows, page);
    }
}

+ 23 - 29
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StdDictEntryController.java

@ -1,10 +1,14 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.constrant.Result;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.standard.model.Select2;
import com.yihu.ehr.standard.model.standard.StdDictionaryEntryModel;
import com.yihu.ehr.standard.model.standard.StdDictionaryModel;
import com.yihu.ehr.standard.service.standard.StdDictEntryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -15,6 +19,7 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -40,8 +45,8 @@ public class StdDictEntryController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/searchDictEntryList")
    @ApiOperation(value = "获取字典项列表", response = StdDictionaryEntryModel.class, responseContainer = "List",produces = "application/json", notes = "获取字典项列表")
    public Result getDictEntryList(
    @ApiOperation(value = "获取字典项列表", response = DetailModelResult.class, responseContainer = "List",produces = "application/json", notes = "获取字典项列表")
    public DetailModelResult getDictEntryList(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dictId", value = "字典ID")
@ -54,20 +59,12 @@ public class StdDictEntryController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        Result result = new Result();
        if(dictId==null){//没有字典数据时,返回空数据
            return result;
        }
        List<StdDictionaryEntryModel> detailModelList = stdDictEntryService.getDictEntryList(StdDictionaryEntryModel.class, stdVersion, dictId, condition, order, rows, page);
        Integer count = stdDictEntryService.getDictEntryInt(StdDictionaryEntryModel.class, stdVersion, dictId, condition);
        result.setDetailModelList(detailModelList);
        result.setTotalCount(count);
        return result;
        return stdDictEntryService.getDetailModelList(stdVersion, dictId, condition, order, rows, page);
    }
    @RequestMapping("/getForDictEntryId")
    @ApiOperation(value = "获取字典", response = StdDictionaryEntryModel.class, produces = "application/json", notes = "获取字典")
    public StdDictionaryEntryModel get(
    @ApiOperation(value = "获取字典", response = Result.class, produces = "application/json", notes = "获取字典")
    public Result get(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dictEntryId", value = "字典ID")
@ -76,38 +73,38 @@ public class StdDictEntryController extends BaseController {
    }
    @RequestMapping("/delDictEntry")
    @ApiOperation(value = "删除字典", produces = "application/json", notes = "删除字典")
    public void delete(
    @ApiOperation(value = "删除字典", response = Result.class, produces = "application/json", notes = "删除字典")
    public Result delete(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dictEntryId", value = "字典ID")
            @RequestParam(value = "dictEntryId") Integer dictEntryId) {
        stdDictEntryService.delete(stdVersion, dictEntryId);
        return stdDictEntryService.delete(stdVersion, dictEntryId);
    }
    @RequestMapping("/updateDictEntry")
    @ApiOperation(value = "修改字典", response = StdDictionaryEntryModel.class, produces = "application/json", notes = "修改字典")
    public StdDictionaryEntryModel modify(
    @ApiOperation(value = "修改字典", response = Result.class, produces = "application/json", notes = "修改字典")
    public Result modify(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dictEntry", value = "字典")
            @RequestParam(value = "dictEntry") String dictEntry) {
        return (StdDictionaryEntryModel) stdDictEntryService.update(stdVersion, dictEntry);
        return stdDictEntryService.update(stdVersion, dictEntry);
    }
    @RequestMapping("/addDictEntry")
    @ApiOperation(value = "保存字典", response = StdDictionaryEntryModel.class, produces = "application/json", notes = "保存字典")
    public StdDictionaryEntryModel add(
    @ApiOperation(value = "保存字典", response = Result.class, produces = "application/json", notes = "保存字典")
    public Result add(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dictEntry", value = "字典")
            @RequestParam(value = "dictEntry") String dictEntry) {
        return (StdDictionaryEntryModel) stdDictEntryService.add(stdVersion, dictEntry);
        return stdDictEntryService.add(stdVersion, dictEntry);
    }
    @RequestMapping(value="/getDictEntryCodeValues")
    @ApiOperation(value = "获取字典下拉框信息", response = Result.class, produces = "application/json", notes = "获取适配字典下拉框信息")
    public Result searchOrgDictItem(
    @ApiOperation(value = "获取字典下拉框信息", response = DetailModelResult.class, produces = "application/json", notes = "获取适配字典下拉框信息")
    public DetailModelResult searchOrgDictItem(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "dictId", value = "数据集ID")
@ -133,9 +130,6 @@ public class StdDictEntryController extends BaseController {
            condition.put("name", q);
        }
        JSONObject jsonpObject = JSONObject.fromObject(condition);
        List<StdDictionaryEntryModel> dictEntryModelList = stdDictEntryService.getDictEntryList(StdDictionaryEntryModel.class, stdVersion, dictId, jsonpObject.toString(), order, rows, 0);
        List<Select2> detailModelList = stdDictEntryService.getDictEntrySelectList(dictEntryModelList);
        Result result = getResult(detailModelList, detailModelList.size(), 1, rows);
        return result;
        return stdDictEntryService.getDictEntrySelectList(stdVersion, dictId, jsonpObject.toString(), order, rows, 0);
    }
}

+ 18 - 66
Hos-resource/src/main/java/com/yihu/ehr/standard/controller/StdMetadataController.java

@ -1,8 +1,9 @@
package com.yihu.ehr.standard.controller;
import com.yihu.ehr.framework.constrant.Result;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.controller.BaseController;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.standard.model.Select2;
@ -47,8 +48,8 @@ public class StdMetadataController extends BaseController {
     * @throws Exception
     */
    @RequestMapping("/searchMetadataList")
    @ApiOperation(value = "获取数据元列表", response = Result.class, produces = "application/json", notes = "获取数据元列表")
    public Result getMetadataList(
    @ApiOperation(value = "获取数据元列表", response = DetailModelResult.class, produces = "application/json", notes = "获取数据元列表")
    public DetailModelResult getMetadataList(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "datasetId", value = "数据集ID")
@ -61,61 +62,53 @@ public class StdMetadataController extends BaseController {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<StdMetaDataModel> metadataModelList = stdMetadataService.getMetadataList(StdMetaDataModel.class, stdVersion, datasetId, condition, order, rows, page);
        Integer count = stdMetadataService.getMetadataCount(StdMetaDataModel.class, stdVersion, datasetId, condition);
        Result result = new Result();
        result.setDetailModelList(metadataModelList);
        result.setTotalCount(count);
        return result;
        return stdMetadataService.getDetailModelList(stdVersion, datasetId, condition, order, rows, page);
    }
    @RequestMapping("/getForMetadataId")
    @ApiOperation(value = "获取数据元", response = StdMetaDataModel.class, produces = "application/json", notes = "获取数据元")
    public StdMetaDataModel getForMetadataId(
    @ApiOperation(value = "获取数据元", response = Result.class, produces = "application/json", notes = "获取数据元")
    public Result getForMetadataId(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "metadataId", value = "数据元ID")
            @RequestParam(value = "metadataId") Integer metadataId) {
        return stdMetadataService.get(stdVersion, metadataId);
    }
    @RequestMapping("/delMetaData")
    @ApiOperation(value = "删除数据元", produces = "application/json", notes = "删除数据元")
    public void delMetaData(
    @ApiOperation(value = "删除数据元", response = Result.class, produces = "application/json", notes = "删除数据元")
    public Result delMetaData(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "metadataId", value = "数据元ID")
            @RequestParam(value = "metadataId") Integer metadataId) {
        stdMetadataService.delete(stdVersion, metadataId);
        return stdMetadataService.delete(stdVersion, metadataId);
    }
    @RequestMapping("/updateMetadata")
    @ApiOperation(value = "修改数据元", response = StdMetaDataModel.class, produces = "application/json", notes = "修改数据元")
    public StdMetaDataModel updateMetadata(
    @ApiOperation(value = "修改数据元", response = Result.class, produces = "application/json", notes = "修改数据元")
    public Result updateMetadata(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "metadata", value = "数据元")
            @RequestParam(value = "metadata") String metadata) {
        return stdMetadataService.update(stdVersion, metadata);
    }
    @RequestMapping("/addMetadata")
    @ApiOperation(value = "保存数据元", response = StdMetaDataModel.class, produces = "application/json", notes = "保存数据元")
    public StdMetaDataModel addMetadata(
    @ApiOperation(value = "保存数据元", response = Result.class, produces = "application/json", notes = "保存数据元")
    public Result addMetadata(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "metadata", value = "数据元")
            @RequestParam(value = "metadata") String metadata) {
        return (StdMetaDataModel) stdMetadataService.add(stdVersion, metadata);
        return stdMetadataService.add(stdVersion, metadata);
    }
    @RequestMapping(value="/getMetadataCodeValues")
    @ApiOperation(value = "获取数据元下拉框信息", response = Result.class, produces = "application/json", notes = "获取机构数据元下拉框信息")
    public Result getSelectList(
    @ApiOperation(value = "获取数据元下拉框信息", response = DetailModelResult.class, produces = "application/json", notes = "获取机构数据元下拉框信息")
    public DetailModelResult getSelectList(
            @ApiParam(name = "stdVersion", value = "标准版本号")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "datasetId", value = "数据集ID")
@ -140,47 +133,6 @@ public class StdMetadataController extends BaseController {
            condition.put("name", q);
        }
        JSONObject jsonpObject = JSONObject.fromObject(condition);
        List<StdMetaDataModel> metadataList = stdMetadataService.getMetadataList(StdMetaDataModel.class, stdVersion, datasetId, jsonpObject.toString(), order, rows, 0);
        List<Select2> detailModelList = stdMetadataService.getMetadataSelectList(metadataList);
        Result result = getResult(detailModelList, detailModelList.size(), 1, rows);
        return result;
    }
    /**
     * 获取对应字典/参考字典列表
     * @param stdVersion
     * @return
     * @throws Exception
     */
    @RequestMapping("/getDicts")
    @ApiOperation(value = "获取字典列表", response = DictionaryResult.class, produces = "application/json", notes = "获取字典列表")
    public DictionaryResult getList(
            @ApiParam(name = "stdVersion", value = "stdVersion")
            @RequestParam(value = "stdVersion") String stdVersion,
            @ApiParam(name = "condition", value = "Must be Json")
            @RequestParam(value = "condition", required = false) String condition,
            @ApiParam(name = "order", value = "Must be Json")
            @RequestParam(value = "order", required = false) String order,
            @ApiParam(name = "rows", value = "Limit the size of result set. Must be an integer")
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        List<StdDictionaryModel> stdDictionaryModelList = stdDictService.getList(stdVersion, condition, order, rows, page);
        DictionaryResult dictionaryResult = new DictionaryResult();
        List<DictItem> detailModelList = new ArrayList<DictItem>();
        DictItem item = new DictItem();
        item.setCode("");
        item.setValue("-无-");
        detailModelList.add(item);
        for (StdDictionaryModel stdDictionaryModel : stdDictionaryModelList) {
            DictItem items = new DictItem();
            Integer  id = stdDictionaryModel.getId();
            String name = stdDictionaryModel.getName();
            items.setCode(id.toString());
            items.setValue(name);
            detailModelList.add(items);
        }
        dictionaryResult.setDetailModelList(detailModelList);
        return dictionaryResult;
        return stdMetadataService.getMetadataSelectList(stdVersion, datasetId, jsonpObject.toString(), order, rows, 0);
    }
}

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterDatasetModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.adapter;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -10,7 +11,7 @@ import java.io.Serializable;
/**
 * Created by lingfeng on 2015/9/16.
 */
public class AdapterDatasetModel implements Serializable {
public class AdapterDatasetModel extends Result implements Serializable {
    @Id
    @GeneratedValue(generator = "generator")
    @GenericGenerator(name = "generator", strategy = "increment")

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterDatasetRelationModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.adapter;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -10,7 +11,7 @@ import java.io.Serializable;
/**
 * Created by lingfeng on 2015/9/16.
 */
public class AdapterDatasetRelationModel implements Serializable {
public class AdapterDatasetRelationModel extends Result implements Serializable {
    @Id
    @GeneratedValue(generator = "generator")
    @GenericGenerator(name = "generator", strategy = "increment")

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterDictEntryModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.adapter;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -10,7 +11,7 @@ import java.io.Serializable;
/**
 * Created by lingfeng on 2015/9/16.
 */
public class AdapterDictEntryModel implements Serializable {
public class AdapterDictEntryModel extends Result implements Serializable {
    @Id
    @GeneratedValue(generator = "generator")
    @GenericGenerator(name = "generator", strategy = "increment")

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterDictModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.adapter;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -10,7 +11,7 @@ import java.io.Serializable;
/**
 * Created by lingfeng on 2015/9/16.
 */
public class AdapterDictModel implements Serializable {
public class AdapterDictModel extends Result implements Serializable {
    @Id
    @GeneratedValue(generator = "generator")
    @GenericGenerator(name = "generator", strategy = "increment")

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterMetadataModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.adapter;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -10,7 +11,7 @@ import java.io.Serializable;
/**
 * Created by lingfeng on 2015/9/16.
 */
public class AdapterMetadataModel implements Serializable {
public class AdapterMetadataModel extends Result implements Serializable {
    @Id
    @GeneratedValue(generator = "generator")
    @GenericGenerator(name = "generator", strategy = "increment")

+ 3 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterSchemeDispatchModel.java

@ -1,5 +1,7 @@
package com.yihu.ehr.standard.model.adapter;
import com.yihu.ehr.framework.model.Result;
import java.io.Serializable;
/**
@ -7,7 +9,7 @@ import java.io.Serializable;
 *
 * @Created by lingfeng 2015/12/23.
 */
public class AdapterSchemeDispatchModel implements Serializable {
public class AdapterSchemeDispatchModel extends Result implements Serializable {
    private Integer id;
    private Integer schemeId;

+ 3 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterSchemeModel.java

@ -1,5 +1,7 @@
package com.yihu.ehr.standard.model.adapter;
import com.yihu.ehr.framework.model.Result;
import java.io.Serializable;
/**
@ -7,7 +9,7 @@ import java.io.Serializable;
 *
 * @Created by lingfeng 2015/12/23.
 */
public class AdapterSchemeModel implements Serializable {
public class AdapterSchemeModel extends Result implements Serializable {
    private Integer id;
    private Integer parentId;

+ 3 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/adapter/AdapterSchemeVersionModel.java

@ -1,5 +1,7 @@
package com.yihu.ehr.standard.model.adapter;
import com.yihu.ehr.framework.model.Result;
import java.io.Serializable;
import java.util.Date;
@ -8,7 +10,7 @@ import java.util.Date;
 *
 * @created lingfeng 2015/12/23.
 */
public class AdapterSchemeVersionModel implements Serializable {
public class AdapterSchemeVersionModel extends Result implements Serializable {
    private Integer id;
    private Integer schemeId;

+ 3 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StandardModel.java

@ -1,5 +1,7 @@
package com.yihu.ehr.standard.model.standard;
import com.yihu.ehr.framework.model.Result;
import java.io.Serializable;
/**
@ -7,7 +9,7 @@ import java.io.Serializable;
 *
 * @created Airhead 2015/12/23.
 */
public class StandardModel implements Serializable {
public class StandardModel extends Result implements Serializable {
    private Integer id;

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StandardVersionModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.standard;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
@ -11,7 +12,7 @@ import java.util.Date;
 *
 * @created Airhead 2015/12/23.
 */
public class StandardVersionModel implements Serializable {
public class StandardVersionModel extends Result implements Serializable {
    private Integer id;

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdCDACatalogModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.standard;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
@ -10,7 +11,7 @@ import java.io.Serializable;
 *
 * @created Airhead 2015/12/23.
 */
public class StdCDACatalogModel implements Serializable {
public class StdCDACatalogModel extends Result implements Serializable {
    @Id
    @GenericGenerator(name = "generator", strategy = "increment")
    @Column(name = "id")

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdCDADatasetModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.standard;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -11,7 +12,7 @@ import java.io.Serializable;
 *
 * @created Airhead 2015/12/23.
 */
public class StdCDADatasetModel implements Serializable {
public class StdCDADatasetModel extends Result implements Serializable {
    @Id
    @GenericGenerator(name = "generator", strategy = "increment")
    @Column(name = "id")

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdCDAModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.standard;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -9,7 +10,7 @@ import java.io.Serializable;
/**
 * @created Airhead 2015/12/23.
 */
public class StdCDAModel implements Serializable {
public class StdCDAModel extends Result implements Serializable {
    @Id
    @GenericGenerator(name = "generator", strategy = "increment")
    @Column(name = "id")

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdDataSetModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.standard;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -9,7 +10,7 @@ import java.io.Serializable;
/**
 * Created by wq on 2015/9/16.
 */
public class StdDataSetModel implements Serializable {
public class StdDataSetModel extends Result implements Serializable {
    @Id
    @GenericGenerator(name = "generator", strategy = "increment")
    @Column(name = "id")

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdDatasetCatalogModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.standard;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
@ -10,7 +11,7 @@ import java.io.Serializable;
 *
 * @created Airhead 2015/12/23.
 */
public class StdDatasetCatalogModel implements Serializable {
public class StdDatasetCatalogModel extends Result implements Serializable {
    public static String TABLE_NAME = "STD_DATASET_CATALOG";
    @Id

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdDictionaryEntryModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.standard;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -9,7 +10,7 @@ import java.io.Serializable;
/**
 * @created Airhead 2015/12/23.
 */
public class StdDictionaryEntryModel implements Serializable {
public class StdDictionaryEntryModel extends Result implements Serializable {
    @Id
    @GenericGenerator(name = "generator", strategy = "increment")
    @Column(name = "id")

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdDictionaryModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.standard;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -11,7 +12,7 @@ import java.io.Serializable;
 *
 * @created Airhead 2015/12/23.
 */
public class StdDictionaryModel implements Serializable {
public class StdDictionaryModel extends Result implements Serializable {
    @Id
    @GenericGenerator(name = "generator", strategy = "increment")
    @Column(name = "id")

+ 2 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/StdMetaDataModel.java

@ -1,5 +1,6 @@
package com.yihu.ehr.standard.model.standard;
import com.yihu.ehr.framework.model.Result;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Column;
@ -9,7 +10,7 @@ import java.io.Serializable;
/**
 * Created by wq on 2015/9/22.
 */
public class StdMetaDataModel implements Serializable {
public class StdMetaDataModel extends Result implements Serializable {
    @Id
    @GenericGenerator(name = "generator", strategy = "increment")
    @Column(name = "id")

+ 27 - 0
Hos-resource/src/main/java/com/yihu/ehr/standard/model/standard/resultModel/PublisherResultModel.java

@ -0,0 +1,27 @@
package com.yihu.ehr.standard.model.standard.resultModel;
import com.yihu.ehr.framework.model.Result;
/**
 * Created by lingfeng on 2016/4/22.
 */
public class PublisherResultModel extends Result {
    String name;
    String code;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
}

+ 4 - 0
Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterDatasetRelationService.java

@ -14,6 +14,8 @@ import org.hibernate.Session;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Transactional
@Service("AdapterDatasetRelationService")
public class AdapterDatasetRelationService extends SQLGeneralDAO {
@ -43,6 +45,8 @@ public class AdapterDatasetRelationService extends SQLGeneralDAO {
            sql = sqlCreator.insertData(version.getMetaDataTableName(), jsonNode);
            query = getExeuteQuery(sqlCreator, sql);
            query.executeUpdate();
            adapterDatasetRelationModel.setSuccessFlg(true);
            adapterDatasetRelationModel.setMessage("保存数据集关联成功");
            return adapterDatasetRelationModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.SaveDatasetRelationFailed);

+ 76 - 47
Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterDatasetService.java

@ -8,6 +8,8 @@ import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.constrant.TreeView;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.BeanTransformer;
@ -37,7 +39,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
        super.finalize();
    }
    public AdapterDatasetModel add(String adapterVersion, String dataset) {
    public Result add(String adapterVersion, String dataset) {
        try {
            AdapterVersion version = new AdapterVersion(adapterVersion);
            ObjectMapper objectMapper = new ObjectMapper();
@ -48,16 +50,18 @@ public class AdapterDatasetService extends SQLGeneralDAO {
            String sql = sqlCreator.insertData(version.getDataSetTableName(), jsonNode);
            Query query = getExeuteQuery(sqlCreator, sql);
            query.executeUpdate();
            adapterDatasetModel.setSuccessFlg(true);
            adapterDatasetModel.setMessage("保存适配数据集成功");
            return adapterDatasetModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.SavedatasetFailed);
            return Result.error("保存适配数据集失败");
        }
    }
    public void delete(String adapterVersion, Integer datasetId) {
    public Result delete(String adapterVersion, Integer datasetId) {
        try {
            if (adapterVersion == null || adapterVersion.length() == 0) {
                throw new ApiException(ErrorCode.InvalidStdVersion);
                return Result.success("无效适配版本");
            }
            AdapterVersion version = new AdapterVersion(adapterVersion);
            Session session = getCurrentSession();
@ -65,12 +69,13 @@ public class AdapterDatasetService extends SQLGeneralDAO {
            Query query = session.createSQLQuery(sql);
            query.setInteger("id", datasetId);
            query.executeUpdate();
            return Result.success("删除适配数据集成功");
        } catch (Exception e) {
            throw new ApiException(ErrorCode.DeleteDataSetFailed);
            return Result.error("删除适配数据集失败");
        }
    }
    public AdapterDatasetModel modify(String adapterVersion, String dataset) {
    public Result modify(String adapterVersion, String dataset) {
        try {
            AdapterVersion version = new AdapterVersion(adapterVersion);
            ObjectMapper objectMapper =  new ObjectMapper();
@ -80,50 +85,72 @@ public class AdapterDatasetService extends SQLGeneralDAO {
            String sql = sqlCreator.updateDataByTableKey(version.getDataSetTableName(), jsonNode);
            Query query = getExeuteQuery(sqlCreator, sql);
            query.executeUpdate();
            adapterDatasetModel.setSuccessFlg(true);
            adapterDatasetModel.setMessage("修改适配数据集成功");
            return adapterDatasetModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.UpdateDatasetFailed);
            return Result.error("修改适配数据集失败");
        }
    }
    public List getDatasetList(Class tClass, String version, String condition, String order, Integer limit, Integer offset) {
    public Result get(String version, Integer datasetId) {
        try {
            AdapterVersion adapterVersion = new AdapterVersion(version);
            String tableName = adapterVersion.getDataSetTableName();
            SqlCreator sqlCreator = new SqlCreator(tClass);
            ObjectMapper objectMapper =  new ObjectMapper();
            if (!StringUtil.isEmpty(condition)) {
                JsonNode jsonNode = objectMapper.readTree(condition);
                String name = jsonNode.get("name").asText();
                sqlCreator.likeOrCondition("stdDatasetName", "stdDatasetCode", name);
            }
            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);
                }
            }
            String sql = sqlCreator.selectData(tableName);
            Query query = getQuery(sqlCreator, sql);
            if (limit != null) {
                query.setMaxResults(limit);
                if (offset != null) {
                    query.setFirstResult((offset - 1) * limit);
                }
            }
            return query.list();
            AdapterDatasetModel adapterDatasetModel = (AdapterDatasetModel) get(AdapterDatasetModel.class, adapterVersion.getDataSetTableName(), datasetId);
            adapterDatasetModel.setSuccessFlg(true);
            adapterDatasetModel.setMessage("获取适配数据集成功");
            return adapterDatasetModel;
        } catch (Exception e) {
            e.printStackTrace();
            throw new ApiException(ErrorCode.GetDataSetListFailed);
            return Result.error("获取适配数据集失败");
        }
    }
    public Integer getDatasetInt(Class tClass, String version, String condition) {
    public DetailModelResult getDetailModelResult(String version, String condition, String order, Integer rows, Integer page) {
        try {
            AdapterVersion adapterVersion = new AdapterVersion(version);
            List<AdapterDatasetModel> dataSetModelList = getDatasetList(AdapterDatasetModel.class, version, condition, order, rows, page);
            Integer count = getDatasetInt(AdapterDatasetModel.class, adapterVersion, condition);
            DetailModelResult detailModelResult = DetailModelResult.success("获取适配数据集成功");
            detailModelResult.setDetailModelList(dataSetModelList);
            detailModelResult.setTotalCount(count);
            return detailModelResult;
        } catch (Exception e) {
            return DetailModelResult.error("获取适配数据集失败");
        }
    }
    public List getDatasetList(Class tClass, String version, String condition, String order, Integer limit, Integer offset) throws Exception {
        AdapterVersion adapterVersion = new AdapterVersion(version);
        String tableName = adapterVersion.getDataSetTableName();
        SqlCreator sqlCreator = new SqlCreator(tClass);
        ObjectMapper objectMapper =  new ObjectMapper();
        if (!StringUtil.isEmpty(condition)) {
            JsonNode jsonNode = objectMapper.readTree(condition);
            String name = jsonNode.get("name").asText();
            sqlCreator.likeOrCondition("stdDatasetName", "stdDatasetCode", name);
        }
        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);
            }
        }
        String sql = sqlCreator.selectData(tableName);
        Query query = getQuery(sqlCreator, sql);
        if (limit != null) {
            query.setMaxResults(limit);
            if (offset != null) {
                query.setFirstResult((offset - 1) * limit);
            }
        }
        return query.list();
    }
    public Integer getDatasetInt(Class tClass,  AdapterVersion adapterVersion, String condition) {
        try {
            String tableName = adapterVersion.getDataSetTableName();
            SqlCreator sqlCreator = new SqlCreator(tClass);
            ObjectMapper objectMapper =  new ObjectMapper();
@ -149,8 +176,8 @@ public class AdapterDatasetService extends SQLGeneralDAO {
        boolean adapter = false;  //定制是否添加根节点
        //获取所有定制数据集
        AdapterVersion aVersion = new AdapterVersion(adapterVersion);
        List<AdapterDatasetModel> adapterDataSetList = getList(AdapterDatasetModel.class, aVersion.getDataSetTableName(), "", "", null, null, ErrorCode.GetDataSetListFailed);
        List<AdapterMetadataModel> adapterMetaDataList = getList(AdapterMetadataModel.class, aVersion.getMetaDataTableName(), "", "", null, null, ErrorCode.GetMetaDataListFaield);
        List<AdapterDatasetModel> adapterDataSetList = getList(AdapterDatasetModel.class, aVersion.getDataSetTableName(), "", "", null, null);
        List<AdapterMetadataModel> adapterMetaDataList = getList(AdapterMetadataModel.class, aVersion.getMetaDataTableName(), "", "", null, null);
        List<TreeView> adapterCustomizeList = new ArrayList<>();
        //数据集
        for (AdapterDatasetModel adapterDataset : adapterDataSetList) {
@ -195,7 +222,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
        //获取所有标准数据集
        StandardVersion sVersion = new StandardVersion(stdVersion);
        List<StdDataSetModel> dataSetList = getList(StdDataSetModel.class, sVersion.getDataSetTableName(),  "", "", null, null, ErrorCode.GetDataSetListFailed);
        List<StdDataSetModel> dataSetList = getList(StdDataSetModel.class, sVersion.getDataSetTableName(),  "", "", null, null);
        String idListStr = Constants.EMPTY;
        for (StdDataSetModel dataSet : dataSetList) {
            idListStr += dataSet.getId() + Constants.COMMA;
@ -272,7 +299,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
        treeViewList.addAll(stdCustomizeList);
    }
    public List<TreeView> getDatasetCustomize(String adapterVersion, String stdVersion) {
    public DetailModelResult getDatasetCustomize(String adapterVersion, String stdVersion) {
        try {
            List<TreeView> treeViewList = new ArrayList<>();
@ -280,13 +307,15 @@ public class AdapterDatasetService extends SQLGeneralDAO {
            List<Integer> hasCheckMetadataIdList = new ArrayList<>();
            getAdapterCustomize(adapterVersion, treeViewList, hasCheckDatasetIdList, hasCheckMetadataIdList);
            getStdCustomize(stdVersion, treeViewList, hasCheckDatasetIdList, hasCheckMetadataIdList);
            return treeViewList;
            DetailModelResult detailModelResult = DetailModelResult.success("获取定制数据集列表成功");
            detailModelResult.setDetailModelList(treeViewList);
            return detailModelResult;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.GetDataSetListFailed);
            return DetailModelResult.error("获取定制数据集列表失败");
        }
    }
    public boolean 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 {
@ -310,9 +339,9 @@ public class AdapterDatasetService extends SQLGeneralDAO {
            }
            updateDatasetCustomizeData(schemeId, aVersion, sVersion, newDatasetIdList, newMetadataIdList);
            return true;
            return Result.success("定制数据集成功");
        } catch (Exception e) {
            throw new ApiException(ErrorCode.UpdateDatasetFailed);
            return Result.error("定制数据集失败");
        }
    }
@ -399,7 +428,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
        return sql.toString();
    }
    public List getAdapterDatasetNotNullList(Class tClass, String tableName, String condition, ErrorCode errorCode) {
    public List getAdapterDatasetNotNullList(Class tClass, String tableName, String condition) {
        try {
            StringBuffer sql = new StringBuffer();
            sql.append("SELECT * FROM ").append(tableName);

+ 44 - 10
Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterDictEntryService.java

@ -6,6 +6,8 @@ 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.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.SqlCreator;
@ -36,7 +38,7 @@ public class AdapterDictEntryService extends SQLGeneralDAO {
        super.finalize();
    }
    public AdapterDictEntryModel add(String adapterVersion, String dictentry) {
    public Result add(String adapterVersion, String dictentry) {
        try {
            AdapterVersion version = new AdapterVersion(adapterVersion);
            ObjectMapper objectMapper = new ObjectMapper();
@ -52,9 +54,11 @@ public class AdapterDictEntryService extends SQLGeneralDAO {
            sql = sqlCreator.insertData(version.getDictEntryTableName(), jsonNode);
            query = getExeuteQuery(sqlCreator, sql);
            query.executeUpdate();
            adapterDictEntryModel.setSuccessFlg(true);
            adapterDictEntryModel.setMessage("保存适配字典项成功");
            return adapterDictEntryModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.saveDictEntryFailed);
            return Result.error("保存适配字典项失败");
        }
    }
@ -72,7 +76,7 @@ public class AdapterDictEntryService extends SQLGeneralDAO {
        }
    }
    public AdapterDictEntryModel modify(String adapterVersion, String dictentry) {
    public Result modify(String adapterVersion, String dictentry) {
        try {
            AdapterVersion version = new AdapterVersion(adapterVersion);
            ObjectMapper objectMapper = new ObjectMapper();
@ -82,12 +86,39 @@ public class AdapterDictEntryService extends SQLGeneralDAO {
            String sql = sqlCreator.updateDataByTableKey(version.getDictEntryTableName(), jsonNode);
            Query query = getExeuteQuery(sqlCreator, sql);
            query.executeUpdate();
            adapterDictEntryModel.setSuccessFlg(true);
            adapterDictEntryModel.setMessage("获取适配字典项成功");
            return adapterDictEntryModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.UpdateDictEntryFailed);
            return Result.error("获取适配字典项失败");
        }
    }
    public Result get(String version, Integer dictEntryId) {
        try {
            AdapterVersion adapterVersion = new AdapterVersion(version);
            AdapterDictEntryModel adapterDictEntryModel = (AdapterDictEntryModel) get(AdapterDictEntryModel.class, adapterVersion.getDictTableName(), dictEntryId);
            adapterDictEntryModel.setSuccessFlg(true);
            adapterDictEntryModel.setMessage("获取适配字典项成功");
            return adapterDictEntryModel;
        } catch (Exception e) {
            return Result.error("获取适配字典项失败");
        }
    }
    public DetailModelResult getDetailResult(String adapterVersion, String condition, String order, Integer rows, Integer page) {
       try {
           List dictEntryList = getDictEntryList(AdapterDictEntryModel.class, adapterVersion, condition, order, rows, page);
           Integer count = getDictEntryInt(AdapterDictModel.class, adapterVersion, condition);
           DetailModelResult result = DetailModelResult.success("获取适配字典项列表成功");
           result.setDetailModelList(dictEntryList);
           result.setTotalCount(count);
           return result;
       } catch (Exception e) {
           return DetailModelResult.error("获取适配字典项列表失败");
       }
    }
    public List getDictEntryList(Class tClass, String adapterVersion, String condition, String order, Integer limit, Integer offset) throws Exception{
        AdapterVersion version = new AdapterVersion(adapterVersion);
        String tableName = version.getDictEntryTableName();
@ -196,7 +227,7 @@ public class AdapterDictEntryService extends SQLGeneralDAO {
        return count;
    }
    public List<AdapterDictEntryResultDetailModel> updateDictEntrys(String adapterVersion, String list) {
    public DetailModelResult updateDictEntrys(String adapterVersion, String list) {
        try {
            AdapterVersion version = new AdapterVersion(adapterVersion);
            ObjectMapper objectMapper = new ObjectMapper();
@ -257,16 +288,18 @@ public class AdapterDictEntryService extends SQLGeneralDAO {
                    query.executeUpdate();
                }
            }
            return adapterDictEntryList;
            DetailModelResult detailModelResult = DetailModelResult.success("保存适配字典项成功");
            detailModelResult.setDetailModelList(adapterDictEntryList);
            return detailModelResult;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.saveDictEntryFailed);
            return DetailModelResult.error("保存适配字典项失败");
        }
    }
    public void deleteMultiple(String adapterVersion, Integer dictEntryId, Integer stdDictId, Integer adapterDictId) {
    public Result deleteMultiple(String adapterVersion, Integer dictEntryId, Integer stdDictId, Integer adapterDictId) {
        try {
            if (adapterVersion == null || adapterVersion.length() == 0) {
                throw new ApiException(ErrorCode.InvalidStdVersion);
                return Result.error("无效适配版本");
            }
            AdapterVersion version = new AdapterVersion(adapterVersion);
            Session session = getCurrentSession();
@ -289,8 +322,9 @@ public class AdapterDictEntryService extends SQLGeneralDAO {
                query.setInteger("adapterDictId", adapterDictId);
                query.executeUpdate();
            }
            return Result.success("删除适配字典项成功");
        } catch (Exception e) {
            throw new ApiException(ErrorCode.DeleteDictEntryFailed);
            return Result.error("删除适配字典项失败");
        }
    }
}

+ 40 - 9
Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterDictService.java

@ -4,8 +4,8 @@ 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.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.SqlCreator;
import com.yihu.ehr.standard.model.adapter.AdapterDictModel;
@ -30,7 +30,7 @@ public class AdapterDictService extends SQLGeneralDAO {
        super.finalize();
    }
    public AdapterDictModel add(String adapterVersion, String dict) {
    public Result add(String adapterVersion, String dict) {
        try {
            AdapterVersion version = new AdapterVersion(adapterVersion);
            ObjectMapper objectMapper = new ObjectMapper();
@ -46,16 +46,18 @@ public class AdapterDictService extends SQLGeneralDAO {
            sql = sqlCreator.insertData(version.getMetaDataTableName(), jsonNode);
            query = getExeuteQuery(sqlCreator, sql);
            query.executeUpdate();
            adapterDictModel.setSuccessFlg(true);
            adapterDictModel.setMessage("保存适配字典成功");
            return adapterDictModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.SaveDictFailed);
           return Result.error("保存适配字典失败");
        }
    }
    public void delete(String adapterVersion, Integer dictId) {
    public Result delete(String adapterVersion, Integer dictId) {
        try {
            if (adapterVersion == null || adapterVersion.length() == 0) {
                throw new ApiException(ErrorCode.InvalidStdVersion);
                return Result.error("无效适配版本");
            }
            AdapterVersion version = new AdapterVersion(adapterVersion);
            Session session = getCurrentSession();
@ -63,12 +65,13 @@ public class AdapterDictService extends SQLGeneralDAO {
            Query query = session.createSQLQuery(sql);
            query.setInteger("id", dictId);
            query.executeUpdate();
            return Result.success("删除适配字典成功");
        } catch (Exception e) {
            throw new ApiException(ErrorCode.DeleteDictFailed);
            return Result.error("删除适配字典失败");
        }
    }
    public AdapterDictModel modify(String adapterVersion, String dict) {
    public Result modify(String adapterVersion, String dict) {
        try {
            AdapterVersion version = new AdapterVersion(adapterVersion);
            ObjectMapper objectMapper = new ObjectMapper();
@ -79,9 +82,37 @@ public class AdapterDictService extends SQLGeneralDAO {
            String sql = sqlCreator.updateDataByTableKey(version.getMetaDataTableName(), jsonNode);
            Query query = getExeuteQuery(sqlCreator, sql);
            query.executeUpdate();
            adapterDictModel.setSuccessFlg(true);
            adapterDictModel.setMessage("修改适配字典成功");
            return adapterDictModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.UpdateDictFailed);
            return Result.error("修改适配字典失败");
        }
    }
    public DetailModelResult getDetailResult(String adapterVersion, String condition, String order, Integer rows, Integer page) {
        try {
            List dictList = getDictList(AdapterDictModel.class, adapterVersion, condition, order, rows, page);
            Integer count = getDictInt(AdapterDictModel.class, adapterVersion, condition);
            DetailModelResult result = DetailModelResult.success("获取适配字典列表成功");
            result.setDetailModelList(dictList);
            result.setTotalCount(count);
            return result;
        } catch (Exception e) {
            return DetailModelResult.error("获取适配字典列表成功");
        }
    }
    public Result get(String version, Integer dictId) {
        try {
            AdapterVersion adapterVersion = new AdapterVersion(version);
            AdapterDictModel adapterDictModel = (AdapterDictModel) get(AdapterDictModel.class, adapterVersion.getDictTableName(), dictId);
            adapterDictModel.setSuccessFlg(true);
            adapterDictModel.setMessage("获取适配字典成功");
            return adapterDictModel;
        } catch (Exception e) {
            return Result.error("获取适配字典失败");
        }
    }

+ 44 - 11
Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterMetadataService.java

@ -6,6 +6,8 @@ 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.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.SqlCreator;
@ -38,7 +40,7 @@ public class AdapterMetadataService extends SQLGeneralDAO {
        super.finalize();
    }
    public AdapterMetadataModel add(String adapterVersion, String metadata) throws Exception {
    public Result add(String adapterVersion, String metadata) throws Exception {
        try {
            AdapterVersion version = new AdapterVersion(adapterVersion);
            ObjectMapper objectMapper = new ObjectMapper();
@ -54,9 +56,10 @@ public class AdapterMetadataService extends SQLGeneralDAO {
            sql = sqlCreator.insertData(version.getMetaDataTableName(), jsonNode);
            query = getExeuteQuery(sqlCreator, sql);
            query.executeUpdate();
            adapterMetadataModel.setMessage("保存适配数据元成功");
            return adapterMetadataModel;
        } catch (Exception e) {
           throw new ApiException(ErrorCode.SaveMetaDataFailed);
            return Result.error("保存适配数据元失败");
        }
    }
@ -76,7 +79,7 @@ public class AdapterMetadataService extends SQLGeneralDAO {
        }
    }
    public AdapterMetadataModel modify(String adapterVersion, String metadata) throws Exception {
    public Result modify(String adapterVersion, String metadata) throws Exception {
        try {
            AdapterVersion version = new AdapterVersion(adapterVersion);
            ObjectMapper objectMapper = new ObjectMapper();
@ -87,9 +90,36 @@ public class AdapterMetadataService extends SQLGeneralDAO {
            String sql = sqlCreator.updateDataByTableKey(version.getMetaDataTableName(), jsonNode);
            Query query = getExeuteQuery(sqlCreator, sql);
            query.executeUpdate();
            adapterMetadataModel.setSuccessFlg(true);
            adapterMetadataModel.setMessage("修改适配数据元成功");
            return adapterMetadataModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.UpdateMetaDataFailed);
           return Result.error("修改适配数据元失败");
        }
    }
    public Result get(String version, Integer dictEntryId) {
        try {
            AdapterVersion adapterVersion = new AdapterVersion(version);
            AdapterMetadataModel adapterMetadataModel = (AdapterMetadataModel) get(AdapterMetadataModel.class, adapterVersion.getDictTableName(), dictEntryId);
            adapterMetadataModel.setSuccessFlg(true);
            adapterMetadataModel.setMessage("获取适配数据元成功");
            return adapterMetadataModel;
        } catch (Exception e) {
            return Result.error("获取适配数据元失败");
        }
    }
    public DetailModelResult getDetailResult(String adapterVersion, String condition, String order, Integer rows, Integer page) {
        try {
            List dictEntryList = getMetadataList(AdapterMetadataModel.class, adapterVersion, condition, order, rows, page);
            Integer count = getMetadataCount(AdapterMetadataModel.class, adapterVersion, condition);
            DetailModelResult result = DetailModelResult.success("获取适配数据元列表成功");
            result.setDetailModelList(dictEntryList);
            result.setTotalCount(count);
            return result;
        } catch (Exception e) {
            return DetailModelResult.error("获取适配数据元列表失败");
        }
    }
@ -210,7 +240,7 @@ public class AdapterMetadataService extends SQLGeneralDAO {
    public List getInfoList(String adapterVersion, String condition, String order, Integer limit, Integer offset) throws Exception{
        AdapterVersion version = new AdapterVersion(adapterVersion);
        List<AdapterMetadataModel> metadataModelList = getList(AdapterMetadataModel.class, version.getMetaDataTableName(), condition, order, limit, offset, ErrorCode.GetMetaDataListFaield);
        List<AdapterMetadataModel> metadataModelList = getList(AdapterMetadataModel.class, version.getMetaDataTableName(), condition, order, limit, offset);
        List<Integer> idList = new ArrayList<>();
        Map<Integer, StdMetaDataModel> stdMetaDataModelMap = new HashMap<>();
        Integer schemeId = null;
@ -259,7 +289,7 @@ public class AdapterMetadataService extends SQLGeneralDAO {
        return detailModelList;
    }
    public List<ApiMetadataResultDetailModel> updateMetadatas(String adapterVersion, String list) {
    public DetailModelResult updateMetadatas(String adapterVersion, String list) {
        try {
            AdapterVersion version = new AdapterVersion(adapterVersion);
            ObjectMapper objectMapper = new ObjectMapper();
@ -312,16 +342,18 @@ public class AdapterMetadataService extends SQLGeneralDAO {
                    query.executeUpdate();
                }
            }
            return adapterMetadataList;
            DetailModelResult detailModelResult = DetailModelResult.success("修改适配数据元成功");
            detailModelResult.setDetailModelList(adapterMetadataList);
            return detailModelResult;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.SaveMetaDataFailed);
            return DetailModelResult.error("修改适配数据元失败");
        }
    }
    public void deleteMultiple(String adapterVersion, Integer metadataId, Integer stdDatasetId, Integer adapterDatasetId) {
    public Result deleteMultiple(String adapterVersion, Integer metadataId, Integer stdDatasetId, Integer adapterDatasetId) {
        try {
            if (adapterVersion == null || adapterVersion.length() == 0) {
                throw new ApiException(ErrorCode.InvalidStdVersion);
                return Result.error("无效适配版本");
            }
            AdapterVersion version = new AdapterVersion(adapterVersion);
            Session session = getCurrentSession();
@ -344,8 +376,9 @@ public class AdapterMetadataService extends SQLGeneralDAO {
                query.setInteger("adapterDatasetId", adapterDatasetId);
                query.executeUpdate();
            }
            return Result.success("删除适配数据元成功");
        } catch (Exception e) {
            throw new ApiException(ErrorCode.DeleteDictEntryFailed);
            return Result.error("删除适配数据元失败");
        }
    }
}

+ 141 - 117
Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterSchemeService.java

@ -4,8 +4,8 @@ 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.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.standard.model.adapter.AdapterSchemeModel;
@ -32,7 +32,19 @@ public class AdapterSchemeService extends SQLGeneralDAO {
    public static final String BEAN_ID = "AdapterSchemeService";
    public AdapterSchemeModel add(String scheme) {
    public DetailModelResult getEntityList(String query, String order, Integer limit, Integer offset) {
        try {
            List list = getEntityList(AdapterSchemeModel.class, query, order, limit, offset);
            DetailModelResult detailModelResult = DetailModelResult.success("获取适配列表成功");
            detailModelResult.setDetailModelList(list);
            return detailModelResult;
        } catch (Exception e) {
            DetailModelResult detailModelResult = DetailModelResult.error("获取适配列表失败");
            return detailModelResult;
        }
    }
    public Result add(String scheme) {
        Boolean existFlg = false;
        try {
            ObjectMapper objectMapper = new ObjectMapper();
@ -42,15 +54,16 @@ public class AdapterSchemeService extends SQLGeneralDAO {
                model.setStatus(0);
                saveEntity(model);
            }
            model.setSuccessFlg(true);
            model.setMessage("保存适配方案成功");
            return model;
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistSchemeName);
            return Result.error("已存在相同适配方案名");
        } else {
            throw new ApiException(ErrorCode.SaveSchemeFailed);
            return Result.error("保存适配方案失败");
        }
    }
@ -65,22 +78,22 @@ public class AdapterSchemeService extends SQLGeneralDAO {
        return false;
    }
    public void delete(Integer schemeId) {
    public Result delete(Integer schemeId) {
        Boolean existFlg = false;
        try {
            AdapterSchemeModel model = getEntity(AdapterSchemeModel.class, schemeId);
            existFlg = existSchemeVersionValid(schemeId);
            if (!existFlg) {
                deleteEntity(model);
                return;
                return Result.success("删除适配方案成功");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistSchemeVersion);
            return Result.error("已存在适配方案版本");
        } else {
            throw new ApiException(ErrorCode.DeleteSchemeFailed);
            return Result.error("删除适配方案成功失败");
        }
    }
@ -96,7 +109,7 @@ public class AdapterSchemeService extends SQLGeneralDAO {
        return false;
    }
    public AdapterSchemeModel update(String scheme) {
    public Result update(String scheme) {
        Boolean existFlg = false;
        try {
            ObjectMapper objectMapper = new ObjectMapper();
@ -104,143 +117,154 @@ public class AdapterSchemeService extends SQLGeneralDAO {
            existFlg = schemeNameValidate(model.getId(), model.getName());
            if (!existFlg) {
                updateEntity(model);
                model.setSuccessFlg(true);
                model.setMessage("修改适配方案成功");
                return model;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistSchemeName);
            return Result.error("已存在适配方案名称");
        } else {
            throw new ApiException(ErrorCode.UpdateSchemeFailed);
            return Result.error("修改适配方案失败");
        }
    }
    public AdapterSchemeModel get(Integer schemeId) {
    public Result get(Integer schemeId) {
        try {
            AdapterSchemeModel model = getEntity(AdapterSchemeModel.class, schemeId);
            model.setSuccessFlg(true);
            model.setMessage("获取适配成功");
            return model;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.GetSchemeFailed);
            return Result.error("获取适配成功");
        }
    }
    public List<SchemeResultDetailModel> getSchemeList(String condition) {
        String name = Constants.EMPTY;
        if (!StringUtil.isEmpty(condition)) {
            ObjectMapper objectMapper = new ObjectMapper();
            try {
                JsonNode jsonNode = objectMapper.readTree(condition);
                if (jsonNode.get("name") != null) {
                    name = jsonNode.get("name").asText();
    public DetailModelResult getSchemeList(String condition) {
        try {
            String name = Constants.EMPTY;
            if (!StringUtil.isEmpty(condition)) {
                ObjectMapper objectMapper = new ObjectMapper();
                try {
                    JsonNode jsonNode = objectMapper.readTree(condition);
                    if (jsonNode.get("name") != null) {
                        name = jsonNode.get("name").asText();
                    }
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        String schemeHql = "FROM AdapterSchemeModel";
        Query query = getCurrentSession().createQuery(schemeHql);
        List<AdapterSchemeModel> adapterSchemeModelList = query.list();
        List<Integer> schemeIdList = new ArrayList<>();
        List<Integer> stdIdList = new ArrayList<>();
        List<String> versionList = new ArrayList<>();
        Map<Integer, AdapterSchemeVersionModel> schemeVersionMap = new HashMap<>();
        Map<Integer, StandardModel> stdMap = new HashMap<>();
        Map<String, StandardVersionModel> stdVersionMap = new HashMap<>();
            String schemeHql = "FROM AdapterSchemeModel";
            Query query = getCurrentSession().createQuery(schemeHql);
            List<AdapterSchemeModel> adapterSchemeModelList = query.list();
            List<Integer> schemeIdList = new ArrayList<>();
            List<Integer> stdIdList = new ArrayList<>();
            List<String> versionList = new ArrayList<>();
            Map<Integer, AdapterSchemeVersionModel> schemeVersionMap = new HashMap<>();
            Map<Integer, StandardModel> stdMap = new HashMap<>();
            Map<String, StandardVersionModel> stdVersionMap = new HashMap<>();
        for (AdapterSchemeModel adapterSchemeModel : adapterSchemeModelList) {
            schemeIdList.add(adapterSchemeModel.getId());
            stdIdList.add(adapterSchemeModel.getStdId());
            stdIdList.add(adapterSchemeModel.getAdapterStdId());
            versionList.add(adapterSchemeModel.getStdVersion());
            versionList.add(adapterSchemeModel.getAdapterStdVersion());
        }
        if (CollectionUtil.isEmpty(schemeIdList)) {
            schemeIdList.add(null);
        }
        if (CollectionUtil.isEmpty(stdIdList)) {
            stdIdList.add(null);
        }
        if (CollectionUtil.isEmpty(versionList)) {
            versionList.add(Constants.EMPTY);
        }
            for (AdapterSchemeModel adapterSchemeModel : adapterSchemeModelList) {
                schemeIdList.add(adapterSchemeModel.getId());
                stdIdList.add(adapterSchemeModel.getStdId());
                stdIdList.add(adapterSchemeModel.getAdapterStdId());
                versionList.add(adapterSchemeModel.getStdVersion());
                versionList.add(adapterSchemeModel.getAdapterStdVersion());
            }
            if (CollectionUtil.isEmpty(schemeIdList)) {
                schemeIdList.add(null);
            }
            if (CollectionUtil.isEmpty(stdIdList)) {
                stdIdList.add(null);
            }
            if (CollectionUtil.isEmpty(versionList)) {
                versionList.add(Constants.EMPTY);
            }
        String adapterVersionHql = "FROM AdapterSchemeVersionModel WHERE schemeId IN :schemeIdList";
        query = getCurrentSession().createQuery(adapterVersionHql);
        query.setParameterList("schemeIdList", schemeIdList);
        List<AdapterSchemeVersionModel> versionModelList = query.list();
        for (AdapterSchemeVersionModel model : versionModelList) {
            schemeVersionMap.put(model.getId(), model);
        }
            String adapterVersionHql = "FROM AdapterSchemeVersionModel WHERE schemeId IN :schemeIdList";
            query = getCurrentSession().createQuery(adapterVersionHql);
            query.setParameterList("schemeIdList", schemeIdList);
            List<AdapterSchemeVersionModel> versionModelList = query.list();
            for (AdapterSchemeVersionModel model : versionModelList) {
                schemeVersionMap.put(model.getId(), model);
            }
        String standardHql = "FROM StandardModel WHERE id IN :stdIdList";
        query = getCurrentSession().createQuery(standardHql);
        query.setParameterList("stdIdList", stdIdList);
        List<StandardModel> stdModelList = query.list();
        for (StandardModel model : stdModelList) {
            stdMap.put(model.getId(), model);
        }
            String standardHql = "FROM StandardModel WHERE id IN :stdIdList";
            query = getCurrentSession().createQuery(standardHql);
            query.setParameterList("stdIdList", stdIdList);
            List<StandardModel> stdModelList = query.list();
            for (StandardModel model : stdModelList) {
                stdMap.put(model.getId(), model);
            }
        String stdVersionHql = "FROM StandardVersionModel WHERE version IN :versionList";
        query = getCurrentSession().createQuery(stdVersionHql);
        query.setParameterList("versionList", versionList);
        List<StandardVersionModel> stdVersionList = query.list();
        for (StandardVersionModel model : stdVersionList) {
            stdVersionMap.put(model.getVersion(), model);
        }
            String stdVersionHql = "FROM StandardVersionModel WHERE version IN :versionList";
            query = getCurrentSession().createQuery(stdVersionHql);
            query.setParameterList("versionList", versionList);
            List<StandardVersionModel> stdVersionList = query.list();
            for (StandardVersionModel model : stdVersionList) {
                stdVersionMap.put(model.getVersion(), model);
            }
        List<SchemeResultDetailModel> resultDetailModelList = new ArrayList<>();
        Map<String, SchemeResultDetailModel> resultDetailModelMap = new HashMap<>();
        Map<String, SchemeResultDetailModel> resultDetailModelCheckMap = new HashMap<>();
        Map<String, SchemeResultDetailModel> resultDetailModelAddMap = new HashMap<>();
            List<SchemeResultDetailModel> resultDetailModelList = new ArrayList<>();
            Map<String, SchemeResultDetailModel> resultDetailModelMap = new HashMap<>();
            Map<String, SchemeResultDetailModel> resultDetailModelCheckMap = new HashMap<>();
            Map<String, SchemeResultDetailModel> resultDetailModelAddMap = new HashMap<>();
        for (AdapterSchemeModel schemeModel : adapterSchemeModelList) {
            String id = "scheme" + schemeModel.getId();
            SchemeResultDetailModel resultDetailModel = new SchemeResultDetailModel();
            resultDetailModel.setId(id);
            resultDetailModel.setPid("");
            resultDetailModel.setType(0);
            resultDetailModel.setName(schemeModel.getName());
            resultDetailModel.setStdName(stdMap.get(schemeModel.getStdId()).getName());
            resultDetailModel.setStdVersion(stdVersionMap.get(schemeModel.getStdVersion()).getVersion());
            resultDetailModel.setStdVersionName(stdVersionMap.get(schemeModel.getStdVersion()).getName());
            resultDetailModel.setPublisher(stdMap.get(schemeModel.getAdapterStdId()) == null ? "" : stdMap.get(schemeModel.getAdapterStdId()).getPublisher());
            resultDetailModel.setAdapterName(stdMap.get(schemeModel.getAdapterStdId())==null?"":stdMap.get(schemeModel.getAdapterStdId()).getName());
            if (stdVersionMap.get(schemeModel.getAdapterStdVersion()) != null) {
                resultDetailModel.setAdapterVersionName(stdVersionMap.get(schemeModel.getAdapterStdVersion()).getName());
                resultDetailModel.setAdapterStdVersion(stdVersionMap.get(schemeModel.getAdapterStdVersion()).getVersion());
            }
            if (StringUtil.isEmpty(name) || schemeModel.getName().contains(name)) {
                resultDetailModelCheckMap.put(id, resultDetailModel);
                resultDetailModelAddMap.put(id, resultDetailModel);
                resultDetailModelList.add(resultDetailModel);
            for (AdapterSchemeModel schemeModel : adapterSchemeModelList) {
                String id = "scheme" + schemeModel.getId();
                SchemeResultDetailModel resultDetailModel = new SchemeResultDetailModel();
                resultDetailModel.setId(id);
                resultDetailModel.setPid("");
                resultDetailModel.setType(0);
                resultDetailModel.setName(schemeModel.getName());
                resultDetailModel.setStdName(stdMap.get(schemeModel.getStdId()).getName());
                resultDetailModel.setStdVersion(stdVersionMap.get(schemeModel.getStdVersion()).getVersion());
                resultDetailModel.setStdVersionName(stdVersionMap.get(schemeModel.getStdVersion()).getName());
                resultDetailModel.setPublisher(stdMap.get(schemeModel.getAdapterStdId()) == null ? "" : stdMap.get(schemeModel.getAdapterStdId()).getPublisher());
                resultDetailModel.setAdapterName(stdMap.get(schemeModel.getAdapterStdId())==null?"":stdMap.get(schemeModel.getAdapterStdId()).getName());
                if (stdVersionMap.get(schemeModel.getAdapterStdVersion()) != null) {
                    resultDetailModel.setAdapterVersionName(stdVersionMap.get(schemeModel.getAdapterStdVersion()).getName());
                    resultDetailModel.setAdapterStdVersion(stdVersionMap.get(schemeModel.getAdapterStdVersion()).getVersion());
                }
                if (StringUtil.isEmpty(name) || schemeModel.getName().contains(name)) {
                    resultDetailModelCheckMap.put(id, resultDetailModel);
                    resultDetailModelAddMap.put(id, resultDetailModel);
                    resultDetailModelList.add(resultDetailModel);
                }
                resultDetailModelMap.put(id, resultDetailModel);
            }
            resultDetailModelMap.put(id, resultDetailModel);
        }
        for (AdapterSchemeVersionModel versionModel : versionModelList) {
            String pid = "scheme" + versionModel.getSchemeId();
            String id = "version" + versionModel.getId();
            SchemeResultDetailModel resultDetailModel = new SchemeResultDetailModel();
            resultDetailModel.setId(id);
            resultDetailModel.setPid(pid);
            resultDetailModel.setName(versionModel.getName());
            resultDetailModel.setStatus(versionModel.getPublishStatus());
            resultDetailModel.setDate(StringUtil.toString(versionModel.getPublishTime()));
            resultDetailModel.setVersion(versionModel.getVersion());
            resultDetailModel.setType(1);
            if (resultDetailModelCheckMap.containsKey(pid)) {
                resultDetailModelList.add(resultDetailModel);
            } else if (StringUtil.isEmpty(name) || versionModel.getName().contains(name)) {
                resultDetailModelList.add(resultDetailModel);
                if (!resultDetailModelAddMap.containsKey(pid)) {
                    resultDetailModelAddMap.put(pid, resultDetailModelMap.get(resultDetailModel.getPid()));
                    resultDetailModelList.add(resultDetailModelMap.get(resultDetailModel.getPid()));
            for (AdapterSchemeVersionModel versionModel : versionModelList) {
                String pid = "scheme" + versionModel.getSchemeId();
                String id = "version" + versionModel.getId();
                SchemeResultDetailModel resultDetailModel = new SchemeResultDetailModel();
                resultDetailModel.setId(id);
                resultDetailModel.setPid(pid);
                resultDetailModel.setName(versionModel.getName());
                resultDetailModel.setStatus(versionModel.getPublishStatus());
                resultDetailModel.setDate(StringUtil.toString(versionModel.getPublishTime()));
                resultDetailModel.setVersion(versionModel.getVersion());
                resultDetailModel.setType(1);
                if (resultDetailModelCheckMap.containsKey(pid)) {
                    resultDetailModelList.add(resultDetailModel);
                } else if (StringUtil.isEmpty(name) || versionModel.getName().contains(name)) {
                    resultDetailModelList.add(resultDetailModel);
                    if (!resultDetailModelAddMap.containsKey(pid)) {
                        resultDetailModelAddMap.put(pid, resultDetailModelMap.get(resultDetailModel.getPid()));
                        resultDetailModelList.add(resultDetailModelMap.get(resultDetailModel.getPid()));
                    }
                }
            }
            DetailModelResult detailModelResult = DetailModelResult.success("获取适配方案成功");
            detailModelResult.setDetailModelList(resultDetailModelList);
            return detailModelResult;
        } catch (Exception e) {
            return DetailModelResult.error("获取适配方案失败");
        }
        return resultDetailModelList;
    }
    public boolean existSchemeVersionValid(Integer schemeId) {

+ 54 - 16
Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterSchemeVersionService.java

@ -6,6 +6,9 @@ import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.SqlCreator;
@ -34,7 +37,34 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
    public static final String BEAN_ID = "AdapterSchemeVersionService";
    public AdapterSchemeVersionModel add(String version) {
    public DictionaryResult getDictionaryResult(Integer schemeId, String condition, String order, Integer rows, Integer page) {
        try {
            List<AdapterSchemeVersionModel> adapterSchemeVersionModelList = getEntityListByParentId(
                    AdapterSchemeVersionModel.class, "schemeId", schemeId, condition, order, rows, page);
            DictionaryResult dictionaryResult = DictionaryResult.success("获取适配方案版本列表成功");
            List<DictItem> detailModelList = new ArrayList<DictItem>();
            DictItem item = new DictItem();
            item.setCode("");
            item.setValue("-无-");
            detailModelList.add(item);
            for(AdapterSchemeVersionModel adapterSchemeVersionModel : adapterSchemeVersionModelList){
                DictItem items = new DictItem();
                String id = adapterSchemeVersionModel.getVersion();
                String name = adapterSchemeVersionModel.getName();
                items.setCode(id.toString());
                items.setValue(name);
                detailModelList.add(items);
            }
            dictionaryResult.setSuccessFlg(true);
            dictionaryResult.setMessage("获取适配方案版本成功");
            dictionaryResult.setDetailModelList(detailModelList);
            return dictionaryResult;
        } catch (Exception e) {
            return DictionaryResult.error("获取适配方案版本失败");
        }
    }
    public Result add(String version) {
        Boolean existFlg = false;
        try {
            ObjectMapper objectMapper = new ObjectMapper();
@ -53,15 +83,17 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
                } else {
                    buildVersionTables(versionModel);
                }
                versionModel.setSuccessFlg(true);
                versionModel.setMessage("保存适配版本成功");
                return versionModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistSchemeVersionName);
            return Result.error("已存在适配方案版本名称");
        } else {
            throw new ApiException(ErrorCode.SaveSchemeVersionFailed);
            return Result.error("保存适配方案失败");
        }
    }
@ -77,7 +109,7 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
        return false;
    }
    public AdapterSchemeVersionModel publish(String version) {
    public Result publish(String version) {
        try {
            ObjectMapper objectMapper = new ObjectMapper();
            AdapterSchemeVersionModel versionModel = objectMapper.readValue(version, AdapterSchemeVersionModel.class);
@ -88,12 +120,12 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
                }
            }
        } catch (Exception e) {
            throw new ApiException(ErrorCode.UpdateSchemeVersionFailed);
            return Result.error("修改适配方案版本失败");
        }
        return update(version);
    }
    public AdapterSchemeVersionModel update(String version) {
    public Result update(String version) {
        Boolean existFlg = false;
        try {
            ObjectMapper objectMapper = new ObjectMapper();
@ -101,15 +133,17 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
            existFlg = schemeVersionNameValidate(versionModel.getSchemeId(), versionModel.getId(), versionModel.getName());
            if (!existFlg) {
                updateEntity(versionModel);
                versionModel.setSuccessFlg(true);
                versionModel.setMessage("修改适配方案成功");
                return versionModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistSchemeVersionName);
            return Result.error("已存在适配方案版本名称");
        } else {
            throw new ApiException(ErrorCode.UpdateSchemeVersionFailed);
            return Result.error("修改适配方案版本失败");
        }
    }
@ -126,7 +160,7 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
        return false;
    }
    public void delete(Integer versionId) {
    public Result delete(Integer versionId) {
        Boolean publishedFlg = false;
        try {
            AdapterSchemeVersionModel versionModel = getEntity(AdapterSchemeVersionModel.class, versionId);
@ -135,24 +169,26 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
            } else {
                this.deleteEntity(versionModel);
                deleteVersionTables(new AdapterVersion(versionModel.getVersion()));
                return;
                return Result.success("删除适配版本成功");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (publishedFlg) {
            throw new ApiException(ErrorCode.StdVersionHasPublished);
            return Result.success("该适配版本已发布");
        } else {
            throw new ApiException(ErrorCode.DeleteSchemeVersionFailed);
            return Result.success("删除适配版本失败");
        }
    }
    public AdapterSchemeVersionModel get(Integer versionId) {
    public Result get(Integer versionId) {
        try {
            AdapterSchemeVersionModel versionModel = getEntity(AdapterSchemeVersionModel.class, versionId);
            versionModel.setSuccessFlg(true);
            versionModel.setMessage("获取适配版本方成功");
            return versionModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.GetSchemeVersionFailed);
            return Result.error("获取适配方案失败");
        }
    }
@ -189,7 +225,7 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
        }
    }
    public AdapterSchemeVersionModel publish(Integer versionId, String publisher) {
    public Result publish(Integer versionId, String publisher) {
        try {
            AdapterSchemeVersionModel adapterSchemeVersionModel = getEntity(AdapterSchemeVersionModel.class, versionId);
            //TODO:generate standard version file;
@ -203,9 +239,11 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
            adapterSchemeVersionModel.setPublishUser(publisher);
            adapterSchemeVersionModel.setPublishStatus(1);
            this.updateEntity(adapterSchemeVersionModel);
            adapterSchemeVersionModel.setSuccessFlg(true);
            adapterSchemeVersionModel.setMessage("发布适配版本成功");
            return adapterSchemeVersionModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.UpdateSchemeVersionFailed);
            return Result.error("发布适配版本失败");
        }
    }

+ 62 - 26
Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StandardService.java

@ -6,6 +6,10 @@ import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.RequestParamTransformer;
@ -36,19 +40,33 @@ public class StandardService extends SQLGeneralDAO {
    public static final String BEAN_ID = "StandardService";
    public List<StandardModel> getList(String condition, String order, Integer limit, Integer offset) {
    public DictionaryResult getDictionaryResult(String condition, String order, Integer limit, Integer offset) {
        try {
            Map queryMap = RequestParamTransformer.parseJsonToMap(condition);
            Map orderMap = RequestParamTransformer.parseJsonToMap(order);
            return this.getList(queryMap, orderMap, limit, offset);
            DictionaryResult dictionaryResult = DictionaryResult.success("获取标准列表成功");
            List<DictItem> detailModelList = new ArrayList<DictItem>();
            List<StandardModel> standardModelList = getList(condition, order, limit, offset);
            for(StandardModel standardModel : standardModelList){
                DictItem items = new DictItem();
                Integer id = standardModel.getId();
                items.setCode(id.toString());
                items.setValue(standardModel.getName());
                detailModelList.add(items);
            }
            dictionaryResult.setDetailModelList(detailModelList);
            return dictionaryResult;
        } catch (Exception e) {
            e.printStackTrace();
            return DictionaryResult.error("获取适配列表失败");
        }
        throw new ApiException(ErrorCode.StandardGetListFailed);
    }
    public Object add(String standard) {
    public List<StandardModel> getList(String condition, String order, Integer limit, Integer offset) {
        Map queryMap = RequestParamTransformer.parseJsonToMap(condition);
        Map orderMap = RequestParamTransformer.parseJsonToMap(order);
        return this.getList(queryMap, orderMap, limit, offset);
    }
    public Result add(String standard) {
        Boolean existCodeFlg = false;
        Boolean existNameFlg = false;
        try {
@ -58,17 +76,19 @@ public class StandardService extends SQLGeneralDAO {
            existNameFlg = standardNameValidate(standardModel.getName());
            if (!existCodeFlg && !existNameFlg) {
                this.add(standardModel);
                standardModel.setSuccessFlg(true);
                standardModel.setMessage("保存标准成功");
                return standardModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existCodeFlg) {
            throw new ApiException(ErrorCode.ExistStandardCode);
            return Result.error("已存在标准编码");
        } else if (existNameFlg) {
            throw new ApiException(ErrorCode.ExistStandardName);
            return Result.error("已存在标准名称");
        } else {
            throw new ApiException(ErrorCode.StandardSaveFailed);
            return Result.error("保存标准失败");
        }
    }
@ -96,13 +116,13 @@ public class StandardService extends SQLGeneralDAO {
        return false;
    }
    public void delete(Integer standardId) {
    public Result delete(Integer standardId) {
        Boolean publishedFlg = false;
        Boolean existFlg = false;
        try {
            StandardModel standardModel = get(standardId);
            StandardModel standardModel = (StandardModel) get(standardId);
            if (standardModel == null) {
                return;
                return Result.error("删除标准失败");
            }
            if (standardModel.getVersionStatus().equals(1)) {
                publishedFlg = true;
@ -110,17 +130,18 @@ public class StandardService extends SQLGeneralDAO {
            existFlg = existStandardVersionValid(standardModel.getId());
            if (!publishedFlg && !existFlg) {
                deleteEntity(StandardModel.class, standardId);
                return;
                return Result.error("删除标准失败");
            }
            return Result.error("删除标准成功");
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (publishedFlg) {
            throw new ApiException(ErrorCode.StandardDeletePublished);
            return Result.error("该标准下已有标准版本");
        } else if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardVersion);
            return Result.error("已存在标准版本");
        } else {
            throw new ApiException(ErrorCode.StandardDeleteFailed);
            return Result.error("删除标准失败");
        }
    }
@ -149,7 +170,7 @@ public class StandardService extends SQLGeneralDAO {
    }
    public StandardModel update(String standard) {
    public Result update(String standard) {
        Boolean existCodeFlg = false;
        Boolean existNameFlg = false;
        try {
@ -160,28 +181,32 @@ public class StandardService extends SQLGeneralDAO {
            if (!existCodeFlg && !existNameFlg) {
                this.update(standardModel);
            }
            standardModel.setSuccessFlg(true);
            standardModel.setMessage("修改标准成功");
            return standardModel;
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existCodeFlg) {
            throw new ApiException(ErrorCode.ExistStandardCode);
            return Result.error("已存在标准编码");
        } else if (existNameFlg) {
            throw new ApiException(ErrorCode.ExistStandardName);
            return Result.error("已存在标准名称");
        } else {
            throw new ApiException(ErrorCode.StandardUpdateFailed);
            return Result.error("修改标准失败");
        }
    }
    public StandardModel get(Integer standardId) {
    public Result get(Integer standardId) {
        try {
            return getEntity(StandardModel.class, standardId);
            StandardModel standardModel = getEntity(StandardModel.class, standardId);
            standardModel.setSuccessFlg(true);
            standardModel.setMessage("获取标准成功");
            return standardModel;
        } catch (Exception e) {
            e.printStackTrace();
        }
        throw new ApiException(ErrorCode.StandardGetFailed);
       return Result.error("获取标准失败");
    }
    public String getSysParamList() {
@ -270,6 +295,17 @@ public class StandardService extends SQLGeneralDAO {
        return resultDetailModelList;
    }
    public DetailModelResult getDetailModelResult(String condition) {
        try {
            List<StandardResultDetailModel> standardResultDetailModelList = getStandardList(condition);
            DetailModelResult detailModelResult = DetailModelResult.success("获取标准列表成功");
            detailModelResult.setDetailModelList(standardResultDetailModelList);
            return detailModelResult;
        } catch (Exception e) {
            return DetailModelResult.error("获取标准列表失败");
        }
    }
    public List<StandardResultDetailModel> getStandardList(String condition) {
        String name = Constants.EMPTY;
        Integer type = null;
@ -327,7 +363,7 @@ public class StandardService extends SQLGeneralDAO {
    //TODO:TEST
    public StandardModel fork(Integer standardId) {
        try {
            StandardModel baseStandard = get(standardId);
            StandardModel baseStandard = (StandardModel) get(standardId);
            StandardModel newStandard = new StandardModel(baseStandard);
            newStandard.setId(null);

+ 78 - 19
Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StandardVersionService.java

@ -5,6 +5,9 @@ import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.RequestParamTransformer;
@ -34,6 +37,53 @@ public class StandardVersionService extends SQLGeneralDAO {
    public static final String BEAN_ID = "StandardVersionService";
    public DictionaryResult getDictionaryResult(Integer standardId, String condition, String order, Integer rows, Integer page) {
        try {
            DictionaryResult dictionaryResult = DictionaryResult.success("获取标准版本成功");
            List<DictItem> detailModelList = new ArrayList<>();
            List<StandardVersionModel> standardVersionModelList = getVersionList(standardId, condition, order, rows, page);
            for(StandardVersionModel standardVersionModel : standardVersionModelList){
                DictItem items = new DictItem();
                String id = standardVersionModel.getVersion();
                String name = standardVersionModel.getName();
                items.setCode(id.toString());
                items.setValue(name);
                detailModelList.add(items);
            }
            dictionaryResult.setDetailModelList(detailModelList);
            return dictionaryResult;
        } catch (Exception e) {
            return DictionaryResult.error("获取标准版本失败");
        }
    }
    public DictionaryResult getDetailResultModelList(Integer standardId, String condition, String order, Integer rows, Integer page) {
        try {
            List<StandardVersionModel> standardVersionModelList = getVersionList(standardId, condition, order, rows, page);
            DictionaryResult dictionaryResult = new DictionaryResult();
            List<DictItem> detailModelList = new ArrayList<DictItem>();
            DictItem item = new DictItem();
            item.setCode("");
            item.setValue("-无-");
            detailModelList.add(item);
            for (StandardVersionModel standardVersionModel : standardVersionModelList) {
                DictItem items = new DictItem();
                String  id = standardVersionModel.getVersion();
                String name = standardVersionModel.getName();
                items.setCode(id.toString());
                items.setValue(name);
                detailModelList.add(items);
            }
            dictionaryResult.setDetailModelList(detailModelList);
            dictionaryResult.setSuccessFlg(true);
            dictionaryResult.setMessage("获取标准版本列表成功");
            return dictionaryResult;
        } catch (Exception e) {
            return DictionaryResult.error("获取标准版本列表失败");
        }
    }
    public List<StandardVersionModel> getVersionList(Integer standardId, String condition, String order, Integer limit, Integer offset) {
        try {
            Map queryMap = RequestParamTransformer.parseJsonToMap(condition);
@ -46,7 +96,7 @@ public class StandardVersionService extends SQLGeneralDAO {
        throw new ApiException(ErrorCode.StandardVersionGetListFailed);
    }
    public Object add(String version) throws Exception {
    public Result add(String version) throws Exception {
        Boolean existFlg = false;
        try {
            ObjectMapper objectMapper = new ObjectMapper();
@ -54,15 +104,17 @@ public class StandardVersionService extends SQLGeneralDAO {
            existFlg = versionNameValidate(versionModel.getStandardId(), versionModel.getName());
            if (!existFlg) {
                this.add(versionModel);
                versionModel.setSuccessFlg(true);
                versionModel.setMessage("保存标准版本成功");
                return versionModel;
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardVersionName);
            return Result.error("已存在标准版本名称");
        } else {
            throw new ApiException(ErrorCode.StandardVersionSaveFailed);
            return Result.error("保存标准版本失败");
        }
    }
@ -91,11 +143,11 @@ public class StandardVersionService extends SQLGeneralDAO {
        return false;
    }
    public void delete(Integer versionId,String version) throws Exception {
    public Result delete(Integer versionId,String version) throws Exception {
        Boolean existFlg = false;
        Boolean useredFlg = false;
        try {
            StandardVersionModel versionModel = get(versionId);
            StandardVersionModel versionModel = (StandardVersionModel) get(versionId);
            if (versionModel.getPublishStatus() == 1) {
                existFlg = true;
            } else {
@ -109,22 +161,22 @@ public class StandardVersionService extends SQLGeneralDAO {
                }else{
                    this.delete(versionModel);
                    deleteVersionTables(new StandardVersion(versionModel.getVersion()));
                    return;
                    return Result.success("删除标准版本成功");
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.StandardVersionDeleteFailed);
        } if(useredFlg){
            throw new ApiException(ErrorCode.StandardVersionUsedDeleteFailed);
        }else {
            throw new ApiException(ErrorCode.StandardVersionDeletePublished);
            return Result.error("该标准版本已发布");
        } else if(useredFlg){
            return Result.error("该标准版本已被适配使用");
        } else {
            return Result.error("删除标准版本失败");
        }
    }
    public StandardVersionModel update(String version) throws Exception {
    public Result update(String version) throws Exception {
        Boolean existFlg = false;
        try {
            ObjectMapper objectMapper = new ObjectMapper();
@ -132,24 +184,28 @@ public class StandardVersionService extends SQLGeneralDAO {
            existFlg = versionNameValidate(versionModel.getStandardId(), versionModel.getId(), versionModel.getName());
            if (!existFlg) {
                this.update(versionModel);
                versionModel.setSuccessFlg(true);
                versionModel.setMessage("修改标准版本成功");
                return versionModel;
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardVersionName);
            return Result.error("已存在标准版本名称");
        } else {
            throw new ApiException(ErrorCode.StandardVersionUpdateFailed);
            return Result.error("修改标准版本失败");
        }
    }
    public StandardVersionModel get(Integer versionId) {
    public Result get(Integer versionId) {
        try {
            StandardVersionModel versionModel = this.myGet(versionId);
            versionModel.setSuccessFlg(true);
            versionModel.setMessage("获取标准版本信息成功");
            return versionModel;
        } catch (DataAccessException e) {
            throw new ApiException(ErrorCode.StandardVersionGetFailed);
            return Result.error("获取标准版本信息失败");
        }
    }
@ -162,11 +218,14 @@ public class StandardVersionService extends SQLGeneralDAO {
        }
    }
    public StandardVersionModel publish(Integer versionId, String publisher) throws Exception {
    public Result publish(Integer versionId, String publisher) throws Exception {
        try {
            return this.myPublish(versionId, publisher);
            StandardVersionModel standardVersionModel = this.myPublish(versionId, publisher);
            standardVersionModel.setSuccessFlg(true);
            standardVersionModel.setMessage("发布标准版本成功");
            return standardVersionModel;
        } catch (DataAccessException e) {
            throw new ApiException(ErrorCode.StandardVersionPublishFailed);
            return Result.error("发布标准版本失败");
        }
    }

+ 83 - 59
Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdDatasetService.java

@ -6,6 +6,8 @@ import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.BeanTransformer;
@ -63,9 +65,9 @@ public class StdDatasetService extends SQLGeneralDAO {
        throw new ApiException(ErrorCode.StandardDatasetGetListFailed);
    }
    public StdDataSetModel add(String stdVersion, String dataset) {
        if (stdVersion.equals("{stdVersion}")) {
            throw new ApiException(ErrorCode.StandardDatasetMissVersion);
    public Result add(String stdVersion, String dataset) {
        if (StringUtil.isEmpty(stdVersion)) {
            return Result.error("并无该标准版本");
        }
        Boolean existFlg = false;
        try {
@ -75,15 +77,17 @@ public class StdDatasetService extends SQLGeneralDAO {
            existFlg = datasetCodeValidate(standardVersion, stdDataSetModel.getCode());
            if (!existFlg) {
                this.add(standardVersion.getDataSetTableName(), stdDataSetModel);
                stdDataSetModel.setSuccessFlg(true);
                stdDataSetModel.success("保存数据集成功");
                return stdDataSetModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardDatasetCode);
            return Result.error("已存在标准数据集编码");
        } else {
            throw new ApiException(ErrorCode.StandardDatasetSaveFailed);
            return Result.error("保存数据集失败");
        }
    }
@ -99,18 +103,18 @@ public class StdDatasetService extends SQLGeneralDAO {
        return false;
    }
    public void delete(String stdVersion, Integer datasetId) {
    public Result delete(String stdVersion, Integer datasetId) {
        if (StringUtil.isEmpty(stdVersion)) {
            throw new ApiException(ErrorCode.StandardDatasetMissVersion);
            return Result.error("并无该标准版本");
        }
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
            if (datasetId != null) {
                this.delete(standardVersion, datasetId);
            }
            return Result.success("删除数据集成功");
        } catch (Exception e) {
            throw new ApiException(ErrorCode.StandardDatasetDeleteFailed);
            return Result.success("删除数据集失败");
        }
    }
@ -127,9 +131,9 @@ public class StdDatasetService extends SQLGeneralDAO {
        return false;
    }
    public Object update(String stdVersion, String dataset) {
    public Result update(String stdVersion, String dataset) {
        if (StringUtil.isEmpty(stdVersion)) {
            throw new ApiException(ErrorCode.StandardDatasetMissVersion);
            return Result.error("并无该标准版本");
        }
        Boolean existFlg = false;
        try {
@ -139,34 +143,39 @@ public class StdDatasetService extends SQLGeneralDAO {
            existFlg = datasetCodeValidate(standardVersion, stdDataSetModel.getId(), stdDataSetModel.getCode());
            if (!existFlg) {
                this.update(standardVersion, stdDataSetModel);
                stdDataSetModel.setSuccessFlg(true);
                stdDataSetModel.success("修改数据集成功");
                return stdDataSetModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardDatasetCode);
            return Result.error("已存在标准数据集编码");
        } else {
            throw new ApiException(ErrorCode.StandardDatasetUpdateFailed);
            return Result.error("修改数据集失败");
        }
    }
    public StdDataSetModel get(String stdVersion, Integer datasetId) {
    public Result get(String stdVersion, Integer datasetId) {
        if (StringUtil.isEmpty(stdVersion)) {
            throw new ApiException(ErrorCode.StandardDatasetMissVersion);
            return Result.error("并无该数据集信息");
        }
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
            if (datasetId != null) {
                return this.get(standardVersion, datasetId);
                StdDataSetModel stdDataSetModel = this.get(standardVersion, datasetId);
                stdDataSetModel.setSuccessFlg(true);
                stdDataSetModel.setMessage("获取标准数据集成功");
                return stdDataSetModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        throw new ApiException(ErrorCode.StandardDatasetGetFailed);
        return Result.error("获取标准数据集失败");
    }
    private StdDataSetModel get(StandardVersion standardVersion, Integer datasetId) {
@ -231,44 +240,52 @@ public class StdDatasetService extends SQLGeneralDAO {
        return (List<StdDataSetModel>) sessionQuery.list();
    }
    public List getDatasetList(Class tClass, String stdVersion, String condition, String order, Integer limit, Integer offset) {
    public DetailModelResult getDetailModelList(String stdVersion, String condition, String order, Integer rows, Integer page) {
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
            String tableName = standardVersion.getDataSetTableName();
            SqlCreator sqlCreator = new SqlCreator(tClass);
            ObjectMapper objectMapper = new ObjectMapper();
            if (!StringUtil.isEmpty(condition)) {
                JsonNode jsonNode = objectMapper.readTree(condition);
                if(jsonNode.get("initVal")!=null && !jsonNode.get("initVal").asText().isEmpty()){
                    String initName = jsonNode.get("initVal").asText();
                    sqlCreator.neCondition("code",initName);
                }else if(jsonNode.get("name")!=null && !jsonNode.get("name").asText().isEmpty()){
                    String name = jsonNode.get("name").asText();
                    sqlCreator.likeOrCondition("code", "name", name);
                }
            List<StdDataSetModel> dataSetModelList = getDatasetList(StdDataSetModel.class, stdVersion, condition, order, rows, page);
            Integer count = getDatasetInt(StdDataSetModel.class, stdVersion, condition);
            DetailModelResult result = DetailModelResult.success("获取标准数据集列表成功");
            result.setDetailModelList(dataSetModelList);
            result.setTotalCount(count);
            return result;
        } catch (Exception e) {
            return DetailModelResult.error("获取标准数据集列表失败");
        }
    }
    public List getDatasetList(Class tClass, String stdVersion, String condition, String order, Integer limit, Integer offset) throws IOException {
        StandardVersion standardVersion = new StandardVersion(stdVersion);
        String tableName = standardVersion.getDataSetTableName();
        SqlCreator sqlCreator = new SqlCreator(tClass);
        ObjectMapper objectMapper = new ObjectMapper();
        if (!StringUtil.isEmpty(condition)) {
            JsonNode jsonNode = objectMapper.readTree(condition);
            if(jsonNode.get("initVal")!=null && !jsonNode.get("initVal").asText().isEmpty()){
                String initName = jsonNode.get("initVal").asText();
                sqlCreator.neCondition("code",initName);
            }else if(jsonNode.get("name")!=null && !jsonNode.get("name").asText().isEmpty()){
                String name = jsonNode.get("name").asText();
                sqlCreator.likeOrCondition("code", "name", name);
            }
            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);
                }
        }
        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);
            }
            String sql = sqlCreator.selectData(tableName);
            Query query = getQuery(sqlCreator, sql);
            if (limit != null) {
                query.setMaxResults(limit);
                if (offset != null) {
                    query.setFirstResult((offset - 1) * limit);
                }
        }
        String sql = sqlCreator.selectData(tableName);
        Query query = getQuery(sqlCreator, sql);
        if (limit != null) {
            query.setMaxResults(limit);
            if (offset != null) {
                query.setFirstResult((offset - 1) * limit);
            }
            return query.list();
        } catch (Exception e) {
            e.printStackTrace();
            throw new ApiException(ErrorCode.GetDataSetListFailed);
        }
        return query.list();
    }
    public Integer getDatasetInt(Class tClass, String stdVersion, String condition) {
@ -295,16 +312,23 @@ public class StdDatasetService extends SQLGeneralDAO {
        }
    }
    public List<Select2> getDatasetSelectList(String stdVersion, String condition, String order, Integer limit, Integer offset) {
        List<StdDataSetModel> datasetList = getDatasetList(StdDataSetModel.class, stdVersion, condition, order, limit, offset);
        List<Select2> detailModelList = new ArrayList<>();
        for (StdDataSetModel stdDataSetModel : datasetList) {
            Select2 select2 = new Select2();
            select2.setId(stdDataSetModel.getId() + Constants.COMMA + stdDataSetModel.getCode());
            select2.setText(stdDataSetModel.getName());
            detailModelList.add(select2);
    public DetailModelResult getDatasetSelectList(String stdVersion, String condition, String order, Integer limit, Integer offset) {
        try {
            List<StdDataSetModel> datasetList = getDatasetList(StdDataSetModel.class, stdVersion, condition, order, limit, offset);
            List<Select2> detailModelList = new ArrayList<>();
            for (StdDataSetModel stdDataSetModel : datasetList) {
                Select2 select2 = new Select2();
                select2.setId(stdDataSetModel.getId() + Constants.COMMA + stdDataSetModel.getCode());
                select2.setText(stdDataSetModel.getName());
                detailModelList.add(select2);
            }
            DetailModelResult detailModelResult = DetailModelResult.success("获取数据集下拉列表成功");
            detailModelResult.setDetailModelList(detailModelList);
            detailModelResult.setTotalCount(detailModelList.size());
            return detailModelResult;
        } catch (Exception e) {
            return DetailModelResult.error("获取数据集下拉列表失败");
        }
        return detailModelList;
    }
    public List getAllVersionDatasetList() {

+ 50 - 21
Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdDictEntryService.java

@ -6,6 +6,8 @@ import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.RequestParamTransformer;
@ -51,25 +53,26 @@ public class StdDictEntryService extends SQLGeneralDAO {
        throw new ApiException(ErrorCode.StandardDictEntryGetListFailed);
    }
    public Object add(String stdVersion, String dictEntry) {
    public Result add(String stdVersion, String dictEntry) {
        Boolean existFlg = false;
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
            ObjectMapper objectMapper = new ObjectMapper();
            StdDictionaryEntryModel stdDictionaryEntryModel = objectMapper.readValue(dictEntry, StdDictionaryEntryModel.class);
            existFlg = dictEntryCodeValidate(standardVersion, stdDictionaryEntryModel.getDictId(), stdDictionaryEntryModel.getCode());
            if (!existFlg) {
                this.add(standardVersion, stdDictionaryEntryModel);
                stdDictionaryEntryModel.setSuccessFlg(true);
                stdDictionaryEntryModel.setMessage("保存标准字典项成功");
                return stdDictionaryEntryModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardDictEntryCode);
            return Result.error("已存在标准字典项编码");
        } else {
            throw new ApiException(ErrorCode.StandardDictEntrySaveFailed);
            return Result.error("保存标准字典项失败");
        }
    }
@ -85,15 +88,17 @@ public class StdDictEntryService extends SQLGeneralDAO {
        return false;
    }
    public void delete(String stdVersion, Integer dictEntryId) {
    public Result delete(String stdVersion, Integer dictEntryId) {
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
            if (dictEntryId != null) {
                this.delete(standardVersion, dictEntryId);
                return Result.success("删除标准字典项成功");
            }
        } catch (Exception e) {
            throw new ApiException(ErrorCode.StandardDictEntryDeleteFailed);
        }
        return Result.error("删除标准字典项失败");
    }
    public Boolean dictEntryCodeValidate(StandardVersion standardVersion, Integer dictId, Integer dictEntryId, String code) {
@ -110,7 +115,7 @@ public class StdDictEntryService extends SQLGeneralDAO {
        return false;
    }
    public Object update(String stdVersion, String dictEntry) {
    public Result update(String stdVersion, String dictEntry) {
        Boolean existFlg = false;
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
@ -120,30 +125,34 @@ public class StdDictEntryService extends SQLGeneralDAO {
            existFlg = dictEntryCodeValidate(standardVersion, stdDictionaryEntryModel.getDictId(), stdDictionaryEntryModel.getId(), stdDictionaryEntryModel.getCode());
            if (!existFlg) {
                this.modify(standardVersion, stdDictionaryEntryModel);
                stdDictionaryEntryModel.setSuccessFlg(true);
                stdDictionaryEntryModel.setMessage("修改标准字典项成功");
                return stdDictionaryEntryModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardDictEntryCode);
            return Result.error("已存在标准字典项编码");
        } else {
            throw new ApiException(ErrorCode.StandardDictEntryUpdateFailed);
            return Result.error("修改标准字典项失败");
        }
    }
    public StdDictionaryEntryModel get(String stdVersion, Integer dictEntryId) {
    public Result get(String stdVersion, Integer dictEntryId) {
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
            if (dictEntryId != null) {
                return this.get(standardVersion, dictEntryId);
                StdDictionaryEntryModel stdDictionaryEntryModel = this.get(standardVersion, dictEntryId);
                stdDictionaryEntryModel.setSuccessFlg(true);
                stdDictionaryEntryModel.setMessage("获取标准字典项成功");
                return stdDictionaryEntryModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        throw new ApiException(ErrorCode.StandardDictEntryGetFailed);
        return Result.error("获取标准字典项失败");
    }
    private StdDictionaryEntryModel get(StandardVersion standardVersion, Integer dictEntryId) {
@ -214,6 +223,19 @@ public class StdDictEntryService extends SQLGeneralDAO {
        return (List<StdDictionaryEntryModel>) sessionQuery.list();
    }
    public DetailModelResult getDetailModelList(String stdVersion, Integer dictId, String condition, String order, Integer rows, Integer page) {
        try {
            List<StdDictionaryEntryModel> detailModelList = getDictEntryList(StdDictionaryEntryModel.class, stdVersion, dictId, condition, order, rows, page);
            Integer count = getDictEntryInt(StdDictionaryEntryModel.class, stdVersion, dictId, condition);
            DetailModelResult result = DetailModelResult.success("获取标准字典项列表成功");
            result.setDetailModelList(detailModelList);
            result.setTotalCount(count);
            return result;
        } catch (Exception e) {
            return DetailModelResult.error("获取标准字典项列表失败");
        }
    }
    public List getDictEntryList(Class tClass, String stdVersion, Integer dictId, String condition, String order, Integer limit, Integer offset) {
        StandardVersion standardVersion = new StandardVersion(stdVersion);
        String tableName = standardVersion.getDictEntryTableName();
@ -279,15 +301,22 @@ public class StdDictEntryService extends SQLGeneralDAO {
        return count;
    }
    public List<Select2> getDictEntrySelectList(List<StdDictionaryEntryModel> dictEntryList) {
        List<Select2> detailModelList = new ArrayList<>();
        for (StdDictionaryEntryModel dictEntry : dictEntryList) {
            Select2 select2 = new Select2();
            select2.setId(dictEntry.getId() + Constants.COMMA + dictEntry.getCode());
            select2.setText(dictEntry.getValue());
            detailModelList.add(select2);
    public DetailModelResult getDictEntrySelectList(String stdVersion, Integer dictId, String condition, String order, Integer rows, Integer page) {
        try {
            List<StdDictionaryEntryModel> dictEntryModelList = getDictEntryList(StdDictionaryEntryModel.class, stdVersion, dictId, condition, order, rows, page);
            List<Select2> detailModelList = new ArrayList<>();
            for (StdDictionaryEntryModel dictEntry : dictEntryModelList) {
                Select2 select2 = new Select2();
                select2.setId(dictEntry.getId() + Constants.COMMA + dictEntry.getCode());
                select2.setText(dictEntry.getValue());
                detailModelList.add(select2);
            }
            DetailModelResult result = DetailModelResult.success("获取标准字典项下拉列表成功");
            result.setDetailModelList(detailModelList);
            result.setTotalCount(detailModelList.size());
            return result;
        } catch (Exception e) {
           return DetailModelResult.error("获取标准字典项下拉列表失败");
        }
        return detailModelList;
    }
}//end DictEntryManager

+ 77 - 19
Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdDictService.java

@ -7,12 +7,17 @@ import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.BeanTransformer;
import com.yihu.ehr.framework.util.sql.RequestParamTransformer;
import com.yihu.ehr.framework.util.sql.SqlCreator;
import com.yihu.ehr.standard.model.Select2;
import com.yihu.ehr.standard.model.standard.StdDataSetModel;
import com.yihu.ehr.standard.model.standard.StdDictionaryModel;
import com.yihu.ehr.standard.service.bo.StandardVersion;
import org.hibernate.Query;
@ -54,7 +59,7 @@ public class StdDictService extends SQLGeneralDAO {
        throw new ApiException(ErrorCode.StandardDictGetListFailed);
    }
    public Object add(String stdVersion, String dict) {
    public Result add(String stdVersion, String dict) {
        Boolean existFlg = false;
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
@ -64,15 +69,17 @@ public class StdDictService extends SQLGeneralDAO {
            existFlg = dictCodeValidate(standardVersion, stdDictionaryModel.getCode());
            if (!existFlg) {
                this.add(standardVersion, stdDictionaryModel);
                stdDictionaryModel.setSuccessFlg(true);
                stdDictionaryModel.setMessage("保存标准字典成功");
                return stdDictionaryModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardDictCode);
            return Result.error("已存在标准字典编码");
        } else {
            throw new ApiException(ErrorCode.StandardDictSaveFailed);
            return Result.error("保存标准字典失败");
        }
    }
@ -88,15 +95,17 @@ public class StdDictService extends SQLGeneralDAO {
        return false;
    }
    public void delete(String stdVersion, Integer dictId) {
    public Result delete(String stdVersion, Integer dictId) {
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
            if (dictId != null) {
                this.delete(standardVersion, dictId);
                return Result.success("删除标准字典成功");
            }
        } catch (Exception e) {
            throw new ApiException(ErrorCode.StandardDictDeleteFailed);
            e.printStackTrace();
        }
        return Result.success("删除标准字典失败");
    }
    public Boolean dictCodeValidate(StandardVersion standardVersion, Integer dictId, String code) {
@ -112,7 +121,7 @@ public class StdDictService extends SQLGeneralDAO {
        return false;
    }
    public Object update(String stdVersion, String dict) {
    public Result update(String stdVersion, String dict) {
        Boolean existFlg = false;
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
@ -122,30 +131,35 @@ public class StdDictService extends SQLGeneralDAO {
            existFlg = dictCodeValidate(standardVersion, stdDictionaryModel.getId(), stdDictionaryModel.getCode());
            if (!existFlg) {
                this.modify(standardVersion, stdDictionaryModel);
                stdDictionaryModel.setSuccessFlg(true);
                stdDictionaryModel.setMessage("修改标准字典成功");
                return stdDictionaryModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardDictCode);
            return Result.error("已存在标准字典编码");
        } else {
            throw new ApiException(ErrorCode.StandardDictUpdateFailed);
            return Result.error("修改标准字典失败");
        }
    }
    public StdDictionaryModel get(String stdVersion, Integer dictId) {
    public Result get(String stdVersion, Integer dictId) {
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
            if (dictId != null) {
                return this.get(standardVersion, dictId);
                StdDictionaryModel stdDictionaryModel = this.get(standardVersion, dictId);
                stdDictionaryModel.setSuccessFlg(true);
                stdDictionaryModel.setMessage("获取标准字典成功");
                return stdDictionaryModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        throw new ApiException(ErrorCode.StandardDictGetFailed);
        return Result.error("获取标准字典失败");
    }
    private StdDictionaryModel get(StandardVersion standardVersion, Integer dictId) {
@ -221,6 +235,43 @@ public class StdDictService extends SQLGeneralDAO {
        return (List<StdDictionaryModel>) sessionQuery.list();
    }
    public DictionaryResult getDictionaryList(String stdVersion, String query, String order, Integer rows, Integer page) {
        try {
            List<StdDictionaryModel> stdDictionaryModelList = getList(stdVersion, query, order, rows, page);
            List<DictItem> detailModelList = new ArrayList<DictItem>();
            DictItem item = new DictItem();
            item.setCode("");
            item.setValue("-无-");
            detailModelList.add(item);
            for (StdDictionaryModel stdDictionaryModel : stdDictionaryModelList) {
                DictItem items = new DictItem();
                Integer  id = stdDictionaryModel.getId();
                String name = stdDictionaryModel.getName();
                items.setCode(id.toString());
                items.setValue(name);
                detailModelList.add(items);
            }
            DictionaryResult dictionaryResult = DictionaryResult.success("获取字典列表成功");
            dictionaryResult.setDetailModelList(detailModelList);
            return dictionaryResult;
        } catch (Exception e) {
            return DictionaryResult.error("获取字典列表失败");
        }
    }
    public DetailModelResult getDetailModelList(String stdVersion, String condition, String order, Integer rows, Integer page) {
        try {
            List<StdDictionaryModel> dictModelList = getDictList(StdDictionaryModel.class, stdVersion, condition, order, rows, page);
            Integer count = getDictInt(StdDictionaryModel.class, stdVersion, condition);
            DetailModelResult result = DetailModelResult.success("获取标准数据字典列表成功");
            result.setDetailModelList(dictModelList);
            result.setTotalCount(count);
            return result;
        } catch (Exception e) {
            return DetailModelResult.error("获取标准字典列表失败");
        }
    }
    public List getDictList(Class tClass, String stdVersion, String condition, String order, Integer limit, Integer offset) {
        StandardVersion standardVersion = new StandardVersion(stdVersion);
        String tableName = standardVersion.getDictTableName();
@ -286,14 +337,21 @@ public class StdDictService extends SQLGeneralDAO {
        return count;
    }
    public List<Select2> getDictSelectList(List<StdDictionaryModel> dictList) {
        List<Select2> detailModelList = new ArrayList<>();
        for (StdDictionaryModel dictModel : dictList) {
            Select2 select2 = new Select2();
            select2.setId(dictModel.getId() + Constants.COMMA + dictModel.getCode());
            select2.setText(dictModel.getName());
            detailModelList.add(select2);
    public DetailModelResult getDictSelectList(List<StdDictionaryModel> dictList) {
        try {
            List<Select2> detailModelList = new ArrayList<>();
            for (StdDictionaryModel dictModel : dictList) {
                Select2 select2 = new Select2();
                select2.setId(dictModel.getId() + Constants.COMMA + dictModel.getCode());
                select2.setText(dictModel.getName());
                detailModelList.add(select2);
            }
            DetailModelResult detailModelResult = DetailModelResult.success("获取字典下来列表成功");
            detailModelResult.setDetailModelList(detailModelList);
            detailModelResult.setTotalCount(detailModelList.size());
            return detailModelResult;
        } catch (Exception e) {
            return DetailModelResult.error("获取字典下来列表失败");
        }
        return detailModelList;
    }
}

+ 50 - 20
Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdMetadataService.java

@ -6,6 +6,8 @@ import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.framework.util.sql.BeanTransformer;
@ -14,6 +16,7 @@ import com.yihu.ehr.framework.util.sql.SqlCreator;
import com.yihu.ehr.standard.model.Select2;
import com.yihu.ehr.standard.model.standard.StandardVersionModel;
import com.yihu.ehr.standard.model.standard.StdDataSetModel;
import com.yihu.ehr.standard.model.standard.StdDictionaryEntryModel;
import com.yihu.ehr.standard.model.standard.StdMetaDataModel;
import com.yihu.ehr.standard.service.bo.StandardVersion;
import org.hibernate.Query;
@ -54,7 +57,7 @@ public class StdMetadataService extends SQLGeneralDAO {
        throw new ApiException(ErrorCode.StandardMetaDataGetListFailed);
    }
    public Object add(String stdVersion, String metadata) {
    public Result add(String stdVersion, String metadata) {
        Boolean existFlg = false;
        try {
@ -64,15 +67,16 @@ public class StdMetadataService extends SQLGeneralDAO {
            existFlg = metadataCodeValidate(standardVersion, stdMetaDataModel.getDatasetId(), stdMetaDataModel.getCode());
            if (!existFlg) {
                this.add(standardVersion, stdMetaDataModel);
                stdMetaDataModel.setMessage("保存数据元成功");
                return stdMetaDataModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardMetaDataCode);
            return Result.error("已存在标准数据元编码");
        } else {
            throw new ApiException(ErrorCode.StandardMetaDataSaveFailed);
            return Result.error("保存数据元失败");
        }
    }
@ -88,15 +92,17 @@ public class StdMetadataService extends SQLGeneralDAO {
        return false;
    }
    public void delete(String stdVersion, Integer metadataId) {
    public Result delete(String stdVersion, Integer metadataId) {
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
            if (metadataId != null) {
                this.delete(standardVersion, metadataId);
                return Result.success("删除数据元成功");
            }
        } catch (Exception e) {
            throw new ApiException(ErrorCode.StandardMetaDataDeleteFailed);
        }
        return Result.error("删除数据元失败");
    }
    public Boolean metadataCodeValidate(StandardVersion standardVersion, Integer datasetId, Integer metadataId, String code) {
@ -113,7 +119,7 @@ public class StdMetadataService extends SQLGeneralDAO {
        return false;
    }
    public StdMetaDataModel update(String stdVersion, String metadata) {
    public Result update(String stdVersion, String metadata) {
        Boolean existFlg = false;
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
@ -122,19 +128,21 @@ public class StdMetadataService extends SQLGeneralDAO {
            existFlg = metadataCodeValidate(standardVersion, stdMetaDataModel.getDatasetId(), stdMetaDataModel.getId(), stdMetaDataModel.getCode());
            if (!existFlg) {
                this.modify(standardVersion, stdMetaDataModel);
                stdMetaDataModel.setSuccessFlg(true);
                stdMetaDataModel.setMessage("修改数据元成功");
                return stdMetaDataModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (existFlg) {
            throw new ApiException(ErrorCode.ExistStandardMetaDataCode);
            return Result.error("已存在标准数据元编码");
        } else {
            throw new ApiException(ErrorCode.StandardMetaDataUpdateFailed);
            return Result.error("修改数据元失败");
        }
    }
    public StdMetaDataModel get(String stdVersion, Integer metadataId) {
    public Result get(String stdVersion, Integer metadataId) {
        try {
            StandardVersion standardVersion = new StandardVersion(stdVersion);
            if (metadataId != null) {
@ -143,13 +151,15 @@ public class StdMetadataService extends SQLGeneralDAO {
                sqlCreator.equalCondition("id", metadataId);
                String sql = sqlCreator.selectData(metaDataTableName);
                Query query = getQuery(sqlCreator, sql);
                return (StdMetaDataModel) query.uniqueResult();
                StdMetaDataModel stdMetaDataModel = (StdMetaDataModel) query.uniqueResult();
                stdMetaDataModel.setSuccessFlg(true);
                stdMetaDataModel.setMessage("获取标准数据元成功");
                return stdMetaDataModel;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        throw new ApiException(ErrorCode.StandardMetaDataGetFailed);
        return Result.error("获取标准数据元失败");
    }
@ -209,6 +219,19 @@ public class StdMetadataService extends SQLGeneralDAO {
        return (List<StdMetaDataModel>) sessionQuery.list();
    }
    public DetailModelResult getDetailModelList(String stdVersion, Integer dictId, String condition, String order, Integer rows, Integer page) {
        try {
            List<StdDictionaryEntryModel> detailModelList = getMetadataList(StdMetaDataModel.class, stdVersion, dictId, condition, order, rows, page);
            Integer count = getMetadataCount(StdMetaDataModel.class, stdVersion, dictId, condition);
            DetailModelResult result = DetailModelResult.success("获取标准字数据元列表成功");
            result.setDetailModelList(detailModelList);
            result.setTotalCount(count);
            return result;
        } catch (Exception e) {
            return DetailModelResult.error("获取标准数据元列表失败");
        }
    }
    public List getMetadataList(Class tClass, String stdVersion, Integer datasetId, String condition, String order, Integer limit, Integer offset) {
        StandardVersion standardVersion = new StandardVersion(stdVersion);
        String tableName = standardVersion.getMetaDataTableName();
@ -275,16 +298,23 @@ public class StdMetadataService extends SQLGeneralDAO {
        return count;
    }
    public List<Select2> getMetadataSelectList(List<StdMetaDataModel> metaDataList) {
        List<Select2> detailModelList = new ArrayList<>();
        for (StdMetaDataModel metaDataModel : metaDataList) {
            Select2 select2 = new Select2();
            select2.setId(metaDataModel.getId() + Constants.COMMA + metaDataModel.getCode());
            select2.setText(metaDataModel.getName());
            detailModelList.add(select2);
    public DetailModelResult getMetadataSelectList(String stdVersion, Integer dictId, String condition, String order, Integer rows, Integer page) {
        try {
            List<StdMetaDataModel> metadataList = getMetadataList(StdMetaDataModel.class, stdVersion, dictId, condition, order, rows, page);
            List<Select2> detailModelList = new ArrayList<>();
            for (StdMetaDataModel metaDataModel : metadataList) {
                Select2 select2 = new Select2();
                select2.setId(metaDataModel.getId() + Constants.COMMA + metaDataModel.getCode());
                select2.setText(metaDataModel.getName());
                detailModelList.add(select2);
            }
            DetailModelResult detailModelResult = DetailModelResult.success("获取标准数据元下拉列表成功");
            detailModelResult.setDetailModelList(detailModelList);
            detailModelResult.setTotalCount(detailModelList.size());
            return detailModelResult;
        }catch (Exception e) {
            return DetailModelResult.error("获取标准数据元下拉列表失败");
        }
        return detailModelList;
    }
    public List getAllVersionMetadataList(String condition) {

+ 34 - 3
Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdPublisherService.java

@ -4,7 +4,11 @@ import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.DictItem;
import com.yihu.ehr.framework.model.DictionaryResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.sql.RequestParamTransformer;
import com.yihu.ehr.standard.model.standard.resultModel.PublisherResultModel;
import com.yihu.ehr.system.model.SystemOrganization;
import org.hibernate.Criteria;
import org.hibernate.Session;
@ -13,6 +17,7 @@ import org.hibernate.criterion.Restrictions;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@ -25,6 +30,26 @@ public class StdPublisherService extends SQLGeneralDAO {
    public static final String BEAN_ID = "StdPublisherService";
    public DictionaryResult getDictionaryResult(String condition, String order, Integer limit, Integer offset) {
        try {
            DictionaryResult dictionaryResult = DictionaryResult.success("获取发布机构列表成功");
            List<DictItem> detailModelList = new ArrayList<DictItem>();
            List<SystemOrganization> stdPublisherModelList = getList(condition, order, limit, offset);
            for(SystemOrganization systemOrganization : stdPublisherModelList){
                DictItem items = new DictItem();
                String id = systemOrganization.getCode();
                String name = systemOrganization.getFullName();
                items.setCode(id.toString());
                items.setValue(name);
                detailModelList.add(items);
            }
            dictionaryResult.setDetailModelList(detailModelList);
            return dictionaryResult;
        } catch (Exception e) {
            return DictionaryResult.error("获取发布机构列表失败");
        }
    }
    public List<SystemOrganization> getList(String condition, String order, Integer limit, Integer offset) {
        try{
            Map<String, String> queryMap = RequestParamTransformer.parseJsonToMap(condition);
@ -65,14 +90,20 @@ public class StdPublisherService extends SQLGeneralDAO {
        return systemOrganizationList;
    }
    public SystemOrganization get(String stdPublisherId) {
    public Result get(String stdPublisherId) {
        try {
            Session session = getCurrentSession();
            Criteria criteria = session.createCriteria(SystemOrganization.class);
            criteria.add(Restrictions.eq("id", stdPublisherId));
            return (SystemOrganization) criteria.uniqueResult();
            SystemOrganization systemOrganization = (SystemOrganization) criteria.uniqueResult();
            PublisherResultModel publisherResultModel = new PublisherResultModel();
            publisherResultModel.setCode(systemOrganization.getCode());
            publisherResultModel.setName(systemOrganization.getFullName());
            publisherResultModel.setSuccessFlg(true);
            publisherResultModel.setMessage("获取机构信息成功");
            return publisherResultModel;
        } catch (Exception e) {
            throw new ApiException(ErrorCode.GetPublisherFailed);
            return Result.error("获取机构信息失败");
        }
    }
}

+ 19 - 10
Hos-resource/src/main/webapp/WEB-INF/ehr/jsp/standard/adapterplan/adapterDetailJs.jsp

@ -64,6 +64,9 @@
                  status:data.status
                });
                $("#adapterStdVersion").val(data.adapterStdVersion);
                $("#sel_adapterStdId").val(data.adapterStdId);
                $("#sel_adapterStdVersion").val(data.adapterStdVersion);
              }else{
                $.ligerDialog.error(result.errorMsg);
              }
@ -85,7 +88,7 @@
          if(!this.validator.validate()){
            return;
          }
          debugger
          
          var _url = "";
          adapterplan.attr.$form.attrScan();
          var dataJson =  eval("[" + adapterplan.attr.$form.Fields.toJsonString() + "]");
@ -99,7 +102,7 @@
            dataType: "json",
            data:{scheme: JSON.stringify(dataJson[0])},
            success: function (data) {
              debugger
              
              if(Util.isStrEmpty(data.message)){
                $.ligerDialog.alert("保存成功", "提示", "success", function () {
                  parent.adapterplan.list.getTypeList();//刷新数据
@ -130,10 +133,12 @@
          $("#sel_stdId").ligerComboBox({url : adapterplan.attr._url+"/adapter/getStandards?condition={\"type\":0}" ,
            cancelable:false,
            onSuccess:function(data){
              if(data!=null&&data.length>0)
              
              if( $("#sel_stdId").val()=="" && data!=null&&data.length>0)
              {
                this.selectValue(data[0].code);
              }
              return false;
            }});
          //平台标准名称change事件
@ -144,10 +149,13 @@
              $("#sel_stdVersion").ligerComboBox({url : adapterplan.attr._url+"/adapter/getVersions?standardId="+standardId ,
                cancelable:false,
                onSuccess:function(data){
                  if(data!=null&&data.length>0)
                  
                  if( $("#sel_stdVersion").val()=="" && data!=null&&data.length>0)
                  {
                    this.selectValue(data[0].code);
                  }
                  return false;
                }});
            }
          });
@ -160,6 +168,7 @@
              {
                this.selectValue(data[0].code);
              }
              return false;
            }});
          $("#sel_stdVersion").ligerComboBox({cancelable:false});
@ -169,16 +178,17 @@
          //发布机构名称change事件
          $("#sel_publisherOrgCode").change(function(){
            var publisherOrgCode = $("#sel_publisherOrgCode").ligerGetComboBoxManager().getValue();
            
            if(!Util.isStrEmpty(publisherOrgCode)){
              //应用标准名称
              $("#sel_adapterStdId").ligerComboBox({url : adapterplan.attr._url+"/adapter/getStandards?condition={\"type\":1,\"publisherOrgCode\":\""+publisherOrgCode+"\"}" ,
                cancelable:false,
                onSuccess:function(data){
                  if(data!=null&&data.length>0)
                  if( $("#sel_adapterStdId").val()=="" &&data!=null&&data.length>0)
                  {
                    this.selectValue(data[0].code);
                  }
                  return false;
                }});
            }
          });
@ -191,14 +201,13 @@
              $("#sel_adapterStdVersion").ligerComboBox({url : adapterplan.attr._url+"/adapter/getVersions?standardId="+standardId ,
                cancelable:false,
                onSuccess:function(data){
                  if(data!=null&&data.length>0)
                  
                  if( $("#sel_adapterStdVersion").val()=="" &&data!=null&&data.length>0)
                  {
                    this.selectValue(data[0].code);
                  }
                 if(!Util.isStrEmpty( $("#adapterStdVersion").val())){
                   this.selectValue($("#adapterStdVersion").val());
                 }
                  return false;
                }});
            }