Forráskód Böngészése

标准病例列表

zhouna 5 éve
szülő
commit
4e4197083e

+ 5 - 1
src/api/config.js

@@ -325,7 +325,11 @@ export default {
       'getQcEntryTypeByHospital': '/api/mrman/qc/qcEntryType/getTypeByHospital', //质控条目与质控类型关系--根据医院获取质控类型列表
       'getQcEntryTypeIndex': '/api/mrman/qc/qcEntryType/index', //质控条目与质控类型关系--根据医院和条目检索未被选择的质控类型
       'saveQcEntryType': '/api/mrman/qc/qcEntryType/saveOrUpdate', //质控条目与质控类型关系--保存
-      
+      'getStdList':'/api/mrman/stdBehospitalInfo/getSthospitalInfoPage' ,//标准病例列表
+      'delStdRecord':'/api/mrman/stdBehospitalInfo/clearSthospitalInfo',//删除标准病例
+      'updateStdRecord':'/api/mrman/stdBehospitalInfo/updataSthospitalInfo',//更新标准病例
+      'findStdRecord':'/api/mrman/stdBehospitalInfo/findSthospitalInfo',//查找标准病例
+      'getStdDeptList':'/api/mrman/medBehospitalInfo/findhospitalDept', //获取科室列表
       
   },
 	menuIconList: { //菜单对应图标

+ 15 - 0
src/api/qualityControl.js

@@ -69,4 +69,19 @@ export default {
   saveQcEntryType(param){ //质控条目与质控类型关系--保存
     return axios.post(urls.saveQcEntryType,param);
   },
+  getStdList(param){//获取标准病例列表
+    return axios.post(urls.getStdList,param);
+  },
+  delStdRecord(param){//删除标准病例
+    return axios.post(urls.delStdRecord,param);
+  },
+  updateStdRecord(param){//更新标准病例
+    return axios.post(urls.updateStdRecord,param);
+  },
+  findStdRecord(param){//查找标准病例
+    return axios.post(urls.findStdRecord,param);
+  },
+  getStdDeptList(param){//更新标准病例
+    return axios.post(urls.getStdDeptList,param);
+  },
 }

+ 39 - 86
src/components/qualityControl/StandardRecord.vue

@@ -3,14 +3,14 @@
         <crumbs title="标准病历维护">
             <el-form :inline="true" class="demo-form-inline">
               <el-form-item label="病人住院序号:">
-                    <el-input size="mini" v-model.trim="filter.moduleId" placeholder="病人住院序号" clearable></el-input>
+                    <el-input size="mini" v-model.trim="filter.behospitalCode" placeholder="病人住院序号" clearable></el-input>
                 </el-form-item>
                  <el-form-item label="病人姓名:">
-                    <el-input size="mini" v-model.trim="filter.modeName" placeholder="病人姓名" clearable></el-input>
+                    <el-input size="mini" v-model.trim="filter.name" placeholder="病人姓名" clearable></el-input>
                 </el-form-item>
                 <el-form-item label="科室:">
-                     <el-select size="mini" v-model.trim="filter.modeId" @change="getValue"  placeholder="请选择科室" clearable>
-                        <el-option v-for="item in moduleList" :label="item.name" :value="item.val" :key="item.id" ></el-option>
+                     <el-select size="mini" v-model.trim="filter.deptId" @change="getValue"  placeholder="请选择科室" clearable>
+                        <el-option v-for="item in moduleList" :label="item.deptName" :value="item.deptId" :key="item.deptId" ></el-option>
                     </el-select>
                 </el-form-item>
                 <el-form-item label="出院日期:">
@@ -47,56 +47,44 @@
                 <el-table-column
                         :resizable = "false"
                         label="所属医院"
-                        prop="id"
+                        prop="hospitalName"
                         >
                 </el-table-column>
                 <el-table-column
                         :resizable = "false"
-                        prop="name"
+                        prop="behospitalCode"
                         label="病人住院序号"
                         width="180">
                 </el-table-column>
                 <el-table-column
                         :resizable = "false"
-                        prop="modeId"
-                        :formatter="moduleFormatter"
+                        prop="deptName"
                         label="科室">
                 </el-table-column>
                 
                 <el-table-column
                         :resizable = "false"
-                        prop="hospitalId"
-                        :formatter="hisFormatter"
+                        prop="name"
                         label="病人姓名">
                 </el-table-column>
                 <el-table-column
                         :resizable = "false"
-                        prop="modeId"
-                        :formatter="moduleFormatter"
+                        prop="sex"
                         label="性别">
                 </el-table-column>
                 <el-table-column
                         :resizable = "false"
-                        prop="modeId"
-                        :formatter="moduleFormatter"
-                        label="年龄">
-                </el-table-column>
-                <el-table-column
-                        :resizable = "false"
-                        prop="modeId"
-                        :formatter="moduleFormatter"
+                        prop="behospitalDate"
                         label="入院日期">
                 </el-table-column>
                 <el-table-column
                         :resizable = "false"
-                        prop="modeId"
-                        :formatter="moduleFormatter"
+                        prop="leaveHospitalDate"
                         label="出院日期">
                 </el-table-column>
                 <el-table-column
                         :resizable = "false"
-                        prop="modeId"
-                        :formatter="moduleFormatter"
+                        prop="gmtModified"
                         label="加入时间">
                 </el-table-column>
                 <el-table-column
@@ -104,9 +92,7 @@
                         prop="operate"
                         label="操作">
                     <template slot-scope="scope">
-                        <el-button  @click="modifyIndeptTag(scope.row, 'modify')" type="text" size="small">修改</el-button>
-                        <span style="margin:0 3px;">|</span>
-                        <el-button @click="modifyIndeptTag(scope.row, 'copy')" class="text" type="text" size="small">复制</el-button>
+                        <el-button  @click="modifyStd(scope.row)" type="text" size="small">更新</el-button>
                         <span style="margin:0 3px;">|</span>
                         <el-button @click="showDelDialog(scope.row)" class="delete" type="text" size="small">删除</el-button>
                     </template>
@@ -134,14 +120,12 @@
     data: function() {
       return {
         list: [],
-        hospitalList: [],
         moduleList:[],
         searched: false,
         filter: {
-          modeName: '', //模板名称
-          moduleId:null, //模板Id
-          modeId: '',//所属模块
-          hospitalName: '', //所属医院
+          behospitalCode: '',
+          deptId:'',
+          name: '',
           date1:"",
           date2:"",
         },
@@ -177,33 +161,14 @@
       })
     },
     methods: {
-      moduleFormatter(row, column, cellValue){
-        const it = this.moduleList.find(item => item.val == cellValue);
-        return it?it.name:'';
-      },
-      hisFormatter(row, column, cellValue){
-        const it = this.hospitalList.find(item => item.val == cellValue);
-        return it?it.name:'';
-      },
       getAllTypes(){
-          if(localStorage.getItem("qcModuleTypes")){
-              this.hospitalList = JSON.parse(localStorage.getItem("qcHospitalTypes"));
-              this.moduleList = JSON.parse(localStorage.getItem("qcModuleTypes"));
-              return new Promise(function(resolve, reject){
-                  resolve()
-              });
-          }
           //获取枚举信息
-          return api.getQcTypes().then((res)=>{
+          return api.getStdDeptList({}).then((res)=>{
               if(res.data.code==="0"){
                   const data = res.data.data;
-                  localStorage.setItem("qcFieldTypes",JSON.stringify(data[11]));
-                  localStorage.setItem("qcModuleTypes",JSON.stringify(data[12]));
-                  localStorage.setItem("qcHospitalTypes",JSON.stringify(data[13]));
-                  this.hospitalList = JSON.parse(localStorage.getItem("qcHospitalTypes"));
-                  this.moduleList = JSON.parse(localStorage.getItem("qcModuleTypes"));
+                  this.moduleList=data;
               }else{
-                  this.warning("获取枚举信息失败");
+                  this.warning("获取科室列表失败");
               }
           });
       },
@@ -224,13 +189,9 @@
             spinner: 'el-icon-loading',
             background: 'rgba(0, 0, 0, 0.7)'
         });
-        api.getQCTemplist(param).then((res) => {
+        api.getStdList(param).then((res) => {
           loading.close()
           let list = res.data.data.records
-          /*for(let i = 0; i < list.length; i++){
-            list[i].hospitalId = this.hospitalList.find(item => item.val == list[i].hospitalId).name
-            list[i].modeId  = this.moduleList.find(item => item.val == list[i].modeId).name
-          }*/
           this.list = list;
           this.total = res.data.data.total;
           if(this.inCurrentPage!==undefined){
@@ -254,22 +215,12 @@
           params: pam
         })
       },
-      modifyIndeptTag(row, type) {
-        api.getQCTempDetail({moduleId:row.id}).then((res)=>{
+      modifyStd(row) {
+        api.updateStdRecord({behospitalCode:row.behospitalCode,hospitalId:row.hospitalId}).then((res)=>{
           const {code,data,msg} = res.data;
           if(code=='0'){
-            const item = Object.assign({},row,data);
-            const pam = this.searched ? {
-              currentPage: this.currentPage,
-              filter: this.filter
-            } : {currentPage: this.currentPage};
-            if(type == 'modify') {
-              this.$router.push({name: 'AddQualityControlTemp', params: Object.assign(pam, {isEdit: true, data: item})});
-            } else if( type == 'copy') {
-              this.$router.push({name: 'AddQualityControlTemp', params: Object.assign(pam, {isCopy: true, data: item})});
-            } else {
-                return
-            }
+            this.warning(res.data.msg || '更新成功','success');
+            this.getDataList();
           }else{
             this.$message({
               message: msg,
@@ -290,11 +241,11 @@
       },
       clearFilter(){
         this.filter={
-          name: "",
-          modeId: "",
-          hospitalName: "",
-          id:"",
-
+          behospitalCode: '',
+          deptId:'',
+          name: '',
+          date1:"",
+          date2:"",
         };
       },
       getFilterItems(isTurnPage) {
@@ -302,14 +253,15 @@
         if(isTurnPage&&!this.searched){
           this.clearFilter();
         };
-        const {modeName, modeId, hospitalName,moduleId} = this.filter
+        const {behospitalCode, deptId, name,date1,date2} = this.filter;
         const param = {
-          name: modeName,
           current: this.inCurrentPage||this.currentPage,
           size: this.pageSize,
-          modeId: modeId,
-          id:moduleId,
-          hospitalId: hospitalName
+          deptId,
+          name,
+          behospitalCode,
+          leaveHosDateEnd:date2,
+          leaveHosDateStart: date1
         };
         return param;
       },
@@ -337,10 +289,11 @@
       },
       showDelDialog(row){
         const param = {
-          "ids": row.id,
+          "behospitalCode": row.behospitalCode,
+          "hospitalId":row.hospitalId
         }
-        this.showConfirmDialog('是否删除该模板?',()=>{
-          api.delQCTemp(param).then((res)=>{
+        this.showConfirmDialog('是否删除该病历?',()=>{
+          api.delStdRecord(param).then((res)=>{
             if(res.data.code=='0'){
               if(!this.searched){
                 //未点确认时清空搜索条件