From cfd8d4c470cc6db6f6689ebf01eae07e47a46990 Mon Sep 17 00:00:00 2001
From: 田源 <tianyuan@vci-tech.com>
Date: 星期四, 16 一月 2025 11:09:20 +0800
Subject: [PATCH] 修改个人信息&&添加操作类型

---
 Source/plt-web/plt-web-ui/src/views/system/userInfo/index.vue                                  |  185 +++++++++++++++++++++++++++++++---------------
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue |   15 ++-
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue            |    6 
 Source/plt-web/plt-web-ui/src/views/system/department/index.vue                                |    2 
 Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue              |    2 
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue                           |   14 +-
 6 files changed, 146 insertions(+), 78 deletions(-)

diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue
index 3f57118..ec607dd 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue
@@ -675,7 +675,7 @@
         editBtn: this.vaildData(this.permission[this.$route.query.id].EDIT, false),
         exportBtn: this.vaildData(this.permission[this.$route.query.id].EXPORT, false),
         importBtn: this.vaildData(this.permission[this.$route.query.id].IMPORT, false),
-        downloadImportTemplateBtn: this.vaildData(this.permission[this.$route.query.id].DOWNLOADFILE, false),
+        downloadImportTemplateBtn: this.vaildData(this.permission[this.$route.query.id].DOWNLOAD, false),
         viewTheScopeBtn: this.vaildData(this.permission[this.$route.query.id].VIRTUALVIEW, false),
       };
     },
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue
index 3e14dae..7be280b 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue
@@ -253,13 +253,13 @@
         editBtn: this.vaildData(this.permission[this.$route.query.id].EDIT, false),
         exportBtn: this.vaildData(this.permission[this.$route.query.id].EXPORT, false),
         importBtn: this.vaildData(this.permission[this.$route.query.id].IMPORT, false),
-        actionTopAddBtn: this.vaildData(this.permission[this.$route.query.id].USE, false),
-        actionTopDelBtn: this.vaildData(this.permission[this.$route.query.id].RESET, false),
-        actionTopEditBtn: this.vaildData(this.permission[this.$route.query.id].RECYCLE, false),
-        actionTopExportBtn: this.vaildData(this.permission[this.$route.query.id].DOWNLOADFILE, false),
-        actionBottomAddBtn: this.vaildData(this.permission[this.$route.query.id].FREEZE, false),
-        actionBottomDelBtn: this.vaildData(this.permission[this.$route.query.id].BATCHAPPLY, false),
-        actionBottomEditBtn: this.vaildData(this.permission[this.$route.query.id].CODEAPPLY, false),
+        actionTopAddBtn: this.vaildData(this.permission[this.$route.query.id].ADD2, false),
+        actionTopDelBtn: this.vaildData(this.permission[this.$route.query.id].DELETE2, false),
+        actionTopEditBtn: this.vaildData(this.permission[this.$route.query.id].EDIT2, false),
+        actionTopExportBtn: this.vaildData(this.permission[this.$route.query.id].DOWNLOAD, false),
+        actionBottomAddBtn: this.vaildData(this.permission[this.$route.query.id].ADD3, false),
+        actionBottomDelBtn: this.vaildData(this.permission[this.$route.query.id].DELETE3, false),
+        actionBottomEditBtn: this.vaildData(this.permission[this.$route.query.id].EDIT3, false),
       };
     },
     treeCrudOption(){
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue
index 15a8daa..5e14d9b 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue
@@ -165,7 +165,8 @@
                   <span slot-scope="{ node, data }" class="el-tree-node__label">
                     <span style="display: flex">
                       <i v-if="data.oId=='parentNode'" class="iconShow el-icon-s-home"></i>
-                      <icon-show v-if="data.oId!='parentNode' && data.iconPath && data.iconPath!='undefined'" :name="data.iconPath"></icon-show>
+                      <icon-show v-if="data.oId!='parentNode' && data.iconPath && data.iconPath!='undefined'"
+                                 :name="data.iconPath"></icon-show>
                         {{ (node || {}).label }}
                     </span>
                   </span>
@@ -226,7 +227,9 @@
                       </el-radio>
                     </el-form-item>
                   </el-col>
-                  <el-col :span="24" v-show="basicForm.show=='0' && (basicForm.displayMode=='image'||basicForm.displayMode=='textandimage')">
+                  <el-col
+                    v-show="basicForm.show=='0' && (basicForm.displayMode=='image'||basicForm.displayMode=='textandimage')"
+                    :span="24">
                     <el-form-item :class="basicForm.displayMode==='image'?'is-required':''" label="鍥炬爣锛�" prop="iconPath">
                       <input-icon v-model="basicForm.iconPath" :disabled="disabledBtn"></input-icon>
                     </el-form-item>
@@ -479,7 +482,7 @@
             label: '搴忓彿',
             prop: 'seq',
             width: 100,
-            type:'number',
+            type: 'number',
             labelWidth: 110,
             hide: false,
             rules: [
@@ -890,9 +893,9 @@
     ...mapGetters(["permission"]),
     permissionChildrenList() {
       return {
-        UiPageLayoutAddBtn: this.vaildData(this.permission[this.$route.query.id].CLSRIGHT, false),
-        UiPageLayoutEditBtn: this.vaildData(this.permission[this.$route.query.id].DATARIGHT, false),
-        UiPageLayoutDelBtn: this.vaildData(this.permission[this.$route.query.id].ATTRRIGHT, false),
+        UiPageLayoutAddBtn: this.vaildData(this.permission[this.$route.query.id].ADD3, false),
+        UiPageLayoutEditBtn: this.vaildData(this.permission[this.$route.query.id].EDIT3, false),
+        UiPageLayoutDelBtn: this.vaildData(this.permission[this.$route.query.id].DELETE3, false),
         UiPageLayoutCloneBtn: this.vaildData(this.permission[this.$route.query.id].CLONE, false),
         UiPageLayoutDesignBtn: this.vaildData(this.permission[this.$route.query.id].UPLOAD, false),
       }
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue
index d9641f4..0a87d9b 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue
@@ -227,9 +227,9 @@
     ...mapGetters(["permission"]),
     permissionChildrenList() {
       return {
-        UiTabAddBtn: this.vaildData(this.permission[this.$route.query.id].BATCHAPPLY, false),
-        UiTabEditBtn: this.vaildData(this.permission[this.$route.query.id].BATCHUPDATE, false),
-        UiTabDelBtn: this.vaildData(this.permission[this.$route.query.id].DOWNLOADFILE, false),
+        UiTabAddBtn: this.vaildData(this.permission[this.$route.query.id].ADD2, false),
+        UiTabEditBtn: this.vaildData(this.permission[this.$route.query.id].EDIT2, false),
+        UiTabDelBtn: this.vaildData(this.permission[this.$route.query.id].DELETE2, false),
         UiTabCloneBtn: this.vaildData(this.permission[this.$route.query.id].CLONE, false),
       }
     }
diff --git a/Source/plt-web/plt-web-ui/src/views/system/department/index.vue b/Source/plt-web/plt-web-ui/src/views/system/department/index.vue
index 8f6cebd..19a7468 100644
--- a/Source/plt-web/plt-web-ui/src/views/system/department/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/system/department/index.vue
@@ -186,7 +186,7 @@
         editBtn: this.vaildData(this.permission[this.$route.query.id].EDIT, false),
         assignMembersBtn: this.vaildData(this.permission[this.$route.query.id].FREEZE, false),
         departmentAddChildrenBtn: this.vaildData(this.permission[this.$route.query.id].ADD, false),
-        downloadImportTemplateBtn: this.vaildData(this.permission[this.$route.query.id].DOWNLOADFILE, false),
+        downloadImportTemplateBtn: this.vaildData(this.permission[this.$route.query.id].DOWNLOAD, false),
         importDepartmentBtn: this.vaildData(this.permission[this.$route.query.id].MGR, false),
         statisticsBtn: this.vaildData(this.permission[this.$route.query.id].DISCARD, false),
       };
diff --git a/Source/plt-web/plt-web-ui/src/views/system/userInfo/index.vue b/Source/plt-web/plt-web-ui/src/views/system/userInfo/index.vue
index c74a424..75d83c8 100644
--- a/Source/plt-web/plt-web-ui/src/views/system/userInfo/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/system/userInfo/index.vue
@@ -1,25 +1,55 @@
 <template>
   <div>
     <basic-container>
-      <avue-form
-        ref="form"
-        v-model="form"
-        :option="option"
-        @submit="handleSubmit"
-        @tab-click="handleTabClick">
-        <template slot="avatar" slot-scope="{disabled,size}">
-          <div>
-            <userAvatar :avatar="form.avatar"/>
-          </div>
-        </template>
-      </avue-form>
+      <el-tabs v-model="index" @tab-click="handleTabClick">
+        <el-tab-pane label="涓汉淇℃伅" name="0">
+          <el-form ref="userForm" :model="userForm" :rules="userRules" label-width="90px" size="small">
+            <el-form-item label="澶村儚锛�">
+              <userAvatar :avatar="userForm.avatar"/>
+            </el-form-item>
+            <el-form-item label="鐢ㄦ埛鍚嶏細">
+              <el-input v-model="userForm.userId" :disabled="true"></el-input>
+            </el-form-item>
+            <el-form-item label="濮撳悕锛�" prop="userName">
+              <el-input v-model="userForm.userName"></el-input>
+            </el-form-item>
+            <el-form-item label="褰撳墠瑙掕壊锛�">
+              <el-input v-model="userForm.personName" :disabled="true"></el-input>
+            </el-form-item>
+            <el-form-item label="閭锛�">
+              <el-input v-model="userForm.email"></el-input>
+            </el-form-item>
+            <el-form-item>
+              <el-button type="primary" @click="userSubmit">鎻愪氦</el-button>
+              <el-button @click="handleWitch">娓呯┖</el-button>
+            </el-form-item>
+          </el-form>
+        </el-tab-pane>
+        <el-tab-pane label="淇敼瀵嗙爜" name="1">
+          <el-form ref="passWordForm" :model="passWordForm" :rules="rules" label-width="145px" size="small">
+            <el-form-item label="鐧婚檰瀵嗙爜锛�" prop="oldPassword">
+              <el-input v-model="passWordForm.oldPassword"></el-input>
+            </el-form-item>
+            <el-form-item label="鏂扮櫥闄嗗瘑鐮侊細" prop="password">
+              <el-input v-model="passWordForm.password"></el-input>
+            </el-form-item>
+            <el-form-item label="鏂板瘑鐮佺櫥闄嗙‘璁わ細" prop="confirmPassword">
+              <el-input v-model="passWordForm.confirmPassword"></el-input>
+            </el-form-item>
+            <el-form-item>
+              <el-button type="primary" @click="passWordSubmit">鎻愪氦</el-button>
+              <el-button @click="handleWitch">娓呯┖</el-button>
+            </el-form-item>
+          </el-form>
+        </el-tab-pane>
+      </el-tabs>
     </basic-container>
   </div>
 </template>
 
 <script>
 import option from "@/option/user/info";
-import { updateUser } from "@/api/system/user/api";
+import {updateUser} from "@/api/system/user/api";
 import func from "../../../util/func";
 import {changePassword} from "../../../api/user"
 import userAvatar from "./userAvatar";
@@ -30,9 +60,26 @@
   components: {userAvatar,},
   data() {
     return {
-      index: 0,
+      index: '0',
       option: option,
-      form: {}
+      userForm: {},
+      passWordForm: {},
+      userRules: {
+        userName: [
+          {required: true, message: '璇疯緭鍏ュ瘑鐮�', trigger: 'blur'},
+        ],
+      },
+      rules: {
+        oldPassword: [
+          {required: true, message: '璇疯緭鍏ュ瘑鐮�', trigger: 'blur'},
+        ],
+        password: [
+          {required: true, message: '璇疯緭鍏ュ瘑鐮�', trigger: 'blur'},
+        ],
+        confirmPassword: [
+          {required: true, message: '璇疯緭鍏ュ瘑鐮�', trigger: 'blur'},
+        ],
+      }
     };
   },
   computed: {
@@ -42,56 +89,74 @@
     this.handleWitch();
   },
   methods: {
-    handleSubmit(form, done) {
-      if (this.index === 0) {
-        updateUser(form).then(res => {
-          if (res.data.success) {
-            this.$message({
-              type: "success",
-              message: "淇敼淇℃伅鎴愬姛!"
-            });
-          } else {
-            this.$message({
-              type: "error",
-              message: res.data.msg
-            });
-          }
-          done();
-        }, error => {
-          done();
-        })
-      } else {
-        let userInfo = JSON.parse(localStorage.getItem('saber-userInfo'));
-        let params = {
-          userName: userInfo.content.userId,
-          oldPassword: func.encryptData(form.oldPassword, 'daliantan0v0vcip'),
-          password: func.encryptData(form.password, 'daliantan0v0vcip'),
-          confirmPassword: func.encryptData(form.confirmPassword, 'daliantan0v0vcip'),
-
-        }
-        changePassword(params).then(res => {
-          if (res.data.code === 200) {
-            this.$message.success(res.data.msg);
-            this.passwordVisible = false;
-            this.$store.dispatch("LogOut").then(() => {
-              resetRouter();
-              this.$router.push({path: "/login"});
-            });
-          }
-        }).catch(err => {
-          console.log(err);
-        })
-      }
-    },
     handleWitch() {
-      if (this.index === 0) {
-        this.form = {...this.userInfo};
+      if (this.index === '0') {
+        const {avatar, userId, userName, email, personName} = this.userInfo;
+        this.userForm = {avatar, userId, userName, email, personName};
+      } else {
+        this.passWordForm = {};
+        this.$refs.passWordForm.clearValidate();
       }
     },
     handleTabClick(tabs) {
-      this.index = func.toInt(tabs.index);
+      this.index = tabs.index
       this.handleWitch();
-      this.$refs.form.resetFields();
+    },
+
+    userSubmit() {
+      console.log('123')
+      this.$refs.userForm.validate((valid) => {
+        if (valid) {
+          const params = {
+            id: this.userInfo.userId,
+            name: this.userForm.userName,
+            email: this.userForm.email
+          }
+          updateUser(params).then(res => {
+            if (res.data.success) {
+              this.$message({
+                type: "success",
+                message: "淇敼淇℃伅鎴愬姛!"
+              });
+            } else {
+              this.$message({
+                type: "error",
+                message: res.data.msg
+              });
+            }
+            done();
+          })
+        } else {
+          return false;
+        }
+      });
+    },
+    passWordSubmit() {
+      this.$refs.passWordForm.validate((valid) => {
+        if (valid) {
+          let userInfo = JSON.parse(localStorage.getItem('saber-userInfo'));
+          let params = {
+            userName: userInfo.content.userId,
+            oldPassword: func.encryptData(this.passWordForm.oldPassword, 'daliantan0v0vcip'),
+            password: func.encryptData(this.passWordForm.password, 'daliantan0v0vcip'),
+            confirmPassword: func.encryptData(this.passWordForm.confirmPassword, 'daliantan0v0vcip'),
+
+          }
+          changePassword(params).then(res => {
+            if (res.data.code === 200) {
+              this.$message.success(res.data.msg);
+              this.$store.dispatch("LogOut").then(() => {
+                resetRouter();
+                this.$router.push({path: "/login"});
+              });
+            }
+          }).catch(err => {
+            console.log(err);
+          })
+        } else {
+          return false;
+        }
+      });
     }
   }
 };

--
Gitblit v1.9.3