WXL
2 天以前 dafbb909e478015ee062bf962bddcb20a6fed55c
src/views/sfstatistics/percentage/index.vue
@@ -57,7 +57,7 @@
              </el-form-item> -->
              <el-form-item label="统计类型" prop="userName">
                <el-select
                  v-model="queryParams.Statisticaltype"
                  v-model="queryParams.statisticaltype"
                  placeholder="请选择统计类型"
                >
                  <el-option
@@ -69,40 +69,46 @@
                  </el-option>
                </el-select>
                <el-select
                  v-if="queryParams.Statisticaltype == 1"
                  v-model="queryParams.leavehospitaldistrictCode"
                  style="margin-left: 10px"
                  v-if="queryParams.statisticaltype == 1"
                  v-model="queryParams.leavehospitaldistrictcodes"
                  size="medium"
                  multiple
                  filterable
                  placeholder="请选择病区"
                >
                  <el-option
                    v-for="item in flatArray"
                    :key="item.deptCode"
                    v-for="item in flatArrayhospit"
                    :key="item.value"
                    :label="item.label"
                    :value="item.deptCode"
                    :value="item.value"
                  >
                  </el-option>
                </el-select>
                <el-select
                  v-else-if="queryParams.Statisticaltype == 2"
                  v-model="queryParams.deptCode"
                  v-else-if="queryParams.statisticaltype == 2"
                  v-model="queryParams.deptcodes"
                  size="medium"
                  multiple
                  filterable
                  placeholder="请选择科室"
                >
                  <el-option
                    v-for="item in flatArray"
                    :key="item.deptCode"
                    v-for="item in flatArraydept"
                    :key="item.value"
                    :label="item.label"
                    :value="item.deptCode"
                    :value="item.value"
                  >
                  </el-option>
                </el-select>
              </el-form-item>
              <!-- <el-form-item label="管理方案" prop="userName">
                <el-select v-model="queryParams.value3" placeholder="请选择">
              <el-form-item label="统计类型" prop="userName">
                <el-select
                  v-model="queryParams.serviceType"
                  multiple
                  placeholder="请选择"
                >
                  <el-option
                    v-for="item in options"
                    :key="item.value"
@@ -111,30 +117,7 @@
                  >
                  </el-option>
                </el-select>
              </el-form-item> -->
              <!-- <el-form-item label="出院日期" prop="userName">
                <el-date-picker
                  v-model="queryParams.valuetime1"
                  align="right"
                  type="date"
                  placeholder="选择日期"
                  :picker-options="pickerOptionsa"
                >
                </el-date-picker>
              </el-form-item> -->
              <el-select
                v-model="queryParams.serviceType"
                multiple
                placeholder="请选择"
              >
                <el-option
                  v-for="item in options"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                >
                </el-option>
              </el-select>
              </el-form-item>
              <el-form-item
                label-width="200"
                label="应随访时间范围"
@@ -221,254 +204,177 @@
              :border="true"
              @selection-change="handleSelectionChange"
            >
              <el-table-column type="selection" width="50" align="center" />
              <!-- <el-table-column
                fixed
                label="序号"
                align="center"
                key="tagid"
                prop="tagid"
                width="50"
              /> -->
              <el-table-column
                fixed
                label="出院病区"
                align="center"
                key="leavehospitaldistrictname"
                prop="leavehospitaldistrictname"
                width="100"
                width="150"
                :show-overflow-tooltip="true"
              />
              <el-table-column
                label="服务总量"
                label="科室"
                align="center"
                key="serviceCount"
                prop="serviceCount"
                key="deptname"
                prop="deptname"
                :show-overflow-tooltip="true"
              />
              <el-table-column
                label="出院人次"
                align="center"
                key="dischargeCount"
                prop="dischargeCount"
              >
                <template slot-scope="scope">
                  <span
                    >{{ scope.row.updateBy }}
                    <p>{{ scope.row.serviceCount }}</p></span
                  >
                </template>
              </el-table-column>
              <el-table-column
                label="不执行"
                align="center"
                width="120"
                key="bzxCount"
                prop="bzxCount"
              >
              </el-table-column>
              <el-table-column
                label="应随访量"
                align="center"
                key="ysfCount"
                prop="ysfCount"
              >
              </el-table-column
              ><el-table-column
                label="发送失败"
                align="center"
                key="fssbCount"
                prop="fssbCount"
              >
              </el-table-column
              ><el-table-column
                label="待随访"
                align="center"
                key="dfsCount"
                prop="dfsCount"
              >
              </el-table-column
              ><el-table-column
                label="已发送"
                align="center"
                key="yfsCount"
                prop="yfsCount"
              >
              </el-table-column>
              <el-table-column
                label="已完成"
                align="center"
                key="ywcCount"
                prop="ywcCount"
              >
              </el-table-column>
              <el-table-column
                label="随访完成率"
                align="center"
                width="120"
                key="sfwcl"
                prop="sfwcl"
              >
                <template slot-scope="scope">
                  <span>{{ (Number(scope.row.sfwcl) * 100).toFixed(2) }}%</span>
                </template>
              </el-table-column>
              <!-- <el-table-column
                label="公众号发送次数"
                align="center"
                key="tagdescription"
                prop="tagdescription"
              >
              </el-table-column>
              <el-table-column
                label="公众号随访完成数"
                align="center"
                key="tagdescription"
                prop="tagdescription"
              >
              </el-table-column>
              <el-table-column
                label="公众号随访完成率"
                align="center"
                key="tagdescription"
                prop="tagdescription"
              >
              </el-table-column> -->
              <!-- <el-table-column
                label="短信发送次数"
                align="center"
                width="120"
                key="dxfscs"
                prop="dxfscs"
              >
              </el-table-column>
              <el-table-column
                label="短信随访完成数"
                align="center"
                width="120"
                key="dxsfwccs"
                prop="dxsfwccs"
              >
              </el-table-column>
              <el-table-column
                label="短信随访完成率"
                align="center"
                width="120"
                key="dxsfwcl"
                prop="dxsfwcl"
              >
              </el-table-column> -->
              <!-- <el-table-column
                label="人工随访次数"
                align="center"
                key="tagdescription"
                prop="tagdescription"
              >
              </el-table-column>
              <el-table-column
                label="人工随访完成数"
                align="center"
                key="tagdescription"
                prop="tagdescription"
              >
              </el-table-column>
              <el-table-column
                label="人工随访完成率"
                align="center"
                key="tagdescription"
                prop="tagdescription"
              >
              </el-table-column> -->
              <!-- <el-table-column
                label="失访数"
                align="center"
                key="tagdescription"
                prop="tagdescription"
              >
              </el-table-column>
              <el-table-column
                label="失访率"
                align="center"
                key="tagdescription"
                prop="tagdescription"
              >
              </el-table-column>
              <el-table-column
                label="失访率"
                align="center"
                key="tagdescription"
                prop="tagdescription"
              > -->
              <!-- </el-table-column> -->
              <el-table-column
                label="异常总数"
                align="center"
                key="yczs"
                prop="yczs"
              >
                <template slot-scope="scope">
                  <el-button
                    size="medium"
                    type="danger"
                    plain
                    @click="routerErr(scope.row)"
                    ><span class="button-zx">{{
                      scope.row.yczs
                    }}</span></el-button
                  >
                </template>
              </el-table-column>
              <!-- <el-table-column
                label="总异常率"
                align="center"
                key="tagdescription"
                prop="tagdescription"
              >
              </el-table-column> -->
              <el-table-column
                label="回复异常数"
                label="无需随访人次"
                align="center"
                width="100"
                key="hfycs"
                prop="hfycs"
              >
              </el-table-column>
              <!-- <el-table-column
                label="回复异常及时处理数"
                align="center"
                key="tagdescription"
                prop="tagdescription"
                key="nonFollowUp"
                prop="nonFollowUp"
              >
              </el-table-column>
              <el-table-column
                label="回复异常及时处理率"
                label="应随访人次"
                align="center"
                key="tagdescription"
                prop="tagdescription"
                width="100"
                key="followUpNeeded"
                prop="followUpNeeded"
              >
              </el-table-column> -->
              <!-- <el-table-column
                label="操作"
                align="center"
                width="300"
                class-name="small-padding fixed-width"
              >
                <template slot-scope="scope">
                  <el-button
                    size="medium"
                    type="text"
                    @click="handleUpdate(scope.row)"
                    v-hasPermi="['system:user:edit']"
                    ><span class="button-textxg"
                      ><i class="el-icon-edit"></i>修改</span
                    ></el-button
                  >
                  <el-button
                    size="medium"
                    type="text"
                    @click="handleDelete(scope.row)"
                    v-hasPermi="['system:user:remove']"
                    ><span class="button-textsc"
                      ><i class="el-icon-delete"></i>删除</span
                    ></el-button
                  >
                </template>
              </el-table-column> -->
              </el-table-column>
              <el-table-column align="center" label="首次出院随访">
                <el-table-column
                  label="应随访"
                  align="center"
                  key="needFollowUp"
                  prop="needFollowUp"
                >
                </el-table-column>
                <el-table-column
                  label="待随访"
                  align="center"
                  key="pendingFollowUp"
                  prop="pendingFollowUp"
                >
                </el-table-column>
                <el-table-column
                  label="随访成功"
                  align="center"
                  key="followUpSuccess"
                  prop="followUpSuccess"
                >
                </el-table-column>
                <el-table-column
                  label="随访失败"
                  align="center"
                  key="followUpFail"
                  prop="followUpFail"
                >
                </el-table-column>
                <el-table-column
                  label="随访率"
                  align="center"
                  width="120"
                  key="followUpRate"
                  prop="followUpRate"
                >
                  <!-- <template slot-scope="scope">
                    <span
                      >{{
                        (Number(scope.row.followUpRate) * 100).toFixed(2)
                      }}%</span
                    >
                  </template> -->
                </el-table-column>
                <el-table-column
                  label="人工"
                  align="center"
                  key="manual"
                  prop="manual"
                >
                </el-table-column>
                <el-table-column
                  label="短信"
                  align="center"
                  key="sms"
                  prop="sms"
                >
                </el-table-column>
                <el-table-column
                  label="微信"
                  align="center"
                  key="weChat"
                  prop="weChat"
                >
                </el-table-column>
              </el-table-column>
              <el-table-column align="center" label="再次出院随访">
                <el-table-column
                  label="应随访"
                  align="center"
                  key="needFollowUpAgain"
                  prop="needFollowUpAgain"
                >
                </el-table-column>
                <el-table-column
                  label="待随访"
                  align="center"
                  key="pendingFollowUpAgain"
                  prop="pendingFollowUpAgain"
                >
                </el-table-column>
                <el-table-column
                  label="随访成功"
                  align="center"
                  key="followUpSuccessAgain"
                  prop="followUpSuccessAgain"
                >
                </el-table-column>
                <el-table-column
                  label="随访失败"
                  align="center"
                  key="followUpFailAgain"
                  prop="followUpFailAgain"
                >
                </el-table-column>
                <el-table-column
                  label="随访率"
                  align="center"
                  width="120"
                  key="followUpRateAgain"
                  prop="followUpRateAgain"
                >
                  <!-- <template slot-scope="scope">
                    <span
                      >{{
                        (Number(scope.row.FollowUpRateAgain) * 100).toFixed(2)
                      }}%</span
                    >
                  </template> -->
                </el-table-column>
                <el-table-column
                  label="人工"
                  align="center"
                  key="manualAgain"
                  prop="manualAgain"
                >
                </el-table-column>
                <el-table-column
                  label="短信"
                  align="center"
                  key="smsAgain"
                  prop="smsAgain"
                >
                </el-table-column>
                <el-table-column
                  label="微信"
                  align="center"
                  key="weChatAgain"
                  prop="weChatAgain"
                >
                </el-table-column>
              </el-table-column>
            </el-table>
            <!-- <pagination
@@ -489,15 +395,10 @@
import {
  toamendtag,
  addapitag,
  detailstag,
  deletetag,
  changetagcategory,
  toamendtagcategory,
  addtagcategory,
  deletetagcategory,
  listtag,
  tagclassifylist,
} from "@/api/system/label";
import store from "@/store";
import { getSfStatistics, deptTreeSelect } from "@/api/system/user";
import Treeselect from "@riophae/vue-treeselect";
@@ -547,8 +448,8 @@
      idds: "", //分类id
      // 总条数
      total: 0,
      flatArray: [],
      deptflatArray: [],
      flatArrayhospit: [],
      flatArraydept: [],
      Statisticallist: [
        {
@@ -662,7 +563,7 @@
        pageSize: 10,
        serviceType: [2],
        dateRange: [],
        Statisticaltype: 1,
        statisticaltype: 1,
      },
      // 列信息
      columns: [
@@ -707,13 +608,23 @@
    // 获取科室树
    getDeptTree() {
      // 科室列表
      deptTreeSelect().then((response) => {
        this.deptOptions = response.data;
        console.log(this.deptOptions, " this.deptOptions");
        this.flatArray = this.flattenArray(response.data);
        console.log(this.flatArray, "this.flatArray");
      });
       this.flatArraydept = store.getters.belongDepts.map((dept) => {
      return {
        label: dept.deptName,
        value: dept.deptCode,
      };
    });
    this.flatArrayhospit = store.getters.belongWards.map((dept) => {
      return {
        label: dept.districtName,
        value: dept.districtCode,
      };
    });
      // deptTreeSelect().then((response) => {
      //   this.deptOptions = response.data;
      //   console.log(this.deptOptions, " this.deptOptions");
      //   this.flatArray = this.flattenArray(response.data);
      // });
    },
    flattenArray(multiArray) {
      let result = [];
@@ -815,6 +726,11 @@
    handleQuery() {
      this.queryParams.pageNum = 1;
      console.log();
      if (this.queryParams.statisticaltype == 1) {
        this.queryParams.deptcodes = [];
      } else if (this.queryParams.statisticaltype == 2) {
        this.queryParams.leavehospitaldistrictcodes = [];
      }
      this.queryParams.startTime = this.parseTime(
        this.queryParams.dateRange[0]
      );