瀏覽代碼

合并代码

lingfeng 9 年之前
父節點
當前提交
d03c3f1a4d

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

@ -415,7 +415,7 @@ public class SQLGeneralDAO implements XSQLGeneralDAO {
    public Object get(Class tClass, String tableName, Integer id) {
        SqlCreator sqlCreator = new SqlCreator(tClass);
        sqlCreator.equalCondition("id", id);
        sqlCreator.equalCondition("stdDatasetId", id);
        String sql = sqlCreator.selectData(tableName);
        Query query = getQuery(sqlCreator, sql);
        return query.uniqueResult();

+ 0 - 11
Hos-Framework/src/main/java/com/yihu/ehr/framework/util/sql/SqlCreator.java

@ -104,17 +104,6 @@ public class SqlCreator {
        return selectData();
    }
    public String selectSingleData(String tabelName) {
        setTableName(tabelName);
        itemList.clear();
        for(Object key : transformer.columnToProperty.keySet()){
            itemList.add(StringUtil.toString(key));
        }
        return selectData();
    }
    public String selectData() {
        StringBuilder sqlBuffer = new StringBuilder();

+ 4 - 4
Hos-resource/src/main/java/com/yihu/ehr/crawler/service/CrawlerService.java

@ -126,17 +126,17 @@ public class CrawlerService {
        List<CrawlerDatasetResultDetailModel> list = new ArrayList<>();
        for (AdapterDatasetModel datasetModel : adapterDatasetModelList) {
            if (!StringUtil.isStrEmpty(datasetModel.getAdapterDatasetCode())){
                List<AdapterMetadataModel> metadatas = adapterMetadataService.getAdapterMetadataByDataset(versionModel.getVersion(), datasetModel.getId());
                List<AdapterMetadataModel> metadatas = adapterMetadataService.getAdapterMetadataByDataset(versionModel.getVersion(), datasetModel.getStdDatasetId());
            if (metadatas != null && metadatas.size() > 0) {
                CrawlerDatasetResultDetailModel obj = new CrawlerDatasetResultDetailModel();
                obj.setSchemeVersionId(schemeVersionId);
                obj.setDatasetId(datasetModel.getId());
                obj.setDatasetId(datasetModel.getStdDatasetId());
                obj.setDatasetCode(datasetModel.getStdDatasetCode());
                obj.setDatasetName(datasetModel.getStdDatasetName());
                obj.setSchemeId(datasetModel.getSchemeId());
                if (crawlerDataset != null && crawlerDataset.size() > 0) {
                    for (CrawlerDataSetModel cDataSet : crawlerDataset) {
                        if (cDataSet.getDatasetId().equals(datasetModel.getId())) {
                        if (cDataSet.getDatasetId().equals(datasetModel.getStdDatasetId())) {
                            obj.setSchemeVersionId(cDataSet.getSchemeVersionId());
                            obj.setChecked("1");
                            break;
@ -335,7 +335,7 @@ public class CrawlerService {
                MappingDataset obj = new MappingDataset();
//                for (CrawlerDataSetModel cDataSet : crawlerDataset) {
                    if ( !StringUtil.isStrEmpty(datasetModel.getAdapterDatasetCode())) {
                        List<MappingMetadata> metadatas = getMappingMetaDatasByDataset(versionModel.getVersion(), datasetModel.getAdapterDatasetId());
                        List<MappingMetadata> metadatas = getMappingMetaDatasByDataset(versionModel.getVersion(), datasetModel.getStdDatasetId());
                        obj.setId(datasetModel.getStdDatasetId());
                        obj.setCode(datasetModel.getStdDatasetCode());
                        obj.setName(datasetModel.getStdDatasetName());

+ 16 - 12
Hos-resource/src/main/java/com/yihu/ehr/datacollect/service/DatacollectService.java

@ -354,34 +354,37 @@ public class DatacollectService implements IDatacollectService {
                //增量采集
                String maxKey = "0";
                String keyValue = ds.getJobDatasetKeyvalue();
                if(key!=null && key.length()>0 &&(keyValue!=null&&!keyValue.equals("null")))
                if(key!=null && key.length()>0)
                {
                    maxKey = key;
                    if(keytype.toUpperCase().equals("DATE")) //时间类型
                    {
                        Date keyDate = new Date();
                        if(keyvalue!=null && keyvalue.length()>0) {
                            //字符串转时间
                            keyDate = DateConvert.toDate(keyvalue);
                            //根据数据库类型获取时间sql
                            strWhere += " and "+ key + ">'"+getDateSqlByDBType(dbType,keyDate)+"'";
                            strWhere += " order by "+ key;
                        }
                        //根据数据库类型获取时间sql
                        strWhere += " and "+ key + ">'"+getDateSqlByDBType(dbType,keyDate)+"'";
                        strWhere += " order by "+ key;
                    }
                    else if(keytype.toUpperCase().equals("VARCHAR")) //字符串类型
                    {
                        maxKey = getToNumberSqlByDBType(dbType,key);
                        if(keyvalue!=null && keyvalue.length()>0) {
                            strWhere += " and "+ maxKey + ">'" + keyvalue + "'";
                            strWhere += " order by "+ maxKey;
                        }
                        strWhere += " order by "+ maxKey;
                    }
                    else{
                        if(keyvalue!=null && keyvalue.length()>0) {
                            strWhere += " and "+ key + ">'" + keyvalue + "'";
                            strWhere += " order by "+ key;
                        }
                        strWhere += " order by "+ key;
                    }
                }
                strSql += strWhere;
                //总条数和最大值查询
@ -576,7 +579,7 @@ public class DatacollectService implements IDatacollectService {
                    //增量采集
                    String maxKey = "0";
                    String keyValue = ds.getJobDatasetKeyvalue();
                    if (key != null && key.length() > 0 && (keyValue != null && !keyValue.equals("null"))) {
                    if (key != null && key.length() > 0) {
                        maxKey = key;
                        if (keytype.toUpperCase().equals("DATE")) //时间类型
                        {
@ -584,22 +587,23 @@ public class DatacollectService implements IDatacollectService {
                            if (keyvalue != null && keyvalue.length() > 0) {
                                //字符串转时间
                                keyDate = DateConvert.toDate(keyvalue);
                                //根据数据库类型获取时间sql
                                strWhere += " and " + key + ">'" + getDateSqlByDBType(dbType, keyDate) + "'";
                                strWhere += " order by " + key;
                            }
                            //根据数据库类型获取时间sql
                            strWhere += " and " + key + ">'" + getDateSqlByDBType(dbType, keyDate) + "'";
                            strWhere += " order by " + key;
                        } else if (keytype.toUpperCase().equals("VARCHAR")) //字符串类型
                        {
                            maxKey = getToNumberSqlByDBType(dbType, key);
                            if (keyvalue != null && keyvalue.length() > 0) {
                                strWhere += " and " + maxKey + ">'" + keyvalue + "'";
                                strWhere += " order by " + maxKey;
                            }
                            strWhere += " order by " + maxKey;
                        } else {
                            if (keyvalue != null && keyvalue.length() > 0) {
                                strWhere += " and " + key + ">'" + keyvalue + "'";
                                strWhere += " order by " + key;
                            }
                            strWhere += " order by " + key;
                        }
                    }
                    strSql += strWhere;

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

@ -453,7 +453,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
                return null;
            }
            SqlCreator sqlCreator = new SqlCreator(AdapterDatasetModel.class);
            sqlCreator.inCondition("id", datasetIdList);
            sqlCreator.inCondition("stdDatasetId", datasetIdList);
            String sql = sqlCreator.selectData(adapterVersion.getDataSetTableName());
            Query query = getQuery(sqlCreator, sql);
            return query.list();

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

@ -386,7 +386,7 @@ public class AdapterMetadataService extends SQLGeneralDAO {
    public List getAdapterMetadataByDataset(String adapterVersion,Integer datasetId){
        Map<String,Object> map = new HashMap<String,Object>();
        map.put("adapterDatasetId", datasetId);
        map.put("stdDatasetId", datasetId);
        String tableName="adapter_metadata_"+adapterVersion;
        List<AdapterMetadataModel> metadataModelList = getList(AdapterMetadataModel.class,tableName,  net.sf.json.JSONObject.fromObject(map).toString(), null, null, null);
        return metadataModelList;
@ -394,7 +394,7 @@ public class AdapterMetadataService extends SQLGeneralDAO {
    public AdapterDatasetModel getAdapterDataset(String adapterVersion,Integer datasetId){
        Map<String,Object> map = new HashMap<String,Object>();
        map.put("id", datasetId);
        map.put("stdDatasetId", datasetId);
        String tableName="adapter_dataset_"+adapterVersion;
        AdapterDatasetModel datasetModel= (AdapterDatasetModel)get(AdapterDatasetModel.class,tableName,  datasetId);
        return datasetModel;

+ 26 - 22
Hos-resource/src/main/java/com/yihu/ehr/standard/service/standard/StdMetadataService.java

@ -325,10 +325,10 @@ public class StdMetadataService extends SQLGeneralDAO {
    }
    public List getAllVersionMetadataList(String condition) {
        //数据元列表应该是所选择的数据集列表的数据元并集去重 @modify by yingjie chen
        //数据元列表应该是所选择的数据集列表的数据元并集去重 @modify by Yingjie Chen
        try {
            List<String>  versionList = new ArrayList<>();
            String sql = Constants.EMPTY;
            Map<String,List<StdDataSetModel>> version2DataSetMap = new HashMap<>();
            String sql;
            ObjectMapper objectMapper = new ObjectMapper();
            String code = Constants.EMPTY;
            if (!StringUtil.isEmpty(condition)) {
@ -343,6 +343,7 @@ public class StdMetadataService extends SQLGeneralDAO {
            List<StandardModel> standardModelList = criteria.list();
            List<Integer> idList = standardModelList.stream().map(StandardModel::getId).collect(Collectors.toList());
            List<StandardVersionModel> versionModelList;
            Session session = getCurrentSession();
            if (!CollectionUtil.isEmpty(idList)) {
                String hql = "FROM StandardVersionModel WHERE publishTime is not null AND standardId IN :idList order by publishTime";
                Query query = getCurrentSession().createQuery(hql);
@ -351,36 +352,41 @@ public class StdMetadataService extends SQLGeneralDAO {
                for (StandardVersionModel versionModel : versionModelList) {
                    SqlCreator sqlDatasetCreator = new SqlCreator(StdDataSetModel.class);
                    StandardVersion version = new StandardVersion(versionModel.getVersion());
                    versionList.add(versionModel.getVersion());
                    sqlDatasetCreator.equalCondition("code", code);
                    sql = sql + sqlDatasetCreator.selectData(version.getDataSetTableName()) + Constants.UNION;
                    sql = sqlDatasetCreator.selectData(version.getDataSetTableName());
                    SQLQuery sqlQuery = session.createSQLQuery(sql);
                    BeanTransformer datasetTransformer = new BeanTransformer(StdDataSetModel.class);
                    sqlQuery.setResultTransformer(datasetTransformer);
                    sqlQuery.setParameter("code", code);
                    List<StdDataSetModel> dataList = sqlQuery.list();
                    if (dataList.size() > 0) {
                        version2DataSetMap.put(versionModel.getVersion(),dataList);
                    }
                }
            }
            BeanTransformer datasetTransformer = new BeanTransformer(StdDataSetModel.class);
            if (!StringUtil.isEmpty(sql)) {
                sql = sql.substring(0, sql.length() - Constants.UNION.length());
                SQLQuery sqlQuery = getCurrentSession().createSQLQuery(sql);
                sqlQuery.setResultTransformer(datasetTransformer);
                sqlQuery.setParameter("code", code);
                List<StdDataSetModel> modelList = sqlQuery.list();
            if (!version2DataSetMap.isEmpty()) {
                sql = Constants.EMPTY;
                Integer count = 1;
                Map<Integer, String> datasetIdMap = new HashMap<>();
                for (StdDataSetModel model : modelList) {
                Iterator iter = version2DataSetMap.entrySet().iterator();
                while (iter.hasNext()) {
                    Map.Entry entry = (Map.Entry) iter.next();
                    SqlCreator sqlMetadataCreator = new SqlCreator(StdMetaDataModel.class);
                    sqlMetadataCreator.equalConditionQue("datasetId", model.getId());
                    for (String versionKey : versionList) {
                        datasetIdMap.put(count++, StringUtil.toString(model.getId()));
                        StandardVersion version = new StandardVersion(versionKey);
                        sql = sql + sqlMetadataCreator.selectSingleData(version.getMetaDataTableName()) + Constants.UNION;
                    }
                    StandardVersion version = new StandardVersion((String) entry.getKey());
                    List<StdDataSetModel> dataList = (List<StdDataSetModel>) entry.getValue();
                    datasetIdMap.put(count++, StringUtil.toString(dataList.get(0).getId()));
                    sqlMetadataCreator.equalConditionQue("datasetId", dataList.get(0).getId());
                    sql = sql + sqlMetadataCreator.selectData(version.getMetaDataTableName()) + Constants.UNION;
                }
                BeanTransformer metadataTransformer = new BeanTransformer(StdMetaDataModel.class);
                List<StdMetaDataModel> distinctModelList = new ArrayList<>();
                if (!StringUtil.isEmpty(sql)) {
                    sql = sql.substring(0, sql.length() - Constants.UNION.length());
                    SQLQuery sqlQuery;
                    sqlQuery = getCurrentSession().createSQLQuery(sql);
                    sqlQuery.setResultTransformer(metadataTransformer);
                    for (int i = 1; i < count; i++) {
@ -391,9 +397,7 @@ public class StdMetadataService extends SQLGeneralDAO {
                    for (StdMetaDataModel model : metadataList) {
                        meatadataModelMap.put(model.getCode(), model);
                    }
                    for (String key : meatadataModelMap.keySet()) {
                        distinctModelList.add(meatadataModelMap.get(key));
                    }
                    distinctModelList.addAll(meatadataModelMap.keySet().stream().map(meatadataModelMap::get).collect(Collectors.toList()));
                }
                return distinctModelList;

+ 1 - 1
Hos-resource/src/main/webapp/WEB-INF/ehr/jsp/common/index.jsp

@ -33,7 +33,7 @@
    <div position="top">
        <div class="m-index-top">
            <div style="float: right;padding-right: 8px">
                <div class="m-index-top-name">欢迎您,${userName}</div>
                <div class="m-index-top-name">欢迎您! ${userName}</div>
                <div style="height:40px;">
                    <div id="btnIndexLogout"></div>
                    <div id="btnIndexPassword"></div>

+ 6 - 0
Hos-resource/src/main/webapp/WEB-INF/ehr/jsp/crawler/datasetDetailJs.jsp

@ -111,8 +111,14 @@
              //修改缓存数据集ID和数据集编码的值
              parent.jobLayout.cacheDatasetIdList[pcurIndex]= dataSetIds;
              parent.jobLayout.cacheDatasetCodeList[pcurIndex]= datasetCodes;
              debugger
              if(!parent.validAdd.validate()){
                  parent.jobLayout.dialog.close(); //关闭窗口
                  return false;
              }
              parent.jobLayout.dialog.close(); //关闭窗口
          });
          $("#btn_close").click(function () {
              parent.jobLayout.dialog.close(); //关闭窗口

+ 16 - 4
Hos-resource/src/main/webapp/WEB-INF/ehr/jsp/datacollect/editorJobJs.jsp

@ -617,13 +617,25 @@
                            $.ligerDialog.error("请选择数据集!");
                            return false;
                        }
                    }
                    //判断是否设置轮询字段和字段类型
                    var selected = me.$listDataset.getSelectedRows();
                    for(var i=0;i<selected.length;i++)
                    {
                        if(selected[i].jobDatasetKey!= undefined && selected[i].jobDatasetKey.length>0 && selected[i].jobDatasetKeytype!= undefined && selected[i].jobDatasetKeytype.length>0)
                        {
                        }
                        else{
                            return true;
                            $.ligerDialog.error(selected[i].jobDatasetName+"未设置轮询字段!");
                            return false;
                        }
                    }
                    else{
                        return true;
                    }
                    return true;
                }
                default :
                    return true;

+ 7 - 5
Hos-resource/src/main/webapp/WEB-INF/ehr/jsp/standard/integration/appIndexJs.jsp

@ -173,7 +173,6 @@
      standard.list.showDialog(_tital, _url, 500, 500, callback);
    },
    addVersion: function (pid,id,name,code,rowindex,type) {
      var _tital = "";
      if(type =="0"){
        _tital = "新增标准版本";
@ -182,13 +181,16 @@
      }else{
        _tital = "标准版本信息";
      }
      standard.list.grid.select(rowindex);//选中行
      var row = standard.list.grid.getParent(standard.list.grid.getSelectedRow());
      if(row!=null){//是父节点
        name = $.parseJSON(JSON.stringify(row)).name;//获取父节点的标准名称
      if(row!=null) {//是父节点
        code = $.parseJSON(JSON.stringify(row)).code;
        if(type != "0") {
          name = $.parseJSON(JSON.stringify(row)).name;//获取父节点的标准名称
        }
      }
      debugger;
      var _url = standard.list._url + "/integration/versionUpdate?standardId="+pid+"&id=" + id+"&name="+name+"&type="+type+"&code="+code;
      var callback = function () {
        standard.list.getTypeList();

+ 4 - 8
Hos-resource/src/main/webapp/WEB-INF/ehr/jsp/standard/integration/versionDetailJs.jsp

@ -21,7 +21,6 @@
        validator: null,
        baseversion_select: null,
        init: function () {
          var id = $.Util.getUrlQueryString('id').replace("standard","");
          var standardId = $.Util.getUrlQueryString('standardId')==null?"":$.Util.getUrlQueryString('standardId').replace("standard","");
          var name = $.Util.getUrlQueryString('name');
@ -33,7 +32,6 @@
          $("#txt_stdname").text(name);
          $("#txt_stdcode").text(code);
          $("#txt_seestdname").text(name);
            debugger;
          if(type=="0"){//新增
            this.$addform.show();
@ -45,8 +43,8 @@
            $("#div_abaseVersion").hide();
            this.getStandardVersionInfo(id,type);
          }else{//查看
            this.$seeform.show();debugger;
            this.getStandardVersionInfo(id,type);
            this.$seeform.show();
            this.getStandardVersionInfo(id,type,code);
          }
          this.event();
@ -56,7 +54,7 @@
            }
          });
        },
        getStandardVersionInfo: function (versionId,type) {//获取标准版本信息
        getStandardVersionInfo: function (versionId,type,code) {//获取标准版本信息
          var u = standard.version;
            versionId = Number(versionId.replace("version",""));
            $("#versionId").val(versionId+"");
@ -71,8 +69,7 @@
                        u.getBaseVersionList($("#standardId").val(),type);//获取基础版本下拉框信息
                        if(type == ""){//查看标准版本信息
                            $("#lbl_version").text(u._getData.version);
                            $("#lbl_version").text(code);
                            $("#lbl_primaryVersion").text(u._getData.primaryVersion);
                            <%
                             SystemUser user = (SystemUser) session.getAttribute("userInfo");
@ -148,7 +145,6 @@
                  var data = standard.version._getData;
                  data.name = jsonString.name;
                  resultData = data;
                  resultData.publishTime = new Date(resultData.publishTime);
                  _url = standard.version._url+"/standardCenter/updateVersion";
              }

+ 111 - 17
Hos-resource/src/main/webapp/develop/lib/ligerui/custom/ligerOverwrite.js

@ -1832,28 +1832,122 @@
            }
            this.inputText.val(value)
        },
        _init: function ()
        _render: function ()
        {
            $.ligerui.controls.Spinner.base._init.call(this);
            var p = this.options;
            if (p.type == 'float')
            {
                p.step = 0.1;
                p.interval = 300;
            } else if (p.type == 'int')
            var g = this, p = this.options;
            g.interval = null;
            g.inputText = null;
            g.value = null;
            g.textFieldID = "";
            if (this.element.tagName.toLowerCase() == "input" && this.element.type && this.element.type == "text")
            {
                g.inputText = $(this.element);
                if (this.element.id)
                    g.textFieldID = this.element.id;
            }
            else
            {
                p.step = 1;
                p.interval = 300;
            } else if (p.type == 'time')
                g.inputText = $('<input type="text"/>');
                g.inputText.appendTo($(this.element));
            }
            if (g.textFieldID == "" && p.textFieldID)
                g.textFieldID = p.textFieldID;
            g.link = $('<div class="l-trigger"><div class="l-spinner-up"><div class="l-spinner-icon"></div></div><div class="l-spinner-split"></div><div class="l-spinner-down"><div class="l-spinner-icon"></div></div></div>');
            g.wrapper = g.inputText.wrap('<div class="l-text"></div>').parent();
            g.wrapper.append('<div class="l-text-l"></div><div class="l-text-r"></div>');
            g.wrapper.append(g.link).after(g.selectBox).after(g.valueField);
            g.link.up = $(".l-spinner-up", g.link);
            g.link.down = $(".l-spinner-down", g.link);
            g.inputText.addClass("l-text-field");
            if (p.disabled)
            {
                p.step = 1;
                p.interval = 300;
            } else
                g.wrapper.addClass("l-text-disabled");
            }
            //初始化
            if (!g._isVerify(g.inputText.val()))
            {
                p.type = "int";
                p.step = 1;
                p.interval = 300;
                g.value = g._getDefaultValue();
                g._showValue(g.value);
            }
            //事件
            g.link.up.hover(function ()
            {
                if (!p.disabled)
                    $(this).addClass("l-spinner-up-over");
            }, function ()
            {
                clearInterval(g.interval);
                $(document).unbind("selectstart.spinner");
                $(this).removeClass("l-spinner-up-over");
            }).mousedown(function ()
            {
                if (!p.disabled)
                {
                    g._uping.call(g);
                    /********* 向上延时500 *************/
                    g.interval = setInterval(function ()
                    {
                        g._uping.call(g);
                    }, p.interval+500);
                    /**********************************/
                    $(document).bind("selectstart.spinner", function () { return false; });
                }
            }).mouseup(function ()
            {
                clearInterval(g.interval);
                g.inputText.trigger("change").focus();
                $(document).unbind("selectstart.spinner");
            });
            g.link.down.hover(function ()
            {
                if (!p.disabled)
                    $(this).addClass("l-spinner-down-over");
            }, function ()
            {
                clearInterval(g.interval);
                $(document).unbind("selectstart.spinner");
                $(this).removeClass("l-spinner-down-over");
            }).mousedown(function ()
            {
                if (!p.disabled)
                {
                    g.interval = setInterval(function ()
                    {
                        g._downing.call(g);
                    }, p.interval);
                    $(document).bind("selectstart.spinner", function () { return false; });
                }
            }).mouseup(function ()
            {
                clearInterval(g.interval);
                g.inputText.trigger("change").focus();
                $(document).unbind("selectstart.spinner");
            });
            g.inputText.change(function ()
            {
                var value = g.inputText.val();
                g.value = g._getVerifyValue(value);
                g.trigger('changeValue', [g.value]);
                g._showValue(g.value);
            }).blur(function ()
            {
                g.wrapper.removeClass("l-text-focus");
            }).focus(function ()
            {
                g.wrapper.addClass("l-text-focus");
            });
            g.wrapper.hover(function ()
            {
                if (!p.disabled)
                    g.wrapper.addClass("l-text-over");
            }, function ()
            {
                g.wrapper.removeClass("l-text-over");
            });
            g.set(p);
        }
    });