Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
center-zws
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
EzijingWeb
center-zws
Commits
00d74712
提交
00d74712
authored
12月 21, 2022
作者:
王鹏飞
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
bug fixes
上级
464d1a00
显示空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
69 行增加
和
9 行删除
+69
-9
api.ts
src/modules/base/channel/api.ts
+5
-0
AddMember.vue
src/modules/base/channel/components/AddMember.vue
+15
-2
AddProject.vue
src/modules/base/channel/components/AddProject.vue
+2
-0
InfoAgreement.vue
src/modules/base/channel/components/InfoAgreement.vue
+3
-0
InfoBase.vue
src/modules/base/channel/components/InfoBase.vue
+1
-1
InfoMember.vue
src/modules/base/channel/components/InfoMember.vue
+5
-1
Index.vue
src/modules/base/channel/views/Index.vue
+1
-1
api.ts
src/modules/base/project/api.ts
+5
-0
AddMember.vue
src/modules/base/project/components/AddMember.vue
+15
-2
InfoUsers.vue
src/modules/base/project/components/InfoUsers.vue
+5
-1
Index.vue
src/modules/base/project/views/Index.vue
+12
-1
没有找到文件。
src/modules/base/channel/api.ts
浏览文件 @
00d74712
...
@@ -101,3 +101,8 @@ export function bindTag(data: { channels_id: string; tags: string }) {
...
@@ -101,3 +101,8 @@ export function bindTag(data: { channels_id: string; tags: string }) {
export
function
getQrcode
(
params
:
{
id
:
string
;
project_id
:
string
})
{
export
function
getQrcode
(
params
:
{
id
:
string
;
project_id
:
string
})
{
return
httpRequest
.
get
(
'/api/zws/v1/backend/channel/qrcode'
,
{
params
})
return
httpRequest
.
get
(
'/api/zws/v1/backend/channel/qrcode'
,
{
params
})
}
}
// 获取用户所在渠道的角色
export
function
getMemberRoles
(
params
:
{
user_id
:
string
;
channel_id
:
string
})
{
return
httpRequest
.
get
(
'/api/zws/v1/backend/channel/member-roles'
,
{
params
})
}
src/modules/base/channel/components/AddMember.vue
浏览文件 @
00d74712
...
@@ -2,12 +2,14 @@
...
@@ -2,12 +2,14 @@
import
type
{
FormInstance
,
FormRules
}
from
'element-plus'
import
type
{
FormInstance
,
FormRules
}
from
'element-plus'
import
type
{
User
,
Role
}
from
'../types'
import
type
{
User
,
Role
}
from
'../types'
import
SelectUser
from
'@/components/SelectUser.vue'
import
SelectUser
from
'@/components/SelectUser.vue'
import
{
getRoles
}
from
'../api'
import
{
getRoles
,
getMemberRoles
}
from
'../api'
interface
FormData
{
interface
FormData
{
user
:
User
user
:
User
role
:
Role
[]
role
:
Role
[]
}
}
const
props
=
defineProps
<
{
channelId
?:
string
}
>
()
const
emit
=
defineEmits
<
{
const
emit
=
defineEmits
<
{
(
e
:
'update:modelValue'
,
modelValue
:
boolean
):
void
(
e
:
'update:modelValue'
,
modelValue
:
boolean
):
void
(
e
:
'submit'
,
data
:
FormData
):
void
(
e
:
'submit'
,
data
:
FormData
):
void
...
@@ -30,6 +32,17 @@ onMounted(() => {
...
@@ -30,6 +32,17 @@ onMounted(() => {
fetchRoles
()
fetchRoles
()
})
})
// 获取成员已有角色
function
fetchMemberRoles
()
{
if
(
!
(
props
.
channelId
&&
form
.
user
?.
id
))
return
getMemberRoles
({
user_id
:
form
.
user
.
id
,
channel_id
:
props
.
channelId
}).
then
(
res
=>
{
form
.
role
=
res
.
data
||
[]
})
}
// 选择完成
// 选择完成
function
submit
()
{
function
submit
()
{
formRef
?.
validate
().
then
(()
=>
{
formRef
?.
validate
().
then
(()
=>
{
...
@@ -46,7 +59,7 @@ function submit() {
...
@@ -46,7 +59,7 @@ function submit() {
@
update:modelValue=
"$emit('update:modelValue')"
>
@
update:modelValue=
"$emit('update:modelValue')"
>
<el-form
:rules=
"rules"
:model=
"form"
hide-required-asterisk
ref=
"formRef"
>
<el-form
:rules=
"rules"
:model=
"form"
hide-required-asterisk
ref=
"formRef"
>
<el-form-item
label=
"选择成员"
prop=
"user"
>
<el-form-item
label=
"选择成员"
prop=
"user"
>
<SelectUser
v-model=
"form.user"
></SelectUser>
<SelectUser
v-model=
"form.user"
@
change=
"fetchMemberRoles"
></SelectUser>
</el-form-item>
</el-form-item>
<el-form-item
label=
"选择角色"
prop=
"role"
>
<el-form-item
label=
"选择角色"
prop=
"role"
>
<el-select
v-model=
"form.role"
multiple
placeholder=
"请选择"
value-key=
"id"
style=
"width: 100%"
>
<el-select
v-model=
"form.role"
multiple
placeholder=
"请选择"
value-key=
"id"
style=
"width: 100%"
>
...
...
src/modules/base/channel/components/AddProject.vue
浏览文件 @
00d74712
...
@@ -178,6 +178,7 @@ function submit() {
...
@@ -178,6 +178,7 @@ function submit() {
<el-date-picker
<el-date-picker
v-model=
"form.expire_range_month_start"
v-model=
"form.expire_range_month_start"
type=
"date"
type=
"date"
value-format=
"YYYY-MM-DD"
placeholder=
"请选择"
placeholder=
"请选择"
style=
"width: 100%"
/>
style=
"width: 100%"
/>
</el-form-item>
</el-form-item>
...
@@ -187,6 +188,7 @@ function submit() {
...
@@ -187,6 +188,7 @@ function submit() {
<el-date-picker
<el-date-picker
v-model=
"form.expire_range_month_end"
v-model=
"form.expire_range_month_end"
type=
"date"
type=
"date"
value-format=
"YYYY-MM-DD"
placeholder=
"请选择"
placeholder=
"请选择"
style=
"width: 100%"
/>
style=
"width: 100%"
/>
</el-form-item>
</el-form-item>
...
...
src/modules/base/channel/components/InfoAgreement.vue
浏览文件 @
00d74712
...
@@ -51,6 +51,7 @@ const form = inject(provideForm) as ChannelFormData
...
@@ -51,6 +51,7 @@ const form = inject(provideForm) as ChannelFormData
<el-date-picker
<el-date-picker
v-model=
"form.partner.agreement_signing_time"
v-model=
"form.partner.agreement_signing_time"
type=
"date"
type=
"date"
value-format=
"YYYY-MM-DD"
placeholder=
"请选择"
placeholder=
"请选择"
style=
"width: 100%"
/>
style=
"width: 100%"
/>
</el-form-item>
</el-form-item>
...
@@ -60,6 +61,7 @@ const form = inject(provideForm) as ChannelFormData
...
@@ -60,6 +61,7 @@ const form = inject(provideForm) as ChannelFormData
<el-date-picker
<el-date-picker
v-model=
"form.partner.agreement_filing_time"
v-model=
"form.partner.agreement_filing_time"
type=
"date"
type=
"date"
value-format=
"YYYY-MM-DD"
placeholder=
"请选择"
placeholder=
"请选择"
style=
"width: 100%"
/>
style=
"width: 100%"
/>
</el-form-item>
</el-form-item>
...
@@ -69,6 +71,7 @@ const form = inject(provideForm) as ChannelFormData
...
@@ -69,6 +71,7 @@ const form = inject(provideForm) as ChannelFormData
<el-date-picker
<el-date-picker
v-model=
"form.partner.channel_open_time"
v-model=
"form.partner.channel_open_time"
type=
"date"
type=
"date"
value-format=
"YYYY-MM-DD"
placeholder=
"请选择"
placeholder=
"请选择"
style=
"width: 100%"
/>
style=
"width: 100%"
/>
</el-form-item>
</el-form-item>
...
...
src/modules/base/channel/components/InfoBase.vue
浏览文件 @
00d74712
...
@@ -48,7 +48,7 @@ function handleChangeUser(user: SearchUser) {
...
@@ -48,7 +48,7 @@ function handleChangeUser(user: SearchUser) {
</el-col>
</el-col>
<el-col
:span=
"4"
>
<el-col
:span=
"4"
>
<el-form-item
label=
"渠道标签"
>
<el-form-item
label=
"渠道标签"
>
<el-select
v-model=
"form.tags"
placeholder=
"请选择"
multiple
collapse-tags
style=
"width: 100%"
>
<el-select
v-model=
"form.tags"
placeholder=
"请选择"
multiple
style=
"width: 100%"
>
<el-option
v-for=
"item in options.channelTags"
:key=
"item"
:label=
"item"
:value=
"item"
/>
<el-option
v-for=
"item in options.channelTags"
:key=
"item"
:label=
"item"
:value=
"item"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
...
src/modules/base/channel/components/InfoMember.vue
浏览文件 @
00d74712
...
@@ -98,5 +98,9 @@ function handleDelete(row: ChannelMember, index: number) {
...
@@ -98,5 +98,9 @@ function handleDelete(row: ChannelMember, index: number) {
</
template
>
</
template
>
</AppList>
</AppList>
</el-card>
</el-card>
<AddMember
v-model=
"memberVisible"
@
submit=
"handleSubmitMember"
v-if=
"memberVisible"
></AddMember>
<AddMember
v-model=
"memberVisible"
:channelId=
"form.channel_id"
@
submit=
"handleSubmitMember"
v-if=
"memberVisible"
></AddMember>
</template>
</template>
src/modules/base/channel/views/Index.vue
浏览文件 @
00d74712
...
@@ -101,7 +101,7 @@ function toggleSelection() {
...
@@ -101,7 +101,7 @@ function toggleSelection() {
appList
?.
tableRef
.
clearSelection
()
appList
?.
tableRef
.
clearSelection
()
}
}
let
multipleSelection
=
$ref
<
any
[]
>
([])
let
multipleSelection
=
$ref
<
ChannelItem
[]
>
([])
function
handleSelectionChange
(
value
:
any
)
{
function
handleSelectionChange
(
value
:
any
)
{
multipleSelection
=
value
multipleSelection
=
value
}
}
...
...
src/modules/base/project/api.ts
浏览文件 @
00d74712
...
@@ -59,3 +59,8 @@ export function addMember(data: { user_id: string; projects_id: string; roles: s
...
@@ -59,3 +59,8 @@ export function addMember(data: { user_id: string; projects_id: string; roles: s
export
function
deleteProject
(
data
:
{
id
:
string
})
{
export
function
deleteProject
(
data
:
{
id
:
string
})
{
return
httpRequest
.
post
(
'/api/zws/v1/backend/project/delete'
,
data
)
return
httpRequest
.
post
(
'/api/zws/v1/backend/project/delete'
,
data
)
}
}
// 获取用户所在项目的角色
export
function
getMemberRoles
(
params
:
{
user_id
:
string
;
project_id
:
string
})
{
return
httpRequest
.
get
(
'/api/zws/v1/backend/project/member-roles'
,
{
params
})
}
src/modules/base/project/components/AddMember.vue
浏览文件 @
00d74712
<
script
setup
lang=
"ts"
>
<
script
setup
lang=
"ts"
>
import
type
{
FormInstance
,
FormRules
}
from
'element-plus'
import
type
{
FormInstance
,
FormRules
}
from
'element-plus'
import
type
{
User
,
Role
}
from
'../types'
import
type
{
User
,
Role
}
from
'../types'
import
{
getProjectRoles
}
from
'../api'
import
{
getProjectRoles
,
getMemberRoles
}
from
'../api'
import
SelectUser
from
'@/components/SelectUser.vue'
import
SelectUser
from
'@/components/SelectUser.vue'
interface
FormData
{
interface
FormData
{
user
:
User
user
:
User
role
:
Role
[]
role
:
Role
[]
}
}
const
props
=
defineProps
<
{
projectId
?:
string
}
>
()
const
emit
=
defineEmits
<
{
const
emit
=
defineEmits
<
{
(
e
:
'update:modelValue'
,
modelValue
:
boolean
):
void
(
e
:
'update:modelValue'
,
modelValue
:
boolean
):
void
(
e
:
'submit'
,
data
:
FormData
):
void
(
e
:
'submit'
,
data
:
FormData
):
void
...
@@ -30,6 +32,17 @@ onMounted(() => {
...
@@ -30,6 +32,17 @@ onMounted(() => {
fetchRoles
()
fetchRoles
()
})
})
// 获取成员已有角色
function
fetchMemberRoles
()
{
if
(
!
(
props
.
projectId
&&
form
.
user
?.
id
))
return
getMemberRoles
({
user_id
:
form
.
user
.
id
,
project_id
:
props
.
projectId
}).
then
(
res
=>
{
form
.
role
=
res
.
data
||
[]
})
}
// 选择完成
// 选择完成
function
submit
()
{
function
submit
()
{
formRef
?.
validate
().
then
(()
=>
{
formRef
?.
validate
().
then
(()
=>
{
...
@@ -46,7 +59,7 @@ function submit() {
...
@@ -46,7 +59,7 @@ function submit() {
@
update:modelValue=
"$emit('update:modelValue')"
>
@
update:modelValue=
"$emit('update:modelValue')"
>
<el-form
:rules=
"rules"
:model=
"form"
hide-required-asterisk
ref=
"formRef"
>
<el-form
:rules=
"rules"
:model=
"form"
hide-required-asterisk
ref=
"formRef"
>
<el-form-item
label=
"选择成员"
prop=
"user"
>
<el-form-item
label=
"选择成员"
prop=
"user"
>
<SelectUser
v-model=
"form.user"
></SelectUser>
<SelectUser
v-model=
"form.user"
@
change=
"fetchMemberRoles"
></SelectUser>
</el-form-item>
</el-form-item>
<el-form-item
label=
"选择角色"
prop=
"role"
>
<el-form-item
label=
"选择角色"
prop=
"role"
>
<el-select
v-model=
"form.role"
multiple
placeholder=
"请选择"
value-key=
"id"
style=
"width: 100%"
>
<el-select
v-model=
"form.role"
multiple
placeholder=
"请选择"
value-key=
"id"
style=
"width: 100%"
>
...
...
src/modules/base/project/components/InfoUsers.vue
浏览文件 @
00d74712
...
@@ -98,5 +98,9 @@ function handleDelete(row: ProjectMember, index: number) {
...
@@ -98,5 +98,9 @@ function handleDelete(row: ProjectMember, index: number) {
</
template
>
</
template
>
</AppList>
</AppList>
</el-card>
</el-card>
<AddMember
v-model=
"memberVisible"
@
submit=
"handleSubmitMember"
v-if=
"memberVisible"
></AddMember>
<AddMember
v-model=
"memberVisible"
:projectId=
"form.project_id"
@
submit=
"handleSubmitMember"
v-if=
"memberVisible"
></AddMember>
</template>
</template>
src/modules/base/project/views/Index.vue
浏览文件 @
00d74712
...
@@ -61,6 +61,13 @@ function toggleSelection() {
...
@@ -61,6 +61,13 @@ function toggleSelection() {
}
}
let
multipleSelection
=
$ref
<
{
project_id
:
string
}[]
>
([])
let
multipleSelection
=
$ref
<
{
project_id
:
string
}[]
>
([])
const
currentProjectId
=
$computed
(()
=>
{
if
(
multipleSelection
.
length
===
1
)
{
return
multipleSelection
[
0
].
project_id
}
else
{
return
''
}
})
function
handleSelectionChange
(
value
:
any
)
{
function
handleSelectionChange
(
value
:
any
)
{
multipleSelection
=
value
multipleSelection
=
value
}
}
...
@@ -165,7 +172,11 @@ const handleDelete = function (row: any) {
...
@@ -165,7 +172,11 @@ const handleDelete = function (row: any) {
>
>
</
template
>
</
template
>
</AppList>
</AppList>
<AddMember
v-model=
"memberVisible"
@
submit=
"handleSubmitMember"
v-if=
"memberVisible"
></AddMember>
<AddMember
v-model=
"memberVisible"
:projectId=
"currentProjectId"
@
submit=
"handleSubmitMember"
v-if=
"memberVisible"
></AddMember>
</AppCard>
</AppCard>
<el-dialog
v-model=
"memberRoleVisible"
title=
"提示"
width=
"500px"
>
<el-dialog
v-model=
"memberRoleVisible"
title=
"提示"
width=
"500px"
>
<el-form
label-suffix=
":"
>
<el-form
label-suffix=
":"
>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论