From 83d441347c400bb1fb1cd03f7cce8ae4bcd55852 Mon Sep 17 00:00:00 2001 From: hexiaoyong Date: Mon, 24 Oct 2022 11:32:42 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=84=E7=BB=87=E7=AE=A1=E7=90=86=E3=80=81?= =?UTF-8?q?=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 1 + src/assets/css/index.css | 16 + src/main.js | 2 +- src/page/login/index.vue | 69 +-- src/page/main/develop/account/add/index.vue | 6 +- .../main/develop/account/detail/index.vue | 189 ++++++++ src/page/main/develop/account/index.vue | 31 +- .../system/organization/directory-form.vue | 9 +- src/page/main/system/organization/index.vue | 446 ++++++------------ .../system/organization/org-detail/index.vue | 232 +++++++++ .../main/system/organization/org-form.vue | 8 +- .../organization/platform-user/index.vue | 279 +++++++++++ .../platform-user/platform-account-form.vue | 107 +++++ .../platform-user/platform-person-form.vue | 61 +++ .../system/organization/system-user/index.vue | 280 +++++++++++ .../system-user/system-account-form.vue | 116 +++++ .../system-user/system-person-form.vue | 68 +++ src/page/main/system/organization/tree.vue | 66 ++- .../system/organization/user-detail/index.vue | 189 ++++++++ src/router/function.js | 41 +- vite.config.js | 2 +- yarn.lock | 10 + 22 files changed, 1849 insertions(+), 379 deletions(-) create mode 100644 src/page/main/develop/account/detail/index.vue create mode 100644 src/page/main/system/organization/org-detail/index.vue create mode 100644 src/page/main/system/organization/platform-user/index.vue create mode 100644 src/page/main/system/organization/platform-user/platform-account-form.vue create mode 100644 src/page/main/system/organization/platform-user/platform-person-form.vue create mode 100644 src/page/main/system/organization/system-user/index.vue create mode 100644 src/page/main/system/organization/system-user/system-account-form.vue create mode 100644 src/page/main/system/organization/system-user/system-person-form.vue create mode 100644 src/page/main/system/organization/user-detail/index.vue diff --git a/package.json b/package.json index 402f5a0..49fc32c 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "ace-builds": "^1.9.6", "axios": "^0.21.1", "clipboard": "^2.0.11", + "crypto-js": "^4.1.1", "echarts": "^5.3.3", "element-plus": "^2.2.9", "html2canvas": "^1.4.1", diff --git a/src/assets/css/index.css b/src/assets/css/index.css index 43df1e4..902e8f1 100644 --- a/src/assets/css/index.css +++ b/src/assets/css/index.css @@ -1512,3 +1512,19 @@ border-radius:8px; background: transparent; border-radius: 2px; } +.font_bold { + font-size: 18px; + color: #202531; + font-weight: bold; + margin-bottom: 20px; +} +.name_btn { + color: #3759be; + cursor: pointer; +} +.fr { + float: right; +} +.pl-1 { + padding-left: 1rem; +} diff --git a/src/main.js b/src/main.js index aeaa433..ea61b70 100644 --- a/src/main.js +++ b/src/main.js @@ -40,7 +40,7 @@ import menu from './router/function.js' //获取用户信息 function getUser() { - return axios.get(`/apaas/system/getUserInfo`) + return axios.get(`/apaas/system/v5/user/getUserInfo`) } //处理菜单成为对象 diff --git a/src/page/login/index.vue b/src/page/login/index.vue index a12a68d..db0c09b 100644 --- a/src/page/login/index.vue +++ b/src/page/login/index.vue @@ -17,12 +17,12 @@ > --> - +
登 录
@@ -37,6 +37,8 @@ import menu from '../../router/function' import {generateRoutes} from '../../router/index' import inputTable from '../../components/input-table.vue'; import inputObjectTable from '../../components/input-object-table.vue'; +import CryptoJS from "crypto-js"; + export default { props: {}, components: { @@ -57,7 +59,7 @@ export default { computed: {}, created() { console.log(111); - // this.getImg(); + this.getImg(); }, mounted() {}, methods: { @@ -71,7 +73,7 @@ export default { }); }, getUser() { - this.$axios.get(`/apaas/system/getUserInfo`).then((res) => { + this.$axios.get(`/apaas/system/v5/user/getUserInfo`).then((res) => { if (res.data.code == 200) { this.$store.commit("setUserInfo", res.data.data); if (res.data.data.userType == 1) { @@ -93,34 +95,34 @@ export default { }); }, login_remember_info() { - // if (!this.form.userid) { - // return this.$message.error("请输入账号"); - // } - // if (!this.form.password) { - // return this.$message.error("请输入密码"); - // } - // if (!this.form.yzm) { - // return this.$message.error("请输入验证码"); - // } - // this.$axios - // .get(`/apaas/system/checkCaptcha/${this.imgId}/${this.form.yzm}`) - // .then((res) => { - // if (res.data.code == 200) { - // this.login(); - // } else { - // this.$message.error(res.data.desc); - // } - // }); - this.login(); + if (!this.form.userid) { + return this.$message.error("请输入账号"); + } + if (!this.form.password) { + return this.$message.error("请输入密码"); + } + if (!this.form.yzm) { + return this.$message.error("请输入验证码"); + } + this.$axios + .get(`/apaas/system/v5/user/verifyCaptcha?id=${this.imgId}&value=${this.form.yzm}`) + .then((res) => { + if (res.data.code == 200) { + this.login(); + } else { + this.$message.error(res.data.data); + } + }); }, login() { + this.$axios - .post(`/apaas/system/login`, { - userId: this.form.userid, - userPassword: this.form.password, + .post(`/apaas/system/v5/user/login`, { + system_account: this.form.userid, + password: CryptoJS.AES.encrypt(this.form.password,"swuE9cmCZQwrkYRV").toString(), }) .then((res) => { - if (res.data.code == "200") { + if (res.data.code == 200) { let data = res.data.data; console.log(data); setCookie("bgToken", data.name); @@ -132,10 +134,10 @@ export default { }); }, getImg() { - this.$axios.get(`/apaas/system/getCaptcha`).then((res) => { + this.$axios.get(`/apaas/system/v5/user/getCaptcha??width=240&height=32`).then((res) => { if (res.data.code == 200) { - this.imgId = res.data.data.key; - this.imgSrc = res.data.data.image; + this.imgId = res.data.data.id; + this.imgSrc = res.data.data.captcha; } }); }, @@ -174,7 +176,12 @@ export default { width: 240px; } .yzm_img { - vertical-align: middle; + vertical-align: middle; + width: 150px; + height: 32px; + margin-left: 10px; + display: inline-block; + } .btn_sub { width: 400px; diff --git a/src/page/main/develop/account/add/index.vue b/src/page/main/develop/account/add/index.vue index 5bcae62..7f7450b 100644 --- a/src/page/main/develop/account/add/index.vue +++ b/src/page/main/develop/account/add/index.vue @@ -44,11 +44,12 @@
- - + +
+
业务系统新增成功
返回列表 继续创建
@@ -84,7 +85,6 @@ const router = useRouter(); const step = ref(1); const systemFormRef = ref(null); const contactFormRef = ref(null); -const tempFormData = ref(null) const formData = reactive({ org: '', code: '', diff --git a/src/page/main/develop/account/detail/index.vue b/src/page/main/develop/account/detail/index.vue new file mode 100644 index 0000000..a4fb31f --- /dev/null +++ b/src/page/main/develop/account/detail/index.vue @@ -0,0 +1,189 @@ + + + + + \ No newline at end of file diff --git a/src/page/main/develop/account/index.vue b/src/page/main/develop/account/index.vue index f6c52af..972b406 100644 --- a/src/page/main/develop/account/index.vue +++ b/src/page/main/develop/account/index.vue @@ -31,6 +31,11 @@
+ @@ -41,8 +55,6 @@ import { reactive, toRefs, ref, } from '@vue/reactivity' import { getCurrentInstance } from 'vue' import { computed, onBeforeMount, onBeforeUnmount } from '@vue/runtime-core' import { useRouter } from 'vue-router'; - const treeSelected = ref(null); - const data = [ { @@ -55,6 +67,7 @@ import { useRouter } from 'vue-router'; children: [ { label: '武汉市啊实打实大苏打大阿斯顿发士大夫地', + dept: 666, children: [ { label: '公安厅公安厅公安厅公安厅公安厅公安厅公安厅公安厅公安厅公安厅公安厅公安厅公安厅公安厅公安厅', @@ -162,12 +175,15 @@ import { useRouter } from 'vue-router'; const acTop = ref(0); const acLeft = ref(0); const actionFlag = ref(false) + const selectData = ref(null) + const selectDataParent = ref(null) const showAction = (e, data,node) => { const rect = e.target.getBoundingClientRect(); //获取点击的dom的位置 - console.log(rect, data,node); acTop.value = rect.y - 17 + "px"; acLeft.value = rect.x + 35 + "px"; actionFlag.value = true; + selectData.value = data; + selectDataParent.value = node.parent.data.label ? node.parent.data : null; }; const isSticky = (data) => { @@ -182,22 +198,23 @@ import { useRouter } from 'vue-router'; actionFlag.value = false; } -// const nodeClick = (node,nodeAttr,treeNode,event)=>{ - -// } + const emit = defineEmits(['action']) const handleNodeClick = (node,nodeAttr,treeNode,event) => { - treeSelected.value = data.dept - console.log(treeSelected.value) - emit('select',{node,nodeAttr,treeNode,event}) + selectData.value = node; + emit('select',{node,nodeAttr,treeNode,event}); //只读则无操作事件 - closeAction() + closeAction(); + } + + const treeCreate = (params) => { + emit('create',{type: params.type,action: params.action,data: params.target === 'local'? selectDataParent : selectData}); } onBeforeMount(()=>{ //只读则无操作事件 - window.addEventListener("click", closeAction) - window.addEventListener("scroll", closeAction,true) + window.addEventListener("click", closeAction); + window.addEventListener("scroll", closeAction,true); }) onBeforeUnmount(()=>{ @@ -234,6 +251,9 @@ import { useRouter } from 'vue-router'; .file-tree :deep() .el-tree-node__content:hover .tree-action-box { display: inline-block; } +.file-tree :deep() .el-tree-node__content .first_node { + display: inline-block; +} .file-tree :deep() .el-tree-node > .el-tree-node__children { overflow: visible; } diff --git a/src/page/main/system/organization/user-detail/index.vue b/src/page/main/system/organization/user-detail/index.vue new file mode 100644 index 0000000..ac3ba5d --- /dev/null +++ b/src/page/main/system/organization/user-detail/index.vue @@ -0,0 +1,189 @@ + + + + + \ No newline at end of file diff --git a/src/router/function.js b/src/router/function.js index 408324f..690f41a 100644 --- a/src/router/function.js +++ b/src/router/function.js @@ -183,10 +183,17 @@ var adminMenu = [ { name: "account-add-manage", menuName:'新建账号', - parentPath:null, + parentPath:'/develop/account', menuType:'manager', path: "/develop/account/add", }, + { + name: "account-detail-manage", + menuName:'账号详情', + parentPath: '/develop/account', + menuType:'manager', + path: "/develop/account/detail", + }, { name: "menu-manage", menuName:'菜单管理', @@ -214,6 +221,38 @@ var adminMenu = [ show:true, path: "/system/organization", }, + { + name: "paltform-user-manage", + menuName:'新增平台用户', + parentPath: '/system/organization', + menuType:'manager', + show:false, + path: "/system/organization/platform-user", + }, + { + name: "system-user-manage", + menuName:'新增组织用户', + parentPath: '/system/organization', + menuType:'manager', + show: false, + path: "/system/organization/system-user", + }, + { + name: "user-detail-manage", + menuName:'用户详情', + parentPath: '/system/organization', + menuType:'manager', + show: false, + path: "/system/organization/user-detail", + }, + { + name: "org-detail-manage", + menuName:'组织详情', + parentPath: '/system/organization', + menuType:'manager', + show: false, + path: "/system/organization/org-detail", + }, { name: "role-manage", menuName:'角色管理', diff --git a/vite.config.js b/vite.config.js index 0daefe5..a43b3c5 100644 --- a/vite.config.js +++ b/vite.config.js @@ -39,7 +39,7 @@ export default { } }, build:{ - outDir:'dist/apaas/manage/ui',//打包输出文件夹 + outDir:'dist/apaas/system/ui',//打包输出文件夹 assetsDir:'static',//打包输出静态文件 }, diff --git a/yarn.lock b/yarn.lock index 5501743..ea77b0d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -528,6 +528,11 @@ compute-scroll-into-view@^1.0.17: resolved "https://registry.npmmirror.com/compute-scroll-into-view/-/compute-scroll-into-view-1.0.17.tgz#6a88f18acd9d42e9cf4baa6bec7e0522607ab7ab" integrity sha512-j4dx+Fb0URmzbwwMUrhqWM2BEWHdFGx+qZ9qqASHRPqvTYdqvWnHg0H1hIbcyLnvgnoNAVMlwkepyqM3DaIFUg== +crypto-js@^4.1.1: + version "4.1.1" + resolved "https://mirrors.cloud.tencent.com/npm/crypto-js/-/crypto-js-4.1.1.tgz#9e485bcf03521041bd85844786b83fb7619736cf" + integrity sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw== + css-line-break@^2.1.0: version "2.1.0" resolved "https://registry.npmmirror.com/css-line-break/-/css-line-break-2.1.0.tgz#bfef660dfa6f5397ea54116bb3cb4873edbc4fa0" @@ -890,6 +895,11 @@ is-url@^1.2.4: resolved "https://registry.npmmirror.com/is-url/-/is-url-1.2.4.tgz#04a4df46d28c4cff3d73d01ff06abeb318a1aa52" integrity sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww== +js-md5@^0.7.3: + version "0.7.3" + resolved "https://mirrors.cloud.tencent.com/npm/js-md5/-/js-md5-0.7.3.tgz#b4f2fbb0b327455f598d6727e38ec272cd09c3f2" + integrity sha512-ZC41vPSTLKGwIRjqDh8DfXoCrdQIyBgspJVPXHBGu4nZlAEvG3nf+jO9avM9RmLiGakg7vz974ms99nEV0tmTQ== + lodash-es@^4.17.21: version "4.17.21" resolved "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.21.tgz" -- 2.26.0