WXL (wul)
昨天 b60394f8417f6565ea673f47375ee33dd17688c0
src/views/patient/patient/outpatient.vue
@@ -319,7 +319,23 @@
            prop="drname"
            width="120"
          />
          <el-table-column
            label="是否存在任务"
            align="center"
            key="serverState"
            prop="serverState"
            width="100"
          >
            <template slot-scope="scope">
              <span
                :style="{
                  color: scope.row.serverState == 1 ? 'green' : 'gray',
                }"
              >
                {{ scope.row.serverState == 1 ? "是" : "无" }}
              </span>
            </template>
          </el-table-column>
          <el-table-column
            label="操作"
            fixed="right"
@@ -440,6 +456,12 @@
                  <span>{{ formatTime(scope.row.createTime) }}</span>
                </template>
              </el-table-column>
              <template #empty>
                <div class="empty-message">
                  <i class="el-icon-warning"></i>
                  <span>患者科室无匹配服务</span>
                </div>
              </template>
            </el-table>
          </div>
        </el-col>
@@ -568,6 +590,7 @@
import { query360PatInfo, getTasklist, addSubtask } from "@/api/AiCentre/index";
import store from "@/store";
import { type } from "jquery";
export default {
  name: "Userhuanze",
@@ -669,8 +692,8 @@
          YongHuXX: {
            XiTongID: "SUIFANGXT",
            XiTongMC: "随访系统",
            YongHuID: "1400466972205912064",
            YongHuXM: "JNRMYY",
            YongHuID: localStorage.getItem("YongHuID"),
            YongHuXM: localStorage.getItem("YongHuXM"),
            ZuZhiJGID: localStorage.getItem("orgid"),
            ZuZhiJGMC: localStorage.getItem("orgname"),
            idp: "lyra",
@@ -718,8 +741,7 @@
        pageSize: 10,
        searchscope: 3,
        scopetype: [],
        leaveldeptcodes: [],
        leavehospitaldistrictcodes: [],
        deptcodes: [],
      },
      // 表单校验
      rules: {
@@ -796,11 +818,11 @@
    getList() {
      this.loading = true;
      if (this.queryParams.searchscope == 3) {
        this.queryParams.leaveldeptcodes = store.getters.belongDepts.map(
        this.queryParams.deptcodes = store.getters.belongDepts.map(
          (obj) => obj.deptCode
        );
        this.queryParams.leavehospitaldistrictcodes =
          store.getters.belongWards.map((obj) => obj.districtCode);
        // this.queryParams.leavehospitaldistrictcodes =
        //   store.getters.belongWards.map((obj) => obj.districtCode);
      }
      if (this.dateRange) {
        this.queryParams.beginTime = this.dateRange[0];
@@ -833,16 +855,16 @@
    handleChange(value) {
      let type = value[0];
      let code = value.slice(-1)[0];
      this.queryParams.leavehospitaldistrictcodes = [];
      this.queryParams.leaveldeptcodes = [];
      // this.queryParams.leavehospitaldistrictcodes = [];
      this.queryParams.deptcodes = [];
      if (type == 1) {
        this.queryParams.leaveldeptcodes.push(code);
        this.queryParams.leavehospitaldistrictcodes = [];
        this.queryParams.deptcodes.push(code);
        // this.queryParams.leavehospitaldistrictcodes = [];
        this.queryParams.searchscope = 1;
      } else if (type == 2) {
        this.queryParams.leavehospitaldistrictcodes.push(code);
        this.queryParams.leaveldeptcodes = [];
        // this.queryParams.leavehospitaldistrictcodes.push(code);
        this.queryParams.deptcodes = [];
        this.queryParams.searchscope = 2;
      } else {
        this.queryParams.searchscope = 3;
@@ -859,11 +881,9 @@
    },
    //患者360跳转
    gettoken360(sfzh, drcode, drname) {
      // this.$modal.msgWarning('360功能暂未开通');
      this.postData.YeWuXX.BingRenXX.ZhengJianHM = sfzh;
      if (this.postData.XiaoXiTou.ZuHuMC == "丽水市中医院") {
        this.postData.YeWuXX.YongHuXX.YongHuID = "1400398571877961728";
        this.postData.YeWuXX.YongHuXX.YongHuXM = "LSZYY";
      }
      query360PatInfo(this.postData).then((res) => {
        if (res.data.url) {
@@ -918,8 +938,8 @@
        pageSize: 10,
        searchscope: 3,
        scopetype: [],
        leaveldeptcodes: [],
        leavehospitaldistrictcodes: [],
        deptcodes: [],
        // leavehospitaldistrictcodes: [],
      };
      this.handleQuery();
    },
@@ -1045,7 +1065,18 @@
        this.$modal.msgWarning("请至少选中1名患者");
        return;
      }
      // 检查选中的患者中是否有已有任务的
      const hasTaskPatients = this.userList.filter(
        (item) => this.ids.includes(item.patid) && item.serverState == 1
      );
      if (hasTaskPatients.length > 0) {
        const patientNames = hasTaskPatients.map((p) => p.patname).join("、");
        this.$modal.msgError(
          `选中的患者 ${patientNames} 已有任务,无法重复添加`
        );
        return;
      }
      // 获取选中患者的科室信息(用于校验同一科室)
      const patientDepts = new Set();
      let deptcode = "";
@@ -1058,10 +1089,10 @@
      });
      // 校验是否同一科室
      if (patientDepts.size > 1) {
        this.$modal.msgError("选中的患者不属于同一科室,无法批量添加任务");
        return;
      }
      // if (patientDepts.size > 1) {
      //   this.$modal.msgError("选中的患者不属于同一科室,无法批量添加任务");
      //   return;
      // }
      // 获取选中患者列表
      this.selectedPatients = this.userList.filter((item) =>
@@ -1083,8 +1114,8 @@
        pageSize: 10,
        serviceType: 3,
        type: 2,
        deptcode: deptcode,
      };
      //         deptcode: deptcode,取消科室限制
      getTasklist(topqueryParams).then((response) => {
        this.taskList = response.rows;
        this.batchLoading = false;
@@ -1112,10 +1143,17 @@
        // 遍历选中的患者,逐个调用接口
        for (const patient of this.selectedPatients) {
          const params = {
            taskId: this.selectedTask.taskId,
            taskid: this.selectedTask.taskid,
            type: this.selectedTask.type,
            taskName: this.selectedTask.taskName,
            serviceType: this.selectedTask.serviceType,
            preachform: this.selectedTask.preachform,
            templateid: this.selectedTask.templateid,
            libtemplateid: this.selectedTask.libtemplateid,
            sendstate: 2,
            ...patient,
            sendname: patient.patname,
            leavediagname: patient.diagname,
            age: "",
          };
@@ -1193,7 +1231,7 @@
  }
}
.button-textsc {
  color: #28cfe6;
  color: #3664d9;
}
.batch-patient-section,
.batch-task-section {