Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
so-manage-ui
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
smart-operation
so-manage-ui
Commits
f5eafea0
Commit
f5eafea0
authored
Oct 27, 2022
by
何小勇
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
组织管理-组织用户
parent
54d50bca
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
449 additions
and
299 deletions
+449
-299
src/page/main/develop/account/add/contact-form.vue
src/page/main/develop/account/add/contact-form.vue
+1
-1
src/page/main/develop/account/add/index.vue
src/page/main/develop/account/add/index.vue
+29
-28
src/page/main/develop/account/add/system-form.vue
src/page/main/develop/account/add/system-form.vue
+24
-5
src/page/main/system/organization/index.vue
src/page/main/system/organization/index.vue
+32
-15
src/page/main/system/organization/org-user/index.vue
src/page/main/system/organization/org-user/index.vue
+104
-58
src/page/main/system/organization/org-user/org-account-form.vue
...ge/main/system/organization/org-user/org-account-form.vue
+170
-0
src/page/main/system/organization/org-user/org-person-form.vue
...age/main/system/organization/org-user/org-person-form.vue
+80
-0
src/page/main/system/organization/platform-user/index.vue
src/page/main/system/organization/platform-user/index.vue
+6
-5
src/page/main/system/organization/platform-user/platform-account-form.vue
...stem/organization/platform-user/platform-account-form.vue
+1
-1
src/page/main/system/organization/platform-user/platform-person-form.vue
...ystem/organization/platform-user/platform-person-form.vue
+1
-1
src/page/main/system/organization/system-user/system-account-form.vue
...n/system/organization/system-user/system-account-form.vue
+0
-116
src/page/main/system/organization/system-user/system-person-form.vue
...in/system/organization/system-user/system-person-form.vue
+0
-68
src/router/function.js
src/router/function.js
+1
-1
No files found.
src/page/main/develop/account/add/contact-form.vue
View file @
f5eafea0
...
@@ -71,7 +71,7 @@ const clearForm = () => {
...
@@ -71,7 +71,7 @@ const clearForm = () => {
}
}
const
setForm
=
(
data
)
=>
{
const
setForm
=
(
data
)
=>
{
contactForm
.
value
=
Object
.
assign
(
contactForm
,
data
);
Object
.
assign
(
contactForm
,
data
);
}
}
onMounted
(()
=>
{
onMounted
(()
=>
{
...
...
src/page/main/develop/account/add/index.vue
View file @
f5eafea0
...
@@ -118,7 +118,7 @@ const nextStep = () => {
...
@@ -118,7 +118,7 @@ const nextStep = () => {
//业务系统表单检验触发事件 data为null 校验失败
//业务系统表单检验触发事件 data为null 校验失败
const
getSystemFormData
=
(
data
)
=>
{
const
getSystemFormData
=
(
data
)
=>
{
if
(
data
)
{
if
(
data
)
{
formData
.
value
=
Object
.
assign
(
formData
,
data
);
Object
.
assign
(
formData
,
data
);
step
.
value
=
2
;
step
.
value
=
2
;
}
else
{
}
else
{
...
@@ -128,22 +128,23 @@ const getSystemFormData = (data) => {
...
@@ -128,22 +128,23 @@ const getSystemFormData = (data) => {
const
getContactFormData
=
(
data
)
=>
{
const
getContactFormData
=
(
data
)
=>
{
if
(
data
)
{
if
(
data
)
{
formData
.
value
=
Object
.
assign
(
formData
,
data
);
Object
.
assign
(
formData
,
data
);
if
(
route
.
query
.
id
)
{
if
(
route
.
query
.
id
)
{
console
.
log
(
formData
)
console
.
log
(
formData
)
let
params
=
{
let
params
=
{
...
formData
,
id
:
parseInt
(
route
.
query
.
id
),
id
:
parseInt
(
route
.
query
.
id
),
business_name
:
formData
.
value
.
business_name
,
//
business_name: formData.value.business_name,
system_account
:
formData
.
value
.
system_account
,
//
system_account: formData.value.system_account,
contact_email
:
formData
.
value
.
contact_email
,
//
contact_email: formData.value.contact_email,
contact_phone
:
formData
.
value
.
contact_phone
,
//
contact_phone: formData.value.contact_phone,
contact_name
:
formData
.
value
.
contact_name
,
//
contact_name: formData.value.contact_name,
logo
:
formData
.
value
.
logo
&&
formData
.
value
.
logo
.
length
>
0
?
formData
.
value
.
logo
[
0
].
url
:
''
,
logo
:
formData
.
logo
&&
formData
.
logo
.
length
>
0
?
formData
.
logo
[
0
].
url
:
''
,
state
:
formData
.
value
.
state
,
//
state: formData.value.state,
business_desc
:
formData
.
value
.
business_desc
,
//
business_desc: formData.value.business_desc,
develop_id
:
formData
.
value
.
develop_id
,
//
develop_id: formData.value.develop_id,
access_address
:
formData
.
value
.
access_address
,
//
access_address: formData.value.access_address,
remark
:
formData
.
value
.
remark
//
remark: formData.value.remark
}
}
$axios
.
post
(
`/apaas/system/v5/user/update`
,
params
)
$axios
.
post
(
`/apaas/system/v5/user/update`
,
params
)
.
then
((
res
)
=>
{
.
then
((
res
)
=>
{
...
@@ -156,21 +157,21 @@ const getContactFormData = (data) => {
...
@@ -156,21 +157,21 @@ const getContactFormData = (data) => {
})
})
}
else
{
}
else
{
let
params
=
{
let
params
=
{
organization_id
:
formData
.
value
.
organization_id
,
...
formData
,
//
system_role_id: "ab98a936-9046-455b-aba3-4c73671024d0"
,
//
organization_id: formData.value.organization_id
,
logo
:
formData
.
value
.
logo
&&
formData
.
value
.
logo
.
length
>
0
?
formData
.
value
.
logo
[
0
].
url
:
''
,
logo
:
formData
.
logo
&&
formData
.
logo
.
length
>
0
?
formData
.
logo
[
0
].
url
:
''
,
password
:
CryptoJS
.
AES
.
encrypt
(
formData
.
value
.
password
,
"
swuE9cmCZQwrkYRV
"
).
toString
(),
password
:
CryptoJS
.
AES
.
encrypt
(
formData
.
password
,
"
swuE9cmCZQwrkYRV
"
).
toString
(),
business_code
:
formData
.
value
.
business_code
,
//
business_code: formData.value.business_code,
business_name
:
formData
.
value
.
business_name
,
//
business_name: formData.value.business_name,
business_desc
:
formData
.
value
.
business_desc
,
//
business_desc: formData.value.business_desc,
system_account
:
formData
.
value
.
system_account
,
//
system_account: formData.value.system_account,
access_address
:
formData
.
value
.
access_address
,
//
access_address: formData.value.access_address,
develop_id
:
formData
.
value
.
develop_id
,
//
develop_id: formData.value.develop_id,
state
:
formData
.
value
.
state
,
//
state: formData.value.state,
contact_name
:
formData
.
value
.
contact_name
,
//
contact_name: formData.value.contact_name,
contact_phone
:
formData
.
value
.
contact_phone
,
//
contact_phone: formData.value.contact_phone,
contact_email
:
formData
.
value
.
contact_email
,
//
contact_email: formData.value.contact_email,
remark
:
formData
.
value
.
remark
,
//
remark: formData.value.remark,
}
}
$axios
.
put
(
`/apaas/system/v5/user/create`
,
params
)
$axios
.
put
(
`/apaas/system/v5/user/create`
,
params
)
.
then
((
res
)
=>
{
.
then
((
res
)
=>
{
...
...
src/page/main/develop/account/add/system-form.vue
View file @
f5eafea0
...
@@ -32,7 +32,14 @@
...
@@ -32,7 +32,14 @@
<el-input
type=
"textarea"
:rows=
"3"
v-model=
"systemForm.business_desc"
/>
<el-input
type=
"textarea"
:rows=
"3"
v-model=
"systemForm.business_desc"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"角色"
prop=
"system_role_id"
v-if=
"!formType"
>
<el-form-item
label=
"角色"
prop=
"system_role_id"
v-if=
"!formType"
>
<el-input
v-model=
"systemForm.system_role_id"
/>
<el-select
v-model=
"systemForm.system_role_id"
placeholder=
"请选择角色"
:disabled=
"true"
style=
"width: 100%"
>
<el-option
v-for=
"item in roleList"
:key=
"item.role_id"
:label=
"item.role_name"
:value=
"item.role_id"
/>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"账号"
prop=
"system_account"
>
<el-form-item
label=
"账号"
prop=
"system_account"
>
<el-input
v-model=
"systemForm.system_account"
/>
<el-input
v-model=
"systemForm.system_account"
/>
...
@@ -164,10 +171,9 @@ const formRules = reactive({
...
@@ -164,10 +171,9 @@ const formRules = reactive({
],
],
})
})
const
systemRef
=
ref
(
null
)
const
systemRef
=
ref
(
null
)
const
emit
=
defineEmits
([
'
action
'
])
const
emit
=
defineEmits
([
'
action
'
])
const
roleList
=
ref
([])
const
submitForm
=
async
()
=>
{
const
submitForm
=
async
()
=>
{
if
(
!
systemRef
)
return
if
(
!
systemRef
)
return
...
@@ -182,11 +188,12 @@ const submitForm = async () => {
...
@@ -182,11 +188,12 @@ const submitForm = async () => {
const
clearForm
=
()
=>
{
const
clearForm
=
()
=>
{
if
(
!
systemRef
)
return
if
(
!
systemRef
)
return
systemRef
.
value
.
resetFields
()
systemRef
.
value
.
resetFields
();
systemForm
.
system_role_id
=
roleList
.
value
[
0
].
role_id
;
}
}
const
setForm
=
(
data
)
=>
{
const
setForm
=
(
data
)
=>
{
systemForm
.
value
=
Object
.
assign
(
systemForm
,
data
);
Object
.
assign
(
systemForm
,
data
);
}
}
const
orgData
=
ref
([])
const
orgData
=
ref
([])
...
@@ -216,9 +223,21 @@ const copyText = (data) => {
...
@@ -216,9 +223,21 @@ const copyText = (data) => {
}
}
);
);
}
}
const
getRoleList
=
()
=>
{
$axios
.
get
(
`/apaas/system/v5/org/select/role?is_admin=1`
)
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
roleList
.
value
=
res
.
data
.
data
;
systemForm
.
system_role_id
=
roleList
.
value
[
0
].
role_id
;
}
else
{
}
})
}
onBeforeMount
(()
=>
{
onBeforeMount
(()
=>
{
getOrgTree
()
getOrgTree
()
getRoleList
()
})
})
onMounted
(()
=>
{
onMounted
(()
=>
{
...
...
src/page/main/system/organization/index.vue
View file @
f5eafea0
...
@@ -52,13 +52,16 @@
...
@@ -52,13 +52,16 @@
</bg-filter-group>
</bg-filter-group>
<div
class=
"table_container apaas_scroll"
>
<div
class=
"table_container apaas_scroll"
>
<bg-table
ref=
"bgTable"
:headers=
"headers"
:rows=
"tableRows"
:isIndex=
"true"
:stripe=
"true"
>
<bg-table
ref=
"bgTable"
:headers=
"headers"
:rows=
"tableRows"
:isIndex=
"true"
:stripe=
"true"
>
<
template
v-slot:account=
"{ row }"
>
<
template
v-slot:
system_
account=
"{ row }"
>
<span
@
click=
"goDetail(row)"
class=
"name_btn"
>
<span
@
click=
"goDetail(row)"
class=
"name_btn"
>
{{
row
.
account
}}
{{
row
.
system_
account
}}
</span>
</span>
</
template
>
</
template
>
<
template
v-slot:state=
"{ row }"
>
<bg-switch
@
click=
"stateChange(row)"
:labels=
"['否','是']"
:values=
"[0,1]"
v-model=
"row.state"
></bg-switch>
</
template
>
<
template
v-slot:action=
"{ row }"
>
<
template
v-slot:action=
"{ row }"
>
<bg-table-btn
class=
"btn"
>
<bg-table-btn
@
click=
"editAccount(row)"
class=
"btn"
>
编辑
编辑
</bg-table-btn>
</bg-table-btn>
<bg-table-btn
class=
"btn"
>
<bg-table-btn
class=
"btn"
>
...
@@ -204,12 +207,12 @@ import orgForm from './org-form.vue';
...
@@ -204,12 +207,12 @@ import orgForm from './org-form.vue';
{
{
label
:
"
账号
"
,
label
:
"
账号
"
,
prop
:
"
system_account
"
,
prop
:
"
system_account
"
,
width
:
18
0
minWidth
:
15
0
},
},
{
{
label
:
"
手机号
"
,
label
:
"
手机号
"
,
prop
:
"
contact_phone
"
,
prop
:
"
contact_phone
"
,
minWidth
:
12
0
width
:
15
0
},
},
{
{
label
:
"
角色
"
,
label
:
"
角色
"
,
...
@@ -219,7 +222,7 @@ import orgForm from './org-form.vue';
...
@@ -219,7 +222,7 @@ import orgForm from './org-form.vue';
{
{
label
:
"
创建时间
"
,
label
:
"
创建时间
"
,
prop
:
"
created_time
"
,
prop
:
"
created_time
"
,
width
:
15
0
width
:
20
0
},
},
{
{
label
:
"
是否启用
"
,
label
:
"
是否启用
"
,
...
@@ -254,17 +257,13 @@ import orgForm from './org-form.vue';
...
@@ -254,17 +257,13 @@ import orgForm from './org-form.vue';
const
addAccount
=
(
params
)
=>
{
const
addAccount
=
(
params
)
=>
{
if
(
selectTreeDataType
.
value
===
1
)
{
if
(
selectTreeDataType
.
value
===
1
)
{
router
.
push
({
router
.
push
({
path
:
"
/system/organization/system-user
"
,
path
:
"
/system/organization/org-user
"
,
query
:
{
type
:
params
}
})
})
}
else
{
}
else
{
router
.
push
({
router
.
push
({
path
:
"
/system/organization/platform-user
"
,
path
:
"
/system/organization/platform-user
"
,
query
:
{
type
:
params
}
})
})
}
}
...
@@ -508,6 +507,10 @@ import orgForm from './org-form.vue';
...
@@ -508,6 +507,10 @@ import orgForm from './org-form.vue';
})
})
}
}
const
searchChange
=
(
val
)
=>
{
orgTree
.
value
.
filterTree
(
val
);
}
const
goDetail
=
(
params
)
=>
{
const
goDetail
=
(
params
)
=>
{
router
.
push
({
router
.
push
({
path
:
"
/system/organization/user-detail
"
,
path
:
"
/system/organization/user-detail
"
,
...
@@ -517,8 +520,22 @@ import orgForm from './org-form.vue';
...
@@ -517,8 +520,22 @@ import orgForm from './org-form.vue';
})
})
}
}
const
searchChange
=
(
val
)
=>
{
const
editAccount
=
(
data
)
=>
{
orgTree
.
value
.
filterTree
(
val
);
if
(
selectTreeDataType
===
1
)
{
router
.
push
({
path
:
"
/system/organization/platform-user
"
,
query
:
{
id
:
data
.
id
}
})
}
else
{
router
.
push
({
path
:
"
/system/organization/org-user
"
,
query
:
{
id
:
data
.
id
}
})
}
}
}
onBeforeMount
(()
=>
{
onBeforeMount
(()
=>
{
...
...
src/page/main/system/organization/
system
-user/index.vue
→
src/page/main/system/organization/
org
-user/index.vue
View file @
f5eafea0
...
@@ -44,14 +44,17 @@
...
@@ -44,14 +44,17 @@
</div>
</div>
<div
class=
"content_main"
>
<div
class=
"content_main"
>
<
systemAccountForm
v-show=
"step === 1"
ref=
"systemAccountRef"
@
action=
"getSystemAccountFormData"
></system
AccountForm>
<
orgAccountForm
v-show=
"step === 1"
:form-type=
"route.query.id ? true : false"
ref=
"orgAccountRef"
@
action=
"getOrgAccountFormData"
></org
AccountForm>
<
systemPersonForm
v-show=
"step === 2"
ref=
"systemPersonRef"
@
action=
"getSystemPersonFormData"
></system
PersonForm>
<
orgPersonForm
v-show=
"step === 2"
ref=
"orgPersonRef"
@
action=
"getOrgPersonFormData"
></org
PersonForm>
<div
class=
"process_end"
v-show=
"step === 3"
>
<div
class=
"process_end"
v-show=
"step === 3"
>
<div>
<div>
<div><img
src=
"@/assets/imgs/img_data-complete.png"
alt=
""
></div>
<div>
<div
class=
"font_bold"
>
平台用户新增成功
</div>
<img
v-if=
"successFlag"
src=
"@/assets/imgs/img_data-complete.png"
alt=
""
>
<img
v-else
src=
"@/assets/imgs/img_data-fail.png"
alt=
""
>
</div>
<div
class=
"font_bold"
>
{{route.query.id ? (successFlag ? '组织用户编辑成功' : '组织用户编辑失败') : (successFlag ? '组织用户新增成功' : '组织用户新增失败')}}
</div>
<el-button
@
click=
"cancel"
>
返回列表
</el-button>
<el-button
@
click=
"cancel"
>
返回列表
</el-button>
<el-button
type=
"primary"
@
click=
"continueCreate"
>
继续创建
</el-button>
<el-button
v-if=
"!route.query.id"
type=
"primary"
@
click=
"continueCreate"
>
继续创建
</el-button>
</div>
</div>
</div>
</div>
...
@@ -76,51 +79,87 @@
...
@@ -76,51 +79,87 @@
<
script
setup
>
<
script
setup
>
import
{
useRoute
,
useRouter
}
from
'
vue-router
'
;
import
{
useRoute
,
useRouter
}
from
'
vue-router
'
;
import
systemAccountForm
from
'
./system-account-form.vue
'
;
import
orgAccountForm
from
'
./org-account-form.vue
'
;
import
systemPersonForm
from
'
./system-person-form.vue
'
;
import
orgPersonForm
from
'
./org-person-form.vue
'
;
import
{
reactive
,
ref
,
onBeforeMount
,
toRefs
,
computed
,
onBeforeUnmount
,
onMounted
}
from
'
vue
'
;
import
{
reactive
,
ref
,
onBeforeMount
,
toRefs
,
computed
,
onBeforeUnmount
,
onMounted
,
getCurrentInstance
}
from
'
vue
'
;
import
CryptoJS
from
"
crypto-js
"
;
const
{
proxy
}
=
getCurrentInstance
()
const
{
$axios
,
$message
}
=
proxy
const
route
=
useRoute
();
const
route
=
useRoute
();
const
router
=
useRouter
();
const
router
=
useRouter
();
const
step
=
ref
(
1
);
const
step
=
ref
(
1
);
const
system
AccountRef
=
ref
(
null
);
const
org
AccountRef
=
ref
(
null
);
const
system
PersonRef
=
ref
(
null
);
const
org
PersonRef
=
ref
(
null
);
const
formData
=
reactive
({
const
formData
=
reactive
({
org
:
''
,
org
anization_id
:
''
,
role
:
''
,
select_
role
:
''
,
logo
:
''
,
logo
:
[]
,
account
:
''
,
system_
account
:
''
,
phone
:
''
,
contact_
phone
:
''
,
password
:
''
,
password
:
''
,
confirm_password
:
''
,
confirm_password
:
''
,
is_us
e
:
1
,
stat
e
:
1
,
name
:
''
,
contact_
name
:
''
,
certificate
_type
:
''
,
document
_type
:
''
,
certificate_account
:
''
,
document_number
:
''
,
email
:
''
,
contact_
email
:
''
,
remark
:
''
,
remark
:
''
,
});
//账号信息表单+个人信息表单
});
//账号信息表单+个人信息表单
const
successFlag
=
ref
(
false
)
// 下一步
// 下一步
const
nextStep
=
()
=>
{
const
nextStep
=
()
=>
{
system
AccountRef
.
value
.
submitForm
();
org
AccountRef
.
value
.
submitForm
();
}
}
//账号信息表单检验触发事件 data为null 校验失败
//账号信息表单检验触发事件 data为null 校验失败
const
get
System
AccountFormData
=
(
data
)
=>
{
const
get
Org
AccountFormData
=
(
data
)
=>
{
if
(
data
)
{
if
(
data
)
{
formData
.
value
=
Object
.
assign
(
formData
,
data
);
Object
.
assign
(
formData
,
data
);
step
.
value
=
2
;
step
.
value
=
2
;
}
else
{
}
else
{
}
}
}
}
//个人信息表单检验触发事件 data为null 校验失败
//个人信息表单检验触发事件 data为null 校验失败
const
get
System
PersonFormData
=
(
data
)
=>
{
const
get
Org
PersonFormData
=
(
data
)
=>
{
if
(
data
)
{
if
(
data
)
{
formData
.
value
=
Object
.
assign
(
formData
,
data
);
if
(
data
)
{
console
.
log
(
formData
);
Object
.
assign
(
formData
,
data
);
step
.
value
=
3
;
if
(
route
.
query
.
id
)
{
let
params
=
{
...
formData
,
logo
:
formData
.
logo
&&
formData
.
logo
.
length
>
0
?
formData
.
logo
[
0
].
url
:
''
,
}
$axios
.
put
(
`/apaas/system/v5/org/update/user/
${
route
.
query
.
id
}
`
,
params
)
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
successFlag
.
value
=
true
;
step
.
value
=
3
;
}
else
{
$message
.
error
(
res
.
data
.
msg
)
}
})
}
else
{
const
params
=
{...
formData
,
// organization_id: orgId.value,
logo
:
formData
.
logo
&&
formData
.
logo
.
length
>
0
?
formData
.
logo
[
0
].
url
:
''
,
is_admin
:
2
,
password
:
CryptoJS
.
AES
.
encrypt
(
formData
.
password
,
"
swuE9cmCZQwrkYRV
"
).
toString
()
};
$axios
.
post
(
`/apaas/system/v5/org/add/user`
,
params
)
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
successFlag
.
value
=
true
;
step
.
value
=
3
;
}
else
{
$message
.
error
(
res
.
data
.
msg
)
}
})
}
}
}
}
}
}
//上一步
//上一步
...
@@ -129,50 +168,57 @@ const previousStep = () => {
...
@@ -129,50 +168,57 @@ const previousStep = () => {
}
}
//提交表单
//提交表单
const
submit
=
()
=>
{
const
submit
=
()
=>
{
system
PersonRef
.
value
.
submitForm
();
org
PersonRef
.
value
.
submitForm
();
}
}
//继续创建 清空表单
//继续创建 清空表单
const
continueCreate
=
()
=>
{
const
continueCreate
=
()
=>
{
system
AccountRef
.
value
.
clearForm
();
org
AccountRef
.
value
.
clearForm
();
system
PersonRef
.
value
.
clearForm
();
org
PersonRef
.
value
.
clearForm
();
step
.
value
=
1
;
step
.
value
=
1
;
successFlag
.
value
=
false
;
}
}
//取消
//取消
const
cancel
=
()
=>
{
const
cancel
=
()
=>
{
router
.
go
(
-
1
);
router
.
go
(
-
1
);
}
}
const
getDetail
=
()
=>
{
$axios
.
get
(
`/apaas/system/v5/org/user/
${
route
.
query
.
id
}
`
)
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
const
form
=
res
.
data
.
data
;
orgAccountRef
.
value
.
setForm
({
organization_id
:
form
.
organization_id
,
select_role
:
form
.
select_role
,
logo
:
[{
url
:
form
.
logo
}],
system_account
:
form
.
system_account
,
contact_phone
:
form
.
contact_phone
,
state
:
form
.
state
,
})
onBeforeUnmount
(()
=>
{
orgPersonRef
.
value
.
setForm
({
contact_name
:
form
.
contact_name
,
})
document_type
:
form
.
document_type
,
onMounted
(()
=>
{
document_number
:
form
.
document_number
,
if
(
route
.
query
.
type
===
"
1
"
)
{
contact_email
:
form
.
contact_email
,
setTimeout
(()
=>
{
remark
:
form
.
remark
,
systemAccountRef
.
value
.
setForm
({
})
org
:
'
a
'
,
}
else
{
code
:
'
b
'
,
$message
.
error
(
res
.
data
.
msg
)
name
:
'
b
'
,
}
desc
:
'
b
'
,
logo
:
[
'
b
'
],
role
:
'
b
'
,
account
:
'
b
'
,
password
:
'
b
'
,
confirm_password
:
'
b
'
,
url
:
'
b
'
,
firm_name
:
'
b
'
,
is_use
:
'
b
'
,
})
systemPersonRef
.
value
.
setForm
({
contact_user
:
'
c
'
,
phone
:
'
c
'
,
email
:
'
c
'
,
remark
:
'
c
'
,
})
})
},
500
)
}
onBeforeMount
(()
=>
{
if
(
route
.
query
.
id
)
{
getDetail
()
}
}
})
})
onMounted
(()
=>
{
})
</
script
>
</
script
>
<
style
scoped
>
<
style
scoped
>
...
...
src/page/main/system/organization/org-user/org-account-form.vue
0 → 100644
View file @
f5eafea0
<
template
>
<el-form
:label-position=
"'right'"
label-width=
"120px"
:model=
"orgAccountForm"
:rules=
"orgAccountFormRules"
ref=
"orgformAccountRef"
style=
"max-width: 66%"
>
<el-form-item
label=
"所属组织机构"
prop=
"organization_id"
>
<el-tree-select
v-model=
"orgAccountForm.organization_id"
:data=
"orgData"
:props=
"treeProps"
:render-after-expand=
"false"
:disabled=
"formType"
style=
"width: 100%;"
/>
<!--
<el-input
v-model=
"orgAccountForm.organization_id"
/>
-->
</el-form-item>
<el-form-item
label=
"角色"
prop=
"select_role"
v-if=
"!formType"
>
<el-select
v-model=
"orgAccountForm.select_role"
multiple
placeholder=
"请选择角色"
:disabled=
"true"
style=
"width: 100%"
>
<el-option
v-for=
"item in roleList"
:key=
"item.role_id"
:label=
"item.role_name"
:value=
"item.role_id"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"头像"
prop=
"logo"
>
<bg-upload-image
v-model=
"orgAccountForm.logo"
:showTips=
"true"
:limit=
"1"
:fileSize=
"500"
:fileSizeUnit=
"'KB'"
listType=
"picture-card"
:accept=
"['.jpg','.jpeg','.png']"
customTips=
"请选择图片上传:大小120 * 120像素支持jpg、png等格式,图片需小于500KB"
></bg-upload-image>
</el-form-item>
<el-form-item
label=
"账号"
prop=
"system_account"
>
<el-input
v-model=
"orgAccountForm.system_account"
/>
</el-form-item>
<el-form-item
label=
"手机号"
prop=
"contact_phone"
>
<el-input
v-model=
"orgAccountForm.contact_phone"
/>
</el-form-item>
<el-form-item
label=
"密码"
prop=
"password"
v-if=
"!formType"
>
<el-input
type=
"password"
v-model=
"orgAccountForm.password"
/>
</el-form-item>
<el-form-item
label=
"确认密码"
prop=
"confirm_password"
v-if=
"!formType"
>
<el-input
type=
"password"
v-model=
"orgAccountForm.confirm_password"
/>
</el-form-item>
<el-form-item
label=
"是否启用"
prop=
"state"
>
<bg-switch
:labels=
"['否','是']"
:values=
"[0,1]"
v-model=
"orgAccountForm.state"
></bg-switch>
</el-form-item>
</el-form>
</
template
>
<
script
setup
>
import
{
reactive
,
ref
,
onMounted
,
onBeforeMount
,
getCurrentInstance
}
from
'
vue
'
const
{
proxy
}
=
getCurrentInstance
()
const
{
$axios
,
$message
}
=
proxy
const
props
=
defineProps
({
formType
:
{
type
:
Boolean
,
default
:
false
,
//false 新建 true 编辑
},
// id: {
// type: String,
// default: '',
// }
});
const
orgAccountForm
=
reactive
({
organization_id
:
''
,
select_role
:
''
,
logo
:
[],
system_account
:
''
,
contact_phone
:
''
,
password
:
''
,
confirm_password
:
''
,
state
:
1
,
})
const
validatePass
=
(
rule
,
value
,
callback
)
=>
{
if
(
value
!==
orgAccountForm
.
password
)
{
callback
(
new
Error
(
"
密码输入不一致
"
))
}
else
{
callback
()
}
}
const
orgAccountFormRules
=
reactive
({
organization_id
:
[
{
required
:
true
,
message
:
'
请选择组织
'
,
trigger
:
'
blur
'
},
],
select_role
:
[
{
required
:
true
,
message
:
'
请选择角色
'
,
trigger
:
'
blur
'
},
],
system_account
:
[
{
required
:
true
,
message
:
'
请输入账号
'
,
trigger
:
'
blur
'
},
],
contact_phone
:
[
{
required
:
true
,
message
:
'
请输入手机号
'
,
trigger
:
'
blur
'
},
],
password
:
[
{
required
:
true
,
message
:
'
请输入密码
'
,
trigger
:
'
blur
'
},
],
confirm_password
:
[
{
required
:
true
,
message
:
'
请确认密码
'
,
trigger
:
'
blur
'
},
{
validator
:
validatePass
,
trigger
:
'
blur
'
}
],
})
const
orgformAccountRef
=
ref
(
null
)
const
emit
=
defineEmits
([
'
action
'
])
const
roleList
=
ref
([])
const
submitForm
=
async
()
=>
{
if
(
!
orgformAccountRef
)
return
await
orgformAccountRef
.
value
.
validate
((
valid
,
fields
)
=>
{
if
(
valid
)
{
emit
(
'
action
'
,
orgAccountForm
)
}
else
{
emit
(
'
action
'
,
null
)
}
})
}
const
clearForm
=
()
=>
{
if
(
!
orgformAccountRef
)
return
orgformAccountRef
.
value
.
resetFields
()
orgAccountForm
.
select_role
=
[
roleList
.
value
[
0
].
role_id
];
}
const
setForm
=
(
data
)
=>
{
Object
.
assign
(
orgAccountForm
,
data
);
}
const
orgData
=
ref
([])
const
treeProps
=
{
label
:
'
name
'
,
children
:
'
Child
'
,
value
:
'
organization_id
'
}
const
getOrgTree
=
()
=>
{
$axios
.
get
(
`/apaas/system/v5/org/tree`
)
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
orgData
.
value
=
res
.
data
.
data
||
[];
}
else
{
$message
.
error
(
res
.
data
.
msg
)
}
})
}
const
getRoleList
=
()
=>
{
$axios
.
get
(
`/apaas/system/v5/org/select/role?is_admin=2`
)
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
roleList
.
value
=
res
.
data
.
data
;
orgAccountForm
.
select_role
=
[
roleList
.
value
[
0
].
role_id
];
}
else
{
}
})
}
onBeforeMount
(()
=>
{
getOrgTree
()
getRoleList
()
})
onMounted
(()
=>
{
})
defineExpose
({
submitForm
,
clearForm
,
setForm
})
</
script
>
\ No newline at end of file
src/page/main/system/organization/org-user/org-person-form.vue
0 → 100644
View file @
f5eafea0
<
template
>
<el-form
:label-position=
"'right'"
label-width=
"120px"
:model=
"orgPersonForm"
:rules=
"orgPersonFormRules"
ref=
"orgPersonFormRef"
style=
"max-width: 66%"
>
<el-form-item
label=
"联系人姓名"
prop=
"contact_name"
>
<el-input
v-model=
"orgPersonForm.contact_name"
/>
</el-form-item>
<el-form-item
label=
"证件类型"
prop=
"document_type"
>
<el-select
v-model=
"orgPersonForm.document_type"
placeholder=
"请选择证件类型"
style=
"width: 100%"
>
<el-option
v-for=
"item in documentTypeList"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"证件号"
prop=
"document_number"
>
<el-input
v-model=
"orgPersonForm.document_number"
/>
</el-form-item>
<el-form-item
label=
"联系人邮箱"
prop=
"contact_email"
>
<el-input
v-model=
"orgPersonForm.contact_email"
/>
</el-form-item>
<el-form-item
label=
"备注"
prop=
"remark"
>
<el-input
type=
"textarea"
:rows=
"3"
v-model=
"orgPersonForm.remark"
/>
</el-form-item>
</el-form>
</
template
>
<
script
setup
>
import
{
reactive
,
ref
,
onMounted
}
from
'
vue
'
const
orgPersonForm
=
reactive
({
contact_name
:
''
,
document_type
:
''
,
document_number
:
''
,
contact_email
:
''
,
remark
:
''
,
})
const
documentTypeList
=
ref
([{
label
:
'
身份证
'
,
value
:
1
}])
const
orgPersonFormRules
=
reactive
({
})
const
orgPersonFormRef
=
ref
(
null
)
const
emit
=
defineEmits
([
'
action
'
])
const
submitForm
=
async
()
=>
{
if
(
!
orgPersonFormRef
)
return
await
orgPersonFormRef
.
value
.
validate
((
valid
,
fields
)
=>
{
if
(
valid
)
{
emit
(
'
action
'
,
orgPersonForm
)
}
else
{
emit
(
'
action
'
,
null
)
}
})
}
const
clearForm
=
()
=>
{
if
(
!
orgPersonFormRef
)
return
orgPersonFormRef
.
value
.
resetFields
()
}
const
setForm
=
(
data
)
=>
{
Object
.
assign
(
orgPersonForm
,
data
);
}
onMounted
(()
=>
{
})
defineExpose
({
submitForm
,
clearForm
,
setForm
})
</
script
>
\ No newline at end of file
src/page/main/system/organization/platform-user/index.vue
View file @
f5eafea0
...
@@ -54,7 +54,7 @@
...
@@ -54,7 +54,7 @@
</div>
</div>
<div
class=
"font_bold"
>
{{route.query.id ? (successFlag ? '平台用户编辑成功' : '平台用户编辑失败') : (successFlag ? '平台用户新增成功' : '平台用户新增失败')}}
</div>
<div
class=
"font_bold"
>
{{route.query.id ? (successFlag ? '平台用户编辑成功' : '平台用户编辑失败') : (successFlag ? '平台用户新增成功' : '平台用户新增失败')}}
</div>
<el-button
@
click=
"cancel"
>
返回列表
</el-button>
<el-button
@
click=
"cancel"
>
返回列表
</el-button>
<el-button
type=
"primary"
@
click=
"continueCreate"
>
继续创建
</el-button>
<el-button
v-if=
"!route.query.id"
type=
"primary"
@
click=
"continueCreate"
>
继续创建
</el-button>
</div>
</div>
</div>
</div>
...
@@ -130,7 +130,7 @@ const getPlatformPersonFormData = (data) => {
...
@@ -130,7 +130,7 @@ const getPlatformPersonFormData = (data) => {
let
params
=
{
let
params
=
{
}
}
$axios
.
post
(
`/apaas/system/v5/
user/update
`
,
params
)
$axios
.
post
(
`/apaas/system/v5/
org/update/user/:id
`
,
params
)
.
then
((
res
)
=>
{
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
if
(
res
.
data
.
code
==
200
)
{
successFlag
.
value
=
true
;
successFlag
.
value
=
true
;
...
@@ -192,11 +192,12 @@ const getOrgTree = () => {
...
@@ -192,11 +192,12 @@ const getOrgTree = () => {
onBeforeMount
(()
=>
{
onBeforeMount
(()
=>
{
getOrgTree
()
getOrgTree
()
if
(
route
.
query
.
id
)
{
console
.
log
(
route
.
query
.
id
)
}
})
})
onMounted
(()
=>
{
onMounted
(()
=>
{
if
(
route
.
query
.
type
===
"
1
"
)
{
}
})
})
</
script
>
</
script
>
...
...
src/page/main/system/organization/platform-user/platform-account-form.vue
View file @
f5eafea0
...
@@ -116,7 +116,7 @@ const clearForm = () => {
...
@@ -116,7 +116,7 @@ const clearForm = () => {
}
}
const
setForm
=
(
data
)
=>
{
const
setForm
=
(
data
)
=>
{
platformAccountForm
.
value
=
Object
.
assign
(
platformAccountForm
,
data
);
Object
.
assign
(
platformAccountForm
,
data
);
}
}
const
getRoleList
=
()
=>
{
const
getRoleList
=
()
=>
{
...
...
src/page/main/system/organization/platform-user/platform-person-form.vue
View file @
f5eafea0
...
@@ -50,7 +50,7 @@ const clearForm = () => {
...
@@ -50,7 +50,7 @@ const clearForm = () => {
}
}
const
setForm
=
(
data
)
=>
{
const
setForm
=
(
data
)
=>
{
platformPersonForm
.
value
=
Object
.
assign
(
platformPersonForm
,
data
);
Object
.
assign
(
platformPersonForm
,
data
);
}
}
onMounted
(()
=>
{
onMounted
(()
=>
{
...
...
src/page/main/system/organization/system-user/system-account-form.vue
deleted
100644 → 0
View file @
54d50bca
<
template
>
<el-form
:label-position=
"'right'"
label-width=
"120px"
:model=
"systemAccountFormRef"
:rules=
"systemAccountFormRules"
ref=
"platformAccountRef"
style=
"max-width: 66%"
>
<el-form-item
label=
"所属组织机构"
prop=
"org"
>
<el-input
v-model=
"systemAccountFormRef.org"
/>
</el-form-item>
<el-form-item
label=
"角色"
prop=
"role"
>
<el-input
v-model=
"systemAccountFormRef.role"
/>
</el-form-item>
<el-form-item
label=
"头像"
prop=
"logo"
>
<bg-upload-image
v-model=
"systemAccountFormRef.logo"
:showTips=
"true"
:limit=
"1"
:fileSize=
"500"
:fileSizeUnit=
"'KB'"
listType=
"picture-card"
:accept=
"['.jpg','.jpeg','.png']"
customTips=
"请选择图片上传:大小120 * 120像素支持jpg、png等格式,图片需小于500KB"
></bg-upload-image>
</el-form-item>
<el-form-item
label=
"账号"
prop=
"account"
>
<el-input
v-model=
"systemAccountFormRef.account"
/>
</el-form-item>
<el-form-item
label=
"手机号"
prop=
"phone"
>
<el-input
v-model=
"systemAccountFormRef.phone"
/>
</el-form-item>
<el-form-item
label=
"密码"
prop=
"password"
>
<el-input
type=
"password"
v-model=
"systemAccountFormRef.password"
/>
</el-form-item>
<el-form-item
label=
"确认密码"
prop=
"confirm_password"
>
<el-input
type=
"password"
v-model=
"systemAccountFormRef.confirm_password"
/>
</el-form-item>
<el-form-item
label=
"是否启用"
prop=
"is_use"
>
<bg-switch
:labels=
"['否','是']"
:values=
"[0,1]"
v-model=
"systemAccountFormRef.is_use"
></bg-switch>
</el-form-item>
</el-form>
</
template
>
<
script
setup
>
import
{
reactive
,
ref
,
onMounted
}
from
'
vue
'
const
systemAccountFormRef
=
reactive
({
org
:
''
,
role
:
''
,
logo
:
''
,
account
:
''
,
phone
:
''
,
password
:
''
,
confirm_password
:
''
,
is_use
:
1
,
})
const
validatePass
=
(
rule
,
value
,
callback
)
=>
{
if
(
value
!==
systemAccountFormRef
.
password
)
{
callback
(
new
Error
(
"
密码输入不一致
"
))
}
else
{
callback
()
}
}
const
systemAccountFormRules
=
reactive
({
org
:
[
{
required
:
true
,
message
:
'
请选择组织
'
,
trigger
:
'
blur
'
},
],
role
:
[
{
required
:
true
,
message
:
'
请选择角色
'
,
trigger
:
'
blur
'
},
],
account
:
[
{
required
:
true
,
message
:
'
请输入账号
'
,
trigger
:
'
blur
'
},
],
phone
:
[
{
required
:
true
,
message
:
'
请输入手机号
'
,
trigger
:
'
blur
'
},
],
password
:
[
{
required
:
true
,
message
:
'
请输入密码
'
,
trigger
:
'
blur
'
},
],
confirm_password
:
[
{
required
:
true
,
message
:
'
请确认密码
'
,
trigger
:
'
blur
'
},
{
validator
:
validatePass
,
trigger
:
'
blur
'
}
],
})
const
platformAccountRef
=
ref
(
null
)
const
emit
=
defineEmits
([
'
action
'
])
const
submitForm
=
async
()
=>
{
if
(
!
platformAccountRef
)
return
await
platformAccountRef
.
value
.
validate
((
valid
,
fields
)
=>
{
if
(
valid
)
{
emit
(
'
action
'
,
systemAccountFormRef
)
}
else
{
emit
(
'
action
'
,
null
)
}
})
}
const
clearForm
=
()
=>
{
if
(
!
platformAccountRef
)
return
platformAccountRef
.
value
.
resetFields
()
}
const
setForm
=
(
data
)
=>
{
systemAccountFormRef
.
value
=
Object
.
assign
(
systemAccountFormRef
,
data
);
}
onMounted
(()
=>
{
})
defineExpose
({
submitForm
,
clearForm
,
setForm
})
</
script
>
\ No newline at end of file
src/page/main/system/organization/system-user/system-person-form.vue
deleted
100644 → 0
View file @
54d50bca
<
template
>
<el-form
:label-position=
"'right'"
label-width=
"120px"
:model=
"contactForm"
:rules=
"contactFormRules"
ref=
"contactRef"
style=
"max-width: 66%"
>
<el-form-item
label=
"联系人姓名"
prop=
"name"
>
<el-input
v-model=
"contactForm.name"
/>
</el-form-item>
<el-form-item
label=
"证件类型"
prop=
"certificate_type"
>
<el-input
v-model=
"contactForm.certificate_type"
/>
</el-form-item>
<el-form-item
label=
"证件号"
prop=
"certificate_account"
>
<el-input
v-model=
"contactForm.certificate_account"
/>
</el-form-item>
<el-form-item
label=
"联系人邮箱"
>
<el-input
v-model=
"contactForm.email"
/>
</el-form-item>
<el-form-item
label=
"备注"
>
<el-input
type=
"textarea"
:rows=
"3"
v-model=
"contactForm.remark"
/>
</el-form-item>
</el-form>
</
template
>
<
script
setup
>
import
{
reactive
,
ref
,
onMounted
}
from
'
vue
'
const
contactForm
=
reactive
({
name
:
''
,
certificate_type
:
''
,
certificate_account
:
''
,
email
:
''
,
remark
:
''
,
})
const
contactFormRules
=
reactive
({
})
const
contactRef
=
ref
(
null
)
const
emit
=
defineEmits
([
'
action
'
])
const
submitForm
=
async
()
=>
{
if
(
!
contactRef
)
return
await
contactRef
.
value
.
validate
((
valid
,
fields
)
=>
{
if
(
valid
)
{
emit
(
'
action
'
,
contactForm
)
}
else
{
emit
(
'
action
'
,
null
)
}
})
}
const
clearForm
=
()
=>
{
if
(
!
contactRef
)
return
contactRef
.
value
.
resetFields
()
}
const
setForm
=
(
data
)
=>
{
contactForm
.
value
=
Object
.
assign
(
contactForm
,
data
);
}
onMounted
(()
=>
{
})
defineExpose
({
submitForm
,
clearForm
,
setForm
})
</
script
>
\ No newline at end of file
src/router/function.js
View file @
f5eafea0
...
@@ -180,7 +180,7 @@ var adminMenu = [
...
@@ -180,7 +180,7 @@ var adminMenu = [
dict_group_id
:
"
09938937-3db9-47de-b967-7777ea4ebb2d
"
,
dict_group_id
:
"
09938937-3db9-47de-b967-7777ea4ebb2d
"
,
menuType
:
2
,
//system:64c156e0-bfff-4bfc-a63a-56effe130a25:apaas后管,能力注册页等 font:2cb4f767-fad7-44f2-afa3-f055e15dd2b6:apaas前台页 manager:09938937-3db9-47de-b967-7777ea4ebb2d:apaas管理中心 知识中心:26d3903a-863e-4efc-b53e-0fb8772ddaa4
menuType
:
2
,
//system:64c156e0-bfff-4bfc-a63a-56effe130a25:apaas后管,能力注册页等 font:2cb4f767-fad7-44f2-afa3-f055e15dd2b6:apaas前台页 manager:09938937-3db9-47de-b967-7777ea4ebb2d:apaas管理中心 知识中心:26d3903a-863e-4efc-b53e-0fb8772ddaa4
show
:
false
,
show
:
false
,
path
:
"
/system/organization/
system
-user
"
,
path
:
"
/system/organization/
org
-user
"
,
},
},
{
{
menuName
:
"
用户详情
"
,
menuName
:
"
用户详情
"
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment