WXL
2024-09-24 83898e6b7ff3996fcef889042442a25753b07dea
src/views/followvisit/discharge/index.vue
@@ -38,13 +38,39 @@
            </el-option>
          </el-select>
        </el-form-item> -->
        <el-form-item label="模板名称" prop="status">
          <el-input v-model="topqueryParams.templatename"></el-input>
        <el-form-item label="患者姓名" prop="sendname">
          <el-input v-model="topqueryParams.sendname" placeholder="请输入患者姓名"></el-input>
        </el-form-item>
        <el-form-item label="患者来源" prop="status">
          <el-select
                v-model="topqueryParams.searchscope"
                placeholder="请选择患者来源"
              >
                <el-option
                  v-for="item in source"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                >
                </el-option>
              </el-select>
        </el-form-item>
        <el-form-item label="随访状态" prop="status">
          <el-select v-model="topqueryParams.sendstate" placeholder="请选择">
            <el-option
              v-for="item in topicoptions"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="结果状态" prop="status">
          <el-select v-model="topqueryParams.excep" placeholder="请选择">
            <el-option
              v-for="item in topicoptionsyj"
              :key="item.value"
              :label="item.label"
              :value="item.value"
@@ -74,7 +100,6 @@
            icon="el-icon-plus"
            size="medium"
            @click="handleAdd"
            v-hasPermi="['system:user:add']"
            >新增</el-button
          >
        </el-col>
@@ -178,24 +203,139 @@
          align="center"
          key="taskName"
          prop="taskName"
          width="120"
          width="180"
        />
        <!-- <el-table-column label="序号" fixed align="center" key="id" prop="id" /> -->
        <el-table-column
          label="姓名"
          align="center"
          key="sendname"
          prop="sendname"
        />
        <el-table-column
          label="身份证号码"
          width="200"
          align="center"
          key="sfzh"
          prop="sfzh"
        />
        <el-table-column
          label="随访状态"
          align="center"
          key="sendstate"
          prop="sendstate"
          width="120"
        >
          <template slot-scope="scope">
            <div v-if="scope.row.sendstate == 1">
              <el-tag type="primary"
              :disable-transitions="false">被领取</el-tag></div>
            <div v-if="scope.row.sendstate == 2">
              <el-tag type="primary"
              :disable-transitions="false">待发送</el-tag>
              </div>
            <div v-if="scope.row.sendstate == 3"> <el-tag type="success"
              :disable-transitions="false">已发送</el-tag></div>
            <div v-if="scope.row.sendstate == 4"> <el-tag type="info"
              :disable-transitions="false">不执行</el-tag></div>
            <div v-if="scope.row.sendstate == 5"> <el-tag type="danger"
              :disable-transitions="false">发送失败</el-tag></div>
              <div v-if="scope.row.sendstate == 6"> <el-tag type="danger"
                :disable-transitions="false">已完成</el-tag></div>
          </template>
        </el-table-column>
        <el-table-column
          label="结果状态"
          align="center"
          key="excep"
          prop="excep"
          width="120"
        >
          <template slot-scope="scope">
            <div v-if="scope.row.sendstate == 6">
              <dict-tag
                :options="dict.type.sys_yujing"
                :value="scope.row.excep"
              />
            </div>
            <div v-else>
              <span></span>
            </div>
          </template>
        </el-table-column>
        <el-table-column
          label="处理意见"
          align="center"
          key="suggest"
          prop="suggest"
          width="120"
        >
          <template slot-scope="scope">
            <dict-tag
              :options="dict.type.sys_suggest"
              :value="scope.row.suggest"
            />
          </template>
        </el-table-column>
        <el-table-column
          label="出院日期"
          width="200"
          align="center"
          key="endtime"
          prop="endtime"
        >
          <template slot-scope="scope">
            <span>{{ formatTime(scope.row.endtime) }}</span>
          </template></el-table-column
        >
        <el-table-column
          label="应随访日期"
          width="200"
          align="center"
          key="longSendTime"
          prop="longSendTime"
        >
          <template slot-scope="scope">
            <span>{{ formatTime(scope.row.longSendTime) }}</span>
          </template></el-table-column
        >
        <el-table-column
          label="出院天数"
          width="120"
          align="center"
          key="endDay"
          prop="endDay"
        >
          <template slot-scope="scope">
            <span>{{
              scope.row.endDay ? scope.row.endDay + "天" : "日期缺失"
            }}</span>
          </template>
        </el-table-column>
        <el-table-column
          label="责任护士"
          width="120"
          align="center"
          key="nurseName"
          prop="nurseName"
        />
        <el-table-column
          label="主治医生"
          width="120"
          align="center"
          key="drname"
          prop="drname"
        />
        <el-table-column
          label="随访异常记录"
          width="120"
          align="center"
          key="remark"
          prop="remark"
        />
        <!-- <el-table-column
          label="病历号"
          align="center"
@@ -208,14 +348,14 @@
        <!-- <el-table-column label="年龄" align="center" key="age" prop="age" /> -->
        <!-- <el-table-column label="性别" align="center" key="sex" prop="sex" /> -->
        <!-- <el-table-column label="床号" align="center" key="badNo" prop="badNo" /> -->
        <!-- <el-table-column
        <el-table-column
          label="科室"
          align="center"
          key="deptname"
          prop="deptname"
          width="120"
        >
        </el-table-column> -->
        </el-table-column>
        <el-table-column
          label="病区"
          align="center"
@@ -250,6 +390,13 @@
          prop="createBy"
          width="120"
        />
        <!-- <el-table-column
          label="责任医师"
          align="center"
          key="drname"
          prop="drname"
          width="120"
        /> -->
        <!-- <el-table-column
          label="出院时间"
@@ -284,7 +431,7 @@
          width="160"
        >
          <template slot-scope="scope">
            <span>{{ formatTime(scope.row.finishtime) }}</span>
            <span>{{ parseTime(scope.row.finishtime) }}</span>
          </template>
        </el-table-column>
        <!-- <el-table-column
@@ -352,11 +499,7 @@
                ><span class="button-zx"><i class="el-icon-s-order"></i></span
              ></el-button>
            </el-tooltip> -->
            <el-button
              size="medium"
              type="text"
              @click="Seedetails(scope.row)"
              v-hasPermi="['system:user:edit']"
            <el-button size="medium" type="text" @click="Seedetails(scope.row)"
              ><span class="button-zx"
                ><i class="el-icon-s-order"></i>查看详情</span
              ></el-button
@@ -521,8 +664,8 @@
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export default {
  name: "User",
  dicts: ["sys_normal_disable", "sys_user_sex"],
  name: "Discharge",
  dicts: ["sys_normal_disable", "sys_user_sex", "sys_yujing", "sys_suggest"],
  components: { Treeselect },
  data() {
    return {
@@ -572,6 +715,20 @@
      },
      value: [],
      list: [],
      source: [
        {
          value: 0,
          label: "所属患者",
        },
        {
          value: 1,
          label: "科室患者",
        },
        {
          value: 2,
          label: "病区患者",
        },
      ],
      loading: false,
      states: [
        "Alabama",
@@ -667,7 +824,7 @@
      topqueryParams: {
        pageNum: 1,
        pageSize: 10,
        serviceType:2,
        serviceType: 2,
      },
      propss: { multiple: true },
      options: [],
@@ -684,6 +841,28 @@
        {
          value: 3,
          label: "已发送",
        },
        {
          value: 4,
          label: "不执行",
        },
        {
          value: 5,
          label: "发送失败",
        },
        {
          value: 6,
          label: "已完成",
        },
      ],
      topicoptionsyj: [
        {
          value: 1,
          label: "异常",
        },
        {
          value: 0,
          label: "正常",
        },
      ],
      serviceState: [],
@@ -708,9 +887,30 @@
  methods: {
    /** 查询门诊随访服务列表 */
    getList() {
      if (this.topqueryParams.searchscope == 1) {
        this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
          (obj) => obj.deptCode
        );
        this.topqueryParams.leavehospitaldistrictcodes=null;
      } else if (this.topqueryParams.searchscope == 2) {
        this.topqueryParams.leavehospitaldistrictcodes =
          store.getters.belongWards.map((obj) => obj.districtCode);
          this.topqueryParams.leaveldeptcodes=null;
      } else {
        this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
          (obj) => obj.deptCode
        );
        this.topqueryParams.leavehospitaldistrictcodes =
          store.getters.belongWards.map((obj) => obj.districtCode);
      }
      this.loading = true;
      getTaskservelist(this.topqueryParams).then((response) => {
        this.userList = response.rows;
        this.userList.forEach((item) => {
          if (item.endtime) {
            item.endDay = this.daysBetween(item.endtime);
          }
        });
        this.total = response.total;
        this.loading = false;
      });
@@ -773,15 +973,29 @@
    },
    /** 搜索按钮操作 */
    handleQuery() {
      if (this.topqueryParams.searchscope == 1) {
        this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
          (obj) => obj.deptCode
        );
        this.topqueryParams.leavehospitaldistrictcodes=null;
      } else if (this.topqueryParams.searchscope == 2) {
        this.topqueryParams.leavehospitaldistrictcodes =
          store.getters.belongWards.map((obj) => obj.districtCode);
          this.topqueryParams.leaveldeptcodes=null;
      } else {
        this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
          (obj) => obj.deptCode
        );
        this.topqueryParams.leavehospitaldistrictcodes =
          store.getters.belongWards.map((obj) => obj.districtCode);
      }
      this.topqueryParams.pageNum = 1;
      this.getList();
    },
    /** 重置按钮操作 */
    resetQuery() {
      this.dateRange = [];
      this.resetForm("queryForm");
      this.topqueryParams.deptId = undefined;
      this.$refs.tree.setCurrentKey(null);
      this.topqueryParams = {};
      this.handleQuery();
    },
    // 多选框选中数据
@@ -919,7 +1133,7 @@
    Seedetails(row) {
      this.$router.push({
        path: "/followvisit/record/detailpage/",
        query: { taskid: row.taskid, patid: row.patid },
        query: { taskid: row.taskid, patid: row.patid,id: row.id},
      });
    },
    // 导入按钮