WXL
2023-12-15 4e32f1188e9d0cafd3511994d2d13617ca6e08f9
src/views/shortmessage/healthinformation/index.vue
@@ -65,11 +65,28 @@
              v-show="showSearch"
              label-width="98px"
            >
              <el-form-item label="通知类型" prop="userName">
              <el-form-item label="适用科室" prop="userName">
                <el-select
                  v-model="queryParams.statustype"
                  v-model="queryParams.administrative"
                  placeholder="请选择"
                >
                  <el-option
                    v-for="item in optionks"
                    :key="item.value"
                    :label="item.label"
                    :value="item.value"
                  >
                  </el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="通知标题" prop="userName">
                <el-input
                  v-model="queryParams.title"
                  placeholder="请输入内容"
                ></el-input>
              </el-form-item>
              <el-form-item label="内容形式" prop="userName">
                <el-select v-model="queryParams.shape" placeholder="请选择">
                  <el-option
                    v-for="item in options"
                    :key="item.value"
@@ -79,8 +96,19 @@
                  </el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="通知方式" prop="status">
                <el-select v-model="queryParams.status" placeholder="请选择">
              <el-form-item label="适用方式" prop="status">
                <el-select v-model="queryParams.way" placeholder="请选择">
                  <el-option
                    v-for="item in optionsfs"
                    :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.usable" placeholder="请选择">
                  <el-option
                    v-for="item in optionss"
                    :key="item.value"
@@ -156,11 +184,7 @@
              <!-- <el-col :span="1.5"> </el-col> -->
            </el-row>
            <!-- <right-toolbar
          :showSearch.sync="showSearch"
          @queryTable="getList"
          :columns="columns"
        ></right-toolbar> -->
            <el-table
              v-loading="loading"
              :data="userList"
@@ -175,7 +199,7 @@
                prop="userId"
              />
              <el-table-column
                label="通知方式"
                label="通知标题"
                align="center"
                key="userName"
                prop="userName"
@@ -184,8 +208,9 @@
              <el-table-column
                label="通知内容"
                align="center"
                key="nickName"
                prop="nickName"
                width="150"
                key="informvalue"
                prop="informvalue"
                :show-overflow-tooltip="true"
              />
              <el-table-column
@@ -210,7 +235,28 @@
                width="120"
              />
              <el-table-column
                label="内容形式"
                align="center"
                key="shape"
                prop="shape"
                width="120"
              />
              <el-table-column
                label="发送方式"
                align="center"
                key="bphonenumber"
                prop="bphonenumber"
                width="120"
              />
              <el-table-column
                label="可用状态"
                align="center"
                key="usable"
                prop="usable"
                width="120"
              />
              <el-table-column
                label="最近修改"
                align="center"
                key="cphonenumber"
                prop="cphonenumber"
@@ -224,16 +270,6 @@
                class-name="small-padding fixed-width"
              >
                <template slot-scope="scope">
                  <el-button
                    size="medium"
                    type="text"
                    @click="goQRCode(scope.row)"
                    v-hasPermi="['system:user:edit']"
                  >
                    <span class="button-text"
                      ><i class="el-icon-edit"></i>二维码</span
                    ></el-button
                  >
                  <el-button
                    size="medium"
                    type="text"
@@ -274,130 +310,172 @@
            />
          </el-col>
        </el-row>
      </div>
    </div>
        <!-- 添加或修改通知配置对话框 -->
        <el-dialog
          :title="title"
          :visible.sync="open"
      :visible.sync="indexopen"
          width="900px"
          append-to-body
        >
          <el-form ref="form" :model="form" :rules="rules" label-width="100px">
      <el-form ref="form" :model="indexform" :rules="rules" label-width="100px">
            <el-row>
              <el-col :span="12">
                <el-form-item label="姓名" prop="nickName">
            <el-form-item label="通知标题" prop="deptId">
                  <el-input
                    v-model="form.nickName"
                    placeholder="请输入姓名"
                    maxlength="30"
                v-model="indexform.name"
                placeholder="请输入"
                maxlength="40"
                  />
                </el-form-item>
              </el-col>
          <el-col :span="6">
            <el-form-item label="版本号" prop="deptId">
              <el-input
                v-model="indexform.versions"
                placeholder="请输入"
                maxlength="40"
              />
            </el-form-item>
          </el-col>
        </el-row>
        <el-row>
              <el-col :span="12">
                <el-form-item label="性别" prop="deptId">
                  <el-select v-model="form.sex" placeholder="请选择性别">
            <el-form-item label="语言" prop="deptId">
              <el-select v-model="indexform.language" placeholder="请选择语言">
                    <el-option
                      v-for="dict in dict.type.sys_user_sex"
                      :key="dict.value"
                      :label="dict.label"
                      :value="dict.value"
                  v-for="index in languagelist"
                  :key="index.value"
                  :label="index.label"
                  :value="index.value"
                ></el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="12">
            <el-form-item label="是否可用" prop="deptId">
              <el-select v-model="indexform.useofstateky" placeholder="请选择">
                <el-option
                  v-for="index in optionss"
                  :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="12">
                <el-form-item label="证件类型" prop="phonenumber">
          <el-col :span="24">
            <el-form-item label="通知内容" prop="nickName">
                  <el-input
                    v-model="form.phonenumber"
                    placeholder="请选择证件类型"
                    maxlength="11"
                type="textarea"
                v-model="indexform.nickName"
                placeholder="请输入通知内容"
                maxlength="80"
                  />
                </el-form-item>
            </el-form-item> </el-col
        ></el-row>
        <el-form-item label="通知变量" prop="name">
          <el-row v-for="item in variablelist">
            <el-col :span="4">
              <el-input v-model="item.variable"></el-input>
              </el-col>
              <el-col :span="12">
                <el-form-item label="证件号" prop="email">
                  <el-input
                    v-model="form.email"
                    placeholder="请输入证件号"
                    maxlength="50"
                  />
                </el-form-item>
            <el-col :span="8" :offset="1">
              <el-input v-model="item.value"></el-input>
            </el-col>
            <el-col :span="4" :offset="1">
              <el-button
                type="success"
                icon="el-icon-plus"
                circle
                @click="addvariable(item)"
              ></el-button>
              <el-button
                type="danger"
                icon="el-icon-delete"
                circle
                @click="delvariable(item)"
              ></el-button>
              </el-col>
            </el-row>
        </el-form-item>
            <el-row>
              <el-col :span="12">
                <el-form-item label="本人手机号" prop="userName">
                  <el-input
                    v-model="form.userName"
                    placeholder="请输入手机号"
                    maxlength="30"
                  />
            <el-form-item label="适用疾病" prop="userName">
              <el-select
                v-model="indexform.useofstate"
                multiple
                placeholder="请选择(多选)"
              >
                <el-option
                  v-for="index in optionks"
                  :key="index.value"
                  :label="index.label"
                  :value="index.value"
                ></el-option>
              </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="12">
                <el-form-item label="亲属手机号" prop="password">
                  <el-input
                    v-model="form.password"
                    placeholder="请输入亲属手机号"
                    type="password"
                    maxlength="20"
                    show-password
                  />
                </el-form-item>
              </el-col>
            </el-row>
            <el-row>
              <el-col :span="12">
                <el-form-item label="患者标签">
                  <el-cascader
                    :options="optionss"
                    :props="propss"
                    clearable
                  ></el-cascader>
            <el-form-item label="适用科室" prop="userName">
              <el-select
                v-model="indexform.useofstateks"
                multiple
                placeholder="请选择(多选)"
              >
                <el-option
                  v-for="index in optionks"
                  :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="备注">
                  <el-input
                    v-model="form.remark"
                    type="textarea"
                    placeholder="请输入内容"
                  ></el-input>
          <el-col :span="12">
            <el-form-item label="适用方式" prop="email">
              <el-select
                v-model="indexform.useofstatefs"
                multiple
                placeholder="请选择(多选)"
              >
                <el-option
                  v-for="index in optionsfs"
                  :key="index.value"
                  :label="index.label"
                  :value="index.value"
                ></el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="12">
            <el-form-item label="内容形式" prop="email">
              <el-select
                v-model="indexform.useofstatexs"
                multiple
                placeholder="请选择(多选)"
              >
                <el-option
                  v-for="index in options"
                  :key="index.value"
                  :label="index.label"
                  :value="index.value"
                ></el-option>
              </el-select>
                </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>
    <!-- 添加类别弹框 -->
    <el-dialog
      :title="amendtag ? '修改类别' : '新增类别'"
      width="30%"
      :visible.sync="dialogFormVisible"
    >
      <el-form :model="classifyform">
        <el-form-item
          :label="amendtag ? '请输入新的类别名称' : '请输入类别名称'"
        >
          <el-input
            v-model="classifyform.categoryname"
            autocomplete="off"
          ></el-input>
        </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button @click="dialogFormVisible = false">取 消</el-button>
        <el-button type="primary" @click="submitsidecolumn">确 定</el-button>
      </div>
    </el-dialog>
    <!-- 删除类别确认框 -->
@@ -456,17 +534,30 @@
      showSearch: true,
      // 总条数
      total: 0,
      indexopen: false, //弹框展示否
      // 添加、修改参数
      indexform: {},
      namequestionnaire: "",
      haoquestionnaire: "",
      variablelist: [
        {
          variable: "paitent",
          value: "表示患者的标识",
        },
      ],
      // 用户表格数据
      userList: [
        {
          userid: 1,
          userName: "三号通知",
          informvalue: "这个通知很重要啊很重要",
          nickName: "1.2.4",
          aphonenumber: "关节炎症",
          bphonenumber: "很棒",
          bphonenumber: "骨科",
          shape: "文字、图片",
          transmitmode: "钉钉、微信",
          cphonenumber: "2022-12-12 ",
          usable: "可用",
        },
      ],
      // 弹出层标题
@@ -498,11 +589,31 @@
      optionss: [
        {
          value: 1,
          label: "可用",
        },
        {
          value: 2,
          label: "禁用",
        },
      ],
      optionsfs: [
        {
          value: 1,
          label: "短信",
        },
        {
          value: 2,
          label: "微信/钉钉",
        },
      ],
      optionks: [
        {
          value: 1,
          label: "心内科",
        },
        {
          value: 2,
          label: "胸外科",
        },
      ],
      options: [
@@ -695,6 +806,22 @@
        this.optionsvalue = [];
      }
    },
    // 新增变量
    addvariable() {
      this.variablelist.push({
        variable: "",
        value: "",
      });
    },
    // 删除变量
    delvariable(item) {
      const index = this.variablelist.indexOf(item);
      if (index !== -1) {
        this.variablelist.splice(index, 1); // 从索引位置删除一个元素
      } else {
        console.log("未找到该对象");
      }
    },
    //删除分类
    deletefenlei(row) {
      if (this.deleteVisible) {
@@ -763,24 +890,18 @@
    },
    /** 新增按钮操作 */
    handleAdd() {
      this.$router.push({
        path: "/knowledge/questionnaire/compilequer/",
      });
      this.reset();
      this.title = "新增通知";
      this.indexopen = true;
    },
    /** 修改按钮操作 */
    handleUpdate(row) {
      this.$router.push({
        path: "/knowledge/questionnaire/compilequer/",
        query: { id: "1" },
      });
      this.reset();
      this.title = "通知详情";
      this.indexopen = true;
    },
    // 查看通知
    ViewQuestionnaire() {
      this.$router.push({
        path: "/knowledge/questionnaire/examine/",
        query: { id: "1" },
      });
    },
    // 查看
    ViewQuestionnaire() {},
    /** 更新/修改提交按钮 */
    submitForm: function () {