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
84756243
Commit
84756243
authored
Dec 09, 2021
by
zhengke
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
71aa2c01
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
169 additions
and
16 deletions
+169
-16
student-left.vue
src/components/school/student/student-left.vue
+11
-1
student-visit.vue
src/components/school/student/student-visit.vue
+29
-2
student-yuefang.vue
src/components/school/student/student-yuefang.vue
+129
-13
No files found.
src/components/school/student/student-left.vue
View file @
84756243
...
...
@@ -119,7 +119,7 @@
<div
class=
"info_item"
>
<div
class=
"item_label"
>
创建人
</div>
<div
class=
"item_value"
>
<q-select
filled
v-model=
"customObj.CreateBy"
:options=
"e
mployeeList"
option-label=
"EmployeeName"
<q-select
filled
v-model=
"customObj.CreateBy"
@
filter=
"filterEmployee"
use-input
:options=
"myE
mployeeList"
option-label=
"EmployeeName"
option-value=
"Id"
emit-value
map-options
/>
</div>
</div>
...
...
@@ -215,6 +215,7 @@
goalsList
:
[],
//员工列表
employeeList
:
[],
myEmployeeList
:
[]
}
},
created
()
{
...
...
@@ -251,8 +252,17 @@
IsLeave
:
1
}).
then
(
res
=>
{
this
.
employeeList
=
res
.
Data
;
this
.
myEmployeeList
=
res
.
Data
;
})
},
//筛选员工
filterEmployee
(
val
,
update
,
abort
){
update
(()
=>
{
this
.
myEmployeeList
=
this
.
employeeList
.
filter
(
v
=>
v
.
EmployeeName
.
indexOf
(
val
)
>
-
1
);
});
},
//获取日语基础列表
getBasicList
()
{
getGuestBasicsEnumList
({}).
then
(
res
=>
{
...
...
src/components/school/student/student-visit.vue
View file @
84756243
...
...
@@ -4,6 +4,7 @@
<
template
>
<div>
<q-btn
label=
"新增"
color=
"accent q-mb-lg"
size=
"sm"
@
click=
"isShowAdd=true"
/>
<q-btn
label=
"取消"
style=
"margin-left:20px;"
v-if=
"isShowAdd"
flat
color=
"grey-10 q-mb-lg"
size=
"sm"
@
click=
"isShowAdd=false"
/>
<template
v-if=
"isShowAdd"
>
<div
class=
"row wrap"
>
<q-select
filled
option-value=
"SId"
class=
"col-6 q-pb-lg q-pr-lg"
option-label=
"SName"
...
...
@@ -32,7 +33,9 @@
</q-icon>
</
template
>
</q-input>
<q-input
filled
v-model=
"VisitMsg.ReceptionPersion"
class=
"col-6 q-pb-lg"
label=
"接待人"
></q-input>
<q-select
filled
v-model=
"VisitMsg.ReceptionPersion"
@
filter=
"filterEmployee"
class=
"col-6 q-pb-lg"
:options=
"myEmployeeList"
option-label=
"EmployeeName"
use-input
option-value=
"Id"
emit-value
map-options
label=
"接待人"
/>
</div>
<div
class=
"row wrap"
>
<q-input
filled
v-model=
"VisitMsg.Remark"
:rows=
"3"
type=
"textarea"
class=
"col-12 q-pb-lg"
label=
"备注"
>
...
...
@@ -87,6 +90,9 @@
saveStudentVisit
,
deleteStudentVisit
}
from
'../../../api/customerstudent/customerstudent'
;
import
{
queryEmployee
}
from
'../../../api/users/user'
export
default
{
meta
:
{
...
...
@@ -121,11 +127,15 @@
},
isShowAdd
:
false
,
dataList
:
[],
page_Count
:
0
page_Count
:
0
,
//员工列表
employeeList
:
[],
myEmployeeList
:
[]
}
},
mounted
()
{
this
.
getSchool
();
this
.
getEmployeeList
();
this
.
getList
();
},
methods
:
{
...
...
@@ -141,6 +151,23 @@
}
})
},
//获取员工列表
getEmployeeList
()
{
queryEmployee
({
IsLeave
:
1
}).
then
(
res
=>
{
this
.
employeeList
=
res
.
Data
;
this
.
myEmployeeList
=
this
.
ClassList
;
})
},
//下拉搜索
filterEmployee
(
val
,
update
,
abort
){
update
(()
=>
{
this
.
myEmployeeList
=
this
.
employeeList
.
filter
(
v
=>
v
.
EmployeeName
.
indexOf
(
val
)
>
-
1
);
});
},
//获取到访分页
getList
()
{
queryStudentVisitPage
(
this
.
msg
).
then
(
res
=>
{
...
...
src/components/school/student/student-yuefang.vue
View file @
84756243
...
...
@@ -3,28 +3,62 @@
</
style
>
<
template
>
<div>
<div
style=
"margin-top:30px;"
>
<div
class=
"row wrap"
>
<q-input
filled
class=
"col-6 q-pb-lg"
label=
"地点"
></q-input>
</div>
<div
class=
"row wrap"
>
<q-btn
label=
"新增"
color=
"accent q-mb-lg"
size=
"sm"
@
click=
"isShowAdd=true"
/>
<q-btn
label=
"取消"
style=
"margin-left:20px;"
v-if=
"isShowAdd"
flat
color=
"grey-10 q-mb-lg"
size=
"sm"
@
click=
"isShowAdd=false"
/>
</div>
<template
v-if=
"isShowAdd"
>
<div
class=
"row wrap"
>
<q-input
filled
class=
"col-6 q-pb-lg"
mask=
"date"
label=
"日期"
>
<q-input
filled
class=
"col-6 q-pb-lg q-pr-lg"
v-model=
"yueMsg.AppointmentPoint"
label=
"约访地点"
></q-input>
<q-input
filled
class=
"col-6 q-pb-lg"
v-model=
"yueMsg.AppointmentTime"
mask=
"date"
label=
"约访时间"
>
<template
v-slot:append
>
<q-icon
name=
"event"
class=
"cursor-pointer"
>
<q-popup-proxy
ref=
"qDateProxy1"
transition-show=
"scale"
transition-hide=
"scale"
>
<q-date
@
input=
"() => $refs.qDateProxy1.hide()"
/>
<q-date
v-model=
"yueMsg.AppointmentTime"
@
input=
"() => $refs.qDateProxy1.hide()"
/>
</q-popup-proxy>
</q-icon>
</
template
>
</q-input>
</div>
<div
class=
"row wrap"
>
<q-input
filled
type=
"textarea"
class=
"col-6 q-pb-lg"
label=
"目的"
></q-input>
<q-input
filled
v-model=
"yueMsg.Remark"
:rows=
"3"
type=
"textarea"
class=
"col-12 q-pb-lg"
label=
"备注"
>
</q-input>
</div>
<div
class=
"row wrap"
>
<q-btn
label=
"保存"
color=
"accent q-mb-lg"
style=
"width:200px;"
@
click=
"saveYuefang()"
/>
<q-input
filled
v-model=
"yueMsg.Feedback"
:rows=
"3"
type=
"textarea"
class=
"col-12 q-pb-lg"
label=
"反馈"
>
</q-input>
</div>
<div
class=
"row wrap"
style=
"margin-bottom:10px;"
>
<q-btn
label=
"保存"
color=
"accent q-mb-lg"
size=
"md"
@
click=
"savePoint()"
/>
</div>
</template>
<div
style=
"display:flex;flex:1;flex-direction: column;overflow:hidden;"
>
<div
class=
"TimeLineDiv"
>
<q-timeline
color=
"primary"
>
<q-timeline-entry
v-for=
"(tItem,tIndex) in dataList"
:key=
"tIndex"
>
<
template
v-slot:title
>
<div
class=
"visit_Cont"
>
<div>
约访地点:
{{
tItem
.
AppointmentPoint
}}
</div>
<div>
接待人:
{{
tItem
.
ReceptionPersion
}}
</div>
<div>
备注:
{{
tItem
.
Remark
}}
</div>
<div>
反馈:
{{
tItem
.
Feedback
}}
</div>
<div
@
click=
"delVisit(tItem.Id)"
class=
"visit_delete"
>
删除
</div>
</div>
</
template
>
<
template
v-slot:subtitle
>
<div
class=
"Time_TopList"
>
<div>
{{
tItem
.
AppointmentTime
}}
</div>
</div>
</
template
>
</q-timeline-entry>
</q-timeline>
</div>
</div>
<div
style=
"margin:20px 0;"
>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"page_Count"
input
@
input=
"changePage"
/>
</div>
</div>
</template>
<
script
>
...
...
@@ -42,21 +76,103 @@
},
props
:
{
saveObj
:
{
type
:
Object
,
default
:
null
}
},
data
()
{
return
{
isShowAdd
:
false
,
yueMsg
:
{
Id
:
0
,
//约访编号
StuId
:
0
,
//学员编号
AppointmentPoint
:
''
,
//约访地点
AppointmentTime
:
''
,
//约访时间
Remark
:
''
,
//备注
Feedback
:
''
//反馈
},
msg
:
{
pageIndex
:
1
,
pageSize
:
12
},
dataList
:[],
page_Count
:
0
}
},
mounted
()
{
this
.
getList
();
},
methods
:
{
//保存
saveYuefang
()
{
//保存约访
savePoint
()
{
this
.
yueMsg
.
StuId
=
this
.
saveObj
.
StuId
;
saveStudentAppointment
(
this
.
yueMsg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
'数据保存成功!'
,
position
:
'top'
})
this
.
getList
();
this
.
clearMsg
();
}
}).
catch
(()
=>
{
})
},
},
//获取数据
getList
(){
queryStudentAppointmentPage
(
this
.
msg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
dataList
=
res
.
Data
.
PageData
;
this
.
page_Count
=
res
.
Data
.
PageCount
;
}
}).
catch
(()
=>
{
})
},
//清除数据
clearMsg
()
{
this
.
yueMsg
.
Id
=
0
;
this
.
yueMsg
.
StuId
=
0
;
this
.
yueMsg
.
AppointmentPoint
=
''
;
this
.
yueMsg
.
AppointmentTime
=
''
;
this
.
yueMsg
.
Remark
=
''
;
this
.
yueMsg
.
Feedback
=
''
;
this
.
isShowAdd
=
false
;
},
//删除到访
delVisit
(
Id
)
{
let
that
=
this
this
.
$q
.
dialog
({
title
:
'提示信息'
,
message
:
'是否确定删除?'
,
cancel
:
true
,
persistent
:
true
,
ok
:
"确定"
,
cancel
:
"取消"
,
}).
onOk
(()
=>
{
deleteStudentAppointment
({
Id
:
Id
}).
then
((
res
)
=>
{
that
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
timeout
:
2000
,
message
:
res
.
Message
,
position
:
'top'
})
that
.
getList
()
})
}).
onCancel
(()
=>
{});
},
changePage
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
}
}
}
</
script
>
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