WXL (wul)
4 天以前 cb3c799e1bd6a7cf5dd5c7e3cadee238bf67b729
src/views/patient/propaganda/particty.vue
@@ -69,7 +69,7 @@
                    placeholder="请输入任务描述"
                  />
                </el-form-item>
                <el-form-item label="服务形式">
                <!-- <el-form-item label="服务形式">
                  <el-radio-group
                    v-model="checkList"
                    @change="handleCheckedCitiesChange"
@@ -78,11 +78,20 @@
                      v-for="(item, index) in checkboxlist"
                      :key="index"
                      :label="item.value"
                      @change="checkboxChange($event, item.value)"
                    >
                      {{ item.label }}</el-radio
                    >
                  </el-radio-group>
                </el-form-item> -->
                <el-form-item label="服务形式">
                  <SortCheckbox
                    v-model="checkList"
                    :options="checkboxlist"
                    :initialselectedOrder="selectedOrder"
                    value-key="value"
                    label-key="label"
                    @change="checkSelectionChange"
                  />
                </el-form-item>
                <!-- <div class="xinz-infs">
                  <el-form-item label="服务执行顺序" prop="daytime">
@@ -216,7 +225,7 @@
                </el-form-item>
                <el-form-item label="任务关联" prop="longTask">
                  <el-radio-group v-model="form.appltype">
                    <el-radio label="1">课题组关联</el-radio>
                    <el-radio label="1">科室关联</el-radio>
                    <el-radio label="2">病区关联</el-radio>
                    <el-radio label="3">疾病关联</el-radio>
                    <el-radio label="4">手术关联</el-radio>
@@ -224,7 +233,7 @@
                </el-form-item>
                <el-row v-if="form.appltype == 1">
                  <el-col :span="20"
                    ><el-form-item label="适用课题组" prop="region">
                    ><el-form-item label="适用科室" prop="region">
                      <el-select
                        v-model="deptcodesWards"
                        @remove-tag="removetag"
@@ -232,7 +241,7 @@
                        size="medium"
                        multiple
                        filterable
                        placeholder="请选择课题组"
                        placeholder="请选择科室"
                      >
                        <el-option
                          class="ruleFormaa"
@@ -471,7 +480,7 @@
                        size="medium"
                        :disabled="!patientqueryParams.allhosp"
                        @click="handleQuery"
                        >新增</el-button
                        >添加患者</el-button
                      >
                    </el-col>
@@ -887,7 +896,7 @@
import { messagelistpatient } from "@/api/patient/homepage";
import store from "@/store";
import {
  getTaskpatient,
  getTaskpatientQC,
  getillnesslist,
  getbaseopera,
  getFollowuplist,
@@ -909,6 +918,7 @@
} from "@/api/AiCentre/index";
import { deptTreeSelect } from "@/api/system/user";
import OptionalForm from "@/components/OptionalForm";
import SortCheckbox from "@/components/SortCheckbox"; //表格组件
import { MessageBox } from "element-ui";
import SFtable from "@/components/SFtable"; //表格组件
@@ -940,7 +950,7 @@
      patientloading: false, // 遮罩层
      dialogVisiblepatient: false, //添加患者弹框
      dialogVisiblepatientjb: false,
      deptcodesWards: [], //课题组数据
      deptcodesWards: [], //科室数据
      leavehospitaldistrictcodes: [], //病区数据
      operationcodes: [], //手术数据
      illnesscodes: [], //疾病数据
@@ -951,6 +961,8 @@
      skip: false,
      donorchargeList: [],
      baseoperaList: [],
      selectedOrder: [],
      usable: [
        { value: "0", label: "可用" },
        { value: "1", label: "停用" },
@@ -971,7 +983,7 @@
        { label: "年龄", width: "", prop: "age" },
        { label: "责任护士", width: "", prop: "nurseName" },
        { label: "主治医生", width: "", prop: "drname" },
        { label: "课题组", width: "240", prop: "dept" },
        { label: "科室", width: "240", prop: "dept" },
        { label: "病区", width: "240", prop: "leavehospitaldistrictname" },
      ],
      // 患者表单
@@ -985,7 +997,7 @@
        { label: "出院天数", width: "", prop: "endDay" },
        { label: "责任护士", width: "", prop: "nurseName" },
        { label: "主治医生", width: "", prop: "drname" },
        { label: "课题组", width: "180", prop: "deptName" },
        { label: "科室", width: "180", prop: "deptName" },
        { label: "病区", width: "150", prop: "leavehospitaldistrictname" },
      ],
@@ -1025,7 +1037,7 @@
        pageNum: 1, //
        pageSize: 10,
      },
      checkList: "",
      checkList: [],
      foncheckList: [],
      formatvalue: {
        format1: "",
@@ -1039,7 +1051,7 @@
      patientqueryParams: {
        pageNum: 1, //
        pageSize: 10,
        topica: 1, //0全部1课题组2病区
        topica: 1, //0全部1科室2病区
        leaveldeptcodes: [],
        leavehospitaldistrictcodes: [],
      },
@@ -1122,11 +1134,11 @@
      },
      taskoptions: [
        {
          value: "1",
          value: "4",
          label: "出院病人",
        },
        {
          value: "4",
          value: "1",
          label: "在院病人",
        },
        {
@@ -1149,7 +1161,7 @@
        },
        {
          value: 1,
          label: "课题组患者",
          label: "科室患者",
        },
        {
          value: 2,
@@ -1158,14 +1170,14 @@
      ],
      tasktypes: store.getters.tasktypes,
      // 课题组/病区
      // 科室/病区
      belongWards: [],
      deptlist: [],
      hosplist: [],
      diagglist: [],
      operlist: [],
      tempDetpRelevanceslist: [], //课题组数据
      tempDetpRelevanceslistform: [], //课题组数据
      tempDetpRelevanceslist: [], //科室数据
      tempDetpRelevanceslistform: [], //科室数据
      tempbelongWards: [], //病区数据
      tempbelongWardsform: [], //病区数据
      rules: {
@@ -1182,13 +1194,13 @@
          { required: true, message: "发送设置不能为空", trigger: "blur" },
        ],
        // deptcode: [
        //   { required: true, message: "适用课题组不能为空", trigger: "blur" },
        //   { required: true, message: "适用科室不能为空", trigger: "blur" },
        // ],
        // leavehospitaldistrictcode: [
        //   { required: true, message: "适用病区不能为空", trigger: "blur" },
        // ],
      },
      // 课题组院区查询入参
      // 科室院区查询入参
      queryParamsdept: {
        tempid: "",
        type: 2,
@@ -1198,7 +1210,7 @@
      serviceType: null,
    };
  },
  components: { SFtable, OptionalForm },
  components: { SFtable, OptionalForm, SortCheckbox },
  created() {
    this.appraiselist = store.getters.appraiselist;
@@ -1451,7 +1463,8 @@
        this.leavehospitaldistrictcodes = [];
      }
      if (this.checkList) {
        this.form.preachform = this.checkList;
        this.form.preachform = this.checkList.join(",");
        this.form.preachformList = this.selectedOrder;
      } else {
        this.$modal.msgError("请选择服务类型");
        return;
@@ -1467,10 +1480,10 @@
        this.$modal.msgError("请选择任务关联条件");
        return;
      }
      if (!this.form.patTaskRelevances[0] && !this.form.longTask) {
        this.$modal.msgError("请选择病人");
        return;
      }
      // if (!this.form.patTaskRelevances[0] && !this.form.longTask) {
      //   this.$modal.msgError("请选择病人");
      //   return;
      // }
      if (!this.form.templatename && !this.templateor) {
        this.$modal.msgError("未选择模板");
@@ -1633,7 +1646,7 @@
          { label: "出院天数", width: "", prop: "endDay" },
          { label: "责任护士", width: "", prop: "nurseName" },
          { label: "医生", width: "", prop: "drname" },
          { label: "课题组", width: "180", prop: "dept" },
          { label: "科室", width: "180", prop: "dept" },
          { label: "病区", width: "150", prop: "leavehospitaldistrictname" },
        ];
      } else if (this.patientqueryParams.allhosp == 4) {
@@ -1647,7 +1660,21 @@
          { label: "出院天数", width: "", prop: "endDay" },
          { label: "责任护士", width: "", prop: "nurseName" },
          { label: "医生", width: "", prop: "drname" },
          { label: "课题组", width: "180", prop: "dept" },
          { label: "科室", width: "180", prop: "dept" },
          { label: "病区", width: "150", prop: "leavehospitaldistrictname" },
        ];
      } else if (this.patientqueryParams.allhosp == 2) {
        this.tableLabelhz = [
          { label: "就诊日期", width: "150", prop: "admitdate" },
          { label: "患者", width: "", prop: "name" },
          { label: "身份证", width: "200", prop: "idcardno" },
          { label: "电话号码", width: "180", prop: "telcode" },
          { label: "性别", width: "", prop: "sex" },
          { label: "年龄", width: "", prop: "age" },
          { label: "出院天数", width: "", prop: "endDay" },
          { label: "责任护士", width: "", prop: "nurseName" },
          { label: "医生", width: "", prop: "drname" },
          { label: "科室", width: "180", prop: "dept" },
          { label: "病区", width: "150", prop: "leavehospitaldistrictname" },
        ];
      }
@@ -1656,12 +1683,11 @@
      } else {
        this.patientqueryParams.pids = null;
      }
      // 类型判断
      if (this.patientqueryParams.allhosp == 1) {
        this.patientqueryParams.cry = 1;
      } else if (this.patientqueryParams.allhosp == 4) {
        this.patientqueryParams.cry = 0;
        this.patientqueryParams.allhosp = "1";
        //  this.patientqueryParams.cry = 0;
        //  this.patientqueryParams.allhosp = "1";
      }
      // 来源判断
@@ -1681,7 +1707,7 @@
        this.patientqueryParams.leavehospitaldistrictcodes =
          store.getters.belongWards.map((obj) => obj.districtCode);
      }
      getTaskpatient(this.patientqueryParams).then((response) => {
      getTaskpatientQC(this.patientqueryParams).then((response) => {
        this.patientuserList = response.rows;
        this.patientuserList.forEach((item) => {
          if (item.endtime) {
@@ -1716,6 +1742,13 @@
          item.sfzh = item.idcardno;
          if (this.patientqueryParams.allhosp == 6) {
            item.patfrom = 1;
          }
          if (this.patientqueryParams.allhosp == 1) {
            item.visittime = item.endtime;
          } else if (this.patientqueryParams.allhosp == 4) {
            item.visittime = item.starttime;
          } else if (this.patientqueryParams.allhosp == 2) {
            item.visittime = item.admitdate;
          }
          this.overallCase.push(item);
          this.form.patTaskRelevances.push(item);
@@ -1764,6 +1797,10 @@
    },
    getList() {},
    handleQuery() {
      console.log(
        "this.patientqueryParams.allhosp",
        this.patientqueryParams.allhosp
      );
      if (this.patientqueryParams.topica == 0) {
        this.patientqueryParams.leavehospitaldistrictcodes =
          store.getters.leavehospitaldistrictcodes;
@@ -1787,7 +1824,13 @@
      )
        this.patientqueryParams.leaveldeptcodes = null;
      this.handleAddpatient();
      console.log(
        "this.patientqueryParams.allhosp",
        this.patientqueryParams.allhosp
      );
    },
    resetQuerymb() {
      this.topqueryParams = { svyname: "" };
      this.handleQuerymb();
@@ -1796,7 +1839,7 @@
      this.patientqueryParams = {
        pageNum: 1, //
        pageSize: 10,
        topica: 1, //0全部1课题组2病区
        topica: 1, //0全部1科室2病区
        leaveldeptcodes: [],
        leavehospitaldistrictcodes: [],
      };
@@ -1851,7 +1894,8 @@
              ? this.form.patTaskRelevances
              : [];
            this.overallCase = this.form.patTaskRelevances.concat();
            this.checkList = this.form.preachform;
            this.checkList = this.form.preachform.split(",");
            this.selectedOrder = this.form.preachformList;
            this.overallCase.forEach((item) => {
              if (item.endtime) {
@@ -1900,7 +1944,7 @@
      this.time3 = ""; //晚上时间段
      this.time4 = ""; //晚上时间段
    },
    // 获取课题组列表
    // 获取科室列表
    listDept() {
      this.leavehospitaldistrictcodes = [];
      this.deptcodesWards = [];
@@ -1970,7 +2014,7 @@
      }
    },
    // 任务课题组删除触发
    // 任务科室删除触发
    removetag(row) {
      let result = this.deptlist
        .filter((item) => item.deptCode == row)
@@ -2174,7 +2218,7 @@
        });
      }
    },
    // 保存课题组/病区
    // 保存科室/病区
    putbelongDepts(id) {
      this.tempDetpRelevanceslistform.forEach((item) => {
        item.tempid = id;
@@ -2184,7 +2228,7 @@
      });
      depthospgetson(this.tempDetpRelevanceslistform).then((res) => {
        if (res.code == 200) {
          this.$modal.msgSuccess("课题组更新成功");
          this.$modal.msgSuccess("科室更新成功");
          this.tempDetpRelevanceslistform = [];
        }
      });
@@ -2195,7 +2239,11 @@
        }
      });
    },
    checkboxChange(checked, value) {},
    checkSelectionChange(selectedValues, selectedOrder) {
      this.selectedOrder = selectedValues;
      console.log("当前选中:", selectedValues);
      console.log("选中顺序:", selectedOrder);
    },
    // 服务形式选取
    handleCheckedCitiesChange(row) {
      console.log(row, "服务");
@@ -2212,7 +2260,7 @@
        (obj) => obj.value !== tag.value
      );
    },
    // 课题组处理
    // 科室处理
    Departmenttreatment() {
      if (!this.form.taskid) {
        this.templateor = true;