WXL
2024-07-23 76196fb19d525648532a209710818ea74c242c3a
src/views/knowledge/questionbank/particulars/index.vue
@@ -5,15 +5,9 @@
        <el-form :inline="true" :model="topicobj" class="demo-form-inline">
          <div class="headline">
            题目设置详情
            <span style="margin-left: 30px"
              ><el-button type="primary" @click="Saveproblem"
                >保 存</el-button
              > </span
            ><span style="margin-left: 30px"
              ><el-button type="success" round @click="drawer = true"
                >+选择指标</el-button
              ></span
            >
            <span style="float: right; margin-right: 30px"
              ><el-button type="primary" @click="Saveproblem">保 存</el-button>
            </span>
          </div>
          <div style="margin-left: 8%">
            <el-row :gutter="10">
@@ -187,6 +181,28 @@
              ></el-input>
            </el-form-item>
            <el-form-item label="题干文件" prop="sickness">
              <div style="width: 40vw">
                <el-upload
                  class="upload-demo"
                  :action="uploadImgUrl"
                  :headers="headers"
                  :accept="'image/*,video/*'"
                  :on-success="handleChangetg"
                >
                  <el-button size="small" type="primary">点击上传</el-button>
                </el-upload>
                <div style="margin: 20px">
                  <el-image
                    style="width: 100px; height: 100px"
                    :src="topicobj.picturePath"
                    :preview-src-list="[...topicobj.picturePath]"
                  >
                  </el-image>
                </div>
              </div>
            </el-form-item>
            <el-row>
              <el-form-item label="标签" prop="desc">
                <div class="xinz-inf">
@@ -273,60 +289,18 @@
                </div>
              </el-form-item>
            </el-row>
            <!-- <el-form-item label="通知变量" prop="name">
              <div style="margin-bottom: 5px" v-for="item in variablelist">
                <el-row>
                  <el-col :span="5">
                    <el-input
                      v-model="item.variatename"
                      placeholder="请输入变量名"
                    ></el-input>
                  </el-col>
                  <el-col :span="8" :offset="1">
                    <el-input
                      v-model="item.variate"
                      placeholder="请输入变量内容"
                    ></el-input>
                  </el-col>
                  <el-col :span="8" :offset="1">
                    <el-button
                      type="success"
                      icon="el-icon-plus"
                      circle
                      @click="addvariable(item)"
                    ></el-button>
                    <el-button
                      v-if="!item.default"
                      type="danger"
                      icon="el-icon-delete"
                      circle
                      @click="delvariable(item)"
                    ></el-button>
                  </el-col>
                </el-row>
              </div>
            </el-form-item>
            <el-row>
              <el-col :span="24">
                <div
                  style="display: flex; margin-left: 66px; margin-bottom: 10px"
                >
                  <div
                    v-for="item in variablelist"
                    class="tsgname"
                    @click="tsgnameto(item)"
                  >
                    {{ item.variatename }}
                  </div>
                </div>
              </el-col></el-row
            > -->
          </div>
          <div v-if="topicobj.scriptType != 3">
            <div class="headline">
              选项设置<span style="margin-left: 30px"
                ><el-button type="primary" round @click="addoption"
                  >+新增</el-button
                ></span
              >
              <span style="margin-left: 30px">选中指标:{{topicobj.scriptTopic}}</span>
              <span style="margin-left: 30px"
                ><el-button type="success" round @click="gettargetInfo"
                  >+选择指标</el-button
                ></span
              >
            </div>
@@ -399,13 +373,34 @@
                  </el-input
                ></el-form-item>
              </el-row>
              <el-form-item label="选项文件" prop="sickness">
                <div style="width: 40vw">
                  <el-upload
                    class="upload-demo"
                    :action="uploadImgUrl"
                    :headers="headers"
                    :accept="'image/*,video/*'"
                    :on-success="handleChange.bind(this, item)"
                  >
                    <el-button size="small" type="primary">点击上传</el-button>
                  </el-upload>
                  <div style="margin: 20px">
                    <el-image
                      style="width: 100px; height: 100px"
                      :src="item.picturePath"
                      :preview-src-list="[...item.picturePath]"
                    >
                    </el-image>
                  </div>
                </div>
              </el-form-item>
            </div>
          </div>
        </el-form>
      </el-card>
    </div>
    <el-drawer
      title="添加选项"
      title="选择指标"
      :visible.sync="drawer"
      custom-class="demo-drawer"
      size="50%"
@@ -504,6 +499,7 @@
  illnesslistget,
  getillness,
} from "@/api/AiCentre/index";
import { getToken } from "@/utils/auth";
export default {
  data() {
@@ -511,6 +507,10 @@
      topicobj: {
        svyLibScriptOptions: [],
      },
      headers: {
        Authorization: "Bearer " + getToken(),
      },
      uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/uploadSort",
      inputVisible: false,
      inputValue: "",
      currentInputId: "",
@@ -526,6 +526,11 @@
        { variatename: "姓名", variate: "${name}", default: 1 },
        { variatename: "电话", variate: "${phone}", default: 1 },
        { variatename: "病情", variate: "${illness}", default: 1 },
      ],
      url: "https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg",
      srcList: [
        "https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg",
        "https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg",
      ],
      // 查询参数
      queryParams: {
@@ -567,7 +572,7 @@
  created() {
    this.gettabList();
    this.getissueinfo();
    this.gettargetInfo();
    // this.gettargetInfo();
    this.mode = store.getters.mode;
    this.languagelist = store.getters.languagelist;
    this.usable = store.getters.usable;
@@ -626,9 +631,11 @@
      });
    },
    gettargetInfo() {
      this.queryParams.scriptType = this.topicobj.scriptType;
      gettargetInfo(this.queryParams).then((res) => {
        this.targetList = res.rows;
        this.total = res.total;
        this.drawer = true;
      });
    },
    // 新增或修改详情
@@ -900,7 +907,6 @@
      //el.selectionStart; 这就是当前光标所在的位置(字符串中字符的index)
      if (this.currentInputId == "scriptContent") {
        inputValueArr = this.topicobj.scriptContent.split("");
        console.log(123);
      } else if (this.currentInputId == "nomatchtext") {
        inputValueArr = this.topicobj.nomatchtext.split("");
      } else if (this.currentInputId == "sliencetext") {
@@ -998,9 +1004,28 @@
    // 筛选错误路线
    screen(data) {
      const arraysGreaterThan10 = data.filter((arr) => this.sumArray(arr) > 21);
      console.log(arraysGreaterThan10, "筛选错误路线大于13分");
    },
    // 选项文件上传
    handleChange(item, response, file, fileList) {
      console.log(response);
      if (response.code == 200) {
        let index = this.topicobj.svyLibScriptOptions.findIndex(
          (obj) => obj.id == item.id && obj.name == item.name
        );
        this.topicobj.svyLibScriptOptions[index].picturePath = response.url;
      } else {
        this.$message.error("图片插入失败");
      }
    },
    // 题干文件上传
    handleChangetg(response, file, fileList) {
      if (response.code == 200) {
        this.topicobj.picturePath = response.url;
      } else {
        this.$message.error("图片插入失败");
      }
    },
  },
};
</script>