yuwandanmian пре 1 година
родитељ
комит
31e1eb311c

+ 13 - 54
src/views/medicalRecord/components/cost/SearchBox.vue

@@ -4,20 +4,18 @@
       <el-row :gutter="20">
         <el-col :span="6">
           <el-form-item label="住院号码">
-            <el-input v-model="data.AAA28" clearable placeholder="请输入"></el-input>
+            <el-input v-model="data.ZYH" clearable placeholder="请输入"></el-input>
           </el-form-item>
         </el-col>
         <el-col :span="6">
-          <el-form-item label="住院科室">
-            <el-select v-model="data.AAC11C" filterable clearable placeholder="全部" style="width: 100%;">
-              <el-option v-for="(item, index) in departmentList" :key="index" :label="item.dep_name" :value="item.dep_id"></el-option>
-            </el-select>
+          <el-form-item label="费用名称">
+            <el-input v-model="data.FYMC" clearable placeholder="请输入"></el-input>
           </el-form-item>
         </el-col>
         <el-col :span="6">
-          <el-form-item label="出院时间">
+          <el-form-item label="计费日期">
             <el-date-picker
-              v-model="data.AAC01"
+              v-model="data.time"
               type="daterange"
               start-placeholder="开始时间"
               end-placeholder="结束时间"
@@ -27,39 +25,13 @@
           </el-form-item>
         </el-col>
         <el-col :span="6">
-          <el-form-item label="住院医师">
-            <el-select v-model="data.AEE04_CODE" filterable clearable placeholder="全部" style="width: 100%;">
-              <el-option v-for="item of doctors" :key="item.id" :label="item.label" :value="item.id"></el-option>
-            </el-select>
-          </el-form-item>
-        </el-col>
-        <el-col :span="6">
-          <el-form-item label="编码员">
-            <el-select v-model="data.AEE08_CODE" filterable clearable placeholder="全部" style="width: 100%;">
-              <el-option v-for="item of doctors" :key="item.id" :label="item.label" :value="item.id"></el-option>
+          <el-form-item label="科室">
+            <el-select v-model="data.FYKS" filterable clearable placeholder="全部" style="width: 100%;">
+              <el-option v-for="(item, index) in departmentList" :key="index" :label="item.dep_name" :value="item.dep_id"></el-option>
             </el-select>
           </el-form-item>
         </el-col>
-        <el-col :span="6">
-          <el-form-item label="手术名称">
-            <el-input v-model="data.ICD9_NAME" clearable placeholder="请输入"></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="6">
-          <el-form-item label="手术编号">
-            <el-input v-model="data.ICD9_ID1" clearable placeholder="请输入"></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="6">
-          <el-form-item label="诊断名称">
-            <el-input v-model="data.ICD10_NAME" clearable placeholder="请输入"></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="6">
-          <el-form-item label="诊断编码">
-            <el-input v-model="data.ICD10_ID1" clearable placeholder="请输入"></el-input>
-          </el-form-item>
-        </el-col>
+        
         <el-col :span="6">
           <el-form-item>
             <el-button plain @click="onReset" icon="el-icon-refresh">重置</el-button>
@@ -78,36 +50,23 @@ export default {
       type: Object,
       default() {
         return {
-          AAA28: '',
-          AAC11C: '',
-          AAC01: [],
-          AEE04_CODE: '',
-          AEE08_CODE: '',
-          ICD9_ID1: '',
-          ICD9_NAME: '',
-          ICD10_ID1: '',
-          ICD10_NAME: ''
+          ZYH: '',
+          FYMC: '',
+          time: [],
+          FYKS: ''
         }
       }
     }
   },
   data() {
     return {
-      doctors: [],
       departmentList: []
     }
   },
   created() {
-    this.getDoctors()
     this.getDepartment()
   },
   methods: {
-    // 获取医生选线
-    getDoctors() {
-      this.$axios.post('/selectStaff').then(res => {
-        this.doctors = res.data
-      })
-    },
     getDepartment() {
       this.$axios.post('/bmy/getAllDepartment').then(res => {
         // 不要全部选项

+ 11 - 178
src/views/medicalRecord/components/cost/TableBox.vue

@@ -1,125 +1,19 @@
 <template>
   <div class="table-box">
-    <div class="btn-box">
-      <el-button type="primary" plain icon="el-icon-upload" @click="onExport">下载</el-button>
-      <el-popover
-        placement="bottom-end"
-        title=""
-        trigger="click"
-        popper-class="table_code_popper"
-      >
-        <el-checkbox v-model="checkAll" :indeterminate="isIndeterminate" @change="handleCheckAllChange">全选</el-checkbox>
-        <el-checkbox-group v-model="codes" @change="handleChange">
-          <el-checkbox label="field_name">缺陷字段</el-checkbox>
-          <el-checkbox label="desc">缺陷描述</el-checkbox>
-          <el-checkbox label="AAA28">住院号码</el-checkbox>
-          <el-checkbox label="AAA01">姓名</el-checkbox>
-          <el-checkbox label="AAC01">出院时间</el-checkbox>
-          <el-checkbox label="AAC11N">出院科室</el-checkbox>
-          <el-checkbox label="AEE08">编码员</el-checkbox>
-          <el-checkbox label="AEE04">住院医师</el-checkbox>
-          <el-checkbox label="ICD10_NAME">主要诊断名称</el-checkbox>
-          <el-checkbox label="ICD10_ID1">主要诊断编码</el-checkbox>
-          <el-checkbox label="type">缺陷归类</el-checkbox>
-        </el-checkbox-group>
-        <el-button slot="reference" type="primary" plain icon="el-icon-setting" style="margin-left: 10px;"></el-button>
-      </el-popover>
-    </div>
     <el-table
       :data="data"
       style="width: 100%">
-      <el-table-column
-        type="index"
-        label="序号"
-        width="50"
-        align="center">
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('field_name')"
-        prop="field_name"
-        label="缺陷字段"
-        show-overflow-tooltip
-        width="160"
-        align="center">
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('AAA28')"
-        prop=""
-        label="住院号码"
-        show-overflow-tooltip
-        width="120"
-        align="center">
-        <template slot-scope="scope">
-          <span class="link2" @click="toPage(scope.row)">{{ scope.row.AAA28 }}</span>
-        </template>
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('AAA01')"
-        prop="AAA01"
-        label="姓名"
-        width="120"
-        align="center">
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('AAC01')"
-        prop="AAC01"
-        label="出院时间"
-        width="160"
-        align="center">
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('AAC11N')"
-        prop="AAC11N"
-        label="出院科室"
-        show-overflow-tooltip
-        align="center">
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('AEE08')"
-        prop="AEE08"
-        label="编码员"
-        width="120"
-        align="center">
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('AEE04')"
-        prop="AEE04"
-        label="住院医师"
-        width="120"
-        align="center">
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('ICD10_NAME')"
-        prop="ICD10_NAME"
-        label="主要诊断名称"
-        width="160"
-        show-overflow-tooltip
-        align="center">
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('ICD10_ID1')"
-        prop="ICD10_ID1"
-        label="主要诊断编码"
-        width="160"
-        show-overflow-tooltip
-        align="center">
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('ICD9_NAME')"
-        prop="ICD9_NAME"
-        label="主要手术名称"
-        width="160"
-        show-overflow-tooltip
-        align="center">
-      </el-table-column>
-      <el-table-column
-        v-if="codes.includes('ICD9_ID1')"
-        prop="ICD9_ID1"
-        label="主要手术编码"
-        width="160"
-        show-overflow-tooltip
-        align="center">
-      </el-table-column>
+      <el-table-column type="index" label="序号" width="50" align="center"></el-table-column>
+      <el-table-column prop="FYXH" label="费用序号" width="120" align="center"></el-table-column>
+      <el-table-column prop="FYMC" label="费用名称" align="center" show-overflow-tooltip></el-table-column>
+      <el-table-column prop="ZFJE" label="自付金额" width="120" align="center"></el-table-column>
+      <el-table-column prop="JFRQ" label="计费日期" width="160" align="center"></el-table-column>
+      <el-table-column prop="FYSL" label="费用数量" width="120" align="center"></el-table-column>
+      <el-table-column prop="FYDJ" label="费用单价" width="120" align="center"></el-table-column>
+      <el-table-column prop="ZJE" label="总金额" width="160" align="center"></el-table-column>
+      <el-table-column prop="FYKS" label="费用科室" width="160" align="center" show-overflow-tooltip></el-table-column>
+      <el-table-column prop="FYGB" label="费用归并" width="120"  align="center"></el-table-column>
+      <el-table-column prop="SYFYGB" label="首页费用归并" width="120" align="center"></el-table-column>
     </el-table>
   </div>
 </template>
@@ -134,56 +28,7 @@
         }
       }
     },
-    data() {
-      const defaultCodes = [
-        'field_name',
-        'AAA28',
-        'AAA01',
-        'AAC01',
-        'AAC11N',
-        'AEE08',
-        'AEE04',
-        'ICD10_NAME',
-        'ICD10_ID1',
-        'ICD9_NAME',
-        'ICD9_ID1'
-      ]
-      return {
-        checkAll: true,
-        isIndeterminate: false,
-        defaultCodes,
-        codes: [
-          'field_name',
-          'AAA28',
-          'AAA01',
-          'AAC01',
-          'AAC11N',
-          'AEE08',
-          'AEE04',
-          'ICD10_NAME',
-          'ICD10_ID1',
-          'ICD9_NAME',
-          'ICD9_ID1'
-        ],
-      }
-    },
     methods: {
-      handleCheckAllChange(val) {
-        this.codes = val ? this.defaultCodes : []
-        this.isIndeterminate = false
-      },
-      // 展示字段发生变化
-      handleChange(val) {
-        const checkedCount = val.length
-        this.checkAll = checkedCount === this.defaultCodes.length
-        this.codes = val
-      },
-      toPage(row) {
-        this.$router.push({ name: 'MedicalRecordNew', query: { zyh: row.ZYH }})
-      },
-      onExport() {
-        this.$emit('export')
-      }
     }
   }
 </script>
@@ -191,17 +36,5 @@
 <style lang="scss" scoped>
 .table-box {
   margin-bottom: 20px;
-  .btn-box {
-    text-align: right;
-    margin-bottom: 20px;
-  }
-}
-</style>
-<style lang="scss">
-.table_code_popper {
-  .el-checkbox {
-    display: block;
-    line-height: 26px;
-  }
 }
 </style>

+ 111 - 5
src/views/medicalRecord/cost.vue

@@ -1,15 +1,121 @@
 <template>
-  <div>
-    费用详情todo
+  <div class="bg-box">
+    <div class="bg-card">
+      <SearchBoxVue :data="formInline" @search="handleSearch" @reset="handleReset" />
+      <div style="margin-top: -22px;">
+        <el-divider></el-divider>
+        <TableBoxVue :data="tableData" :paginationData="paginationData" />
+        <Pagination :page="paginationData.page" :limit="paginationData.page_size" :total="paginationData.total" @pagination="handlePagination" />
+      </div>
+    </div>
   </div>
 </template>
 
 <script>
-  export default {
-    
+import SearchBoxVue from './components/cost/SearchBox.vue'
+import TableBoxVue from './components/cost/TableBox.vue'
+import Pagination from '@/components/Pagination'
+
+export default {
+  components: {
+    SearchBoxVue,
+    TableBoxVue,
+    Pagination
+  },
+  data() {
+    return {
+      formInline: {
+        ZYH: '',
+        FYMC: '',
+        time: [],
+        FYKS: ''
+      },
+      tableData: [{
+				"FYXH": 56893,
+				"ZJE": "4.000",
+				"FYDJ": "4.000",
+				"FYMC": "尿液分析(11项加收)/次",
+				"JFRQ": "2022-12-30 07:51:30",
+				"FYKS": "2021",
+				"pre_FYMC": "尿液分析(11项加收)",
+				"FYSL": 1,
+				"SYFYGB": 0,
+				"ZFJE": "4.000",
+				"FYGB": 0,
+				"MED_REC_ID": "767016"
+			},
+			{
+				"FYXH": 40819,
+				"ZJE": "85.000",
+				"FYDJ": "85.000",
+				"FYMC": "丙型肝炎抗体测定(Anti-HCV)发光法",
+				"JFRQ": "2022-12-30 07:53:49",
+				"FYKS": "2021",
+				"pre_FYMC": "丙型肝炎抗体测定(Anti-HCV)发光法",
+				"FYSL": 1,
+				"SYFYGB": 0,
+				"ZFJE": "85.000",
+				"FYGB": 0,
+				"MED_REC_ID": "767016"
+			}
+		],
+      paginationData: {
+        page: 1,
+        page_size: 10,
+        total: 0
+      }
+    }
+  },
+  created() {
+    const { zyh } = this.$route.query
+    this.$set(this.formInline, 'ZYH', zyh)
+    // this.getList()
+  },
+  methods: {
+    getList() {
+      const {
+        time
+      } = this.formInline
+      const {
+        page,
+        page_size
+      } = this.paginationData
+      const params = {
+        page,
+        page_size,
+        ...this.formInline
+      }
+      if (time && time.length) {
+        params.JFRQ_START = time[0]
+        params.JFRQ_END = time[1]
+      }
+      this.$axios.post('/bmy/getFeeDetailed', params).then(res => {
+        this.tableData = res.data.list
+        this.paginationData.total = res.data.count
+      });
+    },
+    handleSearch() {
+      this.paginationData.page = 1
+      this.getList()
+    },
+    handleReset() {
+      this.formInline = {
+        ZYH: '',
+        FYMC: '',
+        time: [],
+        FYKS: ''
+      }
+    },
+    handlePagination(val) {
+      const { page, limit } = val
+      this.paginationData.page = page
+      this.paginationData.page_size = limit
+      this.getList()
+    }
   }
+}
 </script>
 
-<style lang="scss" scoped>
+<style>
 
 </style>