Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
confucius
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
罗超
confucius
Commits
dd0fda81
Commit
dd0fda81
authored
Aug 05, 2021
by
Mac
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
欢迎语 文件新建
parent
31dc901c
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
390 additions
and
1 deletion
+390
-1
wechat.js
src/api/system/wechat.js
+23
-0
addWelcome.vue
src/pages/enterprise/addWelcome.vue
+185
-0
welcomeList.vue
src/pages/enterprise/welcomeList.vue
+171
-0
routes.js
src/router/routes.js
+11
-1
No files found.
src/api/system/wechat.js
View file @
dd0fda81
...
...
@@ -23,3 +23,26 @@ export function getWeChatConfigInfo(data) {
data
})
}
/**
* 初始化 同步部门至企业微信
*
*/
export
function
setSyncEduDepartment
(
data
)
{
return
request
({
url
:
'/QYWeChat/SetSyncEduDepartment'
,
method
:
'post'
,
data
})
}
/**
* 初始化 同步员工至企业微信
*
*/
export
function
SetSynvEduEmployee
(
data
)
{
return
request
({
url
:
'/QYWeChat/SetSynvEduEmployee'
,
method
:
'post'
,
data
})
}
\ No newline at end of file
src/pages/enterprise/addWelcome.vue
0 → 100644
View file @
dd0fda81
<
style
>
@import
"../financial/css/cssReset.css"
;
.addwelcome
{
justify-content
:
space-between
;
}
.addwelcome
.box_l
{
width
:
400px
;
border-radius
:
6px
;
margin-right
:
15px
;
background
:
#fff
;
}
.addwelcome
.boxl_title
{
width
:
100%
;
height
:
56px
;
display
:
flex
;
align-items
:
center
;
border-bottom
:
1px
solid
#e8e8e8
;
}
.addwelcome
.box_r
{
width
:
1px
;
flex
:
1
;
border-radius
:
6px
;
background
:
#fff
;
padding
:
20px
;
}
</
style
>
<
template
>
<div
class=
"addwelcome page-body row"
style=
"background: transparent;"
>
<div
class=
"box_l"
>
<div
class=
"boxl_title"
>
<span
style=
"margin-left:24px ;color: rgba(0,0,0,.85); font-weight: 500; font-size: 16px;"
>
客户账号
</span>
</div>
</div>
<div
class=
"box_r"
>
<el-form
ref=
"addMsg"
:model=
"addMsg"
label-width=
"120px"
>
<el-form-item
label=
"企业微信成员:"
>
<el-radio-group
v-model=
"addMsg.membertype"
>
<el-radio
:label=
"1"
>
通用
</el-radio>
<el-radio
:label=
"2"
>
指定企业成员
</el-radio>
</el-radio-group>
<el-button
size=
"small"
style=
"margin-left: 20px;"
v-if=
"addMsg.membertype==2"
@
click=
'getMember'
>
选择成员
</el-button>
<span
v-if=
"addMsg.ryList.length>0"
style=
"margin-left: 15px;"
>
已选择
{{
addMsg
.
ryList
.
length
}}
名成员
</span>
<span
v-if=
"addMsg.ryList.length>0"
style=
"cursor: pointer;color: #1890ff;margin-left: 15px;"
@
click=
'addMsg.ryList =[],showMember=[]'
>
重置
</span>
</el-form-item>
<el-form-item
label=
"文本内容:"
>
<el-input
type=
"textarea"
placeholder=
"请输入内容"
v-model=
"addMsg.Content"
style=
"width: 60%;"
:rows=
"4"
></el-input>
<div>
<el-button
size=
"small"
@
click=
'insert'
>
+插入客户名称
</el-button>
</div>
</el-form-item>
<el-form-item
label=
"添加内容:"
>
<el-tooltip
placement=
"top"
>
<div
slot=
"content"
>
<div
style=
"display: flex;align-items: center;"
></div>
</div>
<el-button
size=
"small"
>
+添加图片/图文/小程序
</el-button>
</el-tooltip>
</el-form-item>
</el-form>
</div>
<!-- 人员选择 -->
<el-dialog
custom-class=
'w700'
title=
"选择人员"
:visible
.
sync=
"outerVisible"
center
>
<div
class=
"fl"
style=
"width: 300px; margin: 0 20px;"
>
<p
style=
"margin: 0 0 10px 0;"
>
选择:
<el-input
class=
'w200'
placeholder=
"输入关键字进行过滤"
v-model=
"filterText"
>
</el-input>
</p>
<el-tree
class=
'ApprovalProcessBg'
:data=
"memberList"
show-checkbox
:filter-node-method=
"filterNode"
ref=
"tree"
:props=
"defaultProps"
:render-after-expand=
"false"
node-key=
"Id"
:check-on-click-node=
"true"
@
check-change=
"handleNodeChange"
>
</el-tree>
</div>
<div
class=
"fl"
>
<p
style=
"margin: 0 0 20px 0;"
>
已选:
</p>
<div
class=
"Approval_yxList"
>
<li
v-for=
"(item,index) in showMember"
>
{{
item
.
EmployeeName
}}
<i
@
click=
"mySetCheckedKeys(item.Id,index)"
class=
"el-icon-circle-close showMemberIcon"
></i>
</li>
</div>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"hollowFixedBtn"
@
click=
"outerVisible = false"
>
取消
</button>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"getmember"
>
确实
</button>
</div>
</el-dialog>
</div>
</
template
>
<
script
>
import
{
queryEmployee
}
from
'../../api/users/user'
export
default
{
meta
:
{
title
:
"欢迎语编辑"
},
name
:
"welcomeList"
,
data
()
{
return
{
loading
:
false
,
outerVisible
:
false
,
//选择人员弹窗
filterText
:
''
,
//人员选择 帅选
memberList
:
[],
//
showMember
:
[],
addMsg
:
{
membertype
:
1
,
ryList
:
[],
Content
:
""
,
},
defaultProps
:
{
children
:
'ChildList'
,
label
:
'EmployeeName'
,
},
}
},
created
()
{
},
methods
:
{
getMember
()
{
this
.
outerVisible
=
true
;
this
.
dialogTitle
=
this
.
$t
(
'fnc.xzrenyuan'
);
queryEmployee
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
memberList
=
res
.
Data
;
}
}).
catch
(()
=>
{
})
var
arr
=
[];
this
.
showMember
.
forEach
(
x
=>
{
arr
.
push
(
x
.
Id
);
})
if
(
this
.
$refs
.
tree
)
{
this
.
$refs
.
tree
.
setCheckedKeys
(
arr
);
}
},
mySetCheckedKeys
(
id
,
index
)
{
var
arr
=
[];
this
.
showMember
.
splice
(
index
,
1
);
this
.
showMember
.
forEach
(
x
=>
{
arr
.
push
(
x
.
Id
);
})
if
(
this
.
$refs
.
tree
)
{
this
.
$refs
.
tree
.
setCheckedKeys
(
arr
);
}
},
handleNodeChange
(
data
,
checked
)
{
data
.
IsCheck
=
checked
;
let
res
=
this
.
$refs
.
tree
.
getCheckedNodes
(
true
,
true
);
this
.
showMember
=
[];
res
.
forEach
(
x
=>
{
var
obj
=
{
EmployeeName
:
x
.
EmployeeName
,
Id
:
x
.
Id
}
this
.
showMember
.
push
(
obj
)
})
},
filterNode
(
value
,
data
)
{
if
(
!
value
)
return
true
;
return
data
.
DepartmentName
.
indexOf
(
value
)
!==
-
1
;
},
getmember
()
{
//人员确定选择
this
.
outerVisible
=
false
;
this
.
addMsg
.
ryList
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
showMember
))
},
insert
(){
this
.
addMsg
.
Content
=
this
.
addMsg
.
Content
+
'##客户名称##'
}
}
}
</
script
>
\ No newline at end of file
src/pages/enterprise/welcomeList.vue
0 → 100644
View file @
dd0fda81
<
template
>
<div
class=
"welcomeList page-body"
>
<!--
<div
class=
"page-search row items-center"
>
<div
class=
"col row wrap q-mr-lg q-col-gutter-md"
>
</div>
</div>
-->
<div
class=
"page-content"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
separator=
"none"
title=
""
:data=
"data"
:columns=
"columns"
row-key=
"name"
>
<template
v-slot:top=
"props"
>
<div
class=
"col-2 q-table__title"
>
欢迎语列表
</div>
<q-space
/>
<q-btn
color=
"accent"
style=
"float:right;margin-right:0;"
size=
"sm"
class=
"q-mr-md"
icon=
"add"
label=
"新增欢迎语"
@
click=
"goadd()"
></q-btn>
</
template
>
<
template
v-slot:body-cell-Type=
"props"
>
<q-td
:props=
"props"
>
<span
v-if=
"props.row.Type==1"
>
图文
</span>
<span
v-if=
"props.row.Type==2"
>
图片
</span>
</q-td>
</
template
>
<
template
v-slot:body-cell-Content=
"props"
>
<q-td
:props=
"props"
>
<div
style=
"max-width: 800px;white-space: normal;"
>
{{
props
.
row
.
Content
}}
</div>
</q-td>
</
template
>
<
template
v-slot:body-cell-optioned=
"props"
>
<q-td
:props=
"props"
>
<q-btn
flat
size=
"xs"
icon=
"edit"
style=
"font-weight:400;color: #3FC4FF"
class=
"q-mr-xs"
label=
"编辑"
@
click=
"goDetailed(props.row,'0')"
/>
<q-btn
flat
size=
"xs"
icon=
"delete"
style=
"font-weight:400;color: #3FC4FF"
class=
"q-mr-xs"
label=
"删除"
@
click=
"goDetailed(props.row,'0')"
/>
</q-td>
</
template
>
<
template
v-slot:bottom
>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
:input=
"true"
@
input=
"changePage"
/>
</
template
>
</q-table>
</div>
</div>
</template>
<
script
>
export
default
{
meta
:
{
title
:
"欢迎语列表"
},
name
:
"welcomeList"
,
data
()
{
return
{
loading
:
false
,
ISsystem
:
false
,
data
:
[{
Type
:
1
,
Content
:
'文本:您好,##客户名称##!亲~你終於來啦!!我是你的专属顾问,任何有关日语学习问题都可以问我哦!!~~~~~~~~~~ 加入甲鹤大家庭~优惠天天有 第一条~9.9块日语体验课!! 第二条~每周活动免费参加! 第三条~猛戳我,”赞羊”电商优惠券免费送!! 第四条~再戳我,”旅游优惠券”我再送! ~~~~~从现在起”甲鹤日语”就是你学习日语的好帮手!! 现在回复”甲鹤”两个字~看看甲鹤想给你看甚么?~呵呵呵!'
,
applymember
:
'通用'
,
UpdateTime
:
'2021-08-04 15:48'
}],
pageCount
:
0
,
msg
:
{
pageIndex
:
1
,
pageSize
:
10
,
rowsPerPage
:
10
,
Month
:
''
,
TeacherId
:
0
,
State
:
0
,
},
//公告column
columns
:
[{
name
:
'Type'
,
label
:
'欢迎语类型'
,
align
:
'left'
},
{
name
:
'Content'
,
field
:
'Content'
,
label
:
'欢迎语内容'
,
align
:
'left'
,
},
{
name
:
'applymember'
,
field
:
'applymember'
,
label
:
'使用成员'
,
align
:
'left'
},
{
name
:
'UpdateTime'
,
field
:
'UpdateTime'
,
label
:
'创建时间'
,
align
:
'left'
},
{
name
:
'optioned'
,
label
:
'操作'
,
field
:
'DeptId'
}
],
}
},
created
()
{
},
methods
:
{
changePage
(
e
){
},
goadd
(){
this
.
$router
.
push
({
path
:
'/enterprise/addWelcome'
,
});
}
}
}
</
script
>
<
style
>
.welcomeList
.Sysuser_Date
.el-input--prefix
.el-input__inner
{
background-color
:
red
;
border
:
0
;
}
.welcomeList
.state-item
{
padding
:
2px
5px
;
border-radius
:
3px
;
text-align
:
center
;
font-size
:
10px
;
}
.welcomeList
.frIdlist
{
padding
:
3px
10px
;
border-radius
:
3px
;
background
:
#EEEEEF
;
align-items
:
center
;
justify-content
:
center
;
margin-right
:
5px
;
margin-bottom
:
5px
;
cursor
:
pointer
;
}
.class-popover
.q-pr-lg
{
padding-right
:
0
;
margin-top
:
20px
;
}
.welcomeList
.el-date-editor.el-input
{
width
:
100%
;
}
.welcomeList
.el-date-editor.el-input
input
{
background-color
:
transparent
!important
;
}
.welcomeList
.el-range-editor
.el-range-input
{
background
:
none
;
}
.Sysuser_Date
.el-input__inner
{
background
:
transparent
!important
;
border
:
0
!important
;
}
.welcomeList
.el-drawer.rtl
{
overflow
:
inherit
;
}
</
style
>
\ No newline at end of file
src/router/routes.js
View file @
dd0fda81
...
...
@@ -1129,7 +1129,17 @@ const routes = [{
path
:
"/stuMan/unfinishedStudent"
,
//学管 未完成学员名单
component
:
()
=>
import
(
"pages/stuMan/unfinishedStudent"
)
}
},
{
path
:
"/enterprise/welcomeList"
,
//企微 欢迎语列表
component
:
()
=>
import
(
"pages/enterprise/welcomeList"
)
},
{
path
:
"/enterprise/addWelcome"
,
//企微 欢迎语修改新增
component
:
()
=>
import
(
"pages/enterprise/addWelcome"
)
},
],
},
...
...
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