WXL
2025-02-20 3b8d057110d60ea72f229f571e09f9d51387bc3f
src/views/repositoryai/templateku/configurat/index.vue
@@ -101,7 +101,7 @@
            <el-col :span="12">
              <el-form-item label="可用状态" prop="region">
                <el-select
                  v-model="ruleForm.usestate"
                  v-model="ruleForm.isenable"
                  size="medium"
                  placeholder="请选择"
                >
@@ -234,6 +234,25 @@
              >疾病详情</el-button
            >
          </div>
          <el-form-item label="适用通用库" prop="region">
            <el-select
              style="width: 500px"
              v-model="ruleForm.submoduleID"
              size="medium"
              multiple
              filterable
              placeholder="请选择通用库"
            >
              <el-option
                class="ruleFormaa"
                v-for="item in generallist"
                :key="item.id"
                :label="item.extName"
                :value="item.id"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="适用院区" prop="region">
            <el-select
              style="width: 500px"
@@ -269,7 +288,7 @@
                    class="ruleFormaa"
                    v-for="item in flatArray"
                    :key="item.deptCode"
                    :label="item.deptName"
                    :label="item.label"
                    :value="item.deptCode"
                  >
                  </el-option>
@@ -291,12 +310,32 @@
                  <el-option
                    class="ruleFormaa"
                    v-for="item in flatArray"
                    :key="item.districtCode"
                    :label="item.districtName"
                    :value="item.districtCode"
                    :key="item.deptCode"
                    :label="item.label"
                    :value="item.deptCode"
                  >
                  </el-option>
                </el-select> </el-form-item
            ></el-col>
          </el-row>
          <el-row>
            <el-col :span="12"
              ><el-form-item label="开场白" prop="revisitBefore">
                <el-input
                  type="textarea"
                  :rows="3"
                  v-model="ruleForm.revisitBefore"
                  placeholder="请输入开场白"
                /> </el-form-item
            ></el-col>
            <el-col :span="12"
              ><el-form-item label="结束语" prop="revisitAfter">
                <el-input
                  type="textarea"
                  :rows="3"
                  v-model="ruleForm.revisitAfter"
                  placeholder="请输入结束语"
                /> </el-form-item
            ></el-col>
          </el-row>
@@ -453,28 +492,20 @@
              >
                <div class="headline">题目设置详情</div>
                <el-row>
                  <el-col :span="12"
                  <el-col :span="24"
                    ><el-form-item label="题目标题">
                      <el-input
                        v-model="topicobj.scriptTopic"
                        placeholder="请从左侧列表选择"
                      ></el-input> </el-form-item
                  ></el-col>
                  <el-col :span="12">
                    <el-form-item label="下题跳转">
                      <el-input
                        v-model="topicobj.nextScriptno"
                        placeholder="请输入题号"
                      ></el-input>
                    </el-form-item>
                  </el-col>
                </el-row>
                <el-row>
                  <el-col :span="20"
                  <el-col :span="24"
                    ><el-form-item label="问题话术">
                      <el-input
                        type="textarea"
                        style="width: 400px"
                        style="width: 600px"
                        v-model="topicobj.scriptContent"
                        placeholder="请从左侧列表选择"
                      ></el-input> </el-form-item
@@ -487,6 +518,13 @@
                        v-model="topicobj.sort"
                        placeholder="请从左侧列表选择"
                        :disabled="true"
                      ></el-input> </el-form-item
                  ></el-col>
                  <el-col :span="12"
                    ><el-form-item label="下题跳转">
                      <el-input
                        v-model="topicobj.nextScriptno"
                        placeholder="请输入题号"
                      ></el-input> </el-form-item
                  ></el-col>
                </el-row>
@@ -529,13 +567,34 @@
                  v-if="topicobj.scriptType == 1"
                >
                  <el-radio-group v-model="topicobj.branchFlag">
                    <el-radio :label="1">是</el-radio>
                    <el-radio :label="0">否</el-radio>
                    <el-radio :label="'1'">是</el-radio>
                    <el-radio :label="'0'">否</el-radio>
                  </el-radio-group>
                </el-form-item>
                <el-form-item label="选中提示" v-if="topicobj.scriptType != 1">
                  <el-input
                    style="width: 24vw"
                    type="textarea"
                    autosize
                    placeholder="请输入内容"
                    v-model="topicobj.prompt"
                  >
                  </el-input
                ></el-form-item>
                <el-row>
                  <el-col :span="24"
                    ><el-form-item label="语音文本">
                      <el-input
                        type="textarea"
                        style="width: 600px"
                        v-model="topicobj.ivrtext"
                        placeholder="请从左侧列表选择"
                      ></el-input> </el-form-item
                  ></el-col>
                </el-row>
                <el-row>
                  <el-col :span="6">
                    <el-form-item label="问题语音" prop="verbaltrickyy">
                    <el-form-item label="语音文件" prop="verbaltrickyy">
                      <el-upload
                        class="upload-demo"
                        :action="uploadImgUrl"
@@ -556,10 +615,10 @@
                  <el-col :span="6">
                    <span
                      style="font-size: 18px; margin-top: 10px"
                      v-if="topicobj.scriptVoice"
                      v-if="topicobj.ivrVoice"
                      >{{
                        topicobj.scriptVoice.substring(
                          topicobj.scriptVoice.lastIndexOf("/") + 1
                        topicobj.ivrVoice.substring(
                          topicobj.ivrVoice.lastIndexOf("/") + 1
                        )
                      }}</span
                    >
@@ -567,8 +626,8 @@
                  <el-col :span="6">
                    <mini-audio
                      :audio-source="
                        topicobj.scriptVoice
                          ? topicobj.scriptVoice
                        topicobj.ivrVoice
                          ? topicobj.ivrVoice
                          : 'https://example.com/example.mp3'
                      "
                    ></mini-audio>
@@ -607,6 +666,7 @@
                    @branchFlagfn="branchFlagfn"
                    :branchFlag="topicobj.branchFlag ? true : false"
                    :controlsc="false"
                    :scriptType="topicobj.scriptType"
                  />
                  <!-- 无匹配类型 -->
                  <div class="topicxq">
@@ -869,6 +929,8 @@
    <!-- 添加题目弹窗 -->
    <el-drawer
      title="添加题目"
      @close="$forceUpdate()"
      @closed="$forceUpdate()"
      :visible.sync="drawer"
      custom-class="demo-drawer"
      size="50%"
@@ -926,6 +988,20 @@
                  width="200"
                  :show-overflow-tooltip="true"
                />
                <el-table-column
                  label="问题类型"
                  align="center"
                  key="valueType"
                  prop="valueType"
                  width="120"
                >
                  <template slot-scope="scope">
                    <dict-tag
                      :options="valuetypes"
                      :value="scope.row.valueType"
                    />
                  </template>
                </el-table-column>
                <el-table-column
                  label="选项内容"
                  align="center"
@@ -999,7 +1075,7 @@
                    <el-col :span="18"
                      ><el-form-item label="问题话术">
                        <el-input
                          style="width: 400px"
                          style="width: 600px"
                          type="textarea"
                          v-model="indexform.scriptContent"
                          placeholder="请从左侧列表选择"
@@ -1039,9 +1115,33 @@
                        </el-select> </el-form-item
                    ></el-col> -->
                  </el-row>
                  <el-form-item
                    label="选中提示"
                    v-if="topicobj.scriptType != 1"
                  >
                    <el-input
                      style="width: 24vw"
                      type="textarea"
                      autosize
                      placeholder="请输入内容"
                      v-model="indexform.prompt"
                    >
                    </el-input
                  ></el-form-item>
                  <el-row :gutter="10">
                    <el-col :span="18"
                      ><el-form-item label="语音文本">
                        <el-input
                          style="width: 600px"
                          type="textarea"
                          v-model="indexform.ivrtext"
                          placeholder="请从左侧列表选择"
                        ></el-input> </el-form-item
                    ></el-col>
                  </el-row>
                  <el-row>
                    <el-col :span="6">
                      <el-form-item label="问题语音" prop="verbaltrickyy">
                      <el-form-item label="语音文件" prop="verbaltrickyy">
                        <el-upload
                          class="upload-demo"
                          :action="uploadImgUrl"
@@ -1062,10 +1162,10 @@
                    <el-col :span="6">
                      <span
                        style="font-size: 18px; margin-top: 10px"
                        v-if="indexform.scriptVoice"
                        v-if="indexform.ivrVoice"
                        >{{
                          indexform.scriptVoice.substring(
                            indexform.scriptVoice.lastIndexOf("/") + 1
                          indexform.ivrVoice.substring(
                            indexform.ivrVoice.lastIndexOf("/") + 1
                          )
                        }}</span
                      >
@@ -1073,8 +1173,8 @@
                    <el-col :span="6">
                      <mini-audio
                        :audio-source="
                          indexform.scriptVoice
                            ? indexform.scriptVoice
                          indexform.ivrVoice
                            ? indexform.ivrVoice
                            : 'https://example.com/example.mp3'
                        "
                      ></mini-audio>
@@ -1208,64 +1308,7 @@
                      </el-col>
                    </el-row>
                  </div>
                  <div class="topicxq">
                    <el-row :gutter="10">
                      <el-col :span="20"
                        ><el-form-item label="听不清话术">
                          <el-input
                            style="width: 400px"
                            type="textarea"
                            placeholder="请输入"
                            v-model="indexform.noClearlyText"
                            show-word-limit
                          >
                          </el-input> </el-form-item
                      ></el-col>
                    </el-row>
                    <el-row>
                      <el-col :span="6">
                        <el-form-item label="听不清语音" prop="verbaltrickyy">
                          <el-upload
                            class="upload-demo"
                            :action="uploadImgUrl"
                            :show-file-list="false"
                            :headers="headers"
                            :on-success="
                              (response, file) =>
                                handleChange(response, file, 4)
                            "
                            accept=".wav,.mp3"
                            :limit="1"
                          >
                            <el-button size="small" type="primary"
                              >点击上传</el-button
                            >
                          </el-upload>
                        </el-form-item>
                      </el-col>
                      <el-col :span="6">
                        <span
                          style="font-size: 12px"
                          v-if="indexform.noclearlyvoice"
                          >{{
                            indexform.noclearlyvoice.substring(
                              indexform.noclearlyvoice.lastIndexOf("/") + 1
                            )
                          }}</span
                        >
                      </el-col>
                      <el-col :span="6">
                        <mini-audio
                          :audio-source="
                            indexform.noclearlyvoice
                              ? indexform.noclearlyvoice
                              : 'https://example.com/example.mp3'
                          "
                        ></mini-audio>
                      </el-col>
                    </el-row>
                  </div>
                  <div class="topicxq">
                    <el-row :gutter="10">
                      <el-col :span="20"
@@ -1324,6 +1367,64 @@
                      </el-col>
                    </el-row>
                  </div>
                  <div class="topicxq">
                    <el-row :gutter="10">
                      <el-col :span="20"
                        ><el-form-item label="听不清话术">
                          <el-input
                            style="width: 400px"
                            type="textarea"
                            placeholder="请输入"
                            v-model="indexform.noClearlyText"
                            show-word-limit
                          >
                          </el-input> </el-form-item
                      ></el-col>
                    </el-row>
                    <el-row>
                      <el-col :span="6">
                        <el-form-item label="听不清语音" prop="verbaltrickyy">
                          <el-upload
                            class="upload-demo"
                            :action="uploadImgUrl"
                            :show-file-list="false"
                            :headers="headers"
                            :on-success="
                              (response, file) =>
                                handleChange(response, file, 4)
                            "
                            accept=".wav,.mp3"
                            :limit="1"
                          >
                            <el-button size="small" type="primary"
                              >点击上传</el-button
                            >
                          </el-upload>
                        </el-form-item>
                      </el-col>
                      <el-col :span="6">
                        <span
                          style="font-size: 12px"
                          v-if="indexform.noclearlyvoice"
                          >{{
                            indexform.noclearlyvoice.substring(
                              indexform.noclearlyvoice.lastIndexOf("/") + 1
                            )
                          }}</span
                        >
                      </el-col>
                      <el-col :span="6">
                        <mini-audio
                          :audio-source="
                            indexform.noclearlyvoice
                              ? indexform.noclearlyvoice
                              : 'https://example.com/example.mp3'
                          "
                        ></mini-audio>
                      </el-col>
                    </el-row>
                  </div>
                </div>
              </el-form>
            </div>
@@ -1366,13 +1467,14 @@
  illnesslistget,
  getillness,
  getgenerallist,
  depthospgetsondel
} from "@/api/AiCentre/index";
import OptionalForm from "@/components/OptionalForm"; //正则组件
import { getToken } from "@/utils/auth";
import { deptTreeSelect } from "@/api/system/user";
export default {
  name: "Tpuconfigurat",
  name: "tpuconfigurat",
  components: { Regular, OptionalForm },
  data() {
    return {
@@ -1399,14 +1501,18 @@
      inputValue: "",
      inputValueillness: "",
      topicobj: {
        noMatchText: "",
        noClearlyText: "",
        slienceText: "",
        noMatchText: "抱歉,我没有听懂,您能再说一遍吗?",
        noClearlyText: "抱歉,我没有听清您说的话,您可以再说一次吗?",
        slienceText: "抱歉,我没有听到您说的话,您可以再说一次吗?",
      },
      total: 1,
      id: "",
      ruleForm: {
        templateName: "",
        revisitBefore:
          "亲爱的患者/家属,您好!我们是无锡儿童医院的医护人员,为了更好地了解您的康复情况,请您抽一点宝贵时间,完成这份随访。",
        revisitAfter:
          "请您注意休息和营养,生活上要劳逸结合,适当锻炼,戒烟限酒,保持心情舒畅,定期复诊。那本次回访就到这里,祝您身体健康!",
        ivrLibaTemplateTagList: [],
        ivrLibaTemplateScriptVOList: [],
        tempDetpRelevances: [],
@@ -1442,6 +1548,7 @@
      usable: [],
      required: [],
      valuetype: [],
      valuetypes: [],
      askvaluetype: [],
      mode: [],
      inputVisible: false,
@@ -1464,8 +1571,9 @@
        { variatename: "电话", variate: "${phone}", default: 1 },
        { variatename: "病情", variate: "${illness}", default: 1 },
      ],
      deptList: [],
      flatArray:[],
      deptlist: [],
      hosplist: [],
      flatArray: [],
      props: { multiple: true, value: "deptId", label: "deptName" },
      variablelist: [
@@ -1474,6 +1582,10 @@
          value: "表示患者的标识",
        },
      ],
      queryParamsdept: {
        tempid: "",
        type: 2,
      },
      valssu: [],
      radio: "",
@@ -1495,9 +1607,6 @@
    };
  },
  activated() {
    console.log(this.id);
    console.log(this.$route.query.id);
    if (this.id != this.$route.query.id) {
      console.log(1);
@@ -1518,9 +1627,11 @@
    this.auxiliary();
    this.getDeptTree();
    this.mode = store.getters.mode;
    console.log(this.mode,'this.mode');
    this.usable = store.getters.usable;
    this.required = store.getters.required;
    this.valuetype = store.getters.valuetype;
    this.valuetypes = store.getters.valuetypelb;
    this.askvaluetype = store.getters.askvaluetype;
    this.languagelist = store.getters.languagelist;
    this.courtyardlist = store.getters.courtyardlist;
@@ -1556,6 +1667,7 @@
    RoutingDataProcessing() {
      this.id = this.$route.query.id;
      this.task = this.$route.query.task;
      this.queryParamsdept.tempid = this.id;
    },
    // 获取科室树
    getDeptTree() {
@@ -1563,27 +1675,26 @@
      deptTreeSelect().then((response) => {
        this.deptOptions = response.data;
        this.flatArray = this.flattenArray(response.data);
        console.log(this.flatArray,'扩展数据');
      });
    },
    flattenArray(multiArray) {
      let result = [];
      // 递归函数,用于将多级数组转换为一维数组
      function flatten(element, parentId) {
        // 克隆元素以避免修改原始数据
        let item = JSON.parse(JSON.stringify(element));
        if (parentId !== undefined) {
          item.parentId = parentId; // 使用字符串或数字作为键
        }
        result.push(item); // 将元素添加到结果数组
      // 递归函数,用于将多级数组转换为一维数组,只包含最底层的元素
      function flatten(element) {
        // 如果当前元素有子元素,继续递归
        if (element.children && element.children.length > 0) {
          element.children.forEach((child) => flatten(child, element.id)); // 递归处理子元素
          element.children.forEach((child) => flatten(child));
        } else {
          // 克隆元素以避免修改原始数据
          let item = JSON.parse(JSON.stringify(element));
          result.push(item); // 将最底层的元素添加到结果数组
        }
      }
      multiArray.forEach((element) => flatten(element, null)); // 从顶层元素开始递归
      return result; // 返回一维数组
      // 从顶层元素开始递归
      multiArray.forEach((element) => flatten(element));
      return result; // 返回只包含最底层元素的一维数组
    },
    // 获取表单数据
    getvFollowup() {
@@ -1592,9 +1703,12 @@
          if (res.code == 200) {
            console.log(2211);
            this.ruleForm = res.data;
            this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames);
            if (this.ruleForm.deptNames)
            console.log(this.ruleForm.suitway,'suitway');
            this.ruleForm.suitway = this.ruleForm.suitway.split(",");
            this.ruleForm.campus = this.ruleForm.campus.split(",");
            console.log(this.ruleForm.suitway,'suitway');
            if (this.ruleForm.campus)
              this.ruleForm.campus = this.ruleForm.campus.split(",");
            this.ruleForm.submoduleID = this.ruleForm.submoduleID.split(",");
            this.ruleForm.submoduleID = this.ruleForm.submoduleID.map((res) => {
              return Number(res);
@@ -1628,10 +1742,6 @@
        this.dynamicTags = [];
        this.tempDetpRelevanceslist = [];
      }
      listDept(this.queryParams).then((response) => {
        this.deptList = this.handleTree(response.data, "deptId");
      });
    },
    // 附属数据表
    auxiliary() {
@@ -1641,24 +1751,29 @@
      });
      this.tempDetpRelevanceslist = [];
      this.tempbelongWards = [];
      depthospgetsonlist(this.queryParamsdept).then((res) => {
        if (res.code == 200) {
          let arr = res.rows;
          arr.forEach((item) => {
            if (item.deptType == 1) {
              this.deptlist.push(item);
              this.tempDetpRelevanceslist.push(item.deptCode);
            } else if (item.deptType == 2) {
              this.hosplist.push(item);
              this.tempbelongWards.push(item.deptCode);
            }
          });
        }
      });
      // 科室
      listDept(this.queryParams).then((response) => {
        this.deptList = this.handleTree(response.data, "deptId");
      });
      if (this.id) {
        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");
              }
            });
          }
        });
      }
      // 疾病
      getillnesslist({
        pageNum: 1,
@@ -1691,7 +1806,7 @@
      if (!this.ruleForm.assortid) {
        this.ruleForm.assortid = -1;
      }
      this.ruleForm.labelInfo = JSON.stringify(this.dynamicTags);
      // 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))
@@ -1713,20 +1828,55 @@
            return item;
          });
      });
      compileFollowup(this.ruleForm).then((res) => {
        if (res.code == 200) {
          this.$modal.msgSuccess("编辑成功");
          this.$modal.closeLoading();
          this.confirmillness(res.data);
          const obj = { path: "/knowledge/templateku/" };
          this.$tab.closeOpenPage(obj);
        } else {
          this.$modal.msgError("保存失败");
          this.$modal.closeLoading();
        }
      this.delScriptVOList.forEach((item) => {
        this.ruleForm.ivrLibaTemplateScriptVOList.push(item);
      });
      // compileFollowup(this.ruleForm).then((res) => {
      //   if (res.code == 200) {
      //     this.$modal.msgSuccess("编辑成功");
      //     this.$modal.closeLoading();
      //     this.confirmillness(res.data);
      //     // window.location.reload();
      //     // const obj = { path: "/knowledge/tpuconfigurat/?id=" + this.id };
      //     // this.$tab.closeOpenPage(obj);
      //   } else {
      //     this.$modal.msgError("保存失败");
      //     this.$modal.closeLoading();
      //   }
      // });
      if (this.id) {
        this.ruleForm.isoperation = 2;
        this.ruleForm.tempDetpRelevances = [];
        compileFollowup(this.ruleForm).then((res) => {
          if (res.code == 200) {
            this.$modal.msgSuccess("修改成功");
            this.confirmillness();
            this.putbelongDepts(this.id);
            // this.$modal.closeLoading();
            // this.$router.go(-1);
            window.location.reload();
          } else {
            this.$modal.closeLoading();
          }
        });
      } else {
        this.ruleForm.isoperation = 1;
        this.ruleForm.version = this.ruleForm.version
          ? this.ruleForm.version
          : "1.0";
        this.ruleForm.tempDetpRelevances = [];
        compileFollowup(this.ruleForm).then((res) => {
          if (res.code == 200) {
            this.$modal.msgSuccess("新增成功");
            this.confirmillness(res.data);
            this.putbelongDepts(res.data);
            this.$modal.closeLoading();
            this.$router.go(-1);
          } else {
            this.$modal.closeLoading();
          }
        });
      }
    },
    confirmillness(guid) {
      this.illnesslist.forEach((item, index) => {
@@ -1750,9 +1900,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({
@@ -1760,7 +1908,7 @@
            longTemp: this.ruleForm.longTemp,
            deptCode: item,
            tempid: this.id,
            type: 1,
            type: 2,
          });
        }
      });
@@ -1772,7 +1920,8 @@
            longTemp: this.ruleForm.longTemp,
            deptCode: item,
            tempid: this.id,
            type: 1,
            type: 2,
            // 1 : 问卷模板库id、11:问卷任务模板库id;2 :语音问卷库id、21:语音任务模板库id,3 : 宣教模板库id,33:宣教任务模板库id
          });
        }
      });
@@ -1783,6 +1932,13 @@
    },
    // 保存科室/病区
    putbelongDepts(id) {
      this.tempDetpRelevanceslistform.forEach((item) => {
        if (!item.tempid) item.tempid = id;
      });
      this.tempbelongWardsform.forEach((item) => {
        if (!item.tempid) item.tempid = id;
      });
      if (this.tempDetpRelevanceslistform.length > 0) {
        depthospgetson(this.tempDetpRelevanceslistform).then((res) => {
          if (res.code == 200) {
@@ -1831,7 +1987,7 @@
      console.log(response);
      console.log(additionalParam);
      if (additionalParam == 1) {
        this.indexform.scriptVoice = response.url;
        this.indexform.ivrVoice = response.url;
      } else if (additionalParam == 2) {
        this.indexform.nomatchvoice = response.url;
      } else if (additionalParam == 3) {
@@ -1846,7 +2002,7 @@
      console.log(response);
      console.log(additionalParam);
      if (additionalParam == 1) {
        this.topicobj.scriptVoice = response.url;
        this.topicobj.ivrVoice = response.url;
      } else if (additionalParam == 2) {
        this.topicobj.nomatchvoice = response.url;
      } else if (additionalParam == 3) {
@@ -1872,13 +2028,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;
@@ -1965,20 +2118,21 @@
        });
        this.ruleForm.ivrLibaTemplateScriptVOList.push(res.data);
        this.sortFn();
        this.$forceUpdate();
        this.$modal.msgSuccess("添加成功");
      });
    },
    handleDelete(row) {
      this.$modal
        .confirm('是否确认删除问题:"' + row.scriptTopic + '"?')
        .confirm('是否确认删除问题:"' + row.scriptTopic + '?')
        .then(() => {
          this.ruleForm.ivrLibaTemplateScriptVOList.splice(
            this.ruleForm.ivrLibaTemplateScriptVOList.indexOf(row),
            1
          );
          row.isoperation = 3;
          this.delScriptVOList.push(row);
          if (row.id) {
            this.delScriptVOList.push(row);
          }
          this.sortFn();
          this.$modal.msgSuccess("已删除,保存模板生效");
        })
@@ -2029,6 +2183,8 @@
    },
    // 问题排序
    sortFn() {
      console.log(this.ruleForm.ivrLibaTemplateScriptVOList);
      this.ruleForm.ivrLibaTemplateScriptVOList.forEach((item, index) => {
        item.sort = Number(index) + 1;
        console.log(this.ruleForm.ivrLibaTemplateScriptVOList.length);
@@ -2039,16 +2195,33 @@
        } else {
          item.nextScriptno = item.sort + 1;
        }
        if (item.ivrLibaScriptTargetoptionList) {
        if (item.ivrLibaScriptTargetoptionList&&!item.branchFlag) {
          item.ivrLibaScriptTargetoptionList.forEach((items) => {
            items.nextQuestion = Number(item.sort) + 1;
          });
        }
      });
      this.$forceUpdate();
      console.log(this.ruleForm.ivrLibaTemplateScriptVOList);
    },
    // -----------------------话术选项
    deloption() {},
    deloption(item) {
      const index = this.topicobj.ivrLibaScriptTargetoptionList.indexOf(item);
      if (index != -1) {
        if (item.id) {
          console.log(item, "chunz");
          item.isoperation = 3;
          console.log(this.topicobj.ivrLibaScriptTargetoptionList);
          this.$forceUpdate();
        } else {
          this.topicobj.ivrLibaScriptTargetoptionList.splice(index, 1); // 从索引位置删除一个元素
        }
        // this.sortFn();
      } else {
        console.log("未找到该对象");
      }
    },
    // 修改题目信息
    Submittopicobj() {
      this.$modal
@@ -2068,7 +2241,7 @@
          this.drawer = false;
          this.sortFn();
          this.$modal.msgSuccess("题目新增成功,保存模板失效");
          this.$modal.msgSuccess("题目新增成功,保存模板生效");
        });
    },
@@ -2114,7 +2287,11 @@
        .then((res) => {
          this.$router.push({
            path: "/knowledge/templateku/configurat/measurement",
            query: { id: this.id, name: this.ruleForm.templateName },
            query: {
              id: this.id,
              name: this.ruleForm.templateName,
              timeout: this.ruleForm.silencetime,
            },
          });
        })
        .catch(() => {});