Parcourir la source

Merge branch 'master' of http://182.44.34.170:8081/jiankun/q-baqd

zdl il y a 1 an
Parent
commit
96afd4fbd5

+ 0 - 0
debug.log


+ 24 - 0
src/router/index.js

@@ -45,6 +45,7 @@ export const constantRoutes = [
     component: () => import('@/views/404'),
     component: () => import('@/views/404'),
     hidden: true,
     hidden: true,
   },
   },
+ 
   {
   {
     path: '/',
     path: '/',
     component: Layout,
     component: Layout,
@@ -463,6 +464,29 @@ export const constantRoutes = [
       },
       },
     ],
     ],
   },
   },
+  // 暂时添加的路由
+  {
+    path: '/recordsImport',
+    name: 'recordsImport',
+    component: Layout,
+    redirect: '/recordsImport',
+    hidden: true,
+    children: [
+      {
+        path: '/recordsImport',
+        name: 'recordsImport',
+        component: () => import('@/views/recordsImport/index'),
+        meta: { 
+          title: '首页导入',
+          icon: 'dashboard',
+          keepAlive: 1,
+          canMultipleOpen: true,
+          hidden: true
+        }
+      }
+    ]
+  },
+
   // 医院大数据自助查询系统
   // 医院大数据自助查询系统
   
   
   {
   {

+ 3 - 1
src/views/allcase/caseViews.vue

@@ -104,7 +104,9 @@
           <DeathText :dataObjArr="dataObj"></DeathText>
           <DeathText :dataObjArr="dataObj"></DeathText>
         </div>
         </div>
         <div v-else>
         <div v-else>
-          <newContFile v-for="(item, index) of text" :key="index" :text="item.HJNR" :name="name_title"></newContFile>
+          <div v-if="update">
+            <newContFile v-for="(item, index) of text" :key="index" :text="item.HJNR" :name="name_title" ></newContFile>
+          </div>
         </div>
         </div>
       </div>
       </div>
       <!-- status 不存在 意味着不脱敏、医院自助查询 -->
       <!-- status 不存在 意味着不脱敏、医院自助查询 -->

+ 23 - 35
src/views/data/medicalRecords/index.vue

@@ -6,8 +6,11 @@
           <div class="selectDns"></div>
           <div class="selectDns"></div>
           <el-input v-model="formData.recordNum" class="width150" placeholder="病案号"></el-input>
           <el-input v-model="formData.recordNum" class="width150" placeholder="病案号"></el-input>
           <span class="kong"></span>
           <span class="kong"></span>
+          <el-select v-model="formData.AAC11C" clearable filterable class="selects" placeholder="出院科室">
+            <el-option v-for="(item, index) in departmentList" :label="item.name" :value="item.name" :key="index"></el-option>
+          </el-select>
+          <span class="kong"></span>
           <el-date-picker v-model="formData.startTime" type="date" format="yyyy 年 MM 月 dd 日" value-format="yyyyMMdd" placeholder="开始日期"></el-date-picker>
           <el-date-picker v-model="formData.startTime" type="date" format="yyyy 年 MM 月 dd 日" value-format="yyyyMMdd" placeholder="开始日期"></el-date-picker>
-
           <el-date-picker
           <el-date-picker
             v-model="formData.endTime"
             v-model="formData.endTime"
             type="date"
             type="date"
@@ -17,22 +20,15 @@
             placeholder="结束日期"
             placeholder="结束日期"
           ></el-date-picker>
           ></el-date-picker>
           <span class="kong"></span>
           <span class="kong"></span>
-          <!-- <span class="demonstration">反馈关键词</span> -->
-          <!-- <el-input class="ins" placeholder="请输入内容"></el-input> -->
           <el-button type="primary" @click="funQuery">查询</el-button>
           <el-button type="primary" @click="funQuery">查询</el-button>
           <span class="kong"></span>
           <span class="kong"></span>
           <el-button @click="reset">重置条件</el-button>
           <el-button @click="reset">重置条件</el-button>
-
-          <span class="kong"></span>
-          <el-button type="text" @click="goto('/data/query')">更多查询条件</el-button>
-          <span class="kong"></span>
-
-          <el-button type="primary" icon="el-icon-download" @click="onExport" class="export-btn">导出数据</el-button>
-          <span class="kong"></span>
-          <el-button style="float: right" @click="toPrePage">返回</el-button>
         </div>
         </div>
       </div>
       </div>
-      <Title :title="'病案首页列表'" />
+      <div style="position: relative; margin-bottom: 30px;">
+        <Title :title="'病案首页列表'" />
+        <el-button type="primary" icon="el-icon-download" @click="onExport" class="export-btn">导出数据</el-button>
+      </div>
       <el-table :data="tableData" style="width: 100%">
       <el-table :data="tableData" style="width: 100%">
         <el-table-column type="index" label="序号"></el-table-column>
         <el-table-column type="index" label="序号"></el-table-column>
         <el-table-column prop="AAA28" label="病案号">
         <el-table-column prop="AAA28" label="病案号">
@@ -91,6 +87,7 @@ export default {
         recordNum: '',
         recordNum: '',
         startTime: '',
         startTime: '',
         endTime: '',
         endTime: '',
+        AAC11C: ''
       },
       },
       tableData: [],
       tableData: [],
       // 分页数据
       // 分页数据
@@ -99,11 +96,13 @@ export default {
         currentPage: 1,
         currentPage: 1,
         pageSize: 10,
         pageSize: 10,
       },
       },
+      departmentList: [],
     };
     };
   },
   },
   mounted() {
   mounted() {
     this.formData.endTime = this.storageGet('endTime');
     this.formData.endTime = this.storageGet('endTime');
     this.formData.startTime = this.storageGet('startTime');
     this.formData.startTime = this.storageGet('startTime');
+    this.selectInfo()
     this.funQuery();
     this.funQuery();
   },
   },
   beforeRouteEnter(to, from, next) {
   beforeRouteEnter(to, from, next) {
@@ -149,33 +148,20 @@ export default {
     pageHasChanged() {
     pageHasChanged() {
       this.funQuery();
       this.funQuery();
     },
     },
-    // selectInfo() {
-    //   let pramse = {};
-    //   this.$axios
-    //     .post("/selectInfo")
-    //     .then((res) => {
-    //       this.payList = res.data.pay;
-    //       console.log(this.payList);
-    //       //支付方式 pay
-    //       this.departmentList = res.data.department;
-    //       //出院科室 department
-    //       this.levelList = res.data.level;
-    //       //问题属性 level
-    //       this.coderList = res.data.coder;
-    //       //编码元  coder
-    //       this.statusList = res.data.status;
-    //       this.fieldList = res.data.field;
-    //     });
-    // },
+    selectInfo() {
+      this.$axios.post('/selectInfo').then(res => {
+        this.departmentList = res.data.department.slice(1, res.data.department.length);
+      });
+    },
     funQuery() {
     funQuery() {
       //查询
       //查询
       let pramse = {
       let pramse = {
-        // AAC01: this.formData.rangeDate, //出院时间
         AAC01_start_date: this.formData.startTime || '',
         AAC01_start_date: this.formData.startTime || '',
         AAC01_end_date: this.formData.endTime || '',
         AAC01_end_date: this.formData.endTime || '',
         AAA28: this.formData.recordNum,
         AAA28: this.formData.recordNum,
         page: this.paginationData.currentPage, //页码
         page: this.paginationData.currentPage, //页码
-        limit: this.paginationData.pageSize, //条数
+        limit: this.paginationData.pageSize, //条数,
+        AAC11C: this.formData.AAC11C
       };
       };
       this.$axios.post('/qualityList', pramse).then(res => {
       this.$axios.post('/qualityList', pramse).then(res => {
         console.log(res);
         console.log(res);
@@ -268,9 +254,6 @@ export default {
     align-items: center;
     align-items: center;
     justify-content: center;
     justify-content: center;
   }
   }
-  .selects {
-    width: 100%;
-  }
   .rowsa {
   .rowsa {
     margin-bottom: 20px;
     margin-bottom: 20px;
   }
   }
@@ -346,4 +329,9 @@ export default {
 .kong {
 .kong {
   padding: 0 10px;
   padding: 0 10px;
 }
 }
+.export-btn {
+  position: absolute;
+  right: 0;
+  top: -10px;
+}
 </style>
 </style>

+ 4 - 1
src/views/data/query/adviceSearch.vue

@@ -433,7 +433,10 @@ export default {
         page_size: this.paginationData.pageSize,
         page_size: this.paginationData.pageSize,
         page: this.paginationData.currentPage, //是当前页数 默认是0 。普通检索的参数是
         page: this.paginationData.currentPage, //是当前页数 默认是0 。普通检索的参数是
       };
       };
-
+      
+      if (this.$route.query.code) {
+        pramse.code = this.$route.query.code
+      }
       // 处理 field  字段等于空的时候
       // 处理 field  字段等于空的时候
       let fieldArr = [];
       let fieldArr = [];
       this.formData1.seniorList.forEach((item, index) => {
       this.formData1.seniorList.forEach((item, index) => {

+ 6 - 0
src/views/data/query/index.vue

@@ -834,6 +834,9 @@ export default {
           page: num == 1 ? num : this.paginationData.currentPage, //页码
           page: num == 1 ? num : this.paginationData.currentPage, //页码
           limit: this.paginationData.pageSize, //条数
           limit: this.paginationData.pageSize, //条数
         };
         };
+        if (this.$route.query.code) {
+          pramse.code = this.$route.query.code
+        }
         sessionStorage.setItem('Zkpramse', JSON.stringify(pramse));
         sessionStorage.setItem('Zkpramse', JSON.stringify(pramse));
         sessionStorage.setItem('ZkChoice', this.choice);
         sessionStorage.setItem('ZkChoice', this.choice);
         this.getinfo(pramse);
         this.getinfo(pramse);
@@ -852,6 +855,9 @@ export default {
           page: num == 1 ? num : this.paginationData.currentPage, //页码
           page: num == 1 ? num : this.paginationData.currentPage, //页码
           limit: this.paginationData.pageSize, //条数
           limit: this.paginationData.pageSize, //条数
         };
         };
+        if (this.$route.query.code) {
+          pramse.code = this.$route.query.code
+        }
         sessionStorage.setItem('Zkpramse', JSON.stringify(pramse));
         sessionStorage.setItem('Zkpramse', JSON.stringify(pramse));
         sessionStorage.setItem('ZkChoice', this.choice);
         sessionStorage.setItem('ZkChoice', this.choice);
         if (num == 1) {
         if (num == 1) {

+ 156 - 0
src/views/recordsImport/index.vue

@@ -0,0 +1,156 @@
+<template>
+  <div class="pages">
+    <div class="upload-block">
+
+      <div class="titlebox">
+        <div class="titlebox-text">病案首页数据导入</div>
+        <div class="switch-box">
+          <el-switch v-model="switch_value" active-color="#185da6"></el-switch>
+          <div class="switch-text">{{ switch_value?'上传 + 质控':'上传' }}</div>
+        </div>
+      </div>
+      <!-- 上传拖拽区域模块 开始 -->
+      <div class="upload-blockCon-box">
+        <el-upload class="upload-demo" drag :action="actionUrl" multiple>
+          <i class="el-icon-upload"></i>
+          <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+          <div class="el-upload__tip">支持excel、csv</div>
+        </el-upload>
+      </div>
+      <!-- 上传拖拽区域模块 结束 -->
+
+    </div>
+    <div class="tableBox">
+
+      <div class="titlebox">
+        <div class="titlebox-text">导入结果</div>
+        <div><el-button type="primary" size="small" class="export-btn">导出数据</el-button></div>
+      </div>
+      <p>共上传: 500份<span style="padding-left: 20px;">导入失败: 2份</span></p>
+      <div class="table-block">
+        <el-table :data="tableData" style="width: 100%">
+          <el-table-column prop="" align="center" label="医院名称"></el-table-column>
+          <el-table-column prop="" align="center" label="病案数"></el-table-column>
+          <el-table-column prop="" align="center" label="姓名"></el-table-column>
+          <el-table-column prop="" align="center" label="出院时间"></el-table-column>
+          <el-table-column prop="" align="center" label="导入失败原因"></el-table-column>
+        </el-table>
+      </div>
+      
+
+      <div class="footers">
+        <mPagination v-if="tableData && tableData.length !== 0" :data="paginationData" @pageChangeEvent="pageHasChanged"></mPagination>
+      </div>
+
+
+    </div>
+  </div>
+</template>
+<script>
+
+
+export default {
+  name:'recordsImport',
+  data() {
+    return {
+      switch_value: true,
+      actionUrl:'https://jsonplaceholder.typicode.com/posts/',
+      tableData: [],
+      paginationData: {
+        total: 10,
+        currentPage: 1,
+        pageSize: 10,
+      },
+    };
+  },
+  mounted() {
+ 
+  },
+  activated() {
+
+  },
+  methods: {
+   
+    funQuery() {
+      this.getList(); //获取列表
+    },
+    getList(){
+      let pramse = {
+        page: this.paginationData.currentPage, //页码
+        limit: this.paginationData.pageSize, //条数
+      };
+      this.$axios.post('', pramse).then(res => {
+
+      });
+    },
+    
+   
+  },
+};
+</script>
+<style lang="scss" scoped>
+  .pages{
+    margin: 16px;
+  }
+  .upload-block {
+    background: #fff;
+    border-radius: 5px;
+    height: auto;
+    padding: 16px;
+    margin-bottom: 20px;
+  }
+  .titlebox{
+    display: -webkit-box;
+    display: -ms-flexbox;
+    display: flex;
+    -webkit-box-align: center;
+    -ms-flex-align: center;
+    align-items: center;
+    justify-content: space-between;
+  }
+  .titlebox-text{
+    font-size: 15px;
+    font-weight: bold;
+  }
+  .upload-blockCon-box{
+    width: 100%;
+    display: -webkit-box;
+    display: -ms-flexbox;
+    display: flex;
+    -webkit-box-align: center;
+    -ms-flex-align: center;
+    align-items: center;
+    justify-content: center;
+    margin-top: 10px;
+  }
+
+  .upload-demo::v-deep .el-upload-dragger{
+    width: 650px;
+    height: 220px;
+  }
+  .upload-demo::v-deep .el-upload-dragger .el-icon-upload{
+    font-size: 120px;
+  }
+  .tableBox {
+    background: #fff;
+    padding: 16px;
+    border-radius: 5px;
+  }
+  .table-block{
+    margin-top: 10px;
+  }
+  .switch-box{
+    display: -webkit-box;
+    display: -ms-flexbox;
+    display: flex;
+    -webkit-box-align: center;
+    -ms-flex-align: center;
+    align-items: center;
+    justify-content: center;
+  }
+  .switch-box .switch-text{
+    text-align: left;
+    width: 100px;
+    padding-left: 10px;
+  }
+</style>

+ 17 - 12
src/views/search/index.vue

@@ -36,11 +36,10 @@
               :disabled="lock"
               :disabled="lock"
             />
             />
           </el-form-item>
           </el-form-item>
-          <el-form-item>
-            <el-button class="bule" icon="el-icon-search" @click="searchBtn(0)">检索</el-button>
-          </el-form-item>
         </el-form>
         </el-form>
-        <div style="margin: 15px" />
+        <div style="margin: 15px">
+          <el-button type="primary" class="long-btn" @click="searchBtn(0)">检索</el-button>
+        </div>
       </div>
       </div>
       <!-- 高级检索 -->
       <!-- 高级检索 -->
       <div v-if="choice == 1" class="barBtn">
       <div v-if="choice == 1" class="barBtn">
@@ -155,7 +154,7 @@
       </div>
       </div>
       <div v-if="choice == 1" class="fBtn" style="position: relative">
       <div v-if="choice == 1" class="fBtn" style="position: relative">
         <el-button class="btn11" @click="reset">重置条件</el-button>
         <el-button class="btn11" @click="reset">重置条件</el-button>
-        <el-button type="primary" @click="searchBtn(1)">检索</el-button>
+        <el-button type="primary" class="long-btn" @click="searchBtn(1)">检索</el-button>
       </div>
       </div>
       <!-- 专业检索 -->
       <!-- 专业检索 -->
       <ProfessionSearchVue ref="professionSearch" v-if="choice == 2" @search="handleProfessionSearchFn" @export="handelExport" @reset="handleReset" />
       <ProfessionSearchVue ref="professionSearch" v-if="choice == 2" @search="handleProfessionSearchFn" @export="handelExport" @reset="handleReset" />
@@ -320,13 +319,13 @@
                   <span v-html="item.ryjl.RYJL_ZHUANKE"></span>
                   <span v-html="item.ryjl.RYJL_ZHUANKE"></span>
                 </el-descriptions-item>
                 </el-descriptions-item>
                 <el-descriptions-item label="辅助检查" v-if="item.ryjl.RYJL_FZJC">
                 <el-descriptions-item label="辅助检查" v-if="item.ryjl.RYJL_FZJC">
-                  <span v-for="(aItem, aIndex) of item.ryjl.RYJL_FZJC" :key="aIndex">
+                  <span v-for="(aItem, aIndex) of JSON.parse(item.ryjl.RYJL_FZJC)" :key="aIndex">
                     <span v-if="aIndex">;</span>
                     <span v-if="aIndex">;</span>
                     <span v-html="aItem"></span>
                     <span v-html="aItem"></span>
                   </span>
                   </span>
                 </el-descriptions-item>
                 </el-descriptions-item>
                 <el-descriptions-item label="初步诊断" v-if="item.ryjl.RYJL_CBZD">
                 <el-descriptions-item label="初步诊断" v-if="item.ryjl.RYJL_CBZD">
-                  <span v-for="(aItem, aIndex) of item.ryjl.RYJL_CBZD" :key="aIndex">
+                  <span v-for="(aItem, aIndex) of JSON.parse(item.ryjl.RYJL_CBZD)" :key="aIndex">
                     <span v-if="aIndex">;</span>
                     <span v-if="aIndex">;</span>
                     <span v-html="aItem"></span>
                     <span v-html="aItem"></span>
                   </span>
                   </span>
@@ -349,31 +348,31 @@
                   <span v-html="item.bcjl_scbc.BCJL_SCBC_CBZD_ONE"></span>
                   <span v-html="item.bcjl_scbc.BCJL_SCBC_CBZD_ONE"></span>
                 </el-descriptions-item>
                 </el-descriptions-item>
                 <el-descriptions-item label="其他初步诊断" v-if="item.bcjl_scbc.BCJL_SCBC_CBZD_OTHER">
                 <el-descriptions-item label="其他初步诊断" v-if="item.bcjl_scbc.BCJL_SCBC_CBZD_OTHER">
-                  <span v-for="(aItem, aIndex) of item.bcjl_scbc.BCJL_SCBC_CBZD_OTHER" :key="aIndex">
+                  <span v-for="(aItem, aIndex) of JSON.parse(item.bcjl_scbc.BCJL_SCBC_CBZD_OTHER)" :key="aIndex">
                     <span v-if="aIndex">;</span>
                     <span v-if="aIndex">;</span>
                     <span v-html="aItem"></span>
                     <span v-html="aItem"></span>
                   </span>
                   </span>
                 </el-descriptions-item>
                 </el-descriptions-item>
                 <el-descriptions-item label="诊断依据" v-if="item.bcjl_scbc.BCJL_SCBC_ZDYJ">
                 <el-descriptions-item label="诊断依据" v-if="item.bcjl_scbc.BCJL_SCBC_ZDYJ">
-                  <span v-for="(aItem, aIndex) of item.bcjl_scbc.BCJL_SCBC_ZDYJ" :key="aIndex">
+                  <span v-for="(aItem, aIndex) of JSON.parse(item.bcjl_scbc.BCJL_SCBC_ZDYJ)" :key="aIndex">
                     <span v-if="aIndex">;</span>
                     <span v-if="aIndex">;</span>
                     <span v-html="aItem"></span>
                     <span v-html="aItem"></span>
                   </span>
                   </span>
                 </el-descriptions-item>
                 </el-descriptions-item>
                 <el-descriptions-item label="鉴别诊断" v-if="item.bcjl_scbc.BCJL_SCBC_JBZD">
                 <el-descriptions-item label="鉴别诊断" v-if="item.bcjl_scbc.BCJL_SCBC_JBZD">
-                  <span v-for="(aItem, aIndex) of item.bcjl_scbc.BCJL_SCBC_JBZD" :key="aIndex">
+                  <span v-for="(aItem, aIndex) of JSON.parse(item.bcjl_scbc.BCJL_SCBC_JBZD)" :key="aIndex">
                     <span v-if="aIndex">;</span>
                     <span v-if="aIndex">;</span>
                     <span v-html="aItem"></span>
                     <span v-html="aItem"></span>
                   </span>
                   </span>
                 </el-descriptions-item>
                 </el-descriptions-item>
                 <el-descriptions-item label="鉴别诊断名称" v-if="item.bcjl_scbc.BCJL_SCBC_JBZDMC">
                 <el-descriptions-item label="鉴别诊断名称" v-if="item.bcjl_scbc.BCJL_SCBC_JBZDMC">
-                  <span v-for="(aItem, aIndex) of item.bcjl_scbc.BCJL_SCBC_JBZDMC" :key="aIndex">
+                  <span v-for="(aItem, aIndex) of JSON.parse(item.bcjl_scbc.BCJL_SCBC_JBZDMC)" :key="aIndex">
                     <span v-if="aIndex">;</span>
                     <span v-if="aIndex">;</span>
                     <span v-html="aItem"></span>
                     <span v-html="aItem"></span>
                   </span>
                   </span>
                 </el-descriptions-item>
                 </el-descriptions-item>
                 <el-descriptions-item label="诊疗记录" v-if="item.bcjl_scbc.BCJL_SCBC_ZLJH">
                 <el-descriptions-item label="诊疗记录" v-if="item.bcjl_scbc.BCJL_SCBC_ZLJH">
-                  <span v-for="(aItem, aIndex) of item.bcjl_scbc.BCJL_SCBC_ZLJH" :key="aIndex">
+                  <span v-for="(aItem, aIndex) of JSON.parse(item.bcjl_scbc.BCJL_SCBC_ZLJH)" :key="aIndex">
                     <span v-if="aIndex">;</span>
                     <span v-if="aIndex">;</span>
                     <span v-html="aItem"></span>
                     <span v-html="aItem"></span>
                   </span>
                   </span>
@@ -729,6 +728,9 @@ export default {
         limit: this.paginationData.pageSize,
         limit: this.paginationData.pageSize,
         page: this.paginationData.currentPage // 是当前页数 默认是0 。普通检索的参数是
         page: this.paginationData.currentPage // 是当前页数 默认是0 。普通检索的参数是
       };
       };
+      if (this.$route.query.code) {
+        pramse.code = this.$route.query.code
+      }
       if (this.sort.length) {
       if (this.sort.length) {
         pramse.sort = this.sort
         pramse.sort = this.sort
       }
       }
@@ -822,6 +824,9 @@ export default {
         page_size: pageSize,
         page_size: pageSize,
         page: currentPage
         page: currentPage
       }
       }
+      if (this.$route.query.code) {
+        queryData.code = this.$route.query.code
+      }
       if (this.sort.length) {
       if (this.sort.length) {
         queryData.sort = this.sort
         queryData.sort = this.sort
       }
       }