Bläddra i källkod

添加号别条件查询

hsh 2 år sedan
förälder
incheckning
cb118205e0

+ 9 - 0
src/api/medical-insurance/si-yb-util.js

@@ -44,3 +44,12 @@ export function selectAllDept(data) {
         data,
     })
 }
+
+// 查询下拉所有号别数据
+export function selectAllRegLevel(data) {
+    return request({
+        url: '/ybUtil/selectAllRegLevel',
+        method: 'post',
+        data,
+    })
+}

+ 38 - 1
src/views/operate-monitoring/ReceivePatients.vue

@@ -11,6 +11,10 @@
                 :loading="loadingDoctor" :remote-method="selectDoctorMultiple">
                 <el-option v-for="item in doctorOptions" :key="item.value" :label="item.label" :value="item.value" />
             </el-select>
+            <el-select v-model="regLevel" filterable remote placeholder="号别" remote-show-suffix clearable
+                :loading="loadingRegLevel" :remote-method="selectRegLevel">
+                <el-option v-for="item in regLevelOptions" :key="item.value" :label="item.label" :value="item.value" />
+            </el-select>
             <el-button type="primary" icon="Search" @click="query" style="margin-left: 5px">查询</el-button>
             <el-button type="primary" icon="Download" @click="exportData" style="margin-left: 5px">导出</el-button>
         </template>
@@ -41,7 +45,7 @@ import { shortcuts, clockinShortcuts } from '@/data/shortcuts'
 import { formatDate, getDateRangeFormatDate } from '@/utils/date'
 import { ElMessage } from 'element-plus'
 import { selectReportPortalMenu, exportReportPortalData } from '@/api/reports/high-report'
-import { selectAllSmallDept, selectAllDoctor } from '@/api/medical-insurance/si-yb-util'
+import { selectAllSmallDept, selectAllDoctor, selectAllRegLevel } from '@/api/medical-insurance/si-yb-util'
 import XcTable from '@/components/xiao-chan/xc-table/XcTable.vue'
 
 let nowDay = new Date()
@@ -67,6 +71,7 @@ const queryTerm = reactive({
     endTime: "",
     dept: "",
     doctor: "",
+    regLevel: "",
     reportId: "mz_jzbrtj",
     menuId: "199",
     type: "1",
@@ -74,6 +79,8 @@ const queryTerm = reactive({
 
 const dept = ref([])
 const doctor = ref([])
+const regLevel = ref([])
+const regLevelOptions = ref([])
 
 onMounted(() => {
     queryTerm.startTime = start + '00:00:00';
@@ -88,6 +95,9 @@ onMounted(() => {
     selectAllDoctor(param).then((res) => {
         doctorOptions.value = res
     })
+    selectAllRegLevel(param).then((res) => {
+        regLevelOptions.value = res
+    })
     query()
 });
 
@@ -95,6 +105,7 @@ const deptOptions = ref([])
 const doctorOptions = ref([])
 const loadingDept = ref(false)
 const loadingDoctor = ref(false)
+const loadingRegLevel = ref(false)
 const selectDeptMultiple = (ks) => {
     if (ks) {
         loadingDept.value = true
@@ -146,6 +157,30 @@ const selectDoctorMultiple = (ys) => {
     }
 }
 
+const selectRegLevel = (reg) => {
+    if (reg) {
+        loadingRegLevel.value = true
+        const paramF = {
+            str: reg,
+        }
+        selectAllRegLevel(paramF).then((res) => {
+            regLevelOptions.value = res
+        })
+        if (regLevelOptions.value) {
+            setTimeout(() => {
+                regLevel.value = regLevelOptions.value.filter((item) => {
+                    return item.label.toLowerCase().includes(reg.toLowerCase())
+                })
+            }, 500)
+            loadingRegLevel.value = false
+        } else {
+            regLevelOptions.value = []
+        }
+    } else {
+        regLevelOptions.value = []
+    }
+}
+
 const returnData = ref({
     currentPage: 1,
     pageSize: 30,
@@ -170,6 +205,7 @@ const query = async () => {
     }
     queryTerm.dept = dept.value;
     queryTerm.doctor = doctor.value;
+    queryTerm.regLevel = regLevel.value;
     await selectReportPortalMenu(queryTerm)
         .then((res) => {
             let id
@@ -202,6 +238,7 @@ const exportData = () => {
     }
     queryTerm.dept = dept.value;
     queryTerm.doctor = doctor.value;
+    queryTerm.regLevel = regLevel.value;
     // 导出excel表格标题
     queryTerm.exportName = '接诊统计';
     exportReportPortalData(queryTerm)

+ 22 - 0
src/views/target-management/target-dict/TargetReportConfig.vue

@@ -426,6 +426,8 @@ const sqlExecute = (formEl: FormInstance | undefined) => {
     // sql测试
     sqlForm.gatherSql = reportForm.gatherSql
     sqlForm.baseSql = reportForm.baseSql
+    sqlForm.startTime = sqlForm.startTime + ' 00:00:00'
+    sqlForm.endTime = sqlForm.endTime + ' 23:59:59'
     reportSqlExecute(sqlForm)
         .then((res: any) => {
             let r = JSON.parse(JSON.stringify(res))
@@ -440,11 +442,31 @@ const showReportLevel = ref(false)
 const reportLevelTitle = ref('报表分组类型配置')
 const reportLevelDetail = ref({})
 const reportLevel = () => {
+    if (reportForm.reportId == '') {
+        ElMessage({
+            type: "info",
+            message: "指标报表信息不全,请确认!",
+            duration: 2500,
+            showClose: true,
+        });
+        return
+    }
+
     const param = {
         reportId: reportForm.reportId,
         level: reportForm.level,
     }
     selectReportLevel(param).then((res: any) => {
+        if (res == null) {
+            ElMessage({
+                type: "info",
+                message: "查询指标报表信息不全,请确认!",
+                duration: 2500,
+                showClose: true,
+            });
+            return
+        }
+
         showReportLevel.value = true
         reportLevelDetail.value = res
     })

+ 1 - 2
src/views/target-management/target-home/TargetHomePage.vue

@@ -238,8 +238,7 @@ onMounted(() => {
         name: '重点医疗技术临床应用质量控制指标',
         data: [25, 27, 22, 28, 30]
     }]
-    let unit = '分'
-    let titleName = '单位:' + unit
+    let unit = '分' 
     let name = '指标得分情况统计'
     let statusInfos = {
         zflag: false, // 柱子是否显示数据