Просмотр исходного кода

总后台增加不适合用药统计

cgp 2 дней назад
Родитель
Сommit
50cfd423b3

+ 13 - 0
src/api/his/scrmPrescribe.js

@@ -70,3 +70,16 @@ export function exportDoctorNotPrescribe(query) {
     params: query,
   });
 }
+
+/**
+ * 获取医生不适合开方列表
+ * @param {Object} query
+ * @returns {Promise}
+ */
+export function notRecommendUseList(query) {
+  return request({
+    url: '/his/prescribeDataScrm/notRecommendUseList',
+    method: 'post',
+    data: query
+  });
+}

+ 184 - 0
src/views/his/statistics/notRecommendUseStats/notRecommendUseList.vue

@@ -0,0 +1,184 @@
+<template>
+  <div class="app-container">
+    <!-- 搜索表单 -->
+    <el-form
+      :model="queryParams"
+      ref="queryForm"
+      :inline="true"
+      v-show="showSearch"
+      label-width="80px"
+    >
+      <el-form-item label="销售名称" prop="companyUserName">
+        <el-input
+          v-model="queryParams.companyUserName"
+          placeholder="请输入销售名称"
+          clearable
+          size="small"
+          style="width: 150px"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+
+      <el-form-item label="医生" prop="doctorId">
+        <el-select
+          v-model="queryParams.doctorId"
+          placeholder="请选择医生"
+          clearable
+          size="small"
+          style="width: 180px"
+        >
+          <el-option
+            v-for="item in doctorList"
+            :key="item.doctorId"
+            :label="item.doctorName"
+            :value="item.doctorId"
+          />
+        </el-select>
+      </el-form-item>
+
+      <el-form-item label="所属组别" prop="deptId">
+        <treeselect
+          style="width: 200px"
+          v-model="queryParams.deptId"
+          :options="deptOptions"
+          :show-count="true"
+          placeholder="请选择所属组别"
+          clearable
+        />
+      </el-form-item>
+
+      <el-form-item label="开始时间" prop="beginTime">
+        <el-date-picker
+          v-model="queryParams.beginTime"
+          type="datetime"
+          placeholder="选择开始时间"
+          size="small"
+          style="width: 180px"
+          value-format="yyyy-MM-dd HH:mm:ss"
+        />
+      </el-form-item>
+
+      <el-form-item label="结束时间" prop="endTime">
+        <el-date-picker
+          v-model="queryParams.endTime"
+          type="datetime"
+          placeholder="选择结束时间"
+          size="small"
+          style="width: 180px"
+          value-format="yyyy-MM-dd HH:mm:ss"
+        />
+      </el-form-item>
+
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <!-- 数据表格 -->
+    <el-table v-loading="loading" :data="prescribeList" stripe border>
+      <el-table-column label="处方编号" align="center" prop="prescribeCode" width="180" show-overflow-tooltip />
+      <el-table-column label="医生姓名" align="center" prop="doctorName" width="100" />
+      <el-table-column label="销售姓名" align="center" prop="companyUserName" width="100" />
+      <el-table-column label="患者姓名" align="center" prop="patientName" width="100" />
+      <el-table-column label="患者年龄" align="center" prop="patientAge" width="80" />
+      <el-table-column label="患者电话" align="center" prop="patientTel" width="100" />
+      <el-table-column label="归属组别" align="center" prop="deptName" width="100"/>
+      <el-table-column label="创建时间" align="center" prop="createTime" width="160" />
+    </el-table>
+
+    <!-- 分页 -->
+    <pagination
+      v-show="total > 0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+  </div>
+</template>
+
+<script>
+import { notRecommendUseList } from "@/api/his/scrmPrescribe";
+import { getDoctorList } from "@/api/his/doctor";
+import { treeselect } from "@/api/company/companyDept";
+import Treeselect from "@riophae/vue-treeselect";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+
+export default {
+  name: "NotRecommendUseList",
+  components: { Treeselect },
+  data() {
+    return {
+      loading: true,
+      showSearch: true,
+      prescribeList: [],
+      total: 0,
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        companyUserName: null,
+        doctorId: null,
+        deptId: null,
+        beginTime: null,
+        endTime: null
+      },
+      doctorList: [],
+      deptOptions: []
+    };
+  },
+  created() {
+    this.getDoctorList();
+    this.getTreeselect();
+    this.getList();
+  },
+  methods: {
+    /** 获取医生列表 */
+    getDoctorList() {
+      getDoctorList()
+        .then(response => {
+          this.doctorList = response.data || [];
+        })
+        .catch(() => {
+          this.$message.error('获取医生列表失败');
+        });
+    },
+    /** 获取部门树 */
+    getTreeselect() {
+      treeselect()
+        .then(response => {
+          this.deptOptions = response.data || [];
+        })
+        .catch(() => {
+          this.$message.error('获取部门树失败');
+        });
+    },
+    /** 查询列表 */
+    getList() {
+      this.loading = true;
+      notRecommendUseList(this.queryParams)
+        .then(response => {
+          this.prescribeList = response.rows || [];
+          this.total = response.total || 0;
+          this.loading = false;
+        })
+        .catch(() => {
+          this.loading = false;
+        });
+    },
+    /** 搜索按钮 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮 */
+    resetQuery() {
+      this.$refs.queryForm.resetFields();
+      this.queryParams.beginTime = null;
+      this.queryParams.endTime = null;
+      this.queryParams.deptId = null;
+      this.handleQuery();
+    }
+  }
+};
+</script>