From 082613d446e29e4ec1c16bfaa52345106a498b23 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 08 Nov 2022 09:03:49 +0800
Subject: [PATCH] 农事操作隐藏后四个,地图模式2d改为3d

---
 src/views/system/user.vue |  142 ++++++++++++++++++++++++++++++++++------------
 1 files changed, 104 insertions(+), 38 deletions(-)

diff --git a/src/views/system/user.vue b/src/views/system/user.vue
index 9dfd586..1563cdb 100644
--- a/src/views/system/user.vue
+++ b/src/views/system/user.vue
@@ -31,13 +31,13 @@
                    @refresh-change="refreshChange"
                    @on-load="onLoad">
           <template slot-scope="{type,row,size}" slot="menu">
-            <el-button 
+            <el-button
               :type="type"
               :size="size"
               icon="el-icon-edit"
               :disabled="row.roleId == '1123598816738675201' "
               @click="update(row)">编辑</el-button>
-            <el-button 
+            <el-button
               :type="type"
               :size="size"
               icon="el-icon-delete"
@@ -52,13 +52,13 @@
                        v-if="permission.user_delete"
                        @click="handleDelete">删 除
             </el-button>
-            <el-button type="info"
-                       size="small"
-                       plain
-                       v-if="permission.user_role"
-                       icon="el-icon-user"
-                       @click="handleGrant">角色配置
-            </el-button>
+<!--            <el-button type="info"-->
+<!--                       size="small"-->
+<!--                       plain-->
+<!--                       v-if="permission.user_role"-->
+<!--                       icon="el-icon-user"-->
+<!--                       @click="handleGrant">角色配置-->
+<!--            </el-button>-->
             <el-button type="info"
                        size="small"
                        plain
@@ -66,13 +66,13 @@
                        icon="el-icon-refresh"
                        @click="handleReset">密码重置
             </el-button>
-            <el-button type="info"
-                       size="small"
-                       plain
-                       v-if="userInfo.role_name.includes('admin')"
-                       icon="el-icon-setting"
-                       @click="handlePlatform">平台配置
-            </el-button>
+<!--            <el-button type="info"-->
+<!--                       size="small"-->
+<!--                       plain-->
+<!--                       v-if="userInfo.role_name.includes('admin')"-->
+<!--                       icon="el-icon-setting"-->
+<!--                       @click="handlePlatform">平台配置-->
+<!--            </el-button>-->
             <el-button type="info"
                        size="small"
                        plain
@@ -80,20 +80,20 @@
                        icon="el-icon-coordinate"
                        @click="handleLock">账号解封
             </el-button>
-            <el-button type="success"
-                       size="small"
-                       plain
-                       v-if="userInfo.role_name.includes('admin')"
-                       icon="el-icon-upload2"
-                       @click="handleImport">导入
-            </el-button>
-            <el-button type="warning"
-                       size="small"
-                       plain
-                       v-if="userInfo.role_name.includes('admin')"
-                       icon="el-icon-download"
-                       @click="handleExport">导出
-            </el-button>
+<!--            <el-button type="success"-->
+<!--                       size="small"-->
+<!--                       plain-->
+<!--                       v-if="userInfo.role_name.includes('admin')"-->
+<!--                       icon="el-icon-upload2"-->
+<!--                       @click="handleImport">导入-->
+<!--            </el-button>-->
+<!--            <el-button type="warning"-->
+<!--                       size="small"-->
+<!--                       plain-->
+<!--                       v-if="userInfo.role_name.includes('admin')"-->
+<!--                       icon="el-icon-download"-->
+<!--                       @click="handleExport">导出-->
+<!--            </el-button>-->
           </template>
           <template slot-scope="{row}"
                     slot="tenantName">
@@ -225,7 +225,6 @@
   import {dateNow} from "@/util/date";
   import NProgress from 'nprogress';
   import 'nprogress/nprogress.css';
-
   export default {
     data() {
       const validatePass = (rule, value, callback) => {
@@ -242,6 +241,29 @@
           callback(new Error('两次输入密码不一致!'));
         } else {
           callback();
+        }
+      };
+      const validatePhone = (rule, value, callback) => {
+        if (value){
+          if (!/^[1]([3-9])[0-9]{9}$/.test(value)) {
+            callback(new Error("请输入正确的手机号格式"));
+          } else {
+            callback();
+          }
+        }else {
+          callback();
+        }
+      };
+      const validateEmail = (rule, value, callback) => {
+        const mal = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/
+        if (value){
+          if (!(mal.test(value))) {
+            callback(new Error('请输入正确邮箱'))
+          } else {
+            callback()
+          }
+        }else {
+          callback()
         }
       };
       return {
@@ -349,6 +371,19 @@
               display: false
             },
             {
+              display: false,
+              label: "账号状态",
+              prop: "bannedState",
+              slot: true,
+              dicData: [{
+                label: '已封禁',
+                value: "1"
+              }, {
+                label: '正常',
+                value: "0"
+              }],
+            },
+            {
               label: "所属部门",
               prop: "deptName",
               slot: true,
@@ -416,6 +451,10 @@
                     required: true,
                     message: "请输入登录账号",
                     trigger: "blur"
+                  },{
+                    min: 2,
+                    max: 40,
+                    message: '账号长度在2到40个字符'
                   }],
                 },
                 // {
@@ -441,7 +480,12 @@
                   hide: true,
                   display: false,
                   viewDisplay: false,
-                  rules: [{required: true, validator: validatePass, trigger: 'blur'}]
+                  rules: [{required: true, validator: validatePass, trigger: 'blur'},
+                  {
+                    min: 2,
+                    max: 40,
+                    message: '密码长度在2到40个字符'
+                  }]
                 },
                 {
                   label: '确认密码',
@@ -466,6 +510,10 @@
                     required: true,
                     message: "请输入用户昵称",
                     trigger: "blur"
+                  },{
+                    min: 2,
+                    max: 10,
+                    message: '昵称长度在2到10个字符'
                   }]
                 },
                 {
@@ -484,13 +532,15 @@
                 {
                   label: "手机号码",
                   prop: "phone",
-                  overHidden: true
+                  overHidden: true,
+                  rules: [{required: false, validator: validatePhone, trigger: 'blur'}]
                 },
                 {
                   label: "电子邮箱",
                   prop: "email",
                   hide: true,
-                  overHidden: true
+                  overHidden: true,
+                  rules: [{required: false, validator: validateEmail, trigger: 'blur'}]
                 },
                 {
                   label: "用户性别",
@@ -821,7 +871,10 @@
         row['deptId'] = this.userInfo.dept_id;
         row.roleId = row.roleId.join(",");
         row.farmId = row.farmId.join(",");
-        // row.postId = row.postId.join(",");
+        row.id = null
+        if (!row.sex){
+          row.sex = 3
+        }
         add(row).then(() => {
           this.initFlag = false;
           this.onLoad(this.page);
@@ -854,6 +907,10 @@
         });
       },
       update(row){
+        this.dialogVisible = true
+        this.$nextTick(()=>{
+          this.$refs.form.clearValidate()
+        })
         this.form = {
           id:row.id,
           account:row.account,
@@ -870,12 +927,14 @@
         var password2Column = this.findObject(this.option.group,"password2")
         passwordColumn.display = false;
         password2Column.display = false;
-        this.dialogVisible = true
       },
       submitUpdate(row, done, loading){
         this.form['deptId'] = this.userInfo.dept_id;
         this.form.roleId = this.form.roleId.join(",")
         this.form.farmId = this.form.farmId.join(",")
+        if (!row.sex){
+          row.sex = 3
+        }
         update(this.form).then(() => {
           this.initFlag = false;
           this.onLoad(this.page);
@@ -1005,6 +1064,7 @@
               type: "success",
               message: "操作成功!"
             });
+            this.onLoad(this.page)
           });
       },
       handleImport() {
@@ -1035,13 +1095,14 @@
         })
       },
       beforeOpen(done, type) {
+        this.initFlag = true;
         const column = this.findObject(this.option.group, "farmId");
         var passwordColumn = this.findObject(this.option.group,"password");
         var password2Column = this.findObject(this.option.group,"password2")
         passwordColumn.display = true;
         password2Column.display = true;
         if(type == "add"&& column.dicData == ""){
-          this.form = {}
+          this.form = {id:null}
           this.initData(website.tenantId)
         }
         if (["edit", "view"].includes(type)) {
@@ -1063,7 +1124,12 @@
             // }
           });
         }
-        this.initFlag = true;
+        if (type == "add"){
+          if (this.$refs.form){
+            this.$refs.form.resetForm()
+          }
+          this.form = {id :null }
+        }
         done();
       },
       currentChange(currentPage) {

--
Gitblit v1.9.3