WXL (wul)
12 小时以前 dacfc42199eaeed64738201411d0b37153f7bf76
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: "",
@@ -1198,21 +1190,21 @@
      selectedTag: "",
      tagOptions: [
        {
          value: "0",
          value: '0',
          label: "正常",
          type: "normal",
          color: "#7ff5e1",
          description: "患者情况正常,无需特别关注",
        },
        {
          value: "1",
          value: '1',
          label: "异常",
          type: "abnormal",
          color: "#f75c5c",
          description: "患者存在异常情况,需要重点关注",
        },
        {
          value: "2",
          value: '2',
          label: "警告",
          type: "warning",
          color: "#fbfb4a",
@@ -1377,6 +1369,7 @@
      patid: null,
    };
  },
  computed: {
    callStatusText() {
      const statusMap = {
@@ -1618,7 +1611,7 @@
        );
        if (obj) {
          if (objs.isabnormal) {
            excep = 1;
            excep = objs.isabnormal;
          }
        }
        let obj = {
@@ -2088,25 +2081,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 +2099,27 @@
        this.$set(questionItem, "matchedtext", optionValue); // 后续的跳转等复杂逻辑会在 handleOptionChange 中正常执行
      }
    },
    // 新增的切换选中/取消选中方法
    handleRadioToggle(questionItem, index, options, 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;
        this.handleOptionChange(optionValue, index, options, questionItem);
        // 后续的跳转等复杂逻辑会在 handleOptionChange 中正常执行
      }
    },
    // 在methods部分,修改handleOptionChange方法:
    handleOptionChange(selectedOption, questionIndex, options, a) {
      console.log(selectedOption, questionIndex, options, a, "888");
@@ -2356,6 +2351,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 +2550,7 @@
.CONTENT {
  padding: 10px;
  height: 100%;
  min-height: 660px; /* 设置最小高度 */
  min-height: 738px; /* 设置最小高度 */
  .title {
    font-size: 22px;
@@ -2565,7 +2565,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 +2760,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 +2916,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;
  }