فهرست منبع

Merge branch 'test' of http://192.168.2.236:10080/zhouna/platformFront into test

Luolei 6 سال پیش
والد
کامیت
633f66caba

+ 1 - 0
src/api/config.js

@@ -199,6 +199,7 @@ export default {
     'getknowledgeList': 'api/knowledgeman/dictionaryInfo/getList', //量表结构字典信息
     'getknowledgeList': 'api/knowledgeman/dictionaryInfo/getList', //量表结构字典信息
     'getModuleType': 'api/icssman/moduleInfo/getModuleType',  //模板维护 -- 类型筛选
     'getModuleType': 'api/icssman/moduleInfo/getModuleType',  //模板维护 -- 类型筛选
     'indexByLexicon': 'api/icssman/questionInfo/indexByLexicon',  //知识库标准化-根据名称和术语库词性类型搜索
     'indexByLexicon': 'api/icssman/questionInfo/indexByLexicon',  //知识库标准化-根据名称和术语库词性类型搜索
+    'indexByLexiconStandWord':'api/knowledgeman//commonconcept/indexByLexicon',  //知识库标准化-根据名称搜索
     'getAssaySon': 'api/knowledgeman/lisSonContact/lisSonContactList',  //化验子项维护
     'getAssaySon': 'api/knowledgeman/lisSonContact/lisSonContactList',  //化验子项维护
     'getAssaySonDetail': 'api/knowledgeman/lisSonContact/relationContactDetail',  //化验子项维护-详情
     'getAssaySonDetail': 'api/knowledgeman/lisSonContact/relationContactDetail',  //化验子项维护-详情
     'getConceptInfoAssay': '/api/knowledgeman/concept/getAllForRelation',  //化验子项维护-搜索术语
     'getConceptInfoAssay': '/api/knowledgeman/concept/getAllForRelation',  //化验子项维护-搜索术语

+ 3 - 0
src/api/icss.js

@@ -97,6 +97,9 @@ export default {
     indexByLexicon(param) {
     indexByLexicon(param) {
         return axios.post(urls.indexByLexicon, param)
         return axios.post(urls.indexByLexicon, param)
     },
     },
+    indexByLexiconStandWord(param) {
+        return axios.post(urls.indexByLexiconStandWord, param)
+    },
     getGroupParams(val){
     getGroupParams(val){
       if(val == 2){
       if(val == 2){
         return groupParams[0]
         return groupParams[0]

+ 5 - 5
src/components/icss/AddDisclInfo.vue

@@ -9,7 +9,7 @@
                     <el-input v-model="form.title" placeholder="请输入标题" maxlength="30"></el-input>
                     <el-input v-model="form.title" placeholder="请输入标题" maxlength="30"></el-input>
                 </el-form-item>
                 </el-form-item>
                 <el-form-item label="内容:" prop="description" class="discDesc">
                 <el-form-item label="内容:" prop="description" class="discDesc">
-                    <el-input type="textarea" :rows="3" placeholder="请输入内容述" v-model="form.description" maxlength="120"></el-input>
+                    <el-input type="textarea" :rows="3" placeholder="请输入内容述" v-model="form.description" maxlength="1024"></el-input>
                 </el-form-item>
                 </el-form-item>
                 <el-form-item label="归属:" prop="disclaimerCode">
                 <el-form-item label="归属:" prop="disclaimerCode">
                     <el-select v-model="form.disclaimerCode" clearable placeholder="请选择">
                     <el-select v-model="form.disclaimerCode" clearable placeholder="请选择">
@@ -41,7 +41,7 @@
            this.$message({
            this.$message({
              showClose: true,
              showClose: true,
              type: 'warning',
              type: 'warning',
-             message: '已超过最大字数限制'
+             message: '标题已超过最大字数限制'
            })
            })
         }
         }
         callback();
         callback();
@@ -50,12 +50,12 @@
         if (!value) {
         if (!value) {
           return callback(new Error('请输入内容'));
           return callback(new Error('请输入内容'));
         }
         }
-        if (value.length >= 120) {
-           this.form.name = value.substr(0, 120);
+        if (value.length >= 1024) {
+           this.form.name = value.substr(0, 1024);
            this.$message({
            this.$message({
              showClose: true,
              showClose: true,
              type: 'warning',
              type: 'warning',
-             message: '已超过最大字数限制'
+             message: '内容已超过最大字数限制'
            })
            })
         }
         }
         callback();
         callback();

+ 2 - 4
src/components/icss/AddMedicalMultRelation.vue

@@ -196,10 +196,8 @@ import api from '@api/icss.js';
           } else if(type == '2') { //移除节点的时候同时移除节点(搜索时排除的id列表)
           } else if(type == '2') { //移除节点的时候同时移除节点(搜索时排除的id列表)
             newChild = nodeList[i].conceptId
             newChild = nodeList[i].conceptId
           }
           }
-          if(this.level === 4) {
-            return
-          }
-          if(nodeList[i].nodeList &&nodeList[i].nodeList.length > 0) {
+          
+          if(nodeList[i].nodeList &&nodeList[i].nodeList.length > 0&&level < 3) {
             if(type == '0' || type =='1') {
             if(type == '0' || type =='1') {
               this.IteraNodeList(nodeList[i].nodeList,  newChild.nodeList, type, level+1)
               this.IteraNodeList(nodeList[i].nodeList,  newChild.nodeList, type, level+1)
             } else if(type == '2') {
             } else if(type == '2') {

+ 2 - 2
src/components/icss/AddMedicalRelation.vue

@@ -8,14 +8,14 @@
           <span>起始术语搜索:</span>
           <span>起始术语搜索:</span>
           <el-input size="small" v-model="firstInput" placeholder="输入术语" @input="search(1)"></el-input>
           <el-input size="small" v-model="firstInput" placeholder="输入术语" @input="search(1)"></el-input>
           <ul v-if="showFlag==1">
           <ul v-if="showFlag==1">
-            <li v-for="it in searchDatas" :key="it.id" @click.stop="chooseFirst(it)" :title="it.name.length>10?it.name:''">{{it.name}}</li>
+            <li v-for="it in searchDatas" :key="it.id" @click.stop="chooseFirst(it)" :title="(it.name+'('+it.type+')').length>10?it.name+'('+it.type+')':''">{{it.name+'('+it.type+')'}}</li>
           </ul>
           </ul>
         </div>
         </div>
         <div class="search">
         <div class="search">
           <span>终点术语搜索:</span>
           <span>终点术语搜索:</span>
           <el-input size="small" v-model="endInput" placeholder="输入术语" @input="search(2)"></el-input>
           <el-input size="small" v-model="endInput" placeholder="输入术语" @input="search(2)"></el-input>
           <ul v-if="showFlag==2">
           <ul v-if="showFlag==2">
-            <li v-for="it in searchDatas" :key="it.id" @click.stop="chooseEnd(it)" :title="it.name.length>10?it.name:''">{{it.name}}</li>
+            <li v-for="it in searchDatas" :key="it.id" @click.stop="chooseEnd(it)" :title="(it.name+'('+it.type+')').length>10?it.name+'('+it.type+')':''">{{it.name+'('+it.type+')'}}</li>
           </ul>
           </ul>
         </div>
         </div>
         <table class="deptbox">
         <table class="deptbox">

+ 1 - 1
src/components/icss/NoiseTemplate.vue

@@ -174,7 +174,7 @@ export default {
     validatePass() {      //验证成功回调,调取接口
     validatePass() {      //验证成功回调,调取接口
       //仍需验证标签明细是否选择
       //仍需验证标签明细是否选择
       let type = this.dataPub.region1;
       let type = this.dataPub.region1;
-      if (JSON.stringify(this.sendIds) == '[[],[],[],[],[],[]]' && type != 6 && type != 7 && type != 8 && type != 9 && type != 21 && type != 22 && type != 10) {
+      if (JSON.stringify(this.sendIds) == '[[],[],[],[],[],[]]' && type != 6 && type != 7 && type != 8 && type != 9 && type != 21 && type != 22 && type != 10 &&(type == 1&&this.dataPub.region2!=4)) {
         this.$message({
         this.$message({
           message: '请选择标签明细',
           message: '请选择标签明细',
           type: 'warning'
           type: 'warning'

+ 78 - 14
src/components/icss/PubIndeptTag.vue

@@ -48,14 +48,18 @@
                 </el-select>
                 </el-select>
             </el-form-item>
             </el-form-item>
             <el-form-item
             <el-form-item
-              v-show="form.region1 == 4 "
-              :label="'当为查体推送项时,需要检索标准术语'"
+              v-show="form.region1 == 4 || form.region1 == 5"
+              :label="(form.region1 == 4)?'当为查体推送项时,需要检索标准术语':(form.region1 == 5)?'是否当化验推送项':''"
               prop="region12"
               prop="region12"
             >
             >
               <span
               <span
                 v-if="form.region1 == 4"
                 v-if="form.region1 == 4"
                 class="changeTips changeTipsName"
                 class="changeTips changeTipsName"
               >当为查体推送项时,标签系统名称需要检索医学标准术语内容并与之相对应,才可保证系统正常使用,如果未对应上可能造成系统显示异常!如果在搜索中没有可以先在医学标准术语中建立相关信息!</span>
               >当为查体推送项时,标签系统名称需要检索医学标准术语内容并与之相对应,才可保证系统正常使用,如果未对应上可能造成系统显示异常!如果在搜索中没有可以先在医学标准术语中建立相关信息!</span>
+              <span
+                v-if="form.region1 == 5"
+                class="changeTips changeTipsName"
+              >当为化验推送项时,标签系统名称需要检索医学标准术语内容并与之相对应,才可保证系统正常使用,如果未对应上可能造成系统显示异常!如果在搜索中没有可以先在医学标准术语中建立相关信息!</span>
               <el-select
               <el-select
                 v-model="form.region12"
                 v-model="form.region12"
                 @change="sendData"
                 @change="sendData"
@@ -107,7 +111,7 @@
                         @change="sendData"
                         @change="sendData"
                 ></el-input> -->
                 ></el-input> -->
                  <span
                  <span
-                  v-if="form.region1 == 4"
+                  v-if="form.region1 == 4 || form.region1 == 5"
                   class="changeTips changeTipsName"
                   class="changeTips changeTipsName"
                 >标签系统名称需要与医学标准术语内容相对应,如果没有可以先在医学标准术语中建立相关信息!未建立相关信息可能会影响系统使用!当为查体推送项时标签系统名称应当检索医学术语库内容;</span>
                 >标签系统名称需要与医学标准术语内容相对应,如果没有可以先在医学标准术语中建立相关信息!未建立相关信息可能会影响系统使用!当为查体推送项时标签系统名称应当检索医学术语库内容;</span>
             </el-form-item>
             </el-form-item>
@@ -120,10 +124,22 @@
                         v-model="form.region4"
                         v-model="form.region4"
                         maxLength="30"
                         maxLength="30"
                         placeholder="请输入标签界面名称"
                         placeholder="请输入标签界面名称"
+                        @focus="focusInterfaceName"
                         @change="sendData"
                         @change="sendData"
                 ></el-input>
                 ></el-input>
+                <ul
+                  class="systemNames"
+                  v-if="interfaceNameShow"
+                >
+                  <li
+                    v-for="item in interfacemNameLis"
+                    class="ellipsis"
+                    :key="item.conceptId"
+                    @click="pushInterfaceName(item.name)"
+                  >{{item.name}}</li>
+                </ul>
                 <span
                 <span
-                  v-if="form.region1 == 4"
+                  v-if="form.region1 == 4 || form.region1 == 5"
                   class="changeTips changeTipsName"
                   class="changeTips changeTipsName"
                 >为在界面上检索不受影响,标签界面名称应与标签系统名称和医学标准术语内容相对应, 未建立相关信息可能会影响系统使用!</span>
                 >为在界面上检索不受影响,标签界面名称应与标签系统名称和医学标准术语内容相对应, 未建立相关信息可能会影响系统使用!</span>
             </el-form-item>
             </el-form-item>
@@ -326,7 +342,6 @@
           prefix:'',            //前缀
           prefix:'',            //前缀
           suffix:'',            //后缀
           suffix:'',            //后缀
           tipLis:[],           //提示列表
           tipLis:[],           //提示列表
-          isNeedSearch: false, //是否需要查询(系统名称)
         },
         },
         labelTypesMaps: {       //// 归属和填写单类型限制
         labelTypesMaps: {       //// 归属和填写单类型限制
           '1':['1','2','5','6','7','11'], //联合推送暂时不用
           '1':['1','2','5','6','7','11'], //联合推送暂时不用
@@ -379,7 +394,12 @@
         AdscriptionsList:[],
         AdscriptionsList:[],
         labelTypes: [],
         labelTypes: [],
         labelTypesList: [],
         labelTypesList: [],
-        systemNameShow: false,//系统名称列表显示
+        isNeedSearchSys: false, //是否需要查询(系统名称)
+        isNeedSearchInterface: false, //是否需要查询(界面名称)
+        systemNameShow: false,//系统名称显示
+        systemNameLis: [], //系统名称列表
+        interfacemNameLis: [],  //界面名称列表
+        interfaceNameShow: false, //界面名称显示
         type:'',
         type:'',
         systom:null,      //标签系统名称存在与否
         systom:null,      //标签系统名称存在与否
       }
       }
@@ -397,6 +417,9 @@
       newName() {
       newName() {
         return this.form.region3;
         return this.form.region3;
       },
       },
+      newInterfaceName() {
+        return this.form.region4;
+      }
     },
     },
     mounted() {
     mounted() {
       
       
@@ -418,10 +441,15 @@
         this.tmpSex = prevVal;
         this.tmpSex = prevVal;
       },
       },
       newName(nextVal, prevVal) {
       newName(nextVal, prevVal) {
-        if (this.isNeedSearch && nextVal != prevVal && (this.form.region12 == 0)) {
+        if (this.isNeedSearchSys && nextVal != prevVal && (this.form.region12 == 0)) {
           this.focusSystemName()
           this.focusSystemName()
         }
         }
       },
       },
+      newInterfaceName(nextVal, prevVal) {
+        if (this.isNeedSearchInterface && nextVal != prevVal && (this.form.region12 == 0)) {
+          this.focusInterfaceName()
+        }
+      }
     },
     },
     methods: {
     methods: {
       getDropList() {
       getDropList() {
@@ -489,12 +517,14 @@
         });
         });
       },
       },
       focusSystemName() {
       focusSystemName() {
-        this.isNeedSearch = true
-        if (this.form.region3.trim() == '') {
-          this.systemNameShow = false
-          this.systemNameLis = []
-          return
-        }
+        if(this.form.region1 == 4) {
+          this.isNeedSearchSys = true
+          if (this.form.region3.trim() == '') {
+            this.systemNameShow = false
+            this.systemNameLis = []
+            return
+          }
+        
         if (this.form.region12 == 0) {
         if (this.form.region12 == 0) {
           let tmpArr = [];
           let tmpArr = [];
           if (this.form.region1 == 1 && this.form.region2 == 4) {//症状
           if (this.form.region1 == 1 && this.form.region2 == 4) {//症状
@@ -522,11 +552,45 @@
             }
             }
           })
           })
         }
         }
+        } 
+      },
+      focusInterfaceName() {
+        if(this.form.region1 == 5) {
+          this.isNeedSearchInterface = true
+          if (this.form.region4.trim() == '') {
+            this.interfaceNameShow = false
+            this.interfacemNameLis = []
+            return
+          }
+          if (this.form.region12 == 0) {
+            let params = {
+              "libType": [13],
+              "name": this.form.region4,
+            }
+            api.indexByLexiconStandWord(params).then((res) => {
+              if (res.data.code === '0') {
+                this.interfacemNameLis = res.data.data
+                if (res.data.data.length > 0) {
+                  this.interfaceNameShow = true
+                } else {
+                  this.interfaceNameShow = false
+                }
+              }
+            })
+          }
+
+        }
+        
       },
       },
       pushSystemName(val) {
       pushSystemName(val) {
         this.form.region3 = val
         this.form.region3 = val
         this.systemNameShow = false
         this.systemNameShow = false
-        this.isNeedSearch = false
+        this.isNeedSearchSys = false
+      },
+      pushInterfaceName(val) {
+        this.form.region4 = val
+        this.interfaceNameShow = false
+        this.isNeedSearchInterface = false
       },
       },
       closeNameLis(flg) {
       closeNameLis(flg) {
         if (flg == 1) {
         if (flg == 1) {

+ 11 - 15
src/components/icss/SymptomTagGroup.vue

@@ -175,9 +175,9 @@ export default {
             }
             }
         },
         },
         selectRightTag(tag) {
         selectRightTag(tag) {
-            if(tag.type == 'input'){
-              return;
-            }
+            // if(tag.type == 'input'){
+            //   return;
+            // }
             let tmpArr = [];
             let tmpArr = [];
             tmpArr.push(tag);
             tmpArr.push(tag);
             if (this.selectRightTagsList.length > 0 && tag.id == this.selectRightTagsList[0].id) {
             if (this.selectRightTagsList.length > 0 && tag.id == this.selectRightTagsList[0].id) {
@@ -210,7 +210,7 @@ export default {
             return this.isHasTag(item, this.selectRightTagsList)
             return this.isHasTag(item, this.selectRightTagsList)
         },
         },
         toggleTopDownList(type){
         toggleTopDownList(type){
-          if(this.selectRightTagsList.length == 0 || this.rightTagsList2.length == 0){
+          if(this.selectRightTagsList.length == 0 || this.rightTagsList2.length == 0 ||this.selectRightTagsList[0].type == 'input' ){
             return
             return
           }
           }
           const tmpRightSelect = JSON.parse(JSON.stringify(this.selectRightTagsList))
           const tmpRightSelect = JSON.parse(JSON.stringify(this.selectRightTagsList))
@@ -224,11 +224,9 @@ export default {
                   return;
                   return;
                 }else{//先把这个元素和后面的输入框从数组中删除,再添加到数组里
                 }else{//先把这个元素和后面的输入框从数组中删除,再添加到数组里
                   let tmp1 = tmpRightLis[i]
                   let tmp1 = tmpRightLis[i]
-                  let tmp2 = tmpRightLis[i+1]
-                  tmpRightLis.splice(i,1)
-                  tmpRightLis.splice(i,1)
-                  tmpRightLis.splice(i-2,0,tmp1)
-                  tmpRightLis.splice(i-1,0,tmp2)
+                  let tmp2 = tmpRightLis[i-2]
+                  tmpRightLis.splice(i-2,1,tmp1)
+                  tmpRightLis.splice(i,1,tmp2)
                   this.rightTagsList2 = [...tmpRightLis]
                   this.rightTagsList2 = [...tmpRightLis]
                   this.$emit('changeActionData',this.rightTagsList2, false);
                   this.$emit('changeActionData',this.rightTagsList2, false);
                   return
                   return
@@ -238,15 +236,13 @@ export default {
           }else if(type == 2){
           }else if(type == 2){
             for(let i = 0;i < tmpRightLis.length;i++){
             for(let i = 0;i < tmpRightLis.length;i++){
               if(numId === tmpRightLis[i].id){
               if(numId === tmpRightLis[i].id){
-                if(i == numLen-1){
+                if(i == numLen-2){
                   return;
                   return;
                 }else{
                 }else{
                   let tmp1 = tmpRightLis[i]
                   let tmp1 = tmpRightLis[i]
-                  let tmp2 = tmpRightLis[i+1]
-                  tmpRightLis.splice(i,1)
-                  tmpRightLis.splice(i,1)
-                  tmpRightLis.splice(i+2,0,tmp1)
-                  tmpRightLis.splice(i+3,0,tmp2)
+                  let tmp2 = tmpRightLis[i+2]
+                  tmpRightLis.splice(i,1,tmp2)
+                  tmpRightLis.splice(i+2,1,tmp1)
                   this.rightTagsList2 = [...tmpRightLis]
                   this.rightTagsList2 = [...tmpRightLis]
                   this.$emit('changeActionData',this.rightTagsList2, false);
                   this.$emit('changeActionData',this.rightTagsList2, false);
                   return
                   return

+ 5 - 3
src/components/icss/VersionDesc.vue

@@ -30,7 +30,7 @@
             <template slot-scope="scope">
             <template slot-scope="scope">
                 <el-button type="text" size="small" @click="toEditDesc(scope.row,scope.$index)">修改</el-button>
                 <el-button type="text" size="small" @click="toEditDesc(scope.row,scope.$index)">修改</el-button>
                 <span style="margin:0 3px;">|</span>
                 <span style="margin:0 3px;">|</span>
-                <el-button type="text" size="small" class="delete" @click="showDelDialog(scope.row.id)">删除</el-button>
+                <el-button type="text" size="small" class="delete" @click="showDelDialog(scope.row,scope.row.id)">删除</el-button>
             </template>
             </template>
         </el-table-column>
         </el-table-column>
         <el-table-column
         <el-table-column
@@ -298,7 +298,7 @@
           resolve();
           resolve();
         }).catch(() => {});
         }).catch(() => {});
       },
       },
-      showDelDialog(id){
+      showDelDialog(item,id){
         this.showConfirmDialog('是否删除该版本说明?',()=>{
         this.showConfirmDialog('是否删除该版本说明?',()=>{
           if(!this.isCopy){
           if(!this.isCopy){
             api.delVersionInfo({id}).then((res)=>{
             api.delVersionInfo({id}).then((res)=>{
@@ -320,7 +320,9 @@
           }else{
           }else{
             let newList = JSON.parse(JSON.stringify(this.list));
             let newList = JSON.parse(JSON.stringify(this.list));
             for(let i in newList){
             for(let i in newList){
-              if(newList[i].id==id){
+              if(id && newList[i].id==id){
+                this.list.splice(i,1);
+              }else if(newList[i].title == item.title && newList[i].description == item.description){//新增的没有id
                 this.list.splice(i,1);
                 this.list.splice(i,1);
               }
               }
             }
             }