WXL
2023-12-15 4e32f1188e9d0cafd3511994d2d13617ca6e08f9
src/views/repositoryai/templateku/index.vue
@@ -6,7 +6,7 @@
        <div class="top-wj">模版类型</div>
        <div class="top-tj" @click="dialogFormVisible = true">+添加</div>
      </div>
      <div class="center-ss">
      <div class="center-ss">
        <el-input
          placeholder="请输入内容"
          v-model="sidecolumnval"
@@ -21,7 +21,7 @@
        </el-input>
      </div>
      <div class="bottom-fl">
        <el-tabs tab-position="right">
        <!-- <el-tabs tab-position="right">
          <el-tab-pane :label="`全部 (${numberlb})`"></el-tab-pane>
          <el-tab-pane
            class="tab-paness"
@@ -48,21 +48,53 @@
                <i slot="reference" class="el-icon-share"></i> </el-popover
            ></span>
          </el-tab-pane>
        </el-tabs>
        </el-tabs> -->
        <el-menu
          default-active="3"
          class="el-menu-vertical-demo"
          @open="handleOpen"
          @close="handleClose"
          @select="handleSelect"
        >
          <el-submenu index="1">
            <template slot="title">
              <i class="el-icon-location"></i>
              <span>分类一</span>
            </template>
            <el-menu-item index="1-1">选项1</el-menu-item>
            <el-menu-item index="1-2">选项2</el-menu-item>
            <el-menu-item index="1-3">选项3</el-menu-item>
            <el-menu-item index="1-4">选项3</el-menu-item>
          </el-submenu>
          <el-submenu index="2">
            <template slot="title">
              <i class="el-icon-menu"></i>
              <span>分类二</span>
            </template>
            <el-menu-item index="2-1">选项1</el-menu-item>
            <el-menu-item index="2-2">选项2</el-menu-item>
            <el-menu-item index="2-3">选项3</el-menu-item>
          </el-submenu>
          <el-submenu index="3">
            <template slot="title">
              <i class="el-icon-document"></i>
              <span>分类三</span>
            </template>
            <el-menu-item index="2-1">选项1</el-menu-item>
          </el-submenu>
          <el-submenu index="4">
            <template slot="title">
              <i class="el-icon-setting"></i>
              <span>分类四</span>
            </template>
            <el-menu-item index="2-1">选项1</el-menu-item>
          </el-submenu>
        </el-menu>
      </div>
    </div>
    <!-- 右侧数据 -->
    <div :class="topactiveName == 'Local' ? 'leftvlue' : 'leftvlues'">
      <div class="leftvlue-top">
        <el-tabs v-model="topactiveName" @tab-click="tophandleClick">
          <el-tab-pane name="Local">
            <span class="mulsz" slot="label">普通模版库 </span>
          </el-tab-pane>
          <el-tab-pane name="sharing">
            <span class="mulsz" slot="label">通用模版库 </span>
          </el-tab-pane>
        </el-tabs>
      </div>
      <div class="leftvlue-bg">
        <el-row :gutter="20">
          <!--用户数据-->
@@ -75,7 +107,7 @@
              v-show="showSearch"
              label-width="98px"
            >
              <el-form-item label="模版名称" prop="userName">
              <el-form-item label="模版标题" prop="userName">
                <el-input
                  v-model="queryParams.userName"
                  placeholder="请输入"
@@ -84,7 +116,7 @@
                  @keyup.enter.native="handleQuery"
                />
              </el-form-item>
              <el-form-item label="语言" prop="status">
              <el-form-item label="适用科室" prop="status">
                <el-select v-model="queryParams.status" placeholder="请选择">
                  <el-option
                    v-for="item in languagelist"
@@ -95,7 +127,29 @@
                  </el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="是否启用" prop="status">
              <el-form-item label="可用状态" prop="status">
                <el-select v-model="queryParams.status" placeholder="请选择">
                  <el-option
                    v-for="item in qyoptions"
                    :key="item.value"
                    :label="item.label"
                    :value="item.value"
                  >
                  </el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="适用方式" prop="status">
                <el-select v-model="queryParams.status" placeholder="请选择">
                  <el-option
                    v-for="item in languagelist"
                    :key="item.value"
                    :label="item.label"
                    :value="item.value"
                  >
                  </el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="内容形式" prop="status">
                <el-select v-model="queryParams.status" placeholder="请选择">
                  <el-option
                    v-for="item in qyoptions"
@@ -174,42 +228,68 @@
                :show-overflow-tooltip="true"
              />
              <el-table-column
                label="静默时间"
                label="主要内容"
                align="center"
                key="nickName"
                prop="nickName"
                width="400"
                width="300"
                :show-overflow-tooltip="true"
              />
              <el-table-column
                label="无声重复次数"
                label="适用疾病"
                align="center"
                key="aphonenumber"
                prop="aphonenumber"
                width="400"
              /><el-table-column
                label="无声匹配重复次数"
                label="适用科室"
                align="center"
                key="bphonenumber"
                prop="bphonenumber"
                width="120"
              />
              <el-table-column
                label="通用库"
                label="标签"
                align="center"
                key="bphonenumbear"
                prop="bphonenumbear"
                key="tagList"
                prop="tagList"
                width="160"
                :show-overflow-tooltip="true"
              >
                <template slot-scope="scope">
                  <span v-for="item in scope.row.tagList">{{ item }} </span>
                </template>
              </el-table-column>
              <el-table-column
                label="宣教方式"
                align="center"
                key="way"
                prop="way"
                width="120"
              />
              <el-table-column
                label="语言"
                label="资料形式"
                align="center"
                key="indicator"
                prop="indicator"
                key="formal"
                prop="formal"
                width="120"
              />
              <el-table-column label="是否启用" align="center" key="status">
              <el-table-column
                label="版本号"
                align="center"
                key="versions"
                prop="versions"
                width="120"
              />
              <el-table-column
                label="最近修改"
                align="center"
                key="Recentrevision"
                prop="Recentrevision"
                width="120"
              />
              <el-table-column label="可用状态" align="center" key="status">
                <template slot-scope="scope">
                  <el-switch
                    v-model="scope.row.status"
@@ -227,20 +307,13 @@
                class-name="small-padding fixed-width"
              >
                <template slot-scope="scope">
                  <el-button
                    size="medium"
                    type="text"
                    @click="handleUpdate(scope.row)"
                    ><span class="button-textxg"
                      ><i class="el-icon-edit-outline"></i>修改</span
                    ></el-button
                  >
                  <el-button
                    size="medium"
                    type="text"
                    @click="compileUpdate(scope.row)"
                    ><span class="button-bji"
                      ><i class="el-icon-edit"></i>编辑话术</span
                      ><i class="el-icon-edit"></i>编辑</span
                    ></el-button
                  >
                  <el-button
@@ -255,109 +328,17 @@
                  <el-button
                    size="medium"
                    type="text"
                    @click="handleDelete(scope.row)"
                    @click="preview(scope.row)"
                    v-hasPermi="['system:user:remove']"
                    ><span class=".button-xiazai"
                      ><i class="el-icon-s-management"></i>复制模版</span
                      ><i class="el-icon-s-management"></i>预览</span
                    ></el-button
                  >
                </template>
              </el-table-column>
            </el-table>
            <!-- 通用模版 -->
            <el-table
              v-else
              v-loading="loading"
              :data="userList"
              :border="true"
              @selection-change="handleSelectionChange"
            >
              <el-table-column type="selection" width="50" align="center" />
              <el-table-column
                label="序号"
                align="center"
                key="userId"
                prop="userId"
              />
              <el-table-column
                label="通用模版名称"
                align="center"
                key="userName"
                prop="userName"
                :show-overflow-tooltip="true"
              />
              <el-table-column
                label="语言"
                align="center"
                key="nickName"
                prop="nickName"
                width="400"
                :show-overflow-tooltip="true"
              />
              <el-table-column label="是否启用" align="center" key="status">
                <template slot-scope="scope">
                  <el-switch
                    v-model="scope.row.status"
                    active-value="0"
                    inactive-value="1"
                    @change="handleStatusChange(scope.row)"
                  ></el-switch>
                </template>
              </el-table-column>
              <el-table-column
                label="操作"
                align="center"
                width="200"
                class-name="small-padding fixed-width"
              >
                <template slot-scope="scope">
                  <el-button
                    size="medium"
                    type="text"
                    @click="handleUpdate(scope.row)"
                    ><span class="button-textxg"
                      ><i class="el-icon-edit-outline"></i>修改</span
                    ></el-button
                  >
                  <el-button
                    size="medium"
                    type="text"
                    @click="compileUpdate(scope.row)"
                    ><span class="button-bji"
                      ><i class="el-icon-edit"></i>编辑话术</span
                    ></el-button
                  >
                  <el-button
                    size="medium"
                    type="text"
                    @click="handleDelete(scope.row)"
                    v-hasPermi="['system:user:remove']"
                    ><span class="button-textsc"
                      ><i class="el-icon-delete-solid"></i>删除</span
                    ></el-button
                  >
                  <el-button
                    size="medium"
                    type="text"
                    @click="downloadfn(scope.row)"
                    v-hasPermi="['system:user:remove']"
                    ><span class="button-xiazai"
                      ><i class="el-icon-download"></i>下载</span
                    ></el-button
                  >
                  <el-button
                    size="medium"
                    type="text"
                    @click="copyfn(scope.row)"
                    v-hasPermi="['system:user:remove']"
                    ><span class=".button-xiazai"
                      ><i class="el-icon-s-management"></i>复制模版</span
                    ></el-button
                  >
                </template>
              </el-table-column>
            </el-table>
            <!-- 底部分页 -->
            <pagination
              v-show="total > 0"
@@ -369,249 +350,6 @@
          </el-col>
        </el-row>
        <!-- 添加或修改标准模版对话框 -->
        <el-dialog
          v-if="topactiveName == 'Local'"
          :title="title"
          :visible.sync="indexopen"
          width="900px"
          append-to-body
        >
          <el-form
            ref="form"
            :model="indexform"
            :rules="rules"
            label-width="110px"
          >
            <el-row>
              <el-col :span="24">
                <el-form-item label="语言" prop="deptId">
                  <el-select
                    v-model="indexform.language"
                    placeholder="请选择语言"
                  >
                    <el-option
                      v-for="index in languagelist"
                      :key="index.value"
                      :label="index.label"
                      :value="index.value"
                    ></el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="模版名称" prop="nickName">
                  <el-input
                    v-model="indexform.nickName"
                    placeholder="请输入模版名称"
                    maxlength="80"
                  />
                </el-form-item> </el-col
            ></el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="静默时间(秒)" prop="verbaltricktext">
                  <el-input v-model="indexform.userName" maxlength="30" />
                </el-form-item> </el-col
            ></el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="无声重复次数" prop="verbaltrickyy">
                  <el-input v-model="indexform.userName" maxlength="30" />
                </el-form-item> </el-col
            ></el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="无匹配重复次数" prop="matchtext">
                  <el-input v-model="indexform.userName" maxlength="30" />
                </el-form-item> </el-col
            ></el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="启动任务" prop="matchyy">
                  <el-input v-model="indexform.userName" maxlength="30" />
                </el-form-item> </el-col
            ></el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="通用库" prop="deptId">
                  <el-select v-model="indexform.language" placeholder="请选择">
                    <el-option
                      v-for="index in languagelist"
                      :key="index.value"
                      :label="index.label"
                      :value="index.value"
                    ></el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="科室" prop="deptId">
                  <el-select v-model="indexform.language" placeholder="请选择">
                    <el-option
                      v-for="index in languagelist"
                      :key="index.value"
                      :label="index.label"
                      :value="index.value"
                    ></el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="诊断类型关键字" prop="librarytext">
                  <el-input v-model="indexform.userName" maxlength="30" />
                </el-form-item> </el-col
            ></el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="诊断类型" prop="deptId">
                  <el-select v-model="indexform.language" placeholder="请选择">
                    <el-option
                      v-for="index in languagelist"
                      :key="index.value"
                      :label="index.label"
                      :value="index.value"
                    ></el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="随访推延天数" prop="vaguetext">
                  <el-input v-model="indexform.userName" maxlength="30" />
                </el-form-item> </el-col
            ></el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="模版标签信息" prop="vagueyy">
                  <el-input v-model="indexform.userName" maxlength="30" />
                </el-form-item> </el-col
            ></el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="播报方式">
                  <el-radio-group v-model="indexform.qystatus">
                    <el-radio
                      v-for="item in qyoptionbo"
                      :key="item.value"
                      :label="item.value"
                      >{{ item.label }}</el-radio
                    >
                  </el-radio-group>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="是否启用">
                  <el-radio-group v-model="indexform.qystatus">
                    <el-radio
                      v-for="item in qyoptions"
                      :key="item.value"
                      :label="item.value"
                      >{{ item.label }}</el-radio
                    >
                  </el-radio-group>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="备注">
                  <el-input
                    v-model="indexform.remark"
                    type="textarea"
                    placeholder="请输入内容"
                  ></el-input>
                </el-form-item>
              </el-col>
            </el-row>
          </el-form>
          <div slot="footer" class="dialog-footer">
            <el-button type="primary" @click="submitForm">确 定</el-button>
            <el-button @click="cancel">取 消</el-button>
          </div>
        </el-dialog>
        <!-- 添加或修改通用模版对话框 -->
        <el-dialog
          :title="title"
          :visible.sync="indexopenty"
          width="900px"
          append-to-body
        >
          <el-form
            ref="form"
            :model="indexform"
            :rules="rules"
            label-width="100px"
          >
            <el-row>
              <el-col :span="24">
                <el-form-item label="语言" prop="deptId">
                  <el-select
                    v-model="indexform.language"
                    placeholder="请选择语言"
                  >
                    <el-option
                      v-for="index in languagelist"
                      :key="index.value"
                      :label="index.label"
                      :value="index.value"
                    ></el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="模版名称" prop="nickName">
                  <el-input
                    v-model="indexform.nickName"
                    placeholder="请输入模版主旨"
                    maxlength="80"
                  />
                </el-form-item> </el-col
            ></el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="是否启用">
                  <el-radio-group v-model="indexform.qystatus">
                    <el-radio
                      v-for="item in qyoptions"
                      :key="item.value"
                      :label="item.value"
                      >{{ item.label }}</el-radio
                    >
                  </el-radio-group>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row>
              <el-col :span="24">
                <el-form-item label="备注">
                  <el-input
                    v-model="indexform.remark"
                    type="textarea"
                    placeholder="请输入内容"
                  ></el-input>
                </el-form-item>
              </el-col>
            </el-row>
          </el-form>
          <div slot="footer" class="dialog-footer">
            <el-button type="primary" @click="submitForm">确 定</el-button>
            <el-button @click="cancel">取 消</el-button>
          </div>
        </el-dialog>
      </div>
    </div>
    <!-- 添加类别弹框 -->
@@ -723,25 +461,25 @@
      languagelist: [
        {
          value: 1,
          label: "普通话",
          label: "短信",
        },
        {
          value: 2,
          label: "粤语",
          label: "电话",
        },
        {
          value: 3,
          label: "英语",
          label: "小程序",
        },
      ], //语言列表
      qyoptions: [
        {
          value: 1,
          label: "启用",
          label: "可用",
        },
        {
          value: 2,
          label: "关闭",
          label: "停用",
        },
      ],
      // 播报方式
@@ -767,14 +505,6 @@
        },
        {
          title: "模版分类三",
          number: "2",
        },
        {
          title: "模版分类四",
          number: "2",
        },
        {
          title: "模版分类五",
          number: "2",
        },
      ],
@@ -895,17 +625,16 @@
    downloadfn() {},
    // 跳转编辑话术页面
    compileUpdate(row) {
      if (this.topactiveName == "Local") {
        this.$router.push({
          path: "/knowledge/templateku/configurat/",
          query: { id: "1" },
        });
      } else {
        this.$router.push({
          path: "/knowledge/templateku/particulars/",
          query: { id: "1" },
        });
      }
      this.$router.push({
        path: "/knowledge/templateku/configurat/",
        query: { id: "1" },
      });
        // this.$router.push({
        //   path: "/knowledge/templateku/particulars/",
        //   query: { id: "1" },
        // });
    },
    // 题目状态修改
    handleStatusChange(row) {
@@ -921,6 +650,16 @@
        .catch(function () {
          row.status = row.status === "0" ? "1" : "0";
        });
    },
        // 侧边--------------
    handleOpen(key, keyPath) {
      console.log(key, keyPath);
    },
    handleClose(key, keyPath) {
      console.log(key, keyPath);
    },
    handleSelect(key, keyPath) {
      console.log(key, keyPath);
    },
    //搜索类别
    sidecolumnss() {},
@@ -982,45 +721,11 @@
        this.indexopenty = true;
      }
    },
    /** 修改按钮操作 */
    handleUpdate(row) {
      this.reset();
      this.title = "修改模版";
      if (this.topactiveName == "Local") {
        this.indexopen = true;
      } else {
        this.indexopenty = true;
      }
    },
    // 修改分类弹框
    popoveramend(tagcategoryid) {
      this.idds = tagcategoryid;
      this.amendtag = true;
      this.dialogFormVisible = true;
    },
    /** 更新/修改提交按钮 */
    submitForm: function () {
      this.$refs["form"].validate((valid) => {
        if (valid) {
          if (this.form.userId != undefined) {
            updateUser(this.form).then((response) => {
              this.$modal.msgSuccess("修改成功");
              this.indexopen = false;
              this.indexopenty = false;
              this.getList();
            });
          } else {
            addUser(this.form).then((response) => {
              this.$modal.msgSuccess("新增成功");
              this.indexopen = false;
              this.indexopenty = false;
              this.getList();
            });
          }
        }
      });
    },
    /** 删除按钮操作 */
    handleDelete(row) {