WXL
2024-10-12 cdba63e2223fa4b145644879906259b783b174ab
src/views/repositoryai/templateku/configurat/index.vue
@@ -267,9 +267,9 @@
                >
                  <el-option
                    class="ruleFormaa"
                    v-for="item in belongDepts"
                    v-for="item in flatArray"
                    :key="item.deptCode"
                    :label="item.deptName"
                    :label="item.label"
                    :value="item.deptCode"
                  >
                  </el-option>
@@ -290,10 +290,10 @@
                >
                  <el-option
                    class="ruleFormaa"
                    v-for="item in belongWards"
                    :key="item.districtCode"
                    :label="item.districtName"
                    :value="item.districtCode"
                    v-for="item in flatArray"
                    :key="item.deptCode"
                    :label="item.label"
                    :value="item.deptCode"
                  >
                  </el-option>
                </el-select> </el-form-item
@@ -869,6 +869,8 @@
    <!-- 添加题目弹窗 -->
    <el-drawer
      title="添加题目"
      @close="$forceUpdate()"
      @closed="$forceUpdate()"
      :visible.sync="drawer"
      custom-class="demo-drawer"
      size="50%"
@@ -1361,7 +1363,8 @@
  getFollowuplist,
  deltargetillness,
  getillnesslist,
  depthospgetsonlist ,
  depthospgetson,
  depthospgetsonlist,
  illnesslistget,
  getillness,
  getgenerallist,
@@ -1463,7 +1466,9 @@
        { variatename: "电话", variate: "${phone}", default: 1 },
        { variatename: "病情", variate: "${illness}", default: 1 },
      ],
      deptList: [],
      deptlist: [],
      hosplist: [],
      flatArray:[],
      props: { multiple: true, value: "deptId", label: "deptName" },
      variablelist: [
@@ -1479,6 +1484,7 @@
      // 题目表格数据
      userList: [],
      belongWards: [],
      belongDepts: [],
      belongDepts: [],
      // 查询参数
      queryParams: {
@@ -1503,7 +1509,7 @@
      this.gettabList();
      this.getvFollowup();
      this.auxiliary();
    }else{
    } else {
      this.tempDetpRelevanceslistform = [];
      this.tempbelongWardsform = [];
    }
@@ -1555,11 +1561,32 @@
      this.id = this.$route.query.id;
      this.task = this.$route.query.task;
    },
    // 获取科室树
    getDeptTree() {
      // 科室列表
      deptTreeSelect().then((response) => {
        this.deptOptions = response.data;
        this.flatArray = this.flattenArray(response.data);
      });
    },
    flattenArray(multiArray) {
      let result = [];
      // 递归函数,用于将多级数组转换为一维数组
      function flatten(element, parentId) {
        // 克隆元素以避免修改原始数据
        let item = JSON.parse(JSON.stringify(element));
        if (parentId !== undefined) {
          item.parentId = parentId; // 使用字符串或数字作为键
        }
        result.push(item); // 将元素添加到结果数组
        if (element.children && element.children.length > 0) {
          element.children.forEach((child) => flatten(child, element.id)); // 递归处理子元素
        }
      }
      multiArray.forEach((element) => flatten(element, null)); // 从顶层元素开始递归
      return result; // 返回一维数组
    },
    // 获取表单数据
    getvFollowup() {
@@ -1605,9 +1632,7 @@
        this.tempDetpRelevanceslist = [];
      }
      listDept(this.queryParams).then((response) => {
        this.deptList = this.handleTree(response.data, "deptId");
      });
    },
    // 附属数据表
    auxiliary() {
@@ -1617,24 +1642,28 @@
      });
      this.tempDetpRelevanceslist = [];
      this.tempbelongWards = [];
      depthospgetsonlist(this.queryParamsdept).then((res) => {
        if (res.code == 200) {
          let arr = res.rows;
          console.log(arr,'arr');
          arr.forEach((item) => {
            if (item.deptType == 1) {
              console.log(this.deptlist,'11');
              this.deptlist.push(item);
              console.log('22');
              this.tempDetpRelevanceslist.push(item.deptCode);
            } else if (item.deptType == 2) {
              this.hosplist.push(item);
              this.tempbelongWards.push(item.deptCode);
              console.log('33');
            }
          });
        }
      });
      // 科室
      listDept(this.queryParams).then((response) => {
        this.deptList = this.handleTree(response.data, "deptId");
      });
      // 疾病
      getillnesslist({
        pageNum: 1,
@@ -1668,9 +1697,12 @@
        this.ruleForm.assortid = -1;
      }
      this.ruleForm.labelInfo = JSON.stringify(this.dynamicTags);
      if (Array.isArray(this.ruleForm.suitway)) this.ruleForm.suitway = this.ruleForm.suitway.join(",");
      if (Array.isArray(this.ruleForm.campus))this.ruleForm.campus = this.ruleForm.campus.join(",");
      if (Array.isArray(this.ruleForm.submoduleID))this.ruleForm.submoduleID = this.ruleForm.submoduleID.join(",");
      if (Array.isArray(this.ruleForm.suitway))
        this.ruleForm.suitway = this.ruleForm.suitway.join(",");
      if (Array.isArray(this.ruleForm.campus))
        this.ruleForm.campus = this.ruleForm.campus.join(",");
      if (Array.isArray(this.ruleForm.submoduleID))
        this.ruleForm.submoduleID = this.ruleForm.submoduleID.join(",");
      //   提交
      this.ruleForm.ivrLibaTemplateScriptVOList.forEach((res) => {
@@ -1723,9 +1755,7 @@
    Departmenttreatment() {
      this.$modal.loading("正在修正保存数据,请稍候...");
      this.tempDetpRelevanceslist.forEach((item) => {
        console.log(item);
        let result = this.deptlist.some((obj) => obj.deptCode == item);
        console.log(this.result, "result");
        if (!result) {
          this.tempDetpRelevanceslistform.push({
@@ -1754,8 +1784,8 @@
      }, 1000);
      // this.submitForm();
    },
     // 保存科室/病区
     putbelongDepts(id) {
    // 保存科室/病区
    putbelongDepts(id) {
      if (this.tempDetpRelevanceslistform.length > 0) {
        depthospgetson(this.tempDetpRelevanceslistform).then((res) => {
          if (res.code == 200) {
@@ -1845,13 +1875,10 @@
        tagcategoryid: "0",
      };
      listtag(tagqueryParams).then((response) => {
        console.log(response);
        this.optionstag = response.rows;
      });
    },
    handleClosetag(tag) {
      console.log(tag);
      console.log(this.dynamicTags.indexOf(tag));
      const lindex = this.dynamicTags.indexOf(tag);
      this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
      this.ruleForm.ivrLibaTemplateTagList[lindex].isoperation = 3;
@@ -1875,10 +1902,12 @@
              isoperation: 1,
            };
          }
          const exists = this.dynamicTags.some(department => department.tagname === tagname);
          const exists = this.dynamicTags.some(
            (department) => department.tagname === tagname
          );
          if (exists) {
            this.$modal.msgError("标签重复");
            return
            return;
          }
          this.ruleForm.ivrLibaTemplateTagList.push(tagvalue);
          this.dynamicTags.push(tagvalue);
@@ -1936,7 +1965,6 @@
        });
        this.ruleForm.ivrLibaTemplateScriptVOList.push(res.data);
        this.sortFn();
        this.$forceUpdate();
        this.$modal.msgSuccess("添加成功");
      });
    },
@@ -2016,6 +2044,8 @@
          });
        }
      });
      this.$forceUpdate();
      console.log(this.ruleForm.ivrLibaTemplateScriptVOList);
    },
    // -----------------------话术选项
@@ -2047,8 +2077,8 @@
    resetForm(formName) {
      this.$refs[formName].resetFields();
    },
  // 科室删除触发
  removetag(row) {
    // 科室删除触发
    removetag(row) {
      let result = this.deptlist
        .filter((item) => item.deptCode == row)
        .map((item) => item.id);
@@ -2065,12 +2095,12 @@
      let result = this.hosplist
        .filter((item) => item.deptCode == row)
        .map((item) => item.id);
        if (result.length) {
          depthospgetsondel(result).then((res) => {
            if (res.code) {
            }
          });
        }
      if (result.length) {
        depthospgetsondel(result).then((res) => {
          if (res.code) {
          }
        });
      }
    },
    // 预览---------------
    preview() {
@@ -2084,7 +2114,7 @@
        .confirm("即将前往模板测试页面,请确认模板数据已保存。")
        .then((res) => {
          this.$router.push({
            path: "/knowledge/tpuconfigurat/measurement",
            path: "/knowledge/templateku/configurat/measurement",
            query: { id: this.id, name: this.ruleForm.templateName },
          });
        })