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
a3d65857
Commit
a3d65857
authored
Dec 14, 2021
by
zhengke
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
0e1db0e4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
137 additions
and
124 deletions
+137
-124
student-Assit.vue
src/components/school/student/student-Assit.vue
+98
-99
student-left.vue
src/components/school/student/student-left.vue
+6
-0
student-visit.vue
src/components/school/student/student-visit.vue
+32
-24
studentRight-form.vue
src/components/school/student/studentRight-form.vue
+1
-1
No files found.
src/components/school/student/student-Assit.vue
View file @
a3d65857
<
style
>
<
style
>
.delAssist
{
.delAssist
{
position
:
absolute
;
position
:
absolute
;
right
:
0
;
right
:
-16px
;
top
:
28
px
;
top
:
-12
px
;
display
:
inline-block
;
display
:
inline-block
;
background
:
red
;
background
:
red
;
border-radius
:
50%
;
border-radius
:
50%
;
...
@@ -14,85 +14,63 @@
...
@@ -14,85 +14,63 @@
cursor
:
pointer
;
cursor
:
pointer
;
}
}
.studentAssitTable
{
width
:
100%
;
text-align
:
center
;
}
.studentAssitTable
td
{
height
:
40px
;
line-height
:
40px
;
border
:
1px
solid
#f2f2f2
;
}
.studentAssitTable
th
{
height
:
40px
;
background-color
:
#f2f2f2
;
}
</
style
>
</
style
>
<
template
>
<
template
>
<div>
<div>
<div
class=
"row wrap"
style=
"flex-direction:row-reverse"
>
<div
class=
"row wrap"
>
<q-btn
label=
"新增"
color=
"accent q-mb-lg"
@
click=
"addAssist"
size=
"sm"
/>
<q-select
filled
stack-label
option-label=
"Name"
v-model=
"AssitMsg.AssistType"
option-value=
"Id"
:options=
"AssistDropList"
label=
"角色"
dense
class=
"col-6 q-pb-lg q-pr-lg"
emit-value
map-options
/>
<q-select
filled
dense
v-model=
"AssitMsg.AssistId"
@
filter=
"filterEmployee"
use-input
:options=
"myEmployeeList"
option-label=
"EmployeeName"
class=
"col-6 q-pb-lg"
option-value=
"Id"
emit-value
map-options
/>
<i
class=
"iconfont icon-close delAssist"
></i>
</div>
</div>
<template
v-if=
"AssitMsg.AssistList.length>0"
>
<div
class=
"row wrap"
style=
"margin-bottom:10px;float:right;"
>
<div
class=
"row wrap"
v-for=
"(item,index) in AssitMsg.AssistList"
:key=
"index"
>
<q-btn
label=
"保存"
color=
"accent q-mb-lg"
size=
"md"
@
click=
"saveAssit()"
/>
<q-select
filled
stack-label
option-label=
"Name"
v-model=
"item.AssistType"
option-value=
"Id"
</div>
:options=
"AssistDropList"
label=
"角色"
dense
class=
"col-6 q-pb-lg q-pr-lg"
emit-value
<div>
map-options
/>
<table
class=
"studentAssitTable"
style=
"border:1px solid #f2f2f2;border-collapse:collapse;"
cellspacing=
"0"
<q-select
filled
dense
v-model=
"item.AssistId"
@
filter=
"filterEmployee"
use-input
cellpadding=
"0"
>
:options=
"myEmployeeList"
option-label=
"EmployeeName"
class=
"col-6 q-pb-lg"
option-value=
"Id"
emit-value
map-options
/>
<tr>
<i
class=
"iconfont icon-close delAssist"
@
click=
"delAssist(index)"
></i>
<th
style=
"width:180px;"
>
角色
</th>
</div>
<th
style=
"width:180px;"
>
人员
</th>
<div
class=
"row wrap"
style=
"margin-bottom:10px;float:right;"
>
<th>
操作
</th>
<q-btn
label=
"保存"
color=
"accent q-mb-lg"
size=
"md"
@
click=
"saveAssit()"
/>
</tr>
</div>
<tr
v-for=
"(item,index) in dataList"
:key=
"index"
>
</
template
>
<td>
{{
item
.
AssistTypeName
}}
</td>
<!-- <div style="display:flex;flex:1;flex-direction: column;overflow:hidden;">
<td>
{{
item
.
AssistName
}}
</td>
<div class="TimeLineDiv">
<td>
<q-timeline color="primary">
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"accent"
style=
"font-weight:400"
label=
"修改"
<q-timeline-entry v-for="(tItem,tIndex) in dataList" :key="tIndex">
@
click=
"getEditInfo(item)"
></q-btn>
<template v-slot:title>
<q-btn
flat
size=
"xs"
icon=
"delete"
color=
"negative"
style=
"font-weight:400"
label=
"删除"
<div class="visit_Cont">
@
click=
"deleteAssits(item.Id)"
/>
<div class="Log_Content">
</td>
<div>约访时间:{{tItem.AppointmentTime}}</div>
</tr>
<div>约访地点:{{tItem.AppointmentPoint}}</div>
</table>
<div class="StuCom_Remark">
<div class="StuCom_Left">备注</div>:
<div class="StuCom_Inner">{{tItem.Remark}}</div>
</div>
<div class="StuCom_Remark">
<div class="StuCom_Left">反馈</div>:
<div class="StuCom_Inner">{{tItem.Feedback}} </div>
</div>
</div>
<div style="display:flex;margin-top:10px;">
<div @click="delVisit(tItem.Id)" class="visit_delete text-negative">删除</div>
<div @click="clickItem(tItem)" class="stu_ComFeed">
{{tItem.Feedback==null||tItem.Feedback==''?'添加反馈':'编辑反馈'}}
<q-popup-proxy>
<q-banner v-if="isShowEdit">
<div class="row wrap" style="margin-top:10px;width:300px;">
<q-input filled v-model="feedBackMsg.Feedback" :rows="3" type="textarea"
class="col-12 q-pb-lg" label="反馈">
</q-input>
</div>
<div class="row wrap" style="float:right;margin-bottom:10px;">
<q-btn label="保存" color="accent" size="sm" @click="SetFeedBack()" />
</div>
</q-banner>
</q-popup-proxy>
</div>
</div>
</div>
</template>
<template v-slot:subtitle>
<div class="Time_TopList">
<div>{{ tItem.CreateTime }}</div>
<div>{{ tItem.CreateByName }}</div>
</div>
</template>
</q-timeline-entry>
</q-timeline>
</div>
</div>
</div>
<div style="margin-bottom:20px">
<q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="page_Count" input
@input="changePage" />
</div> -->
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
{
import
{
GetAssistTypeList
,
GetAssistTypeList
,
SetStudentAssist
,
SetStudentAssist
,
GetStudentAssistList
GetStudentAssistList
,
RemoveStudentAssist
}
from
'../../../api/sale/sale'
}
from
'../../../api/sale/sale'
import
{
import
{
queryEmployee
queryEmployee
...
@@ -115,19 +93,20 @@
...
@@ -115,19 +93,20 @@
return
{
return
{
isShowAdd
:
false
,
isShowAdd
:
false
,
AssitMsg
:
{
AssitMsg
:
{
StuId
:
1
,
//学员编号
StuId
:
1
,
//学员编号
AssistList
:[]
Id
:
0
,
//编号
AssistId
:
1
,
//员工编号
AssistType
:
1
//类型
},
},
msg
:
{
msg
:
{
StuId
:
1
StuId
:
1
},
},
isShowEdit
:
false
,
isShowEdit
:
false
,
dataList
:
[],
dataList
:
[],
page_Count
:
0
,
page_Count
:
0
,
AssistDropList
:[],
//下拉数据
AssistDropList
:
[],
//下拉数据
employeeList
:
[],
employeeList
:
[],
myEmployeeList
:[],
myEmployeeList
:
[],
}
}
},
},
created
()
{
created
()
{
...
@@ -143,9 +122,9 @@
...
@@ -143,9 +122,9 @@
},
},
methods
:
{
methods
:
{
//获取协助人员
//获取协助人员
GetAssistTypeList
(){
GetAssistTypeList
()
{
GetAssistTypeList
({}).
then
(
res
=>
{
GetAssistTypeList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
if
(
res
.
Code
==
1
)
{
this
.
AssistDropList
=
res
.
Data
;
this
.
AssistDropList
=
res
.
Data
;
}
}
})
})
...
@@ -167,45 +146,65 @@
...
@@ -167,45 +146,65 @@
);
);
});
});
},
},
//新增协助人员
addAssist
(){
let
obj
=
{
Id
:
0
,
//编号
AssistId
:
1
,
//员工编号
AssistType
:
1
,
//类型
StuId
:
1
,
//学员编号
}
this
.
AssitMsg
.
AssistList
.
push
(
obj
);
},
//保存协同人员
//保存协同人员
saveAssit
()
{
saveAssit
()
{
SetStudentAssist
(
this
.
AssitMsg
).
then
(
res
=>
{
SetStudentAssist
(
this
.
AssitMsg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
'数据保存成功!'
,
position
:
'top'
})
this
.
getList
();
}
}
}).
catch
(()
=>
{
}).
catch
(()
=>
{
})
})
},
clearMsg
(){
},
},
//获取数据
//获取数据
getList
()
{
getList
()
{
GetStudentAssistList
(
this
.
msg
).
then
(
res
=>
{
GetStudentAssistList
(
this
.
msg
).
then
(
res
=>
{
console
.
log
(
res
,
'数据'
);
if
(
res
.
Code
==
1
)
{
if
(
res
.
Code
==
1
)
{
this
.
dataList
=
res
.
Data
;
}
}
}).
catch
(()
=>
{
}).
catch
(()
=>
{
})
})
},
},
//删除到访
//删除协同
delAssist
(
index
)
{
deleteAssits
(
Id
)
{
this
.
AssitMsg
.
AssistList
.
splice
(
index
,
1
);
let
that
=
this
this
.
$q
.
dialog
({
title
:
'提示信息'
,
message
:
'是否确定删除?'
,
cancel
:
true
,
persistent
:
true
,
ok
:
"确定"
,
cancel
:
"取消"
,
}).
onOk
(()
=>
{
RemoveStudentAssist
({
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
;
getEditInfo
(
obj
)
{
this
.
getList
();
this
.
AssitMsg
.
Id
=
obj
.
Id
;
this
.
AssitMsg
.
AssistId
=
obj
.
AssistId
;
this
.
AssitMsg
.
AssistType
=
obj
.
AssistType
;
}
}
}
}
}
}
...
...
src/components/school/student/student-left.vue
View file @
a3d65857
...
@@ -170,6 +170,12 @@
...
@@ -170,6 +170,12 @@
<q-input
filled
v-model=
"customObj.PlatformName"
dense
></q-input>
<q-input
filled
v-model=
"customObj.PlatformName"
dense
></q-input>
</div>
</div>
</div>
</div>
<div
class=
"info_item"
v-if=
"customObj.StuChannel==7"
>
<div
class=
"item_label"
>
其他平台名称
</div>
<div
class=
"item_value"
>
<q-input
filled
v-model=
"customObj.PlatformName"
dense
></q-input>
</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>
...
...
src/components/school/student/student-visit.vue
View file @
a3d65857
<
style
>
<
style
>
.studentDate
.el-input__inner
{
background-color
:
transparent
;
border
:
0
;
height
:
28px
;
}
.studentDate
.el-input__icon
{
height
:
auto
;
line-height
:
28px
;
}
</
style
>
</
style
>
<
template
>
<
template
>
...
@@ -7,33 +17,27 @@
...
@@ -7,33 +17,27 @@
<q-btn
label=
"取消"
style=
"margin-left:20px;"
v-if=
"isShowAdd"
flat
color=
"grey-10 q-mb-lg"
size=
"sm"
<q-btn
label=
"取消"
style=
"margin-left:20px;"
v-if=
"isShowAdd"
flat
color=
"grey-10 q-mb-lg"
size=
"sm"
@
click=
"isShowAdd=false"
/>
@
click=
"isShowAdd=false"
/>
<template
v-if=
"isShowAdd"
>
<template
v-if=
"isShowAdd"
>
<div
class=
"row wrap"
>
<div
class=
"row wrap
studentDate
"
>
<q-select
filled
option-value=
"SId"
dense
class=
"col-6 q-pb-lg q-pr-lg"
option-label=
"SName"
<q-select
filled
option-value=
"SId"
dense
class=
"col-6 q-pb-lg q-pr-lg"
option-label=
"SName"
v-model=
"VisitMsg.School_Id"
:options=
"schoolList"
emit-value
map-options
label=
"到访校区"
/>
v-model=
"VisitMsg.School_Id"
:options=
"schoolList"
emit-value
map-options
label=
"到访校区"
/>
<q-input
filled
v-model=
"VisitMsg.Date"
dense
class=
"col-6 q-pb-lg"
mask=
"date"
label=
"日期"
>
<q-field
filled
class=
"q-pb-lg"
dense
>
<template
v-slot:append
>
<template
v-slot:control
>
<q-icon
name=
"event"
class=
"cursor-pointer"
>
<el-date-picker
v-model=
"VisitMsg.Date"
style=
"height:28px;width:232px"
type=
"date"
placeholder=
"选择日期"
>
<q-popup-proxy
ref=
"qDateProxy1"
transition-show=
"scale"
transition-hide=
"scale"
>
</el-date-picker>
<q-date
v-model=
"VisitMsg.Date"
@
input=
"() => $refs.qDateProxy1.hide()"
/>
</q-popup-proxy>
</q-icon>
</
template
>
</
template
>
</q-
input
>
</q-
field
>
</div>
</div>
<div
class=
"row warp"
>
<div
class=
"row warp studentDate"
>
<q-input
filled
mask=
"time"
dense
v-model=
"VisitMsg.VisitTime"
:rules=
"['time']"
class=
"col-6 q-pb-lg q-pr-lg"
>
<q-field
filled
class=
"q-pb-lg q-pr-lg"
dense
>
<
template
v-slot:append
>
<
template
v-slot:control
>
<q-icon
name=
"access_time"
class=
"cursor-pointer"
>
<el-time-select
v-model=
"VisitMsg.VisitTime"
size=
"small"
ref=
"ClassTime"
style=
"width:210px"
:picker-options=
"
{
<q-popup-proxy
transition-show=
"scale"
transition-hide=
"scale"
>
start: '09:00',
<q-time
v-model=
"VisitMsg.VisitTime"
>
step: '00:15',
<div
class=
"row items-center justify-end"
>
end: '21:00',
<q-btn
v-close-popup
label=
"Close"
color=
"primary"
flat
/>
}" placeholder="到访时间">
</div>
</el-time-select>
</q-time>
</q-popup-proxy>
</q-icon>
</
template
>
</
template
>
</q-
input
>
</q-
field
>
<q-select
filled
v-model=
"VisitMsg.ReceptionPersion"
dense
@
filter=
"filterEmployee"
class=
"col-6 q-pb-lg"
<q-select
filled
v-model=
"VisitMsg.ReceptionPersion"
dense
@
filter=
"filterEmployee"
class=
"col-6 q-pb-lg"
:options=
"myEmployeeList"
option-label=
"EmployeeName"
use-input
option-value=
"Id"
emit-value
map-options
:options=
"myEmployeeList"
option-label=
"EmployeeName"
use-input
option-value=
"Id"
emit-value
map-options
label=
"接待人"
/>
label=
"接待人"
/>
...
@@ -69,7 +73,10 @@
...
@@ -69,7 +73,10 @@
</div>
</div>
<div
class=
"StuCom_Remark"
>
<div
class=
"StuCom_Remark"
>
<div
class=
"StuCom_Left"
>
是否到访
</div>
:
<div
class=
"StuCom_Left"
>
是否到访
</div>
:
<div
class=
"StuCom_Inner"
>
{{
tItem
.
IsVisitStr
}}
</div>
<div
class=
"StuCom_Inner"
>
<span
v-if=
"tItem.IsVisit==0"
class=
"text-negative"
>
{{
tItem
.
IsVisitStr
}}
</span>
<span
v-if=
"tItem.IsVisit==1"
class=
"text-primary"
>
{{
tItem
.
IsVisitStr
}}
</span>
</div>
</div>
</div>
</div>
</div>
<div
style=
"display:flex;margin-top:10px;"
>
<div
style=
"display:flex;margin-top:10px;"
>
...
@@ -306,4 +313,5 @@
...
@@ -306,4 +313,5 @@
}
}
},
},
}
}
</
script
>
\ No newline at end of file
</
script
>
src/components/school/student/studentRight-form.vue
View file @
a3d65857
...
@@ -484,6 +484,6 @@
...
@@ -484,6 +484,6 @@
text-align-last
:
justify
;
text-align-last
:
justify
;
}
}
.fullscreen
{
.fullscreen
{
z-index
:
9999
;
z-index
:
3000
;
}
}
</
style
>
</
style
>
\ No newline at end of file
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