xiaoran il y a 2 ans
Parent
commit
132c9f08a9
1 fichiers modifiés avec 119 ajouts et 120 suppressions
  1. 119 120
      src/views/data/query/adviceSearch.vue

+ 119 - 120
src/views/data/query/adviceSearch.vue

@@ -4,43 +4,19 @@
       <div class="barBtn-title">医嘱查询</div>
       <div class="bnh"></div>
       <div class="barBtn">
-         <el-form ref="form" :model="formData1" label-width="100px">
-          <el-form-item
-            v-for="(item, index) in formData1.seniorList"
-            :key="index"
-          >
+        <el-form ref="form" :model="formData1" label-width="100px">
+          <el-form-item v-for="(item, index) in formData1.seniorList" :key="index">
             <!-- 下拉框开始 -->
-            <el-select
-              v-if="index != 0"
-              v-model="item.select_type"
-              :class="index != 0 ? 'marginLeft' : ''"
-              class="width100"
-              filterable
-              placeholder=""
-              
-            >
+            <el-select v-if="index != 0" v-model="item.select_type" :class="index != 0 ? 'marginLeft' : ''" class="width100" filterable placeholder="">
               <!-- fieldList -->
               <el-option label="且" :value="0" />
               <el-option label="或者" :value="1" />
               <el-option label="不包含" :value="2" />
             </el-select>
             <span v-if="index != 0" class="pind10" />
-            <el-select
-              v-model="item.key"
-              class="width150"
-              filterable
-              placeholder="请选择"
-              @change="funSelect(index,)"
-              
-            >
+            <el-select v-model="item.key" class="width150" filterable placeholder="请选择" @change="funSelect(index)">
               <!-- fieldList -->
-              <el-option
-                v-for="(item, index) in fieldList"
-                :key="index"
-                :label="item.name"
-                :value="item.id"
-                
-              />
+              <el-option v-for="(item, index) in fieldList" :key="index" :label="item.name" :value="item.id" />
             </el-select>
             <!-- 下拉框结束 -->
 
@@ -48,94 +24,61 @@
             <!-- 中间选择输入框开始 -->
             <span v-if="item.key == 'YZQX'">
               <el-select class="width150" filterable v-model="item.value" placeholder="请选择">
-                <el-option v-for="(item, index) in YZQXList" :key="index" :label="item.val" :value="item.val"></el-option>
+                <el-option v-for="(item, index) in YZQXList" :key="index" :label="item.val" :value="item.id"></el-option>
               </el-select>
             </span>
             <span v-else-if="item.key == 'KZKS'">
               <el-select class="width150" filterable v-model="item.value" placeholder="请选择">
-                <el-option v-for="(item, index) in KZKSList" :key="index" :label="item.val" :value="item.val"></el-option>
+                <el-option v-for="(item, index) in KZKSList" :key="index" :label="item.val" :value="item.id"></el-option>
               </el-select>
             </span>
             <span v-else-if="item.key == 'BRKS'">
               <el-select class="width150" filterable v-model="item.value" placeholder="请选择">
-                <el-option v-for="(item, index) in BRKSList" :key="index" :label="item.val" :value="item.val"></el-option>
+                <el-option v-for="(item, index) in BRKSList" :key="index" :label="item.val" :value="item.id"></el-option>
+              </el-select>
+            </span>
+            <span v-else-if="item.key == 'YYSX'">
+              <el-select class="width150" filterable v-model="item.value" placeholder="请选择">
+                <el-option v-for="(item, index) in YYSXList" :key="index" :label="item.val" :value="item.id"></el-option>
+              </el-select>
+            </span>
+            <span v-else-if="item.key == 'XMLB'">
+              <el-select class="width150" filterable v-model="item.value" placeholder="请选择">
+                <el-option v-for="(item, index) in XMLBList" :key="index" :label="item.val" :value="item.id"></el-option>
               </el-select>
             </span>
             <span v-else>
               <el-input class="width150" v-model="item.value" placeholder=""></el-input>
             </span>
-           
+
             <!-- 中间选择输入框结束 -->
 
             <span class="pind10" />
             <!-- 条件下拉开始 -->
-            <el-select v-model="item.type" class="width90"  placeholder="">
+            <!-- <el-select v-model="item.type" class="width90" placeholder="">
               <el-option label="精确" value="1" />
               <el-option label="模糊" value="0" />
-            </el-select>
+            </el-select> -->
             <!-- 条件下拉结束 -->
 
             <span class="pind10" />
             <!-- 增减重置选项按钮开始 -->
             <span>
-              <el-button
-                v-if="index != 0 "
-                :disabled="formData1.seniorList.length == 1"
-                type="primary"
-                icon="el-icon-minus"
-                @click="funDel(index)"
-              />
-              <el-button
-                v-if="index == formData1.seniorList.length - 1"
-                type="primary"
-                icon="el-icon-plus"
-                @click="funAdd"
-              />
+              <el-button v-if="index != 0" :disabled="formData1.seniorList.length == 1" type="primary" icon="el-icon-minus" @click="funDel(index)" />
+              <el-button v-if="index == formData1.seniorList.length - 1" type="primary" icon="el-icon-plus" @click="funAdd" />
             </span>
             <!-- 增减重置选项按钮结束 -->
           </el-form-item>
           <el-form-item label="出院时间">
-            <el-date-picker
-              v-model="formData1.startTime"
-              type="date"
-              format="yyyy 年 MM 月 dd 日"
-              value-format="yyyyMMdd"
-              placeholder="开始日期"
-		          :picker-options="pickerOptions"
-              
-            />
+            <el-date-picker v-model="formData1.startTime" type="date" format="yyyy 年 MM 月 dd 日" value-format="yyyyMMdd" placeholder="开始日期" :picker-options="pickerOptions" />
             <span class="pind10" />
-            <el-date-picker
-              v-model="formData1.endTime"
-              type="date"
-              format="yyyy 年 MM 月 dd 日"
-              value-format="yyyyMMdd"
-              placeholder="结束日期"
-		          :picker-options="pickerOptions"
-             
-            />
+            <el-date-picker v-model="formData1.endTime" type="date" format="yyyy 年 MM 月 dd 日" value-format="yyyyMMdd" placeholder="结束日期" :picker-options="pickerOptions" />
           </el-form-item>
 
           <el-form-item label="住院天数">
-            <el-input-number
-              v-model="formData1.AAC04_start"
-              :min="1"
-              :step="1"
-              :controls="false"
-              placeholder="起始天数"
-              style="width: 220px"
-              
-            ></el-input-number>
+            <el-input-number v-model="formData1.AAC04_start" :min="1" :step="1" :controls="false" placeholder="起始天数" style="width: 220px"></el-input-number>
             <span class="pind10" />
-            <el-input-number
-              v-model="formData1.AAC04_end"
-              :min="1"
-              :step="1"
-              :controls="false"
-              placeholder="终止天数"
-              style="width: 220px"
-              
-            ></el-input-number>
+            <el-input-number v-model="formData1.AAC04_end" :min="1" :step="1" :controls="false" placeholder="终止天数" style="width: 220px"></el-input-number>
           </el-form-item>
 
           <el-form-item label="患者年龄">
@@ -146,9 +89,8 @@
               :controls="false"
               :placeholder="formData1.ageType1 ? '起始年龄' : '起始天数'"
               style="width: 220px"
-             
             ></el-input-number>
-            <el-select v-model="formData1.ageType1"  placeholder="请选择" style="width: 80px;">
+            <el-select v-model="formData1.ageType1" placeholder="请选择" @change="ageTypeChange1" style="width: 80px">
               <el-option label="年龄" :value="1"></el-option>
               <el-option label="天数" :value="0"></el-option>
             </el-select>
@@ -162,13 +104,29 @@
               :controls="false"
               :placeholder="formData1.ageType2 ? '终止年龄' : '终止天数'"
               style="width: 220px"
-              
             ></el-input-number>
-            <el-select v-model="formData1.ageType2"  placeholder="请选择" style="width: 80px;">
+            <el-select v-model="formData1.ageType2" placeholder="请选择" @change="ageTypeChange2" style="width: 80px">
               <el-option label="年龄" :value="1"></el-option>
               <el-option label="天数" :value="0"></el-option>
             </el-select>
           </el-form-item>
+          <el-form-item label="住院次数">
+            <el-input-number v-model="formData1.AAA29_start" :min="1" :step="1" :controls="false" placeholder="住院次数" style="width: 220px"></el-input-number>
+            <span class="pind10" />
+            <el-input-number v-model="formData1.AAA29_end" :min="1" :step="1" :controls="false" placeholder="住院次数" style="width: 220px"></el-input-number>
+          </el-form-item>
+          <el-form-item label="开嘱时间">
+            <el-date-picker
+              v-model="formData1.KZSJ_start"
+              type="date"
+              format="yyyy 年 MM 月 dd 日"
+              value-format="yyyyMMdd"
+              placeholder="开始日期"
+              :picker-options="pickerOptions"
+            />
+            <span class="pind10" />
+            <el-date-picker v-model="formData1.KZSJ_end" type="date" format="yyyy 年 MM 月 dd 日" value-format="yyyyMMdd" placeholder="结束日期" :picker-options="pickerOptions" />
+          </el-form-item>
         </el-form>
       </div>
       <div class="fBtn" style="position: relative">
@@ -274,45 +232,49 @@ export default {
       YZQXList: [], //医嘱起效列表
       KZKSList: [], //开嘱科室列表
       BRKSList: [], //病人列表
-            formData1: { // 搜搜条件
-        ageday: "",
+      YYSXList: [], //用药属性
+      XMLBList: [], // 项目类别
+      formData1: {
+        // 搜搜条件
+        ageday: '',
         age_start_type: 2,
         age_end_type: 2,
-        ageyear: "",
+        ageyear: '',
         endTime: undefined,
         startTime: undefined,
         seniorList: [
           {
             select_type: 0,
-            key: "",
-            value: "",
-            type: "0",
-            
+            key: '',
+            value: '',
+            // type: '0',
           },
         ],
         seniorList1: [],
-        hospitalizationon: "",
-        hospitalizationin: "",
+        hospitalizationon: '',
+        hospitalizationin: '',
         AAC04_start: undefined,
         AAC04_end: undefined,
         AAA04_start: undefined,
         AAA04_end: undefined,
         ageType1: 1,
-        ageType2: 1
+        ageType2: 1,
+        AAA29_start: undefined, // 住院次数
+        AAA29_end: undefined, // 住院次数
+        KZSJ_start: undefined, // 开嘱时间
+        KZSJ_end: undefined, // 开嘱时间
       },
 
       departmentList: [],
       searchNum: 0,
       pickerOptions: {
         disabledDate(time) {
-          return time.getTime() > Date.now(); 
-        }
+          return time.getTime() > Date.now();
+        },
       },
-     
     };
   },
   mounted() {
-    
     this.funQuery();
   },
   created() {
@@ -321,15 +283,13 @@ export default {
   methods: {
     funGoto(val) {
       this.storageSet('getData', val);
-      this.$router.push({ path: '/caseViews' })
+      this.$router.push({ path: '/caseViews' });
     },
     indexAdd(index) {
       return index + 1 + (this.paginationData.currentPage - 1) * this.paginationData.pageSize;
     },
-    funSelect(index,e) {
-
+    funSelect(index, e) {
       this.formData1.seniorList[index].value = '';
-     
     },
 
     funSetList() {},
@@ -359,35 +319,50 @@ export default {
     },
     funAdd() {
       this.formData1.seniorList.push({
-        key: "",
+        key: '',
         select_type: 0,
-        value: "",
-        type: "0",
-       
+        value: '',
+        // type: '0',
       });
     },
     funQuery() {
       let pramse = {
-        limit: this.paginationData.pageSize,
+        page_size: this.paginationData.pageSize,
         page: this.paginationData.currentPage, //是当前页数 默认是0 。普通检索的参数是
       };
-      pramse.field = this.formData1.seniorList;
+
+      // 处理 field  字段等于空的时候
+      let fieldArr = [];
+      this.formData1.seniorList.forEach((item, index) => {
+        if (item.key != '') {
+          fieldArr.push(item);
+        }
+      });
+      if (fieldArr != '' && fieldArr != null) {
+        pramse.field = fieldArr;
+      }
+
       pramse.AAC01_start = this.formData1.startTime;
       pramse.AAC01_end = this.formData1.endTime;
 
       pramse.AAC04_start = this.formData1.AAC04_start;
       pramse.AAC04_end = this.formData1.AAC04_end;
-        
-      const { ageType1, ageType2 } = this.formData1
-      if (this.formData1.AAA04_start) { 
-        pramse.AAA04_start = { type: ageType1, value: this.formData1.AAA04_start }
+
+      pramse.AAA29_start = this.formData1.AAA29_start;
+      pramse.AAA29_end = this.formData1.AAA29_end;
+
+      pramse.KZSJ_start = this.formData1.KZSJ_start;
+      pramse.KZSJ_end = this.formData1.KZSJ_end;
+
+      const { ageType1, ageType2 } = this.formData1;
+      if (this.formData1.AAA04_start) {
+        pramse.AAA04_start = { type: ageType1, value: this.formData1.AAA04_start };
       }
       if (this.formData1.AAA04_end) {
-        pramse.AAA04_end = {type:ageType2,value:this.formData1.AAA04_end}
+        pramse.AAA04_end = { type: ageType2, value: this.formData1.AAA04_end };
       }
-      
 
-      this.$axios.post('/getDoctorAdvice', pramse).then(res => {
+      this.$axios3.post('/yz/serach', pramse).then(res => {
         this.tableData = res.data.list || [];
         this.paginationData.total = res.data.total;
       });
@@ -400,7 +375,7 @@ export default {
       this.funQuery();
     },
     searchCondition() {
-      this.$axios.post('/doctorAdviceSelect').then(res => {
+      this.$axios3.post('/yz/serach_where').then(res => {
         res.data.forEach((item, index) => {
           item.id = item.key;
           if (item.key == 'YZQX') {
@@ -421,6 +396,18 @@ export default {
               this.BRKSList.push({ id: jitem, val: item.value[jitem] });
             });
           }
+          if (item.key == 'YYSX') {
+            let YYSXArr = Object.keys(item.value);
+            YYSXArr.forEach((jitem, index) => {
+              this.YYSXList.push({ id: jitem, val: item.value[jitem] });
+            });
+          }
+          if (item.key == 'XMLB') {
+            let XMLBArr = Object.keys(item.value);
+            XMLBArr.forEach((jitem, index) => {
+              this.XMLBList.push({ id: jitem, val: item.value[jitem] });
+            });
+          }
         });
         this.fieldList = res.data;
       });
@@ -452,6 +439,12 @@ export default {
       pramse.start = this.formData.startTime;
       pramse.end = this.formData.endTime;
 
+      pramse.AAA29_start = this.formData1.AAA29_start;
+      pramse.AAA29_end = this.formData1.AAA29_end;
+
+      pramse.KZSJ_start = this.formData1.KZSJ_start;
+      pramse.KZSJ_end = this.formData1.KZSJ_end;
+
       let fileName = '医嘱列表';
       let httpUrl = '/doctorAdviceExport';
 
@@ -464,6 +457,12 @@ export default {
         console.error('111', res);
       });
     },
+    ageTypeChange1() {
+      this.formData1.ageType2 = this.formData1.ageType1;
+    },
+    ageTypeChange2() {
+      this.formData1.ageType1 = this.formData1.ageType2;
+    },
   },
 };
 </script>