浏览代码

Merge remote-tracking branch 'origin/master'

Administrator 3 年之前
父节点
当前提交
7f61eacb47
共有 3 个文件被更改,包括 138 次插入27 次删除
  1. 12 0
      ruoyi-ui/src/api/system/user.js
  2. 102 22
      ruoyi-ui/src/views/phone/phons/index.vue
  3. 24 5
      ruoyi-ui/src/views/phone/smsstee/index.vue

+ 12 - 0
ruoyi-ui/src/api/system/user.js

@@ -10,6 +10,18 @@ export function listUser(query) {
   })
   })
 }
 }
 
 
+
+
+// 查询用户列表
+export function listOueng(query) {
+  return request({
+    url: '/system/user/listForDept',
+    method: 'get',
+    params: query
+  })
+}
+
+
 // 查询用户详细
 // 查询用户详细
 export function getUser(userId) {
 export function getUser(userId) {
   return request({
   return request({

+ 102 - 22
ruoyi-ui/src/views/phone/phons/index.vue

@@ -2,7 +2,7 @@
   <div class="app-container">
   <div class="app-container">
     <el-row :gutter="20">
     <el-row :gutter="20">
       <!--部门数据-->
       <!--部门数据-->
-      <el-col :span="4" :xs="24" style="margin-top: 40px;">
+      <el-col :span="24" :xs="24" style="margin-top: 20px; margin-bottom: 20px; text-align: right;">
         <!-- <div class="head-container">
         <!-- <div class="head-container">
           <el-input
           <el-input
             v-model="deptName"
             v-model="deptName"
@@ -25,15 +25,46 @@
           />
           />
         </div> -->
         </div> -->
 
 
-        </el-tab-pane>
+        <!-- </el-tab-pane> -->
+        <el-button type="primary" @click="handleExport">短 信 设 置</el-button>
       </el-col>
       </el-col>
       <el-col :span="24" :xs="24">
       <el-col :span="24" :xs="24">
          <el-form ref="form" :model="form" :rules="rules" label-width="80px">
          <el-form ref="form" :model="form" :rules="rules" label-width="80px">
           <el-row>
           <el-row>
             <el-col :span="24">
             <el-col :span="24">
               <el-form-item label="选择用户">
               <el-form-item label="选择用户">
+               <!-- <div>
+                <el-input
+                    v-model="deptName"
+                    placeholder="请输入用户名称"
+                    clearable
+                    size="small"
+                    prefix-icon="el-icon-search"
+                    style="margin-bottom: 20px"
+                  />
+                </div> -->
+                <!-- <div class="head-container" >
+                  <div align="right">
+                         <el-checkbox v-model="checked" @change="checkedAll"/> 全选/反选
+                  </div>
+                  <el-tree
+                    show-checkbox
+                    node-key="code"
+                    :data="userList"
+                    :props="defaultProps"
+                    :filter-node-method="filterNode"
+                    ref="tree"
+                    default-expand-all
+                    @node-click="handleNodeClick"
+                  />
+                </div> -->
+                <!-- <treeselect :normalizer="normalizer" :multiple="true" v-model="deptNamety" @select="djieskle" @deselect="deselect" :options="userList"  placeholder="请选择归属部门" /> -->
                   <el-select v-model="deptNamety" :multiple ="true" clearable placeholder="请选择用户" @visible-change = "visiblechange" @change="changetr" @blur="blurkde" filterable>
                   <el-select v-model="deptNamety" :multiple ="true" clearable placeholder="请选择用户" @visible-change = "visiblechange" @change="changetr" @blur="blurkde" filterable>
+                     <div style="margin-left: 20px;">
+                       <el-checkbox v-model="checked" @change="checkedAll"/> 全选/反选
+                     </div>
                       <el-option
                       <el-option
+                        ref="tree"
                         v-for="item in userList"
                         v-for="item in userList"
                         :key="item.userId"
                         :key="item.userId"
                         :label="item.nickName"
                         :label="item.nickName"
@@ -67,8 +98,9 @@
          </el-form>
          </el-form>
       </el-col>
       </el-col>
       <el-col :span="24" :xs="24">
       <el-col :span="24" :xs="24">
-        <div  class="dialog-footer" style="text-align: center; margin-top: 30px;">
+        <div  class="dialog-footer" style="text-align: right; margin-top: 30px;">
           <el-button type="primary" @click="submitForm">发 送 短 信</el-button>
           <el-button type="primary" @click="submitForm">发 送 短 信</el-button>
+
         </div>
         </div>
       </el-col>
       </el-col>
       <!--用户数据-->
       <!--用户数据-->
@@ -77,7 +109,7 @@
 </template>
 </template>
 
 
 <script>
 <script>
-import { listUser, getUser, delUser, addUser, updateUser, exportUser, resetUserPwd, changeUserStatus, importTemplate,addPhoen } from "@/api/system/user";
+import { listUser, getUser, delUser, addUser, updateUser, exportUser, resetUserPwd, changeUserStatus, importTemplate,addPhoen,listOueng } from "@/api/system/user";
 import { listSendMessage } from "@/api/system/sendMessage";
 import { listSendMessage } from "@/api/system/sendMessage";
 import { getToken } from "@/utils/auth";
 import { getToken } from "@/utils/auth";
 import { treeselect } from "@/api/system/dept";
 import { treeselect } from "@/api/system/dept";
@@ -91,6 +123,7 @@ export default {
     return {
     return {
       // 遮罩层
       // 遮罩层
       loading: true,
       loading: true,
+      checked:false,
       // 选中数组
       // 选中数组
       ids: [],
       ids: [],
       // 非单个禁用
       // 非单个禁用
@@ -131,7 +164,7 @@ export default {
       form: {},
       form: {},
       defaultProps: {
       defaultProps: {
         children: "children",
         children: "children",
-        label: "label"
+        label: "nickName",
       },
       },
       // 用户导入参数
       // 用户导入参数
       upload: {
       upload: {
@@ -171,7 +204,8 @@ export default {
           { required: true, message: "内容不能为空", trigger: "blur" }
           { required: true, message: "内容不能为空", trigger: "blur" }
         ],
         ],
 
 
-      }
+      },
+      huej:[]
     };
     };
   },
   },
   watch: {
   watch: {
@@ -198,10 +232,12 @@ export default {
     /** 查询用户列表 */
     /** 查询用户列表 */
     getList() {
     getList() {
       this.loading = true;
       this.loading = true;
-      listUser(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
+      listOueng(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
           this.userList = response.rows;
           this.userList = response.rows;
+          // this.userList = this.handleTree(response.rows, "id");
           this.total = response.total;
           this.total = response.total;
           this.loading = false;
           this.loading = false;
+          // console.log(this.userList)
           //
           //
         }
         }
       );
       );
@@ -221,21 +257,63 @@ export default {
         this.deptOptions = response.data;
         this.deptOptions = response.data;
       });
       });
     },
     },
+    checkedAll(){
+      let juegf = []
+            if (this.checked) {
+              for(var i = 0 ; i < this.userList.length; i++ ){
+                juegf.push(this.userList[i].userId)
+                console.log(juegf)
+              }
+              this.deptNamety = juegf
+              this.form.userList = this.userList
+                //全选
+                // this.$refs.tree.setCheckedNodes(this.userList);
+                console.log(this.userList)
+            }else{
+                //取消选中
+                this.deptNamety = ''
+                this.form.userList = []
+                // this.$refs.tree.setCheckedKeys([]);
+            }
+    },
     // 筛选节点
     // 筛选节点
     filterNode(value, data) {
     filterNode(value, data) {
+      // console.log(value,data)
       if (!value) return true;
       if (!value) return true;
-      return data.label.indexOf(value) !== -1;
+      return data.nickName.indexOf(value) !== -1;
     },
     },
     // 节点单击事件
     // 节点单击事件
     handleNodeClick(data) {
     handleNodeClick(data) {
-      this.queryParams.deptId = data.id;
-      this.getList();
+      // this.queryParams.deptId = data.id;
+      // this.getList();
+      console.log(data)
     },
     },
     // 下拉框出现/隐藏时触发
     // 下拉框出现/隐藏时触发
     visiblechange(val){
     visiblechange(val){
      console.log(val)
      console.log(val)
     },
     },
+    djieskle(node, instanceId) {
+      // this.personnel(node.id);
+     // let huej = []
+      this.huej.push(node)
+      this.form.userList = this.huej
+      console.log(node, instanceId);
+      console.log(this.form.userList);
+    },
+    deselect(node, instanceId){
+      if(this.form.userList !== undefined){
+        for (let i = this.form.userList.length - 1; i >= 0; i--) {
+          if (this.form.userList[i].userId == node.userId) {
+            this.form.userList.splice(i, 1);
+          }
+        }
+      }
+      console.log(this.form.userList);
+     console.log(node, instanceId);
+    },
+
     changetr(val){
     changetr(val){
+      console.log(this.deptNamety)
       let name = []
       let name = []
       let huej = []
       let huej = []
       name = val
       name = val
@@ -266,6 +344,15 @@ export default {
       console.log(val)
       console.log(val)
       console.log(huej)
       console.log(huej)
     },
     },
+    normalizer(node) {
+      // if (node.children && !node.children.length) {
+      //   delete node.children;
+      // }
+      return {
+        id: node.userId,
+        label: node.nickName,
+      };
+    },
     changetrtwo(val){
     changetrtwo(val){
       console.log(val)
       console.log(val)
       this.form.textMessageId = val
       this.form.textMessageId = val
@@ -378,8 +465,8 @@ export default {
         this.msgSuccess("请选择短信模板");
         this.msgSuccess("请选择短信模板");
         return  false
         return  false
       }
       }
-      
-      
+
+
       if(this.form.content == undefined){
       if(this.form.content == undefined){
         this.msgSuccess("请输入短信内容");
         this.msgSuccess("请输入短信内容");
         return  false
         return  false
@@ -416,16 +503,9 @@ export default {
     },
     },
     /** 导出按钮操作 */
     /** 导出按钮操作 */
     handleExport() {
     handleExport() {
-      const queryParams = this.queryParams;
-      this.$confirm('是否确认导出所有用户数据项?', "警告", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(function() {
-          return exportUser(queryParams);
-        }).then(response => {
-          this.download(response.msg);
-        })
+      this.$router.push({
+        path: '../../phone/smsstee',
+      })
     },
     },
     /** 导入按钮操作 */
     /** 导入按钮操作 */
     handleImport() {
     handleImport() {

+ 24 - 5
ruoyi-ui/src/views/phone/smsstee/index.vue

@@ -85,7 +85,7 @@
           v-hasPermi="['system:sendMessage:remove']"
           v-hasPermi="['system:sendMessage:remove']"
         >删除</el-button>
         >删除</el-button>
       </el-col>
       </el-col>
-      <el-col :span="1.5">
+      <!-- <el-col :span="1.5">
         <el-button
         <el-button
           type="warning"
           type="warning"
           plain
           plain
@@ -94,7 +94,7 @@
           @click="handleExport"
           @click="handleExport"
           v-hasPermi="['system:sendMessage:export']"
           v-hasPermi="['system:sendMessage:export']"
         >跳转</el-button>
         >跳转</el-button>
-      </el-col>
+      </el-col> -->
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
     </el-row>
 
 
@@ -102,6 +102,7 @@
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="编号" align="center" prop="id" />
       <el-table-column label="编号" align="center" prop="id" />
       <el-table-column label="密钥ID" align="center" prop="accessKeyId" />
       <el-table-column label="密钥ID" align="center" prop="accessKeyId" />
+      <el-table-column label="短信通道" align="center" prop="messageOperators" />
       <el-table-column label="验证用户的密钥" align="center" prop="accessKeySecret" />
       <el-table-column label="验证用户的密钥" align="center" prop="accessKeySecret" />
       <el-table-column label="签名" align="center" prop="signName" />
       <el-table-column label="签名" align="center" prop="signName" />
       <el-table-column label="短信模板" align="center" prop="templateCode" />
       <el-table-column label="短信模板" align="center" prop="templateCode" />
@@ -136,6 +137,17 @@
     <!-- 添加或修改短信设置对话框 -->
     <!-- 添加或修改短信设置对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
     <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="150px">
       <el-form ref="form" :model="form" :rules="rules" label-width="150px">
+        <el-form-item label="短信通道" prop="messageOperators">
+          <!-- <el-input v-model="form.accessKeyId" placeholder="请输入短信通道" /> -->
+          <el-select v-model="form.messageOperators" placeholder="请选择">
+              <el-option
+                v-for="item in options"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value">
+              </el-option>
+            </el-select>
+        </el-form-item>
         <el-form-item label="密钥ID" prop="accessKeyId">
         <el-form-item label="密钥ID" prop="accessKeyId">
           <el-input v-model="form.accessKeyId" placeholder="请输入密钥ID" />
           <el-input v-model="form.accessKeyId" placeholder="请输入密钥ID" />
         </el-form-item>
         </el-form-item>
@@ -145,8 +157,8 @@
         <el-form-item label="签名" prop="signName">
         <el-form-item label="签名" prop="signName">
           <el-input v-model="form.signName" placeholder="请输入签名" />
           <el-input v-model="form.signName" placeholder="请输入签名" />
         </el-form-item>
         </el-form-item>
-        <el-form-item label="短信模板" prop="templateCode">
-          <el-input v-model="form.templateCode" placeholder="请输入短信模板" />
+        <el-form-item label="短信模板Code" prop="templateCode">
+          <el-input v-model="form.templateCode" placeholder="请输入短信模板Code,例如SMS_219525380" />
         </el-form-item>
         </el-form-item>
         <!-- <el-form-item label="是否删除" prop="isDel">
         <!-- <el-form-item label="是否删除" prop="isDel">
           <el-input v-model="form.isDel" placeholder="请输入是否删除" />
           <el-input v-model="form.isDel" placeholder="请输入是否删除" />
@@ -173,6 +185,10 @@ export default {
       loading: true,
       loading: true,
       // 选中数组
       // 选中数组
       ids: [],
       ids: [],
+      options:[{
+          value: '阿里云',
+          label: '阿里云'
+        },],
       // 非单个禁用
       // 非单个禁用
       single: true,
       single: true,
       // 非多个禁用
       // 非多个禁用
@@ -201,8 +217,11 @@ export default {
       form: {},
       form: {},
       // 表单校验
       // 表单校验
       rules: {
       rules: {
+        messageOperators:[
+          { required: true, message: "短信通道不能为空", trigger: "blur" }
+        ],
         accessKeyId: [
         accessKeyId: [
-          { required: true, message: "标识用户不能为空", trigger: "blur" }
+          { required: true, message: "密钥ID不能为空", trigger: "blur" }
         ],
         ],
         accessKeySecret: [
         accessKeySecret: [
           { required: true, message: "验证用户密钥不能为空", trigger: "blur" }
           { required: true, message: "验证用户密钥不能为空", trigger: "blur" }