WXL
2024-07-31 2c9ddebd07230ca4165e2ee55470133fdf9ccd99
src/components/Regular/index.vue
@@ -6,7 +6,7 @@
          ><el-form-item label="选项名称">
            <el-input
              type="text"
              placeholder="请输入"
              placeholder="请输入(必填项)"
              v-model="item.targetvalue"
              show-word-limit
            >
@@ -14,9 +14,9 @@
        ></el-col>
        <el-col :span="12"
          ><el-form-item label="预警值">
            <el-radio-group v-model="radio">
              <el-radio :label="3">是</el-radio>
              <el-radio :label="6">否</el-radio>
            <el-radio-group v-model="item.isabnormal">
              <el-radio :label="1">是</el-radio>
              <el-radio :label="0">否</el-radio>
            </el-radio-group>
          </el-form-item></el-col
        >
@@ -37,7 +37,7 @@
            <el-input
              type="text"
              placeholder="请输入"
              v-model="item.targetvalue2"
              v-model="item.optiondesc"
              show-word-limit
            >
            </el-input> </el-form-item
@@ -66,7 +66,7 @@
            </el-input> </el-form-item
        ></el-col>
      </el-row>
      <el-form-item label="关键字(含)" prop="desc">
      <el-form-item label="关键字(含)" prop="desc" v-if="hasValue">
        <div class="xinz-inf">
          <el-tag
            :key="crux"
@@ -108,7 +108,7 @@
          >
        </div>
      </el-form-item>
      <el-form-item label="关键字(非)" prop="desc">
      <el-form-item label="关键字(非)" prop="desc" v-if="hasValue">
        <div class="xinz-inf">
          <el-tag
            :key="crux"
@@ -150,6 +150,27 @@
          >
        </div>
      </el-form-item>
      <el-form-item label="选项文件" prop="sickness" v-if="Verbalproblem">
        <div style="width: 40vw">
          <el-upload
            class="upload-demo"
            :action="uploadImgUrl"
            :headers="headers"
            accept=".jpg,.png,image/*"
            :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>
      <el-row :gutter="10">
        <el-col :span="16" v-if="intent">
@@ -158,7 +179,6 @@
              class="upload-demo"
              style="display: flex"
              action="https://jsonplaceholder.typicode.com/posts/"
              :on-change="handleChange"
              :file-list="fileList"
              :limit="1"
              :on-exceed="handleExceed"
@@ -205,6 +225,7 @@
<script>
import store from "@/store";
import { getToken } from "@/utils/auth";
export default {
  data() {
@@ -217,6 +238,10 @@
          url: "https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100",
        },
      ],
      headers: {
        Authorization: "Bearer " + getToken(),
      },
      uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/uploadSort",
      whether: 1, //1为关键词,2为否定关键词
      inputValue: "",
      inputVisible: false,
@@ -239,6 +264,14 @@
      default: true,
    },
    intent: {
      type: Boolean,
      default: true,
    },
    hasValue: {
      type: Boolean,
      default: true,
    },
    Verbalproblem: {
      type: Boolean,
      default: true,
    },
@@ -288,9 +321,9 @@
      this.handleSelectionChange();
    },
    // 控制文件
    handleChange(file, fileList) {
      this.fileList = fileList.slice(-3);
    },
    // handleChange(file, fileList) {
    //   this.fileList = fileList.slice(-3);
    // },
    // 文件超出个数限制时的钩子
    handleExceed(files, fileList) {
      this.$message.warning(
@@ -364,6 +397,17 @@
      console.log(this.TargetoptionList);
      this.$emit("handleSelectionChange", selection);
    },
    // 选项文件上传
    handleChange(item, response, file, fileList) {
      console.log(response, "response");
      console.log(item, "item");
      console.log(this.TargetoptionList, "this.TargetoptionList");
      let index = this.TargetoptionList.findIndex(
        (obj) => obj.guid == item.guid
      );
      console.log(index);
      this.TargetoptionList[index].picturePath = response.url;
    },
  },
};
</script>