Przeglądaj źródła

提交修改电子病历配置更迭版

xiezhiming 3 lat temu
rodzic
commit
20f0b35ec4

+ 90 - 10
src/components/cdssManage/plan/AddPlan.vue

@@ -8,6 +8,14 @@
     top: 0;
     left: 0;
   }
+  .tipImg{
+	  position: absolute;
+	  width: 20px;
+	  height: 20px;
+	  top: 10px;
+	  right: -30px;
+	  cursor: pointer;
+  }
   ul {
     li {
     }
@@ -279,7 +287,7 @@
                               }}</span>
                             </div>
                           </div>
-                          <div v-if="item.number">
+                          <div v-if="item.number" style="position: relative;">
                             <span style="margin-right: 8px">默认显示个数</span>
                             <el-select
                               v-model="item.number"
@@ -294,9 +302,11 @@
                               <el-option label="5" :value="5"></el-option>
                               <el-option label="6" :value="6"></el-option>
                             </el-select>
+							<el-tooltip class="item" effect="dark" content="此数量对横版不生效" placement="top">
+							     <img :src="require('@/images/tip.png')" v-if="item.code==='casewriting'||item.code==='treatment'" class="tipImg">
+							</el-tooltip>
                           </div>
                       </div>
-					 
 					 </div>
                       <div v-if='item.list' style="width: 100%">
                         <div
@@ -308,14 +318,17 @@
                             <div class="list_item_title">
                               {{ child.name }}
                             </div>
-                            <div class="list_item_swich">
-                              <el-switch
-                                v-model="child.status"
-                                :active-value="1"
-                                :inactive-value="0"
-                                active-color="#4BC4D7"
-                                inactive-color="#BBBBBB"
-                              ></el-switch>
+                            <div class="list_item_swich" v-if="child.code!='znjs'">
+								<div @click="isStauts(item,child)" style="display: inline-block;">
+									<el-switch
+									  
+									  v-model="child.status"
+									  :active-value="1"
+									  :inactive-value="0"
+									  active-color="#4BC4D7"
+									  inactive-color="#BBBBBB"
+									></el-switch>
+								</div>
                               <span class="planStatus">{{
                                 child.status === 1 ? "启用中" : "未启用"
                               }}</span>
@@ -417,6 +430,29 @@ export default {
     };
   },
   methods: {
+	// 对有子集的启用禁用按钮进行联动
+	isStauts(arr,arrChild){
+		let flag=false;
+		let arrCopy=JSON.parse(JSON.stringify(arr))
+		if(arr.name=='开单合理性') return
+		arr.list.forEach(item=>{
+			
+			if(arrChild.code==arr.list[0].code){
+				this.$set(item,'status',arrChild.status)
+			}else{
+				if(item.status===1){
+					this.$set(arr.list[0],'status',1)
+					flag=true
+				}else{
+					flag=false
+				}
+				if(!flag){
+					arr.list[0].status=0
+					this.$set(arr.list[0],'status',0)
+				}
+			}
+		})
+	},
     //展开收起控制
     listShow(i) {
       // TODO Vue监听不到对象中新添加的项,所以复制一份
@@ -500,6 +536,12 @@ export default {
               status: item.status
             };
           });
+		  //处理开单合理性,删除前端写死的智能警示
+		  params.planDetailParent[0].planDetailSub.forEach((item,index)=>{
+			  if(item.code==="znjs"){
+				  params.planDetailParent[0].planDetailSub.splice(index,1)
+			  }
+		  })
           api.savePlanInfoDatas(params).then((res) => {
             if (res.data.code === "0") {
               this.$message({
@@ -609,13 +651,47 @@ export default {
           this.fomatArr(res.data.data.planDetailDefault);
 		  //改变可能诊断和已诊断的数据添加list数组,方便页面渲染
 		  this.$nextTick(()=>{
+			  //给开单合理性的list里面加一个固定的智能警示
+			  this.setZnData(this.form.planDetailSub[0].planDetails,'开单合理性')
 			  this.updateDate(this.form.planDetailSub[0].planDetails,'maydiagnose')
 			  this.updateDate(this.form.planDetailSub[0].planDetails,'hasdiagnose')
+			  // 删除没必要的number
+			  this.delNumber(this.form.planDetailSub[0].planDetails)
 			  this.$forceUpdate()
 		  })
         }
       });
     },
+	delNumber(datas){
+		//没有数量的code
+		let nameArray=["auxiliary",'critical',"maymedicine","mayoperation","maynurse","hasmedicine","hasoperation","hasnurse",];
+		console.log(datas)
+		//递归遍历将没用数量设置为空不展示
+		for (let i in datas){
+			nameArray.some(item=>{
+				if(item==datas[i].code){
+					return datas[i].number=null;
+				}
+			})
+			if(datas[i].planDetails){
+				this.delNumber(datas[i].planDetails)
+			}
+		}
+	},
+	//添加固定的智能警示
+	setZnData(data,name){
+		let znjsData={}
+		data.forEach(item=>{
+			if(item.name=='开单合理性'){
+				znjsData.code='znjs';
+				znjsData.name='智能警示';
+				znjsData.orderNo=item.orderNo;
+				znjsData.id=item.id+'s';
+				// this.$set(item.list,0,znjsData)
+				item.list.unshift(znjsData)	
+			}
+		})
+	},
     // 相应数组排序
     groupSort(arr) {
       if (Array.isArray(arr)) {
@@ -649,9 +725,13 @@ export default {
           if (defaultRes.data.code === "0") {
             this.mergeDefaultPlans(defaultRes.data.data.planDetailDefault);
 			this.$nextTick(()=>{
+				//给开单合理性的list里面加一个固定的智能警示
+				this.setZnData(this.form.planDetailSub[0].planDetails,'开单合理性')
 				// 改数组里面的可能诊断和已有诊断
 				this.updateDate(this.form.planDetailSub[0].planDetails,'maydiagnose')
 				this.updateDate(this.form.planDetailSub[0].planDetails,'hasdiagnose')
+				// 删除没必要的number
+				this.delNumber(this.form.planDetailSub[0].planDetails)
 				this.$forceUpdate()			  
 			})
           }

+ 1 - 2
src/components/knowledgeExtra/AddNewRule.vue

@@ -755,8 +755,7 @@ export default {
 		  this.$nextTick(()=>{
 			  this.isEdit=false
 			  this.$refs.ruleContent.clearFormData()
-		  })
-	  		 
+		  })	 
 	  }
 	  
       this.isShow = obj.subMenuList.length ? 1 : 0;

+ 2 - 2
src/components/knowledgeExtra/AddNewRuleTable.vue

@@ -915,7 +915,7 @@ export default {
           };
         }
       } else {
-        if (columnIndex == 0 || columnIndex == 1 ||(column.label==='关联静态信息')) {
+        if (columnIndex == 0 || columnIndex == 1 || column.label==='关联静态信息') {
           const _row = this.spanArr[rowIndex];
           const _col = _row > 0 ? 1 : 0;
           return {
@@ -1015,7 +1015,7 @@ export default {
 	},
 	isRedMsgs:{
 		type:Array,
-		default: [],
+		default: ()=>[],
 	},
   },
 };