WXL
2024-01-26 59272d99113d2d11b1873d60653e52b49f14d757
src/views/knowledge/education/compilequer/index.vue
@@ -2,12 +2,22 @@
  <div class="Questionnairemanagement">
    <!-- 左侧栏 -->
    <div class="sidecolumn">
      <div style="height: 200px">
        <el-steps direction="vertical" :active="Editprogress">
          <el-step title="基础信息设置"></el-step>
          <el-step title="宣教内容"></el-step>
      <el-steps finish-status="success" :active="Editprogress" simple>
        <el-step>
          <template slot="title">
            <span style="cursor: pointer" @click="Editprogress = 1"
              >基础信息设置</span
            >
          </template>
        </el-step>
        <el-step>
          <template slot="title">
            <span style="cursor: pointer" @click="Editprogress = 2"
              >宣教内容</span
            >
          </template>
        </el-step>
        </el-steps>
      </div>
    </div>
    <!-- 右侧数据 -->
    <div class="leftvlue">
@@ -43,14 +53,26 @@
              </el-option-group>
            </el-select>
          </el-form-item>
          <el-row>
            <el-col :span="12"> </el-col>
            <el-col :span="12"> </el-col>
          </el-row>
          <el-form-item label="宣教标题" prop="preachname">
            <div style="width: 30%">
              <el-input v-model="ruleForm.preachname"></el-input>
              <el-input
                v-model="ruleForm.preachname"
                placeholder="请输入标题"
              ></el-input>
            </div>
          </el-form-item>
          <el-form-item label="宣教描述" prop="preachcontent">
            <div style="width: 30%">
              <el-input v-model="ruleForm.preachcontent"></el-input>
            <div style="width: 60%">
              <el-input
                type="textarea"
                :rows="2"
                v-model="ruleForm.preachcontent"
                placeholder="请输入描述"
              ></el-input>
            </div>
          </el-form-item>
          <el-form-item label="通知变量" prop="name">
@@ -146,7 +168,10 @@
          <el-row :gutter="20">
            <el-col :span="6">
              <el-form-item label="版本号" prop="name">
                <el-input v-model="ruleForm.version"></el-input> </el-form-item
                <el-input
                  v-model="ruleForm.version"
                  placeholder="默认1.0.1"
                ></el-input> </el-form-item
            ></el-col>
            <el-col :span="9">
              <el-form-item label="可用状态" prop="region">
@@ -186,7 +211,7 @@
            </el-select>
          </el-form-item>
          <el-form-item label="适用疾病" prop="region">
            <div class="xinz-infs">
            <div class="xinz-inf">
              <el-tag
                :key="item.icd10name"
                type="warning"
@@ -230,6 +255,7 @@
            <el-select
              v-model="ruleForm.campus"
              size="medium"
              multiple
              filterable
              placeholder="请选择分类"
            >
@@ -470,7 +496,12 @@
      radioas: "", //填空题答案
      // 总条数
      total: 1,
      ruleForm: {},
      ruleForm: {
        campus: [],
        heLibraryTagList: [],
        tempDetpRelevances: [],
        version: "1.0.1",
      },
      rules: {},
      rulesa: {},
      mode: [],
@@ -542,11 +573,20 @@
  },
  methods: {
    processElement(element) {
      return { ...element, isoperation: null };
    },
    // 获取页面数据
    getList() {
      this.loading = true;
      this.id = this.$route.query.id;
      if (this.id) {
      getlibraryinfo({ id: this.id }).then((res) => {
        this.ruleForm = res.data[0];
          this.ruleForm.campus = this.ruleForm.campus.split(",");
          this.dynamicTags = res.data[0].heLibraryTagList.map(
            this.processElement
          );
        if (this.ruleForm.deptNames) {
          this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames);
@@ -558,9 +598,12 @@
          ? JSON.parse(this.ruleForm.otherdata)
          : this.variablelist;
      });
      }
      // 宣教分类
      getheLibraryAssort({}).then((res) => {
        this.sortlist = res.rows;
      });
      // 部门
      listDept(this.queryParams).then((response) => {
        this.deptList = this.handleTree(response.data, "deptId");
      });
@@ -572,8 +615,7 @@
      this.dynamicTags.forEach((item) => {
        tgs.push(item.tagname);
      });
      console.log(tgs.length, "tgs");
      this.ruleForm.campus = this.ruleForm.campus.join(",");
      this.ruleForm.labelInfo = tgs.length != 0 ? tgs.join(", ") : "";
      this.ruleForm.otherdata = JSON.stringify(this.variablelist);
      console.log(22);
@@ -635,6 +677,7 @@
        );
        if (!condition) {
          listDept({ deptId: item }).then((res) => {
            console.log("dept");
            res.data[0].type = 2;
            this.ruleForm.tempDetpRelevances.push(res.data[0]);
          });
@@ -689,7 +732,11 @@
      });
    },
    handleClosetag(tag) {
      const lindex = this.dynamicTags.indexOf(tag);
      console.log(tag);
      const lindex = this.ruleForm.heLibraryTagList.findIndex(
        (item) => item.tagname == tag.tagname
      );
      console.log(lindex);
      this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
      this.ruleForm.heLibraryTagList[lindex].isoperation = 3;
    },
@@ -783,8 +830,8 @@
          this.illnesslist.push(opeavalue);
        }
      });
      console.log(this.illnesslist);
      this.inputVisible = false;
      console.log(this.illnesslist, "加");
      this.illnessVisible = false;
      this.inputValue = "";
    },
    confirmillness() {
@@ -866,17 +913,17 @@
<style lang="scss" scoped>
.Questionnairemanagement {
  display: flex;
  // display: flex;
}
.sidecolumn {
  width: 300px;
  min-height: 100vh;
  text-align: center;
  // width: 300px;
  // min-height: 100vh;
  // text-align: center;
  //   display: flex;
  //   margin-top: 20px;
  margin: 20px;
  margin-bottom: 0;
  padding: 30px;
  padding: 20px;
  background: #edf1f7;
  border: 1px solid #dcdfe6;
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
@@ -885,9 +932,7 @@
.leftvlue {
  //   display: flex;
  //   flex: 1;
  width: 80%;
  margin-top: 20px;
  //   margin: 20px;
  margin: 20px;
  padding: 30px;
  background: #ffff;
  border: 1px solid #dcdfe6;