WXL (wul)
2 天以前 30a30cc63f9872790a6fd3e2e6978518adbcdecb
src/views/followvisit/record/detailpage/index.vue
@@ -296,17 +296,7 @@
                          }}</span>
                        </div>
                        <div class="dev-xx">
                          <el-radio-group
                            v-model="item.scriptResult"
                            @change="
                              handleOptionChange(
                                $event,
                                index,
                                item.svyTaskTemplateTargetoptions,
                                item
                              )
                            "
                          >
                          <el-radio-group v-model="item.scriptResult">
                            <el-radio
                              v-for="(
                                items, indexs
@@ -315,7 +305,12 @@
                              :key="indexs"
                              :label="items.optioncontent"
                              @click.native.prevent="
                                handleRadioToggle(item, items.optioncontent)
                                handleRadioToggle(
                                  item,
                                  index,
                                  item.svyTaskTemplateTargetoptions,
                                  items.optioncontent
                                )
                              "
                              >{{ items.optioncontent }}</el-radio
                            >
@@ -440,9 +435,6 @@
                              :key="index"
                              :label="items"
                              :class="items.isabnormal ? 'red-star' : ''"
                              @click.native.prevent="
                                handleRadioToggles(item, items)
                              "
                              >{{ items }}</el-radio
                            >
                          </el-radio-group>
@@ -1031,10 +1023,7 @@
        :visible.sync="CaldialogVisible"
        width="60%"
      >
        <CallCenterLs
          ref="callCenterModal"
          :initial-phone="currentPhoneNumber"
        />
        <CallCenterLs ref="CallCenterLs" :initial-phone="currentPhoneNumber" />
      </el-dialog>
    </div>
  </div>
@@ -1153,6 +1142,9 @@
      isEndingCall: false,
      CaldialogVisible: false,
      currentCall: null, // 当前通话对象
      // 路由监听相关
      routeWatcher: null,
      lastRoutePath: this.$route.path,
      input: "今天身体还不错",
      radio: "2",
      taskname: "",
@@ -1377,6 +1369,7 @@
      patid: null,
    };
  },
  computed: {
    callStatusText() {
      const statusMap = {
@@ -1616,11 +1609,15 @@
        var objs = item.svyTaskTemplateTargetoptions.find(
          (items) => items.optioncontent == item.scriptResult
        );
        if (obj) {
          if (objs.isabnormal) {
            excep = 1;
        if (objs) {
          if (excep != 1 && objs.isabnormal) {
            excep = objs.isabnormal;
            this.selectedTag = objs.isabnormal;
          }
        }
        console.log(excep, "excep");
        let obj = {
          asrtext: null,
          patid: this.patid,
@@ -1799,7 +1796,8 @@
    },
    yuyingetdetail() {
      const dataToSubmit = JSON.parse(JSON.stringify(this.tableDatatop));
      console.log(dataToSubmit, "dataToSubmit");
      return;
      dataToSubmit.forEach((item, index) => {
        // 对拷贝的数据进行操作,不影响原始的 scriptResult 数组
        item.scriptResult = item.scriptResult.join("&");
@@ -2088,25 +2086,6 @@
      }
      this.$forceUpdate();
    },
    // 新增的切换选中/取消选中方法
    handleRadioToggle(questionItem, optionValue) {
      console.log(questionItem, optionValue, 999);
      // 如果点击的是当前已选中的选项,则取消选中
      if (questionItem.scriptResult === optionValue) {
        questionItem.scriptResult = ""; // 清空选中值
        // 同时重置与选项相关的状态
        questionItem.isabnormal = false;
        questionItem.showAppendInput = false;
        // 注意:取消选中时,我们通常不希望触发题目跳转逻辑,所以直接返回
        // 如果需要,可以在这里添加取消选中后的特定逻辑,例如重置题目序列
      } else {
        // 如果点击的是未选中的选项,则通过更改绑定值来触发原始的 handleOptionChange 方法
        // 这里只需要改变 v-model 绑定的值,change事件会自动触发
        questionItem.scriptResult = optionValue;
        // 后续的跳转等复杂逻辑会在 handleOptionChange 中正常执行
      }
    },
    handleRadioToggles(questionItem, optionValue) {
      if (!questionItem.matchedtext) {
        questionItem.matchedtext == "";
@@ -2125,6 +2104,25 @@
        this.$set(questionItem, "matchedtext", optionValue); // 后续的跳转等复杂逻辑会在 handleOptionChange 中正常执行
      }
    },
    // 新增的切换选中/取消选中方法
    handleRadioToggle(questionItem, index, options, optionValue) {
      // 如果点击的是当前已选中的选项,则取消选中
      if (questionItem.scriptResult === optionValue) {
        questionItem.scriptResult = ""; // 清空选中值
        // 同时重置与选项相关的状态
        questionItem.isabnormal = false;
        questionItem.showAppendInput = false;
        // 注意:取消选中时,我们通常不希望触发题目跳转逻辑,所以直接返回
        // 如果需要,可以在这里添加取消选中后的特定逻辑,例如重置题目序列
      } else {
        // 如果点击的是未选中的选项,则通过更改绑定值来触发原始的 handleOptionChange 方法
        // 这里只需要改变 v-model 绑定的值,change事件会自动触发
        questionItem.scriptResult = optionValue;
        this.handleOptionChange(optionValue, index, options, questionItem);
        // 后续的跳转等复杂逻辑会在 handleOptionChange 中正常执行
      }
    },
    // 在methods部分,修改handleOptionChange方法:
    handleOptionChange(selectedOption, questionIndex, options, a) {
      console.log(selectedOption, questionIndex, options, a, "888");
@@ -2356,6 +2354,11 @@
  // },
  beforeRouteLeave(to, from, next) {
    this.$refs.callButton.cleanupResources();
    if (this.$refs.CallCenterLs) {
      console.log(1);
      this.$refs.CallCenterLs.handleSeatLogout();
    }
    next(); // 确保调用 nex
  },
  // beforeRouteUpdate() {
@@ -2550,7 +2553,7 @@
.CONTENT {
  padding: 10px;
  height: 100%;
  min-height: 660px; /* 设置最小高度 */
  min-height: 738px; /* 设置最小高度 */
  .title {
    font-size: 22px;
@@ -2565,7 +2568,7 @@
  padding: 30px;
  border: 1px solid #dcdfe6;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);
  max-height: 580px; /* 设置最大高度 */
  max-height: 618px; /* 设置最大高度 */
  overflow-y: auto; /* 内容超过高度时显示滚动条 */
  .topic-dev {
@@ -2760,7 +2763,7 @@
  margin: 0 10px 20px 10px;
  /* 当缩放比例大于100%或屏幕宽度较小时改为上下排列 */
  @media screen and (max-width: 1200px), (min-resolution: 1dppx) {
  @media screen and (min-resolution: 1.5dppx) {
    flex-direction: column;
    .call-action,
@@ -2916,9 +2919,8 @@
}
/* 缩放检测样式 */
@media screen and (min-resolution: 1.1dppx),
  screen and (-webkit-min-device-pixel-ratio: 1.1),
  screen and (max-width: 1200px) {
@media screen and (min-resolution: 1.5dppx),
  screen and (-webkit-min-device-pixel-ratio: 1.5) {
  .action-container {
    flex-direction: column;
  }