Selaa lähdekoodia

Merge remote-tracking branch 'origin/dev' into dev

zhouna 6 vuotta sitten
vanhempi
commit
376205ee08

+ 12 - 0
src/api/config.js

@@ -100,6 +100,18 @@ export default {
     'delPromptInfo':'api/icssman/introduceInfo/deleteRecord',//删除提示信息
     'PromptInfoDetail':'api/icssman/introduceDetail/getByIntroduceId',//提示信息详情
     'getIcssEnumsData':'api/icssman/getIcssEnumsData',//icss枚举
+	  'similarName': 'api/icssman/retrieval/retrievalList', //别名维护
+    'delSimilarName': 'api/icssman/retrieval/delRetrievalsByQuesId', //别名维护-删除
+    'similarNameDetl': 'api/icssman/retrieval/getRetrievalsByTag', //别名维护-详情
+    'addSimilarName': 'api/icssman/retrieval/addTagRetrieval', //别名维护-添加、修改
+    'searchLable': 'api/icssman/questionInfo/index', //标签检索
+    'uploadFile': 'api/icssman/retrieval/retrievalExcelIm', //别名维护-导入
+    'discInformation': 'api/icssman/disclaimerInformation/getDisclaimerInformations', //免责声明
+    'addDiscInformation': 'api/icssman/disclaimerInformation/addDisclaimerInformations', //免责声明-新增
+    'modifDiscInformation': 'api/icssman/disclaimerInformation/updateDisclaimerInformations', //免责声明-修改
+    'delDiscInformation': 'api/icssman/disclaimerInformation/cancelDisclaimerInformations', //免责声明-删除
+    'closeInformation': 'api/icssman/disclaimerInformation/endDisclaimerInformations', //免责声明-停用
+    'openInformation': 'api/icssman/disclaimerInformation/startDisclaimerInformations', //免责声明-启用
 	},
 	menuIconList: { //菜单对应图标
 		'YH-KZT': 'el-icon-menu',

+ 37 - 1
src/api/icss.js

@@ -74,5 +74,41 @@ export default {
       }else {
         return null
       }
-    }
+    },
+    similarName(param) {//别名维护
+        return axios.post(urls.similarName, param)
+    },
+    delSimilarName(param) {//别名维护-删除
+        return axios.post(urls.delSimilarName, param)
+    },
+    similarNameDetl(param) {//别名维护-详情
+        return axios.post(urls.similarNameDetl, param)
+    },
+    addSimilarName(param) {//别名维护-添加、修改
+        return axios.post(urls.addSimilarName, param)
+    },
+    searchLable(param) {//别名维护-搜索标签
+        return axios.post(urls.searchLable, param)
+    },
+    uploadFile(param) {//别名维护-导入
+        return axios.post(urls.uploadFile, param)
+    },
+    discInformation(param) {//免责声明
+        return axios.post(urls.discInformation, param)
+    },
+    addDiscInformation(param) {//免责声明-新增
+        return axios.post(urls.addDiscInformation, param)
+    },
+    modifDiscInformation(param) {//免责声明-修改
+        return axios.post(urls.modifDiscInformation, param)
+    },
+    delDiscInformation(param) {//免责声明-删除
+        return axios.post(urls.delDiscInformation, param)
+    },
+    closeInformation(param) {//免责声明-停用
+        return axios.post(urls.closeInformation, param)
+    },
+    openInformation(param) {//免责声明-停用
+        return axios.post(urls.openInformation, param)
+    },
 }

+ 4 - 1
src/api/utils.js

@@ -172,7 +172,7 @@ export default {
    *将提交的参数转换成对应的组件form中的key
    *
    */
-  transformKeys(data){
+  transformKeys(data, tagFlag){   //tagFlag:独立标签还是标签组 ()
     const maps = {
       "controlType": 'region2',                            //控件类型(0:默认值 1:下拉单选 2:下拉多选 6:文本框 7:数字键盘文本框 99:联合推送)
       "tagType": 'region2',              //标签类型
@@ -190,6 +190,9 @@ export default {
       "maxValue":'maxNormalVal',                                 //前缀
       "minValue":'minNormalVal'                                 //后缀
     };
+    if (tagFlag) {
+      maps["tagType"] = 'region2'
+    }
     let obj = {};
     for(let it in maps){
       obj[maps[it]] = typeof data[it]=='number'?data[it]+'':data[it];

+ 6 - 8
src/components/icss/AddDeptInfo.vue

@@ -4,11 +4,11 @@
         <crumbs :title="topInfo" linkTo="/admin/LT-YXSJWH-KSWH">
         </crumbs>
         <div class="contents">
-            <el-form ref="form" :model="form" :rules="rules" label-width="120" class="add-admin-form">
+            <el-form ref="form" :label-position="labelPosition" :model="form" :rules="rules" label-width="100px" class="add-admin-form">
                 <el-form-item label="科室名称:" prop="name">
                     <el-input v-model="form.name" placeholder="请输入科室名称"></el-input>
                 </el-form-item>
-                <el-form-item label="描述:" prop="remark" class="desc">
+                <el-form-item label="描述:" prop="remark">
                     <el-input type="textarea" :rows="3" placeholder="请输入科室描述" v-model="form.remark" maxlength="1024"></el-input>
                 </el-form-item>
                 <el-button size="small" type="primary" @click="addOrga">{{text}}</el-button>
@@ -38,6 +38,7 @@
       };
       return {
         id:null,
+        labelPosition:'right',
         form: {
           name: '',
           remark: '' //描述
@@ -140,7 +141,7 @@
   .el-button{
     margin: 30px 0 0 20px;
   }
-  .contents{
+  /* .contents{
     position: relative;
     .back{
       position: absolute;
@@ -149,11 +150,8 @@
       z-index: 7;
       cursor: pointer;
     }
-  }
-  .desc{
-    padding-left: 39px;
-  }
+  } */
   .el-textarea{
-    width: 90%;
+    width: 97%;
   }
 </style>

+ 195 - 0
src/components/icss/AddDisclInfo.vue

@@ -0,0 +1,195 @@
+<!-- 添加机构信息 By_liucf -->
+<template>
+    <div>
+        <crumbs :title="topInfo" linkTo="/admin/LT-YXSJWH-MZSMWH">
+        </crumbs>
+        <div class="contents">
+            <el-form ref="form" :label-position="labelPosition" :model="form" :rules="rules" label-width="65px" class="add-discl-form">
+                <el-form-item label="标题:" prop="title">
+                    <el-input v-model="form.title" placeholder="请输入标题"></el-input>
+                </el-form-item>
+                <el-form-item label="内容:" prop="description" class="discDesc">
+                    <el-input type="textarea" :rows="3" placeholder="请输入内容述" v-model="form.description" maxlength="1024"></el-input>
+                </el-form-item>
+                <el-form-item label="归属:" prop="disclaimerCode">
+                    <el-select v-model="form.disclaimerCode" clearable placeholder="请选择">
+                      <el-option
+                        v-for="item in options"
+                        :key="item.key"
+                        :label="item.name"
+                        :value="item.key">
+                      </el-option>
+                    </el-select>
+                </el-form-item>
+                <el-button class="disclButn" size="small" type="primary" @click="addDiscl">{{text}}</el-button>
+            </el-form>
+        </div>
+    </div>
+</template>
+
+<script>
+  import api from '@api/icss.js';
+  export default {
+    name: 'AddDisclInfo',
+    data(){
+      const titleVaild = (rule, value, callback) => {
+        if (!value) {
+          return callback(new Error('请输入标题'));
+        }
+        if (value.length > 30) {
+           this.form.name = value.substr(0, 120);
+           this.$message({
+             showClose: true,
+             type: 'warning',
+             message: '已超过最大字数限制'
+           })
+        }
+        callback();
+      };
+      /*const descVaild = (rule, value, callback) => {
+        if (!value) {
+          return callback(new Error('请输入内容'));
+        }
+        if (value.length > 1024) {
+           this.form.name = value.substr(0, 120);
+           this.$message({
+             showClose: true,
+             type: 'warning',
+             message: '科室名称最多可输入1024个字'
+           })
+        }
+        callback();
+      };*/
+      const disclVaild = (rule, value, callback) => {
+        if (!value) {
+          return callback(new Error('请选择归属'));
+        }
+        callback();
+      };
+      return {
+        id:null,
+        labelPosition:'right',
+        options:[],
+        form: {
+          title: '',
+          description: '',//内容
+          disclaimerCode:'' //归属
+        },
+        rules: {
+          title:[
+            { required: true, validator: titleVaild, trigger: ['blur', 'change'] },
+            { required: true, message: '请输入标题', trigger: ['blur', 'change'] }
+          ],
+          description:[
+            // { required: true, validator: descVaild, trigger: ['blur', 'change'] },
+            { required: true, message: '请输入内容', trigger: ['blur', 'change'] }
+          ],
+          disclaimerCode:[
+            { required: true, validator: disclVaild, trigger: ['blur', 'change'] },
+            { required: true, message: '请选择归属', trigger: ['blur', 'change'] }
+          ],
+        },
+        text:'确定添加',
+        topInfo:'免责声明维护-添加免责声明',
+        toast:'添加成功'
+      }
+    },
+    created(){
+      const params = JSON.parse(localStorage.getItem("icssEnumsData"));
+      this.options = params.disclaimerCodeEnum;
+      // 修改
+      const data = this.$route.params.info;
+      if(data){
+        this.id = data.id;
+        this.text = "确定修改";
+        this.topInfo = "免责声明维护-修改";
+        this.toast = "修改成功";
+        this.form.title = data.title;
+        this.form.description = data.description;
+        this.form.disclaimerCode = data.disclaimerCode;
+      }
+    },
+    methods: {
+      addDiscl() {
+        this.$refs.form.validate((valid)=> {
+          if (valid) {
+            // 有id是修改,没有id是添加
+            if(this.id){
+              let param = {
+                id:this.id,
+                title:this.form.title,
+                description:this.form.description,
+                disclaimerCode:this.form.disclaimerCode
+              }
+              api.modifDiscInformation(param).then((res) => {
+                if (res.data.code == '0') {
+                  this.$message({showClose: true,message: this.toast, type: 'success'});
+                  this.$router.push({path: 'LT-YXSJWH-MZSMWH'});
+                } else {
+                  this.$message({
+                    showClose: true,
+                    message: res.data.msg,
+                    type: 'warning'
+                  });
+                }
+              }).catch((error) => {
+                this.$message({
+                  showClose: true,
+                  message: "服务器正忙...",
+                  type: 'warning'
+                });
+              })
+            }else{
+              api.addDiscInformation(this.form).then((res) => {
+                if (res.data.code == '0') {
+                  this.$message({showClose: true,message: this.toast, type: 'success'});
+                  this.$router.push({path: 'LT-YXSJWH-MZSMWH'});
+                } else {
+                  this.$message({
+                    showClose: true,
+                    message: res.data.msg,
+                    type: 'warning'
+                  });
+                }
+              }).catch((error) => {
+                this.$message({
+                  showClose: true,
+                  message: "服务器正忙...",
+                  type: 'warning'
+                });
+              })
+            }  
+          }
+        });
+      },
+      back(){
+        this.$router.go(-1);
+      }
+    }
+  }
+</script>
+
+<style lang="less" >
+    @import "../../less/admin.less";
+
+    .add-discl-form {
+        background: #fff;
+        padding: 20px 20px 30px;
+    }
+
+  // .el-button{
+  .disclButn{
+    margin: 30px 0 0 20px;
+  }
+  
+  .discDesc{
+    // .el-textarea{
+    //   width: 97%;
+    // }
+    margin-top: 10px;
+    margin-bottom: 25px; 
+    .el-form-item__error{
+      top:70px;
+    }
+  }
+</style>

+ 3 - 1
src/components/icss/AddIndeptLabel.vue

@@ -3,7 +3,7 @@
         <div class="groupTitle"><i
                 class="el-icon-back"
                 @click="back"
-        ></i> 独立标签维护--添加独立标签</div>
+        ></i> {{txt}}</div>
         <PubIndeptTag
                 @changeVal="changeVal"
                 @changeSex="changeSex"
@@ -37,6 +37,7 @@
     name: 'NoiseTemplateWrapper',
     data() {
       return {
+        txt:'独立标签维护--添加独立标签',
         dataPub: {},      //公用组件传的值都在这
         itemsTypes:[1,2],            //有明细的类型
         editData:{},                    //编辑数据
@@ -54,6 +55,7 @@
     beforeMount:function(){
       const {isEdit,data} = this.$route.params;
       if(isEdit){
+        this.txt = '独立标签维护--修改独立标签'
         this.editData = data;
       }
     },

+ 333 - 0
src/components/icss/AddSimilarName.vue

@@ -0,0 +1,333 @@
+<template>
+  <div>
+    <crumbs :title="minTitle" linkTo="/admin/LT-YXSJWH-BMWH"></crumbs>
+    <div class="contents">
+      <div class="content" @click="close">
+        <h3>选择标签</h3>
+        <p :class="['ename',{'name':flag}]">{{name}}</p>
+        <div v-if="!flag" class="searchBox">
+          <input type="text" name="" v-model="searchStr" class="name">
+          <span class="search" @click.stop="search">搜索</span>
+          <ul v-if="showFlag">
+            <li v-for="it in searchDatas" :key="it.id" @click="choose(it)" :title="it.tagName.length>10?it.tagName:''">{{it.tagName}}</li>
+          </ul>
+        </div>   
+        <span></span>
+        <h3>添加别名</h3>
+        <p class="subtitle">本体添加:</p>
+        <table class="deptbox">
+          <tr>
+            <td>本体</td>
+            <td>拼音</td>
+          </tr>
+          <tr v-if="flag" v-for="item in selfName">
+           <!--  <td class="desc">{{item.retrievalName}}</td>
+            <td>{{item.retrievalSpell}}</td> -->
+            <td><input type="text" name="" v-model="item.retrievalName"></td>
+            <td><input type="text" name="" v-model="item.retrievalSpell"></td>
+          </tr>
+          <tr v-if="!flag" v-for="(i,index) in selfEmpty">
+            <td><input type="text" name="" v-model="selfEmpty[index].retrievalName"></td>
+            <td><input type="text" name="" v-model="selfEmpty[index].retrievalSpell"></td>
+          </tr>
+        </table>
+        <p class="subtitle">别名添加:</p>
+        <table class="deptbox">
+          <tr>
+            <td>别名</td>
+            <td>拼音</td>
+          </tr>
+          <tr v-if="retrievalNames.length>0" v-for="it in retrievalNames">
+            <td><input type="text" name="" v-model="it.retrievalName"></td>
+            <td><input type="text" name="" v-model="it.retrievalSpell"></td>
+          </tr>
+          <tr v-for="(i,index) in retrievalEmpty">
+            <td><input type="text" name="" v-model="retrievalEmpty[index].retrievalName"></td>
+            <td><input type="text" name="" v-model="retrievalEmpty[index].retrievalSpell"></td>
+          </tr>
+          <tr @click="addSpan(2)">
+            <td colspan="2" class="addSpan">+</td>
+          </tr>
+        </table>
+        <p class="subtitle">子项添加:</p>
+        <table class="deptbox">
+          <tr>
+            <td>子项</td>
+            <td>拼音</td>
+          </tr>
+          <tr v-if="retrievalSonNames.length>0" v-for="v in retrievalSonNames">
+            <td><input type="text" name="" v-model="v.retrievalName"></td>
+            <td><input type="text" name="" v-model="v.retrievalSpell"></td>
+          </tr>
+          <tr v-for="(k,index) in sonEmpty">
+            <td><input type="text" name="" v-model="sonEmpty[index].retrievalName"></td>
+            <td><input type="text" name="" v-model="sonEmpty[index].retrievalSpell"></td>
+          </tr>
+          <tr @click="addSpan(3)">
+            <td colspan="2" class="addSpan">+</td>
+          </tr>
+        </table>
+        <div class="btn">
+          <el-button
+            type="primary"
+            @click="comfirn"
+          >确 定</el-button>
+        </div>
+      </div>
+    </div>   
+  </div>
+</template>
+<script type="text/javascript">
+  import api from '@api/icss.js';
+  export default{
+    name:'AddSimilarName',
+    data(){
+      return{
+        selfName:[], //本体
+        retrievalNames:[],  //别名 
+        retrievalSonNames:[],  //子项
+        id:null,
+        name:"",
+        minTitle:"别名维护-添加别名",
+        toast:'',
+        flag:false, //添加修改的标识,true-修改
+        selfEmpty:[ //本体 新增
+          {
+            questionName: '',
+            questionId:'',
+            retrievalName:'',
+            retrievalSpell:'',
+            retrievalType:1
+          }
+        ],
+        retrievalEmpty:[ //别名新增
+          {
+            questionName:'',
+            questionId:'',
+            retrievalName:'',
+            retrievalSpell:'',
+            retrievalType:2
+          }
+        ],
+        sonEmpty:[ //子项新增
+          {
+            questionName:'',
+            questionId:'',
+            retrievalName:'',
+            retrievalSpell:'',
+            retrievalType:3
+          }
+        ],
+        searchDatas:[],
+        searchStr:'',
+        showFlag:false
+      }
+    },
+    created(){
+      const id = this.$route.params.id;
+      if(id){
+        this.id = id;
+        this.name = this.$route.params.name;
+        this.selfEmpty[0].questionId = this.retrievalEmpty[0].questionId = this.sonEmpty[0].questionId = this.$route.params.id;
+        this.selfEmpty[0].questionName = this.retrievalEmpty[0].questionName = this.sonEmpty[0].questionName = this.$route.params.name;
+        this.flag = true;
+        this.minTitle = "别名维护-修改别名";
+        this.getDetail();
+      }
+      
+    },
+    methods:{
+      getDetail(){
+        const param = {'questionId':this.id,'questionName':this.name}
+        api.similarNameDetl(param).then((res)=>{
+          let result = res.data;
+          if(result.code==0){
+            const data = result.data;
+            for(let i in data){
+              if(i==1){
+                this.selfName = data[i];
+              }else if(i==2){
+                this.retrievalNames = data[i];
+              }else if(i==3){
+                this.retrievalSonNames = data[i];
+              }
+            }
+          }else{
+            console.log(result.msg);
+          }
+        })
+      },
+      addSpan(type){
+        let emptySpan = {
+          questionName:this.name,
+          questionId:this.id,
+          retrievalName:'',
+          retrievalSpell:'',
+          retrievalType:type
+        }
+        if(type == 2){
+          this.retrievalEmpty.push(emptySpan);
+        }else if(type == 3){
+          this.sonEmpty.push(emptySpan);
+        }
+      },
+      comfirn(){
+        const {selfName,selfEmpty,retrievalNames,retrievalEmpty,retrievalSonNames,sonEmpty} = this;
+        let dataList = [];
+        if(this.flag){ //修改
+          dataList = selfName.concat(retrievalNames,retrievalEmpty,retrievalSonNames,sonEmpty);
+          this.toast = "修改成功";
+        }else{
+          dataList = selfEmpty.concat(retrievalNames,retrievalEmpty,retrievalSonNames,sonEmpty);
+          this.toast = "添加成功";
+        }
+        // 过滤掉空数据
+        let filterData = dataList.filter((item)=>{
+          return item.retrievalName;
+        })
+        console.log(111,dataList,filterData);
+        const params = {
+          'itemList':filterData,
+          'questionId':this.id,
+          'questionName':this.name
+        }
+        api.addSimilarName(params).then((res)=>{
+          const result = res.data;
+          if(result.code==0){
+            this.$message({
+              message: this.toast,
+              type: 'success',
+            });
+            this.$router.push({path:'LT-YXSJWH-BMWH'});
+          }else{
+            console.log(result.msg);
+            this.$message.error(result.msg);
+          }
+        })
+      },
+      search(){
+        const param = {
+          'tagName':this.searchStr,
+          'notTagType':[8,10,11]
+        }
+        api.searchLable(param).then((res)=>{
+          const result = res.data;
+          console.log(123,result);
+          if(result.code==0){
+            this.searchDatas = result.data;
+            if(result.data.length>0){
+              this.showFlag = true;
+            }
+          }else{
+            console.log(result.msg);
+          }
+        })
+      },
+      choose(item){
+        console.log(item);
+        this.name = item.tagName;
+        this.id = item.id;
+        this.showFlag = false;
+        this.searchStr = "";
+      },
+      close(){
+        this.showFlag = false;
+        this.searchStr = "";
+      }
+    },
+    watch:{
+      name:function(newVal,oldVal){
+        this.selfEmpty[0].questionName = this.retrievalEmpty[0].questionName = this.sonEmpty[0].questionName = newVal;
+      }
+    }
+  }
+</script>
+<style lang="less" scoped>
+  @import "../../less/admin.less";
+  .content{
+    background: #fff;
+    padding: 20px 20px 30px;
+    color: #545455;
+  }
+  .name{
+    width: 221px;
+    height: 30px;
+    margin:20px 0 30px 0;
+    padding-left: 7px;
+  }
+  .search{
+    display: inline-block;
+    width: 56px;
+    height: 32px;
+    border-left: 1px solid #ccc;
+    position: relative;
+    left: -57px;
+    vertical-align: middle;
+    line-height: 32px;
+    bottom: 2px;
+    text-align: center;
+    cursor: default;
+  }
+  h3{
+    font-size: 16px;
+  }
+  .subtitle{
+    // font-size: 12px;
+    margin: 21px 0 10px 0;
+  }
+  .deptbox{
+    // width: 100%;
+    background: #fff;
+    padding: 20px 10px 30px;
+    font-size: 14px;
+    text-align: left;
+    border-collapse: collapse;
+    >tr{
+      height: 30px;
+      td{
+        width: 111px;
+        border: 1px solid #666;
+        padding-left: 7px;
+      }
+      input{
+        border:none;
+        width: 100%;
+      }
+    }
+    .addSpan{
+      text-align: center;
+      cursor: pointer;
+    } 
+  }
+  .btn {
+    text-align: right;
+  }
+  .ename{
+    height: 20px;
+    margin-top: 10px;
+  }
+  .searchBox{
+    position: relative;
+    ul{
+      width: 175px;
+      position: absolute;
+      top: 55px;
+      border:1px solid #ccc;
+      background: #fff;
+      max-height: 291px;
+      overflow-y: scroll;
+      li{
+        border:1px solid #fff;
+        padding-left: 7px;
+        height: 27px;
+        line-height: 27px;
+        overflow: hidden;
+        white-space: nowrap;
+        text-overflow: ellipsis;
+      }
+      li:hover{
+        border-color:#22ccc8;
+      }
+    }
+  }
+</style>

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

@@ -46,7 +46,7 @@
                     >
                     </el-input>
                 </div>
-                <p v-if="item.tagName" class="tagName">{{item.tagName}} </p>
+                <p v-if="item.tagName"  class="tagName  ellipsis" :title="'[ '+item.tagName+' ]'">{{item.tagName}} </p>
             </li>
         </ul>
     </div>

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

@@ -43,7 +43,7 @@
                     <template slot-scope="scope">
                         <el-button type="text" size="small" @click="toEditProduct(scope.row)">修改</el-button>
                         <span style="margin:0 3px;">|</span>
-                        <el-button type="text" size="small" @click="showDelDialog(scope.row.id)">删除</el-button>
+                        <el-button type="text" size="small" class="delete" @click="showDelDialog(scope.row.id)">删除</el-button>
                     </template>
                 </el-table-column>
                 <el-table-column
@@ -189,9 +189,7 @@
 
 <style lang="less">
     @import "../../less/admin.less";
-    .status-span{
-        font-size: 12px;
-        margin-right:10px;
-        color: unset;
+    .delete{
+        color: red !important;
     }
 </style>

+ 47 - 0
src/components/icss/DiscInfoDetail.vue

@@ -0,0 +1,47 @@
+<template>
+  <div>
+    <crumbs title="免责声明维护-详情" linkTo="/admin/LT-YXSJWH-MZSMWH"></crumbs>
+    <div class="contents">
+      <div class="deptbox">
+        <p class="titl">标题</p>
+        <p>{{data.title}}</p>
+        <p class="titl marg">内容</p>
+        <p v-html="data.description">{{data.description}}</p>
+        <p class="titl marg">归属</p>
+        <p>{{data.disclaimerCode}}</p>
+      </div>
+    </div>   
+  </div>
+</template>
+<script type="text/javascript">
+  export default{
+    name:'DiscInfoDetail',
+    data(){
+      return{
+        data:{}
+      }
+    },
+    created(){
+      this.data = this.$route.params.info;
+    },
+    methods:{
+    }
+  }
+</script>
+<style lang="less" scoped>
+  @import "../../less/admin.less";
+  .deptbox{
+    // width: 100%;
+    background: #fff;
+    padding: 20px 20px 30px;
+    font-size: 14px;
+    // color: #545455;
+    text-align: left; 
+    .titl{
+      font-weight: bold;
+    }
+    .marg{
+      margin-top: 20px;
+    }
+  }
+</style>

+ 224 - 0
src/components/icss/DisclaimerInformation.vue

@@ -0,0 +1,224 @@
+<template>
+    <div>
+        <crumbs title="免责声明维护">
+            <el-form :inline="true" class="demo-form-inline">
+                <el-form-item label="标题:">
+                    <el-input size="mini" v-model="filter.title" placeholder="输入标题"></el-input>
+                </el-form-item>
+                <el-form-item>
+                    <el-button size="mini" @click="filterDatas">确认</el-button>
+                    <router-link to="/admin/LT-YXSJWH-TJMZSM" style="margin:0 10px">
+                        <el-button size="mini" type="warning">添加</el-button>
+                    </router-link>
+                </el-form-item>
+            </el-form>
+        </crumbs>
+        <div class="contents">
+            <el-table :data="list"
+                      border
+                      style="width: 100%">
+                <el-table-column
+                        type="index"
+                        :index="indexMethod"
+                        label="编号"
+                        width="60">
+                </el-table-column>
+                <el-table-column
+                        prop="gmtCreate"
+                        label="操作时间"
+                        :show-overflow-tooltip="true">
+                </el-table-column>
+                <el-table-column
+                        prop="modifier"
+                        label="操作人">
+                </el-table-column>
+                <el-table-column
+                        prop="title"
+                        label="标题">
+                </el-table-column>
+                <el-table-column
+                        prop="disclaimerCode"
+                        label="归属">
+                </el-table-column>
+                <el-table-column
+                        label="状态">
+                    <template slot-scope="scope">
+                        <el-button type="text" size="small" :class="{forbid:scope.row.status==0}" @click="toOpen(scope.row)">启用</el-button>
+                        <span style="margin:0 3px;">|</span>
+                        <el-button type="text" size="small" :class="['delete',{'forbid':scope.row.status==1}]" @click="toClose(scope.row)">停用</el-button>
+                    </template>
+                </el-table-column>
+                <el-table-column
+                        label="操作">
+                    <template slot-scope="scope">
+                        <el-button type="text" size="small" @click="toEditDiscl(scope.row)">修改</el-button>
+                        <span style="margin:0 3px;">|</span>
+                        <el-button type="text" size="small" class="delete" @click="showDelDialog(scope.row.id)">删除</el-button>
+                    </template>
+                </el-table-column>
+                <el-table-column
+                        label="详情">
+                    <template slot-scope="scope">
+                        <el-button type="text" size="small" @click="getDetail(scope.row)">详情</el-button>
+                    </template>
+                </el-table-column>
+            </el-table>
+            <el-pagination v-if="total>pageSize"
+                           :current-page.sync="currentPage"
+                           @current-change="currentChange"
+                           background
+                           :page-size="pageSize"
+                           layout="total,prev, pager, next, jumper"
+                           :total="total">
+            </el-pagination>
+        </div>
+
+    </div>
+</template>
+
+<script>
+  import api from '@api/icss.js';
+  import utils from '@api/utils.js';
+
+  export default {
+    name: 'DisclaimerInformation',
+    data: function () {
+      return {
+        list: [],
+        cacheData: {},
+        currentPage: 1,
+        pageSize: 10,
+        total: 0,
+        linkIn:[],
+        pays:[],
+        filter: {
+          title: ''
+        }
+      }
+    },
+    created() {
+      this.getDataList();
+    },
+    methods: {
+      toEditDiscl(row){
+        this.$router.push({
+          name:'AddDisclInfo',
+          params: {info:row}
+        })
+      },
+      filterDatas(){
+        this.currentPage = 1;
+        this.getDataList();
+      },
+      getDataList() {
+        const param = this.getFilterItems();
+        api.discInformation(param).then((res) => {
+          if (res.data.code == '0') {
+            const data = res.data.data;
+            this.list = data.records;
+            this.cacheData[param.current] = data.records;
+            this.total = data.total;
+          }
+        }).catch((error) => {
+          console.log(error);
+        });
+      },
+      getDetail(item) {
+        this.$router.push({name:'DiscInfoDetail', params:{info: item}})
+      },
+      getFilterItems() {
+        const param = {
+          title: this.filter.title,
+          current: this.currentPage,
+          size: this.pageSize
+        };
+        return param;
+      },
+      indexMethod(index) {
+        return ((this.currentPage - 1) * this.pageSize) + index + 1;
+      },
+      currentChange(next) {
+        this.currentPage = next;
+        if (this.cacheData[next]) {       //如果已请求过该页数据,则使用缓存不重复请求
+          this.list = this.cacheData[next];
+        } else {
+          this.getDataList();
+        }
+      },
+      warning(msg,type){
+        this.$message({
+          showClose: true,
+          message:msg,
+          type:type||'warning'
+        })
+      },
+      showConfirmDialog(msg,resolve){
+        this.$alert(msg, '提示', {
+          confirmButtonText: '确定',
+          type: 'warning'
+        }).then(() => {
+          resolve();
+        }).catch(() => {});
+      },
+      showDelDialog(id){
+        this.showConfirmDialog('是否删除该免责声明?',()=>{
+          api.delDiscInformation({id}).then((res)=>{
+            if(res.data.code=='0'){
+              this.warning(res.data.msg||'操作成功','success');
+              this.getDataList();
+            }else{
+              this.warning(res.data.msg);
+            }
+          }).catch((error)=>{
+            this.warning(error);
+          })
+        });
+      },
+      toOpen(item){
+        // status=0停用,status=1启用
+        if(item.status==0){
+          this.showConfirmDialog('是否启用该免责声明?',()=>{
+            api.openInformation({id:item.id}).then((res)=>{
+              if(res.data.code==0){
+                this.$message({
+                  type:'success',
+                  message:res.data.msg ||"启用成功"
+                })
+                this.getDataList();
+              }
+            }).catch((error)=>{
+              this.warning(error);
+            })
+          });
+        }
+      },
+      toClose(item){
+        if(item.status==1){
+          this.showConfirmDialog('是否停用该免责声明?',()=>{
+            api.closeInformation({id:item.id}).then((res)=>{
+              if(res.data.code==0){
+                this.$message({
+                  type:'success',
+                  message:res.data.msg ||"停用成功"
+                })
+                this.getDataList();
+              }
+            }).catch((error)=>{
+              this.warning(error);
+            })
+          });
+        }
+      }
+    }
+  }
+</script>
+
+<style lang="less" scoped>
+    @import "../../less/admin.less";
+    .delete{
+      color: red !important;
+    }
+    .forbid{
+      color: #BFBFBF !important;
+    }
+</style>

+ 22 - 11
src/components/icss/IndeptLabel.vue

@@ -1,6 +1,6 @@
 <template>
     <div>
-        <crumbs title="独立标签维护" style="min-width: 1085px">
+        <crumbs title="独立标签维护" style="min-width: 980px">
             <el-form :inline="true" class="demo-form-inline">
                 <!--<el-form-item label="标签类型:">
                     <el-select size="mini" v-model="filter.tagType[0]" placeholder="标签类型" clearable>
@@ -62,16 +62,26 @@
                     </template>
                 </el-table-column>
             </el-table>
-
+          <el-pagination v-if="total>pageSize"
+                        :current-page.sync="currentPage"
+                        @current-change="currentChange"
+                        background
+                        :page-size="pageSize"
+                        layout="total,prev, pager, next, jumper"
+                        :total="total">
+            </el-pagination>
         </div>
-        <el-pagination v-if="total>pageSize"
-                       :current-page.sync="currentPage"
-                       @current-change="currentChange"
-                       background
-                       :page-size="pageSize"
-                       layout="total,prev, pager, next, jumper"
-                       :total="total">
-        </el-pagination>
+        <!-- <div class="pagination"> 
+            <el-pagination v-if="total>pageSize"
+                        :current-page.sync="currentPage"
+                        @current-change="currentChange"
+                        background
+                        :page-size="pageSize"
+                        layout="total,prev, pager, next, jumper"
+                        :total="total">
+            </el-pagination>
+        </div> -->
+        
     </div>
 </template>
 
@@ -224,8 +234,9 @@
 
 
 <style lang="less">
+  @import "../../less/admin.less";
     .delete{
-        color: red
+        color: red;
     }
     .delete:hover {
         color: red;

+ 3 - 3
src/components/icss/InspactTagGroup.vue

@@ -156,7 +156,6 @@ export default {
             // if(!this.searchVal) {
             //     this.leftTagsList = this.searchTagList()
             // }
-            console.log(99)
             for (let i = 0; i < this.selectRightTagsList.length; i++) {
                 this.rightTagsList = this.rightTagsList.filter(item => item.id !== this.selectRightTagsList[i].id)
             }
@@ -175,8 +174,6 @@ export default {
             this.$emit('changeActionData',this.rightTagsList, false);
         },
         toRightList() {
-          console.log(999, this.selectLeftTagsList)
-
             this.rightTagsList.push(...this.selectLeftTagsList);
             // let textItem = { text: ',' ,type:'input' }
             // for (let i = 0; i < this.selectLeftTagsList.length; i++) { //选中标签每个加入输入框,默认为逗号
@@ -323,6 +320,9 @@ export default {
         top: -5px;
         right: -5px;
     }
+    .pagination {
+        min-width: 1010px;
+    }
     .active {
         color: #aBcdef;
     }

+ 22 - 5
src/components/icss/LabelGroup.vue

@@ -62,16 +62,29 @@
                     </template>
                 </el-table-column>
             </el-table>
-
-        </div>
-        <el-pagination v-if="total>pageSize"
+        <div class="pagination">
+            <el-pagination v-if="total>pageSize"
                        :current-page.sync="currentPage"
                        @current-change="currentChange"
                        background
                        :page-size="pageSize"
                        layout="total,prev, pager, next, jumper"
                        :total="total">
-        </el-pagination>
+            </el-pagination>
+        </div>
+        
+        </div>
+       <!--  <div class="pagination">
+           <el-pagination v-if="total>pageSize"
+                      :current-page.sync="currentPage"
+                      @current-change="currentChange"
+                      background
+                      :page-size="pageSize"
+                      layout="total,prev, pager, next, jumper"
+                      :total="total">
+           </el-pagination>
+       </div> -->
+        
     </div>
 </template>
 
@@ -222,10 +235,14 @@ export default {
 
 
 <style lang="less">
+    @import "../../less/admin.less";
     .delete{
-       color: red
+       color: red;
     }
     .delete:hover {
         color: red;
     } 
+    .pagination {
+        min-width: 1010px;
+    }
 </style>

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

@@ -3,7 +3,7 @@
     <div class="groupTitle"><i
         class="el-icon-back"
         @click="back"
-      ></i> 标签组维护--添加标签组</div>
+      ></i> {{txt}}</div>
     <PubTagGroup
       :editData="editData"
       @changeVal="changeVal"
@@ -59,6 +59,7 @@
         :type="dataPub.region1"
         :sexType="dataPub.region7"
         :options="editData.questionMapping"
+        :tipLis="dataPub.tipLis"
          @changeActionData="changeActionData"
       >
       </SymptomPush>
@@ -112,6 +113,7 @@ export default {
   name: 'NoiseTemplateWrapper',
   data() {
     return {
+      txt:'标签组维护--添加标签组',
       dataPub: {},      //公用组件传的值都在这
       editData:{},                    //编辑数据
       form: {
@@ -128,6 +130,7 @@ export default {
   beforeMount:function(){
     const {isEdit,data} = this.$route.params;
     if(isEdit){
+      this.txt = '标签组维护--修改标签组';
       this.editData = data;
       // console.log('回读数据', this.editData)
     }

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

@@ -52,7 +52,7 @@
                     <template slot-scope="scope">
                         <el-button type="text" size="small" @click="toEditProduct(scope.row)">修改</el-button>
                         <span style="margin:0 3px;">|</span>
-                        <el-button type="text" size="small" @click="showDelDialog(scope.row.id)">删除</el-button>
+                        <el-button type="text" size="small" class="delete" @click="showDelDialog(scope.row.id)">删除</el-button>
                     </template>
                 </el-table-column>
                 <el-table-column

+ 2 - 3
src/components/icss/PubTagGroup.vue

@@ -283,7 +283,7 @@ export default {
   mounted() {
     const editData = this.$props.editData;
     if(editData.id){
-      const trans = utils.transformKeys(editData);
+      const trans = utils.transformKeys(editData,2); //(2是标签组类型)
       // console.log('editData1', editData)
       this.form = Object.assign({},this.form,trans);
     }
@@ -340,8 +340,7 @@ export default {
     validateSystomName(name,callback) {
       if(this.form.region3.trim() == ''){ return }
       let param = {
-        "existName": this.form.region3,
-        "tagType":this.form.region2.split(''),       
+        "existName": this.form.region3,     
         "type": this.form.region1,
         "notTagType":[8],        //去掉文字标签查重
       }

+ 247 - 0
src/components/icss/SimilarName.vue

@@ -0,0 +1,247 @@
+<template>
+    <div>
+        <crumbs title="别名维护系统">
+            <el-form :inline="true" class="demo-form-inline">
+                <el-form-item label="标签名称:">
+                    <el-input size="mini" v-model="filter.proName" placeholder="标签名称"></el-input>
+                </el-form-item>
+                <el-form-item>
+                    <el-button size="mini" @click="filterDatas">确认</el-button>
+                    <el-button size="mini" @click="uploadClick">导入</el-button>
+                    <input type="file" name="uploadfile " id="upFile" @change="uploadFile($event)" accept=".csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet">
+                    <router-link to="/admin/LT-YXSJWH-TJBM" style="margin:0 10px">
+                        <el-button size="mini" type="warning">添加别名</el-button>
+                    </router-link>
+                </el-form-item>
+            </el-form>
+        </crumbs>
+        <div class="contents">
+            <el-table :data="list"
+                      border
+                      style="width: 100%">
+                <el-table-column
+                        type="index"
+                        :index="indexMethod"
+                        label="编号"
+                        width="60">
+                </el-table-column>
+                <el-table-column
+                        prop="gmtOperate"
+                        label="操作时间"
+                        :show-overflow-tooltip="true">
+                </el-table-column>
+                <el-table-column
+                        prop="questionName"
+                        label="标签名称"
+                        show-overflow-tooltip>
+                </el-table-column>
+                <el-table-column
+                        prop="retrievalSelfName"
+                        label="本体"
+                        show-overflow-tooltip>
+                </el-table-column>
+                <el-table-column
+                        prop="retrievalNames"
+                        label="别名"
+                        show-overflow-tooltip>
+                </el-table-column>
+                <el-table-column
+                        prop="retrievalSonNames"
+                        label="子项"
+                        show-overflow-tooltip>
+                </el-table-column>
+                <el-table-column
+                        prop="operatorName"
+                        label="操作人">
+                </el-table-column>
+                
+                <el-table-column
+                        label="操作" width="160">
+                    <template slot-scope="scope">
+                        <el-button type="text" size="small" @click="toEditProduct(scope.row)">修改</el-button>
+                        <span style="margin:0 3px;">|</span>
+                        <el-button type="text" size="small" class="delete" @click="showDelDialog(scope.row.questionId)">删除</el-button>
+                    </template>
+                </el-table-column>
+                <!-- <el-table-column
+                        label="详情">
+                    <template slot-scope="scope">
+                        <el-button type="text" size="small" @click="getDetailList(scope.row.questionId)">详情</el-button>
+                    </template>
+                </el-table-column> -->
+            </el-table>
+            <el-pagination v-if="total>pageSize"
+                           :current-page.sync="currentPage"
+                           @current-change="currentChange"
+                           background
+                           :page-size="pageSize"
+                           layout="total,prev, pager, next, jumper"
+                           :total="total">
+            </el-pagination>
+        </div>
+
+    </div>
+</template>
+
+<script>
+  import api from '@api/icss.js';
+  import utils from '@api/utils.js';
+  import axios from 'axios';
+  export default {
+    name: 'SimilarName',
+    data: function () {
+      return {
+        list: [],
+        cacheData: {},
+        currentPage: 1,
+        pageSize: 10,
+        total: 0,
+        linkIn:[],
+        pays:[],
+        filter: {
+          proName: ''
+        }
+      }
+    },
+    created() {
+      this.getDataList();
+    },
+    methods: {
+      toEditProduct(row){
+        this.$router.push({
+          name:'AddSimilarName',
+          params: {id:row.questionId,name:row.questionName}
+        })
+      },
+      filterDatas(){
+        this.currentPage = 1;
+        this.getDataList();
+      },
+      getDataList() {
+        const param = this.getFilterItems();
+        api.similarName(param).then((res) => {
+          if (res.data.code == '0') {
+            const data = res.data.data;
+            this.list = data.records;
+            this.cacheData[param.current] = data.records;
+            this.total = data.total;
+          }
+        }).catch((error) => {
+          console.log(error);
+        });
+      },
+      getDetailList(id) {
+        const param = {'id': id,};
+        this.$router.push({name:'DeptInfoDetail', params:{id: id}})
+        /*api.getDeptInfoDetials(param).then((res) => {
+          if (res.data.code == '0') {
+            this.$router.push({name:'DeptInfoDetail', params:{id: id}})
+            // console.log("详情接口调用成功");
+          } else {
+            this.$message({
+              showClose: true,
+              message:res.data.msg,
+              type:'warning'
+            });
+            this.getDataList()  //刷新列表
+          }
+        }).catch((error) => {
+          console.log(error);
+        });*/
+      },
+      getFilterItems() {
+        const param = {
+          questionName: this.filter.proName,
+          current: this.currentPage,
+          size: this.pageSize
+        };
+        return param;
+      },
+      indexMethod(index) {
+        return ((this.currentPage - 1) * this.pageSize) + index + 1;
+      },
+      currentChange(next) {
+        this.currentPage = next;
+        if (this.cacheData[next]) {       //如果已请求过该页数据,则使用缓存不重复请求
+          this.list = this.cacheData[next];
+        } else {
+          this.getDataList();
+        }
+      },
+      warning(msg,type){
+        this.$message({
+          showClose: true,
+          message:msg,
+          type:type||'warning'
+        })
+      },
+      showConfirmDialog(msg,resolve){
+        this.$alert(msg, '提示', {
+          confirmButtonText: '确定',
+          type: 'warning'
+        }).then(() => {
+          resolve();
+        }).catch(() => {});
+      },
+      showDelDialog(id){
+        this.showConfirmDialog('是否删除该标签名?',()=>{
+          api.delSimilarName({questionId:id}).then((res)=>{
+            if(res.data.code=='0'){
+              this.warning(res.data.msg||'操作成功','success');
+              this.getDataList();
+            }else{
+              this.warning(res.data.msg);
+            }
+          }).catch((error)=>{
+            this.warning(error);
+          })
+        });
+      },
+      uploadClick(){
+        let inp = document.getElementById("upFile");
+        inp.click();
+      },
+      uploadFile(e){
+        let fileInfo = e.target.files[0];
+        e.preventDefault();
+        let formData = new FormData();
+        formData.append('uploadfile', fileInfo);
+        console.log(123,fileInfo,formData);
+        const header = {
+          headers:{
+            'Content-Type': 'multipart/form-data'
+          }
+        }
+        api.uploadFile(formData,header).then((res)=>{
+          if(res.data.code==0){
+            this.$message({
+              message: '上传成功',
+              type: 'success',
+            });
+          }else{
+            this.$message.error(res.data.msg);
+          }
+        })
+        this.getDataList();
+        /*//解决上传相同文件不触发change
+        let inp = document.getElementById("upFile");
+        inp.value = "";
+        */
+      }
+    }
+  }
+</script>
+
+<style lang="less" scoped>
+    @import "../../less/admin.less";
+    .delete{
+        color: red;
+    }
+    .el-table .cell{
+      overflow: hidden;
+      white-space: nowrap;
+    }
+    #upFile{
+      display: none !important;
+    }
+</style>

+ 2 - 0
src/components/icss/SingleSelect.vue

@@ -97,6 +97,8 @@
             return {name:it.name,defaultSelect:it.defaultSelect=='1'?true:false,isBan:it.code==1?true:'',isNone:it.code==2?true:'',isCorrect:it.code==3?true:''};
           });
           this.rows = arr;
+          const items = utils.simpleOptionData(this.rows);
+          this.$emit('pushValues',items);
         }
       },
       computed:{

+ 65 - 19
src/components/icss/SymptomPush.vue

@@ -29,12 +29,12 @@
         <p><span class="el-icon-arrow-right" @click="toRightList"></span></p>
         <p><span class="el-icon-arrow-left" @click="toLeftList"></span></p>
     </div>
-    <div class="symptomPushBottomPartRight ">
+    <div class="symptomPushBottomPartRight clearfix">
       <p class="symptomPushPoolTitle">操作界面:</p>
       <ul v-for="(item, index) in rightTagsList" 
             :key="index"    
             class="symptomPushTagList symptomPushOperationPool"
-            :class="index === 1&&item.id ? 'symptomPushOperationPoolPush':'' "
+            :class="{symptomPushOperationPoolPush:index === 1,  hasSymptomPush: index === 1&&item.id} "
             :style="currentSelectIndex === index?styles:null"
             @click="SelectList(index)"
       >
@@ -45,10 +45,19 @@
             <li 
                 v-for="(it) in item.questionDetailList"
                 :key = "it.id"
-                class = "symptomPushTagItem">   
+                class = "symptomPushTagItem ellipsis">   
                 {{it.name}}
             </li>
         </ul>
+        <div class="symptomPushTagListPartBox fl">
+            <ul v-for="(item, index) in rightTagsList" 
+                :key="index+'part'"    
+                class="symptomPushTagListPart fl"
+            >
+                <p v-if="item.controlType" class="symptomPushTagListPartItem">{{getControlType(item.controlType)}} </p> 
+                <p v-if="item.tagName" class="symptomPushTagListPartItem">{{item.tagName}} </p>  
+            </ul>
+        </div>
     </div>
   </div>
 </template>
@@ -63,6 +72,10 @@ export default {
             default: () => [],
             type: Array
         },
+        tipLis: {
+            default: () => [],
+            type: Array
+        },
         type: {
             default: '',
             type: String
@@ -79,9 +92,10 @@ export default {
     data() {
         return {
             leftTagsList: [],
-            selectLeftTagId: {},
+            selectLeftTagId: {},    //标签池中选中标签
             rightTagsList: [{}, {}],
-            currentSelectIndex: -1,
+            currentSelectIndex: -1,    //选中操作界面索引
+            currentTipLis:[],         //右侧选中的标签提示
             searchVal: '',
             styles:{
                 background:'#eae7e7'
@@ -89,16 +103,21 @@ export default {
         }
     },
     mounted() {
-        if(this.options.length) {
-            if(this.options.length === 2) {     //当两个模块都有值时
-                this.rightTagsList = this.options
-                this.$emit('changeActionData',this.rightTagsList, false);
-                
-            } else if(this.options.length === 1) {
-                this.options[0].controlType == 99 ? this.rightTagsList.splice(1, 1, this.options[0]) :this.rightTagsList.splice(0, 1, this.options[0])
+        this.currentTipLis = this.tipLis
+        this.$nextTick(()=>{ 
+            if(this.options.length) {
+                if(this.options.length === 2) {     //当两个模块都有值时
+                    this.rightTagsList = this.options
+                    this.$emit('changeActionData',this.rightTagsList, false);
+                    
+                } else if(this.options.length === 1) {
+                    this.options[0].controlType == 99 ? this.rightTagsList.splice(1, 1, this.options[0]) :this.rightTagsList.splice(0, 1, this.options[0])
+                }
+                this.searchTagList()
             }
-            this.searchTagList()
-        }
+
+        })
+        
     },
     watch: {
         pool(newVal, preVal) {
@@ -106,6 +125,12 @@ export default {
                 this.leftTagsList = newVal
             }
         },
+        tipLis(newVal, preVal) {
+            console.log(newVal,preVal)
+            if (JSON.stringify(newVal) != JSON.stringify(preVal)) {
+                this.currentTipLis = newVal
+            }
+        },
         searchVal(newVal, preVal){
             if(newVal.trim() == ''){
                 this.searchTagList()
@@ -113,11 +138,6 @@ export default {
                 this.searchTagList()
             }
         },
-        sexType(newVal, preVal) {
-           
-        },
-
-        
     },
     methods: {
         selectLeftTag(tag, index, e) {
@@ -262,6 +282,14 @@ export default {
         SelectList(index) {
             
             this.currentSelectIndex = this.currentSelectIndex === index ? -1 : index;
+        },
+        getControlType(controlType) {
+            for (let i = 0; i < this.currentTipLis.length; i++) {
+                if(this.currentTipLis[i].val == controlType) {
+                     return this.currentTipLis[i].name
+                }
+            }
+           
         }
     }
 }
@@ -301,6 +329,9 @@ export default {
     .symptomPushOperationPoolPush {
         border: 1px dashed @icssBorder;
     }
+    .hasSymptomPush {
+        background: #abcdef;
+    }
     .symptomPushTagItem {
         position: relative;
         line-height: 30px;
@@ -359,6 +390,21 @@ export default {
             }
         }
     }
+    .symptomPushTagListPartBox {
+        width: 100%;
+    }
+    .symptomPushTagListPart {
+        width: 30%;
+        padding: 5px;
+    }
+    .symptomPushTagListPartItem {
+        display: inline-block;
+        text-align: center;
+        border: 1px solid #c0c4cc;
+        padding: 2px 3px;
+        border-radius: 5px;
+        margin: 0 3px 3px 0;
+    }
     .symptomPushTagItemPushBox {
         text-align: center
     }

+ 1 - 7
src/components/icss/SymptomTagGroup.vue

@@ -46,7 +46,7 @@
                     >
                     </el-input>
                 </div>
-                <p v-if="item.tagName" class="tagName">{{item.tagName}} </p>
+                <p v-if="item.tagName" class="tagName  ellipsis" :title="'[ '+item.tagName+' ]'">{{item.tagName}} </p>
                 <div class="attributeBox">
                     <p v-if="item.symptomType === 1" class="tagAttribute" @click.stop>跟主症状 <span @click="closeTagAttribute(item)" class="closeTagAttribute"><i class="el-icon-error"></i></span></p>
                     <p v-if="item.symptomType === 2" class="tagAttribute" @click.stop>跟伴随症状<span  @click="closeTagAttribute(item)" class="closeTagAttribute"><i class="el-icon-error"></i></span></p>
@@ -105,7 +105,6 @@ export default {
       this.$nextTick(()=>{
         let tagList = this.options;
         if(tagList.length > 0){
-          console.log(99)
           this.rightTagsList2 = this.options
           let newArr = []
           for (let i = 0; i < this.rightTagsList2.length; i++) {
@@ -133,11 +132,6 @@ export default {
     watch: {
         pool(newVal, preVal) {
              this.leftTagsList = newVal
-            // console.log('sdsadasdasdasdas11111111', newVal,'asds',preVal)
-            // if (JSON.stringify(newVal) != JSON.stringify(preVal)) {
-            //     console.log('sdsadasdasdasdas')
-            //     //  this.leftTagsList = newVal
-            // }
         },
         searchVal(newVal, preVal){
             if(newVal.trim() == ''){

+ 1 - 1
src/components/login/Login.vue

@@ -149,7 +149,7 @@
           "password": password
         }
         //重新登录清空原有token;
-        //localStorage.removeItem('token');
+        localStorage.removeItem('token');
         this.$refs.ruleFormReg.validate((valid) => {
           if (valid) {
             api.loginMess(params).then((res) => {

+ 3 - 0
src/less/admin.less

@@ -160,4 +160,7 @@
 .el-message {
   top: 10%;
   transform: translateY(-50%, -50%, 0);
+}
+.el-pagination{
+  min-width: 980px;
 }

+ 10 - 2
src/routes.js

@@ -38,7 +38,11 @@ import IndeptLabel from '@components/icss/IndeptLabel.vue';//独立标签
 import AddIndeptLabel from '@components/icss/AddIndeptLabel.vue'//独立标签-添加
 import PromptInfo from '@components/icss/PromptInfo.vue'//提示信息
 import AddPromptInfo from '@components/icss/AddPromptInfo.vue'//添加提示信息
-
+import SimilarName from '@components/icss/SimilarName.vue'//别名维护
+import AddSimilarName from '@components/icss/AddSimilarName.vue'//别名维护-详情
+import DisclaimerInformation from '@components/icss/DisclaimerInformation.vue'//免责声明
+import DiscInfoDetail from '@components/icss/DiscInfoDetail.vue'//免责声明-详情
+import AddDisclInfo from '@components/icss/AddDisclInfo.vue'//免责声明-添加
 export default [
   {
     path: '/',
@@ -145,7 +149,11 @@ export default [
       {path:'LT-YXSJWH-TJDLBQ',component:AddIndeptLabel,name:'AddIndeptLabel'},     //独立标签维护--添加
       {path:'LT-YXSJWH-TSXXWH',component:PromptInfo,name:'PromptInfo'},         //提示信息维护
       {path:'LT-YXSJWH-TJTSXX',component:AddPromptInfo,name:'AddPromptInfo'},         //提示信息维护
-
+	    {path:'LT-YXSJWH-BMWH',component:SimilarName,name:'SimilarName'},     //别名维护
+      {path:'LT-YXSJWH-TJBM',component:AddSimilarName,name:'AddSimilarName'},     //别名维护-添加/修改
+      {path:'LT-YXSJWH-MZSMWH',component:DisclaimerInformation,name:'DisclaimerInformation'},     //免责声明
+      {path:'LT-YXSJWH-MZSMXQ',component:DiscInfoDetail,name:'DiscInfoDetail'},     //免责声明-详情
+      {path:'LT-YXSJWH-TJMZSM',component:AddDisclInfo,name:'AddDisclInfo'},     //免责声明-添加/修改
     ]
   }
 ]

+ 1 - 1
vue.config.js

@@ -2,7 +2,7 @@ const path = require('path');
 // const proxy_path = 'http://192.168.2.236:80';
 // const proxy_path = 'http://192.168.2.241:88';
 const proxy_path = 'http://192.168.2.236:88';
-// const proxy_path = 'http://192.168.3.100:5050';
+// const proxy_path = 'http://192.168.3.101:5050';
 // const proxy_path = 'http://192.168.3.117:5050';//周铁刚
 // const proxy_path = 'http://192.168.3.115:5050';