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
8c5cf525
Commit
8c5cf525
authored
Dec 14, 2021
by
罗超
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/confucius
into master
# Conflicts: # src/api/sale/sale.js
parents
3d1c07d5
fe8b3317
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
130 additions
and
102 deletions
+130
-102
sale.js
src/api/sale/sale.js
+20
-1
courseprice-form.vue
src/components/course/courseprice-form.vue
+5
-2
schedul-visit.vue
src/components/schedul/schedul-visit.vue
+45
-96
student-left.vue
src/components/school/student/student-left.vue
+60
-3
No files found.
src/api/sale/sale.js
View file @
8c5cf525
...
@@ -384,4 +384,23 @@ export function getMyCustomerList(data) {
...
@@ -384,4 +384,23 @@ export function getMyCustomerList(data) {
method
:
'post'
,
method
:
'post'
,
data
data
});
});
}
}
\ No newline at end of file
// 获取收客渠道下拉
export
function
GetStuChannelList
(
data
)
{
return
request
({
url
:
'/User/GetStuChannelList'
,
method
:
'post'
,
data
});
}
// 获取协助人员下拉
export
function
GetAssistTypeList
(
data
)
{
return
request
({
url
:
'/user/GetAssistTypeList'
,
method
:
'post'
,
data
});
}
src/components/course/courseprice-form.vue
View file @
8c5cf525
...
@@ -3,6 +3,9 @@
...
@@ -3,6 +3,9 @@
height
:
40px
;
height
:
40px
;
background-color
:
rgb
(
238
,
238
,
239
);
background-color
:
rgb
(
238
,
238
,
239
);
}
}
.coursePrice_table
tr
{
height
:
65px
;
}
.course_Line
{
.course_Line
{
width
:
3px
;
width
:
3px
;
height
:
10px
;
height
:
10px
;
...
@@ -41,7 +44,7 @@
...
@@ -41,7 +44,7 @@
优惠
优惠
</div>
</div>
<table
style=
"border-collapse: collapse;"
class=
"coursePrice_table"
>
<table
style=
"border-collapse: collapse;"
class=
"coursePrice_table"
>
<tr>
<tr
style=
"height:40px;"
>
<th>
<th>
优惠
优惠
</th>
</th>
...
@@ -79,7 +82,7 @@
...
@@ -79,7 +82,7 @@
返佣
返佣
</div>
</div>
<table
style=
"border-collapse: collapse;"
class=
"coursePrice_table"
>
<table
style=
"border-collapse: collapse;"
class=
"coursePrice_table"
>
<tr>
<tr
style=
"height:40px;"
>
<th>
同行
<th>
同行
</th>
</th>
<th>
<th>
...
...
src/components/schedul/schedul-visit.vue
View file @
8c5cf525
...
@@ -90,15 +90,14 @@
...
@@ -90,15 +90,14 @@
background
:
#F0F2F5
!important
;
background
:
#F0F2F5
!important
;
border
:
0
;
border
:
0
;
}
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"schedulVisit"
>
<div
class=
"schedulVisit"
>
<div
class=
"page-content"
>
<div
class=
"page-content"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"stickycreatInsertStr-column-table schedul_Vtable"
separator=
"none"
:data=
"data"
:columns=
"columns"
class=
"stickycreatInsertStr-column-table schedul_Vtable"
separator=
"none"
:data=
"data"
:columns=
"columns"
row-key=
"name"
:visible-columns=
"visibleColumns"
>
row-key=
"name"
>
<template
v-slot:top=
"props"
>
<template>
<div
class=
"fangkeTitle"
ref=
"fkdj"
>
访客登记
</div>
<div
class=
"fangkeTitle"
ref=
"fkdj"
>
访客登记
</div>
<span
class=
"fangkeNumb"
>
{{
data
.
length
}}
</span>
<span
class=
"fangkeNumb"
>
{{
data
.
length
}}
</span>
<div
class=
"visit_Date"
>
<div
class=
"visit_Date"
>
...
@@ -157,28 +156,9 @@
...
@@ -157,28 +156,9 @@
</el-popover>
</el-popover>
</div>
</div>
</
template
>
</
template
>
<
template
v-slot:body-cell-VisitTimes=
"props"
>
<q-td
:props=
"props"
>
<span>
{{
props
.
row
.
VisitTimes
==
0
?
'首次'
:
props
.
row
.
VisitTimes
}}
</span>
</q-td>
</
template
>
<
template
v-slot:body-cell-VisitorStatus=
"props"
>
<q-td
:props=
"props"
>
<img
v-if=
"props.row.VisitorStatus==1"
src=
"../../assets/images/normal.png"
/>
<img
v-if=
"props.row.VisitorStatus==2"
src=
"../../assets/images/vip.png"
/>
<img
v-if=
"props.row.VisitorStatus==3"
src=
"../../assets/images/blackList.png"
/>
</q-td>
</
template
>
<
template
v-slot:body-cell-Evaluate=
"props"
>
<q-td
:props=
"props"
>
{{
getRemarks
(
props
.
row
.
Evaluate
)
}}
</q-td>
</
template
>
<
template
v-slot:body-cell-Remark=
"props"
>
<q-td
:props=
"props"
>
{{
getRemarks
(
props
.
row
.
Remark
)
}}
</q-td>
</
template
>
<
template
v-slot:bottom
>
<
template
v-slot:bottom
>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
:input=
"true"
@
input=
"changePage"
/>
:input=
"true"
@
input=
"changePage"
/>
...
@@ -230,7 +210,8 @@
...
@@ -230,7 +210,8 @@
<q-btn
flat
size=
"xs"
icon=
"edit"
slot=
"reference"
@
click=
"EditVisitor(props.row.Id)"
color=
"accent"
<q-btn
flat
size=
"xs"
icon=
"edit"
slot=
"reference"
@
click=
"EditVisitor(props.row.Id)"
color=
"accent"
style=
"font-weight:400"
label=
"编辑"
v-if=
"DutyAuthObj.isShowEdit"
/>
style=
"font-weight:400"
label=
"编辑"
v-if=
"DutyAuthObj.isShowEdit"
/>
</el-popover>
</el-popover>
<q-btn
flat
size=
"xs"
@
click=
"getDetail(props.row)"
icon=
"iconfont icon-View"
color=
"accent"
style=
"font-weight:400"
label=
"详情"
/>
<q-btn
flat
size=
"xs"
@
click=
"getDetail(props.row)"
icon=
"iconfont icon-View"
color=
"accent"
style=
"font-weight:400"
label=
"详情"
/>
</q-td>
</q-td>
</
template
>
</
template
>
</q-table>
</q-table>
...
@@ -240,11 +221,8 @@
...
@@ -240,11 +221,8 @@
</template>
</template>
<
script
>
<
script
>
import
{
import
{
queryVisitorPage
,
getStudentPage
queryVisitor
,
}
from
"../../api/school"
;
updateVisitor
,
setVisitor
,
}
from
'../../api/scheduling/schedu'
import
{
import
{
getGuestBasicsEnumList
getGuestBasicsEnumList
}
from
'../../api/sale/sale'
}
from
'../../api/sale/sale'
...
@@ -267,41 +245,35 @@
...
@@ -267,41 +245,35 @@
data
()
{
data
()
{
return
{
return
{
columns
:
[{
columns
:
[{
name
:
'Name'
,
name
:
'
Stu
Name'
,
label
:
'姓名'
,
label
:
'姓名'
,
required
:
true
,
required
:
true
,
field
:
'Name'
,
field
:
'
Stu
Name'
,
align
:
'left'
align
:
'left'
},
},
{
{
name
:
'
Tel
'
,
name
:
'
StuSexStr
'
,
field
:
'
Tel
'
,
field
:
'
StuSexStr
'
,
label
:
'
电话
'
,
label
:
'
性别
'
,
align
:
'left'
,
align
:
'left'
,
},
},
{
{
name
:
'WeChatNum'
,
name
:
'StuTel'
,
field
:
'WeChatNum'
,
field
:
'StuTel'
,
label
:
'微信'
,
label
:
'电话'
,
align
:
'left'
align
:
'left'
,
},
{
name
:
'CourseName'
,
label
:
'兴趣课程'
,
field
:
'CourseName'
,
align
:
'left'
},
},
{
{
name
:
'Stu
dyTi
me'
,
name
:
'Stu
StageNa
me'
,
label
:
'学习时间
'
,
field
:
'StuStageName
'
,
field
:
'StudyTime
'
,
label
:
'客户阶段
'
,
align
:
'left'
align
:
'left'
,
},
},
{
{
name
:
'
LevelType
'
,
name
:
'
CreateTimeStr
'
,
label
:
'当前水平
'
,
field
:
'CreateTimeStr
'
,
field
:
'LevelType
'
,
label
:
'创建时间
'
,
align
:
'left'
align
:
'left'
,
},
},
{
{
name
:
'CreateByName'
,
name
:
'CreateByName'
,
...
@@ -309,30 +281,12 @@
...
@@ -309,30 +281,12 @@
field
:
'CreateByName'
,
field
:
'CreateByName'
,
align
:
'left'
align
:
'left'
},
},
{
name
:
'VisitorStatus'
,
label
:
'状态'
,
field
:
'VisitorStatus'
,
align
:
'left'
},
{
name
:
'Evaluate'
,
label
:
'意向评估'
,
field
:
'Evaluate'
,
align
:
'left'
},
{
{
name
:
'VisitTimes'
,
name
:
'VisitTimes'
,
label
:
'到访次数'
,
label
:
'到访次数'
,
field
:
'VisitTimes'
,
field
:
'VisitTimes'
,
align
:
'left'
align
:
'left'
},
},
{
name
:
'Remark'
,
label
:
'备注'
,
field
:
'Remark'
,
align
:
'left'
},
{
{
name
:
'optioned'
,
name
:
'optioned'
,
label
:
'操作'
,
label
:
'操作'
,
...
@@ -346,7 +300,7 @@
...
@@ -346,7 +300,7 @@
pageIndex
:
1
,
pageIndex
:
1
,
pageSize
:
5
,
pageSize
:
5
,
rowsPerPage
:
5
,
rowsPerPage
:
5
,
PlanId
:
0
,
IsQueryMyStu
:
1
,
KeyWords
:
""
,
KeyWords
:
""
,
},
},
addMsg
:
{
addMsg
:
{
...
@@ -380,11 +334,7 @@
...
@@ -380,11 +334,7 @@
isShowAdd
:
true
,
//是否显示新增按钮【默认显示】
isShowAdd
:
true
,
//是否显示新增按钮【默认显示】
isShowEdit
:
true
,
//是否显示编辑按钮【默认显示】
isShowEdit
:
true
,
//是否显示编辑按钮【默认显示】
},
},
//表格可见列
visibleColumns
:
[
'Name'
,
'Tel'
,
'WeChatNum'
,
'CourseName'
,
'StudyTime'
,
"LevelType"
,
"CreateByName"
,
"VisitorStatus"
,
"Evaluate"
,
'VisitTimes'
,
'Remark'
,
'optioned'
],
//可见列
rules
:
{
//表单必填验证
rules
:
{
//表单必填验证
Name
:
[{
Name
:
[{
...
@@ -423,8 +373,8 @@
...
@@ -423,8 +373,8 @@
trigger
:
'blur'
trigger
:
'blur'
}]
}]
},
},
sendObj
:{},
sendObj
:
{},
isShowDetail
:
false
isShowDetail
:
false
}
}
},
},
...
@@ -456,7 +406,7 @@
...
@@ -456,7 +406,7 @@
}
}
});
});
},
},
submitForm2
(
addMsg2
){
submitForm2
(
addMsg2
)
{
this
.
$refs
[
addMsg2
].
validate
((
valid
)
=>
{
this
.
$refs
[
addMsg2
].
validate
((
valid
)
=>
{
if
(
valid
)
{
if
(
valid
)
{
this
.
SaveVisitor
();
this
.
SaveVisitor
();
...
@@ -501,7 +451,8 @@
...
@@ -501,7 +451,8 @@
//获取访客列表
//获取访客列表
getVisitoryPage
()
{
getVisitoryPage
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
queryVisitorPage
(
this
.
msg
).
then
(
res
=>
{
getStudentPage
(
this
.
msg
).
then
(
res
=>
{
console
.
log
(
"res"
,
res
)
this
.
loading
=
false
this
.
loading
=
false
this
.
data
=
res
.
Data
.
PageData
;
this
.
data
=
res
.
Data
.
PageData
;
this
.
pageCount
=
res
.
Data
.
PageCount
;
this
.
pageCount
=
res
.
Data
.
PageCount
;
...
@@ -548,7 +499,7 @@
...
@@ -548,7 +499,7 @@
this
.
addMsg
.
VisitorStatus
=
''
;
this
.
addMsg
.
VisitorStatus
=
''
;
this
.
addMsg
.
Evaluate
=
""
;
this
.
addMsg
.
Evaluate
=
""
;
this
.
addMsg
.
Remark
=
""
;
this
.
addMsg
.
Remark
=
""
;
this
.
$refs
.
addMsg1
.
resetFields
();
this
.
$refs
.
addMsg1
.
resetFields
();
},
},
//保存
//保存
SaveVisitor
()
{
SaveVisitor
()
{
...
@@ -558,32 +509,30 @@
...
@@ -558,32 +509,30 @@
this
.
isShowVform
=
false
;
this
.
isShowVform
=
false
;
this
.
getVisitoryPage
();
this
.
getVisitoryPage
();
this
.
clearAddMsg
();
this
.
clearAddMsg
();
this
.
$refs
.
addMsg1
.
resetFields
();
this
.
$refs
.
addMsg1
.
resetFields
();
this
.
$refs
.
addMsg2
.
resetFields
();
this
.
$refs
.
addMsg2
.
resetFields
();
})
})
},
},
//过滤备注显示
//过滤备注显示
getRemarks
(
remark
){
getRemarks
(
remark
)
{
if
(
remark
.
length
>
10
)
{
if
(
remark
.
length
>
10
)
{
return
remark
.
substring
(
0
,
10
)
+
'...'
;
return
remark
.
substring
(
0
,
10
)
+
'...'
;
}
else
{
}
else
{
return
remark
;
return
remark
;
}
}
},
},
//获取详情
//获取详情
getDetail
(
obj
){
getDetail
(
obj
)
{
this
.
sendObj
=
obj
;
this
.
sendObj
=
obj
;
this
.
isShowDetail
=
true
;
this
.
isShowDetail
=
true
;
},
},
//关闭
//关闭
closeDetail
(){
closeDetail
()
{
this
.
isShowDetail
=
false
;
this
.
isShowDetail
=
false
;
}
}
}
}
}
}
</
script
>
</
script
>
<
style
lang=
"sass"
>
<
style
lang=
"sass"
>
@import
url('~assets/css/table.sass')
@import
url('~assets/css/table.sass')
</
style
>
</
style
>
\ No newline at end of file
src/components/school/student/student-left.vue
View file @
8c5cf525
...
@@ -157,6 +157,26 @@
...
@@ -157,6 +157,26 @@
emit-value
map-options
/>
emit-value
map-options
/>
</div>
</div>
</div>
</div>
<div
class=
"info_item"
>
<div
class=
"item_label"
>
收客渠道
</div>
<div
class=
"item_value"
>
<q-select
filled
v-model=
"customObj.StuChannel"
:options=
"StuChannelList"
option-label=
"Name"
option-value=
"Id"
emit-value
map-options
/>
</div>
</div>
<div
class=
"info_item"
v-if=
"customObj.StuChannel==6"
>
<div
class=
"item_label"
>
第三方平台名称
</div>
<div
class=
"item_value"
>
<q-input
filled
v-model=
"customObj.PlatformName"
></q-input>
</div>
</div>
<div
class=
"info_item"
>
<div
class=
"item_label"
>
协助人员
</div>
<div
class=
"item_value"
>
<q-select
filled
v-model=
"AssistPeople"
:options=
"AssistDropList"
option-label=
"Name"
option-value=
"Id"
emit-value
map-options
/>
</div>
</div>
<div
class=
"info_item"
>
<div
class=
"info_item"
>
<q-btn
color=
"accent"
class=
"q-mr-md"
label=
"保存"
@
click=
"saveStu()"
/>
<q-btn
color=
"accent"
class=
"q-mr-md"
label=
"保存"
@
click=
"saveStu()"
/>
</div>
</div>
...
@@ -173,7 +193,9 @@
...
@@ -173,7 +193,9 @@
import
{
import
{
getGuestBasicsEnumList
,
getGuestBasicsEnumList
,
getGuestEducationEnumList
,
getGuestEducationEnumList
,
getGuestLearningGoalsEnumList
getGuestLearningGoalsEnumList
,
GetStuChannelList
,
GetAssistTypeList
}
from
'../../../api/sale/sale'
}
from
'../../../api/sale/sale'
import
{
import
{
queryEmployee
queryEmployee
...
@@ -210,7 +232,14 @@
...
@@ -210,7 +232,14 @@
StuId
:
0
,
StuId
:
0
,
},
},
//客户对象
//客户对象
customObj
:
{},
customObj
:
{
AssistList
:[{
Id
:
0
,
//编号
AssistId
:
1
,
//员工编号
AssistType
:
1
,
//类型
StuId
:
1
,
//学员编号
}]
},
//日语基础列表
//日语基础列表
basicList
:
[],
basicList
:
[],
//学历列表
//学历列表
...
@@ -219,7 +248,10 @@
...
@@ -219,7 +248,10 @@
goalsList
:
[],
goalsList
:
[],
//员工列表
//员工列表
employeeList
:
[],
employeeList
:
[],
myEmployeeList
:
[]
myEmployeeList
:
[],
AssistPeople
:
1
,
StuChannelList
:
[],
//收客渠道
AssistDropList
:
[]
//协助人员
}
}
},
},
created
()
{
created
()
{
...
@@ -228,9 +260,14 @@
...
@@ -228,9 +260,14 @@
this
.
queryGuestEducationEnumList
();
this
.
queryGuestEducationEnumList
();
this
.
queryGoalsList
();
this
.
queryGoalsList
();
this
.
getEmployeeList
();
this
.
getEmployeeList
();
this
.
GetStuChannelList
();
this
.
GetAssistTypeList
();
if
(
this
.
saveObj
&&
this
.
saveObj
.
StuId
>
0
)
{
if
(
this
.
saveObj
&&
this
.
saveObj
.
StuId
>
0
)
{
this
.
customMsg
.
StuId
=
this
.
saveObj
.
StuId
;
this
.
customMsg
.
StuId
=
this
.
saveObj
.
StuId
;
this
.
queryStuInfo
();
this
.
queryStuInfo
();
if
(
this
.
customMsg
.
AssistList
&&
this
.
customMsg
.
AssistList
.
length
>
0
){
this
.
customMsg
.
AssistList
[
0
].
StuId
=
this
.
saveObj
.
StuId
;
}
}
}
},
},
mounted
()
{
mounted
()
{
...
@@ -238,6 +275,10 @@
...
@@ -238,6 +275,10 @@
methods
:
{
methods
:
{
//保存学员信息
//保存学员信息
saveStu
()
{
saveStu
()
{
if
(
this
.
customMsg
.
AssistList
&&
this
.
customMsg
.
AssistList
.
length
>
0
){
this
.
customMsg
.
AssistList
[
0
].
AssistId
=
this
.
customObj
.
CreateBy
;
this
.
customMsg
.
AssistList
[
0
].
AssistType
=
this
.
AssistPeople
;
}
saveStudent
(
this
.
customObj
).
then
(
res
=>
{
saveStudent
(
this
.
customObj
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
this
.
$q
.
notify
({
...
@@ -263,6 +304,22 @@
...
@@ -263,6 +304,22 @@
this
.
myEmployeeList
=
res
.
Data
;
this
.
myEmployeeList
=
res
.
Data
;
})
})
},
},
//获取收客渠道
GetStuChannelList
(){
GetStuChannelList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
){
this
.
StuChannelList
=
res
.
Data
;
}
})
},
//获取协助人员
GetAssistTypeList
(){
GetAssistTypeList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
){
this
.
AssistDropList
=
res
.
Data
;
}
})
},
//筛选员工
//筛选员工
filterEmployee
(
val
,
update
,
abort
)
{
filterEmployee
(
val
,
update
,
abort
)
{
update
(()
=>
{
update
(()
=>
{
...
...
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