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
dc0b601c
Commit
dc0b601c
authored
Apr 29, 2021
by
罗超
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/confucius
into master
parents
bda252c2
e10f598a
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
408 additions
and
68 deletions
+408
-68
schedu.js
src/api/scheduling/schedu.js
+9
-0
sched_bg.png
src/assets/images/sched_bg.png
+0
-0
work_list.png
src/assets/images/work_list.png
+0
-0
class-form.vue
src/components/course/class-form.vue
+2
-2
classstu-form.vue
src/components/course/classstu-form.vue
+48
-11
classListManagement.vue
src/components/duty/classListManagement.vue
+1
-2
notify.vue
src/components/global/notify.vue
+11
-13
eduinfo-form.vue
src/components/sale/eduinfo-form.vue
+10
-2
orderlist.vue
src/components/sale/orderlist.vue
+19
-6
schedul-form.vue
src/components/schedul/schedul-form.vue
+0
-1
studyAbroad-form.vue
src/components/studyAbroad/studyAbroad-form.vue
+5
-6
MainLayout.vue
src/layouts/MainLayout.vue
+1
-6
Work.vue
src/pages/Work.vue
+3
-3
CheckDetails.vue
src/pages/administration/AssetsSystem/CheckDetails.vue
+0
-1
contractView.vue
src/pages/contractView.vue
+4
-4
prepareclassDetails.vue
src/pages/course/prepareclassDetails.vue
+2
-2
addReceivablesDocuments.vue
...es/financial/financalDocument/addReceivablesDocuments.vue
+0
-1
orderCompleteStatistics.vue
src/pages/financial/orderCompleteStatistics.vue
+0
-3
contractManage.vue
src/pages/sale/contractManage.vue
+1
-1
mySchedule.vue
src/pages/scheduling/mySchedule.vue
+15
-4
scheduleBoard.vue
src/pages/scheduling/scheduleBoard.vue
+272
-0
routes.js
src/router/routes.js
+5
-0
No files found.
src/api/scheduling/schedu.js
View file @
dc0b601c
...
...
@@ -46,4 +46,13 @@ export function queryMyDutyPlanPage(data) {
method
:
'post'
,
data
})
}
//获取我的值班看板
export
function
OnDuty
(
data
)
{
return
request
({
url
:
'/DutyPlan/OnDuty'
,
method
:
'post'
,
data
})
}
\ No newline at end of file
src/assets/images/sched_bg.png
0 → 100644
View file @
dc0b601c
23.6 KB
src/assets/images/work_list.png
0 → 100644
View file @
dc0b601c
101 KB
src/components/course/class-form.vue
View file @
dc0b601c
...
...
@@ -333,7 +333,7 @@
Teacher_Id
:
0
,
//讲师Id
Assist_Id
:
0
,
//助教Id
Group_Id
:
0
,
//集团编号
School_Id
:
0
,
//学校编号
School_Id
:
-
1
,
//学校编号
CreateBy
:
0
,
//创建人
CreateTime
:
''
,
//创建时间
UpdateBy
:
''
,
//修改人
...
...
@@ -594,7 +594,7 @@
this
.
SchoolList
=
res
.
Data
;
var
obj
=
{
SName
:
'请选择'
,
SId
:
0
SId
:
-
1
}
this
.
SchoolList
.
unshift
(
obj
);
}
...
...
src/components/course/classstu-form.vue
View file @
dc0b601c
...
...
@@ -33,8 +33,19 @@
<div
style=
"margin:10px 0 15px 0;"
>
邀请新学员
</div>
</div>
<div
class=
"drop_NameDown"
>
<q-select
standout=
"bg-primary text-white"
v-model=
"checkedStudent"
:options=
"InvitationList"
option-value=
"StuId"
option-label=
"StuName"
label=
"选择学员"
/>
<!--
<q-select
dense
standout=
"bg-primary text-white"
v-model=
"checkedStudent"
:options=
"InvitationList"
@
filter=
"filterCourseFn"
use-input
option-value=
"StuId"
option-label=
"StuName"
label=
"选择学员"
/>
-->
<q-select
filled
stack-label
use-input
input-debounce=
"0"
option-value=
"StuId"
option-label=
"StuName"
v-model=
"checkedStudent"
:options=
"InvitationList"
label=
"选择学员"
:dense=
"false"
emit-value
map-options
@
filter=
"filterFn"
>
<template
v-slot:no-option
>
<q-item>
<q-item-section
class=
"text-grey"
>
未找到相关数据
</q-item-section>
</q-item>
</
template
>
</q-select>
</div>
<q-card-actions
align=
"right"
class=
"bg-white"
style=
"margin-top:20px;"
>
<q-btn
label=
"取消"
flat
color=
"grey-10"
style=
"font-weight:400 !important"
@
click=
"ishowInvit=false"
/>
...
...
@@ -44,7 +55,7 @@
</q-popup-proxy>
</q-btn>
</div>
<q-table
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
selection=
"multiple"
:selected
.
sync=
"selectedStudent"
<q-table
:loading=
"loading"
no-data-label=
"暂无相关数据"
style=
"margin-bottom:80px;"
flat
selection=
"multiple"
:selected
.
sync=
"selectedStudent"
class=
"sticky-column-table"
separator=
"none"
title=
"学员信息"
:data=
"studentList"
:pagination=
"initialPagination"
:columns=
"columns"
row-key=
"Id"
hide-bottom
>
<
template
v-slot:body-cell-IsRenew=
"props"
>
...
...
@@ -147,6 +158,7 @@
StudentId
:
0
},
InvitationList
:
[],
//学员下拉数据
AllInvitationList
:
[],
checkedStudent
:
''
,
//选择学员
}
},
...
...
@@ -158,6 +170,19 @@
this
.
getStudentList
();
},
methods
:
{
//筛选员工
filterFn
(
val
,
update
)
{
update
(()
=>
{
if
(
val
===
''
)
{
this
.
InvitationList
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
AllInvitationList
))
}
else
{
const
needle
=
val
.
toLowerCase
()
this
.
InvitationList
=
this
.
AllInvitationList
.
filter
(
v
=>
v
.
StuName
.
toLowerCase
().
indexOf
(
needle
)
>
-
1
)
}
})
},
//获取学员信息
getStudentData
()
{
this
.
studentList
=
[];
...
...
@@ -214,11 +239,17 @@
},
//获取学员下拉信息
getStudentList
()
{
GetStudentList
(
{
var
qMsg
=
{
SchoolId
:
this
.
setingObj
.
School_Id
}).
then
(
res
=>
{
};
GetStudentList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
InvitationList
=
res
.
Data
;
var
jsonData
=
res
.
Data
;
if
(
jsonData
&&
jsonData
.
length
>
0
)
{
this
.
AllInvitationList
=
JSON
.
parse
(
JSON
.
stringify
(
jsonData
));
this
.
InvitationList
=
JSON
.
parse
(
JSON
.
stringify
(
jsonData
));
}
console
.
log
(
"this.InvitationList"
,
this
.
InvitationList
);
}
})
},
...
...
@@ -232,12 +263,18 @@
})
return
;
}
else
{
let
checkedStuObj
=
{};
this
.
InvitationList
.
forEach
(
x
=>
{
if
(
x
.
StuId
==
this
.
checkedStudent
){
checkedStuObj
=
x
;
}
})
this
.
invitationMsg
.
ClassId
=
this
.
setingObj
.
ClassId
;
this
.
invitationMsg
.
GuestName
=
this
.
checkedStudent
.
StuName
;
this
.
invitationMsg
.
Sex
=
this
.
checkedStudent
.
StuSex
;
this
.
invitationMsg
.
Mobile
=
this
.
checkedStudent
.
StuTel
;
this
.
invitationMsg
.
BirthDay
=
this
.
checkedStudent
.
StuBirthStr
;
this
.
invitationMsg
.
StudentId
=
this
.
checkedStudent
.
StuId
;
this
.
invitationMsg
.
GuestName
=
checkedStuObj
.
StuName
;
this
.
invitationMsg
.
Sex
=
checkedStuObj
.
StuSex
;
this
.
invitationMsg
.
Mobile
=
checkedStuObj
.
StuTel
;
this
.
invitationMsg
.
BirthDay
=
checkedStuObj
.
StuBirthStr
;
this
.
invitationMsg
.
StudentId
=
checkedStuObj
.
StuId
;
this
.
invitationMsg
.
School_Id
=
this
.
setingObj
.
School_Id
;
AddClassStudent
(
this
.
invitationMsg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
...
...
src/components/duty/classListManagement.vue
View file @
dc0b601c
...
...
@@ -91,9 +91,8 @@
methods
:
{
//获取数据
getList
()
{
getDutyFrequencyList
({}).
then
(
res
=>
{
getDutyFrequencyList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
console
.
log
(
res
)
this
.
dataList
=
res
.
Data
;
}
})
...
...
src/components/global/notify.vue
View file @
dc0b601c
...
...
@@ -48,7 +48,7 @@
<q-item-label
class=
"text-weight-bold"
>
{{
x
.
Title
}}
</q-item-label>
<q-item-label
caption
lines=
"3"
class=
"remark-font"
>
{{
x
.
Content
}}
</q-item-label>
</q-item-section>
<q-item-section
side
class=
"remark-font"
>
{{
x
.
SendTime
}}
</q-item-section>
<q-item-section
side
class=
"remark-font"
>
{{
x
.
SendTime
.
replace
(
'T'
,
' '
)
}}
</q-item-section>
</q-item>
</q-list>
<none-data
v-else
></none-data>
...
...
@@ -272,7 +272,6 @@
this
.
init
();
this
.
getNotify
();
this
.
socektArr
=
this
.
socektObj
;
this
.
goMsgDetail
(
'/course/prepareclassDetails?ClassId=5&ClassPlanId=2898'
);
},
methods
:
{
init
()
{
...
...
@@ -301,11 +300,6 @@
compType
:
"shenpi"
}
})
// this.$q.dialog({
// title: '功能提示',
// message: '灰度测试功能,即将在下版本中开启'
// }).onOk(() => {
// });
},
//请求公告数据
getNotify
()
{
...
...
@@ -335,19 +329,23 @@
//跳转链接 新页面打开
goMsgDetail
(
url
)
{
let
locationName
=
window
.
location
.
hostname
;
var
host
=
window
.
location
.
host
;
var
hostName
=
window
.
location
.
hostname
;
var
port
=
window
.
location
.
port
;
var
newurl
=
""
if
(
url
!=
null
&&
url
.
length
>
0
)
{
if
(
url
.
indexOf
(
'http://'
)
==
-
1
||
url
.
indexOf
(
'https://'
)
==
-
1
)
{
newurl
=
"http://"
+
locationName
+
(
host
!=
80
?
":"
+
host
:
""
)
+
"/#"
+
url
;
if
(
url
.
indexOf
(
"www"
)
==
-
1
)
{
newurl
=
"http://"
+
hostName
+
(
port
!=
80
?
":"
+
port
:
""
)
+
"/#"
+
url
;
}
else
{
newurl
=
"http://"
+
url
;
}
}
else
{
newurl
=
url
}
}
console
.
log
(
"newurl"
,
newurl
);
//window.open(url, "_blank");
if
(
newurl
)
{
window
.
open
(
newurl
,
"_blank"
);
}
},
//看过后删除
readMsgLog
(
Id
,
index
)
{
...
...
src/components/sale/eduinfo-form.vue
View file @
dc0b601c
...
...
@@ -32,7 +32,15 @@
</div>
<div
class=
"row wrap"
>
<q-input
clearable
filled
class=
"col-6 q-pr-lg q-pb-lg"
v-model=
"objOption.StudentName"
label=
"学生姓名"
/>
<q-input
clearable
filled
class=
"col-6 q-pb-lg"
v-model=
"objOption.StuBirth"
label=
"学生生日"
/>
<q-input
filled
v-model=
"objOption.StuBirth"
class=
"col-6 q-pb-lg"
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
v-model=
"objOption.StuBirth"
@
input=
"() => $refs.qDateProxy1.hide()"
/>
</q-popup-proxy>
</q-icon>
</
template
>
</q-input>
<q-input
clearable
filled
class=
"col-6 q-pr-lg q-pb-lg"
v-model=
"objOption.StuEmail"
label=
"学生邮箱"
/>
<q-input
clearable
filled
class=
"col-6 q-pb-lg"
v-model=
"objOption.StuAddress"
label=
"学生地址"
/>
<q-input
clearable
filled
class=
"col-6 q-pr-lg q-pb-lg"
v-model=
"objOption.StuTel"
label=
"学生电话"
/>
...
...
@@ -391,7 +399,7 @@
ThirdMoney
:
''
,
//第三期-费用总计
ThirdPayDate
:
''
,
//第三期-支付日期
Exam
:
''
,
//乙方当前选择考试
IsSupplement
:
1
,
// 0无 1 有 是否有补充协议
IsSupplement
:
0
,
// 0无 1 有 是否有补充协议
},
totalHours
:
0
,
//培训课时数总计
totalCourseFee
:
0
,
//培训课程费总计
...
...
src/components/sale/orderlist.vue
View file @
dc0b601c
...
...
@@ -149,23 +149,29 @@
<span
@
click=
"isShowPop=true"
>
查看合同
</span>
<q-popup-proxy
v-if=
"isShowPop"
>
<q-banner>
<div
style=
"width:
45
0px;max-height:220px;overflow:auto;"
>
<div
style=
"width:
52
0px;max-height:220px;overflow:auto;"
>
<table
class=
"Contract_Table"
>
<tr>
<th>
姓名
</th>
<th
style=
"width:180px;"
>
合同编号
</th>
<th>
状态
</th>
<th
width=
"1
1
0px;"
v-if=
"isEdit"
>
操作
</th>
<th
width=
"1
7
0px;"
v-if=
"isEdit"
>
操作
</th>
</tr>
<tr
v-for=
"subItem in item.GuestList"
>
<td>
{{subItem.GuestName}}
</td>
<td>
{{subItem.ContractNo}}
</td>
<td>
{{subItem.ContractStatusStr}}
</td>
<td
v-if=
"isEdit"
>
<q-btn
color=
"accent"
v-if=
"subItem.ContractId==0"
size=
"sm"
class=
"q-mr-md"
@
click=
"takeContractTwo(item,subItem)"
label=
"领取合同"
/>
<q-btn
color=
"accent"
v-else
size=
"sm"
class=
"q-mr-md"
@
click=
"takeContractTwo(item,subItem)"
label=
"修改"
/>
<
template
v-if=
"subItem.ContractId==0"
>
<q-btn
color=
"accent"
size=
"sm"
@
click=
"takeContractTwo(item,subItem)"
label=
"领取合同"
/>
</
template
>
<
template
v-else
>
<!--
<q-btn
color=
"accent"
size=
"sm"
style=
"margin-right:5px;"
@
click=
"takeContractTwo(item,subItem)"
label=
"修改"
/>
-->
<q-btn
color=
"secondary"
size=
"sm"
@
click=
"goContractMannage()"
label=
"查看合同"
/>
</
template
>
</td>
</tr>
</table>
...
...
@@ -1097,6 +1103,13 @@
this
.
isShowPop
=
false
;
this
.
isShowEduForm
=
true
;
},
//跳转至合同管理
goContractMannage
(){
this
.
$router
.
push
({
path
:
'/sale/contractManage'
,
query
:
{}
});
}
}
}
...
...
src/components/schedul/schedul-form.vue
View file @
dc0b601c
...
...
@@ -180,7 +180,6 @@
if
(
res
.
Code
==
1
)
{
this
.
batchList
=
res
.
Data
;
}
console
.
log
(
"batchList"
,
this
.
batchList
);
})
},
//获取员工列表
...
...
src/components/studyAbroad/studyAbroad-form.vue
View file @
dc0b601c
...
...
@@ -15,7 +15,7 @@
<div
class=
"row wrap"
>
<div
class=
"col-6"
>
<q-select
filled
stack-label
option-value=
"SId"
option-label=
"SName"
v-model=
"objOption.School_Id"
ref=
"School_Id"
:options=
"SchoolList"
label=
"所属校区"
:
rules=
"[val => !!val || '请选择所属校区']"
:
dense=
"false"
class=
"col-6 q-pr-lg q-pb-lg"
emit-value
ref=
"School_Id"
:options=
"SchoolList"
label=
"所属校区"
:dense=
"false"
class=
"col-6 q-pr-lg q-pb-lg"
emit-value
map-options
/>
<div
class=
"col-6"
>
<a
v-if=
"objOption.SupplierContract&&isHaveViewContractAction"
...
...
@@ -83,7 +83,7 @@
SupplierId
:
0
,
//供应商编号
SupplierContract
:
''
,
//供应商合同
Remark
:
''
,
//备注
School_Id
:
0
,
//所属校区
School_Id
:
-
1
,
//所属校区
ImgCover
:
''
,
//封面图
},
optionTitle
:
""
,
...
...
@@ -134,7 +134,7 @@
this
.
SchoolList
=
res
.
Data
;
var
obj
=
{
SName
:
'请选择'
,
SId
:
0
SId
:
-
1
}
this
.
SchoolList
.
unshift
(
obj
);
}
...
...
@@ -167,7 +167,7 @@
this
.
objOption
.
SupplierId
=
0
;
this
.
objOption
.
SupplierContract
=
''
;
this
.
objOption
.
Remark
=
''
;
this
.
objOption
.
School_Id
=
0
;
this
.
objOption
.
School_Id
=
-
1
;
}
},
//关闭弹窗
...
...
@@ -187,8 +187,7 @@
// }
this
.
$refs
.
Name
.
validate
();
this
.
$refs
.
SupplierId
.
validate
();
this
.
$refs
.
School_Id
.
validate
();
if
(
!
this
.
$refs
.
Name
.
hasError
&&!
this
.
$refs
.
SupplierId
.
hasError
&&!
this
.
$refs
.
School_Id
.
hasError
)
{
if
(
!
this
.
$refs
.
Name
.
hasError
&&!
this
.
$refs
.
SupplierId
.
hasError
)
{
this
.
saveLoading
=
true
;
saveStudyAbroad
(
this
.
objOption
).
then
(
res
=>
{
this
.
saveLoading
=
false
...
...
src/layouts/MainLayout.vue
View file @
dc0b601c
...
...
@@ -213,12 +213,10 @@
getLogList
(){
GetMsgLogList
().
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
console
.
log
(
res
,
'mainLayout日志数据'
);
this
.
socektArr
=
res
.
Data
;
}
})
},
getMsg
()
{
let
userinfo
=
this
.
getLocalStorage
();
var
SendData
=
{
...
...
@@ -231,10 +229,7 @@
console
.
log
(
"socketData"
,
e
);
if
(
e
.
data
)
{
var
newData
=
JSON
.
parse
(
e
.
data
)
console
.
log
(
newData
,
'newData'
);
this
.
socektArr
=
this
.
socektArr
.
concat
(
newData
)
console
.
log
(
this
.
socektArr
,
'this.socektArr'
);
this
.
showNotification
(
newData
[
0
].
Title
,
newData
[
0
].
Content
,
newData
.
CoverImg
)
}
},
...
...
@@ -272,7 +267,7 @@
};
// 定义通知错误事件
notify
.
onerror
=
function
()
{
// console.log("");
};
// 定义通知显示事件 可以设置多少秒之后关闭 也可以不设置关闭
notify
.
onshow
=
function
()
{
...
...
src/pages/Work.vue
View file @
dc0b601c
...
...
@@ -34,7 +34,7 @@
</q-btn>
<q-btn
@
click=
"changeMenu(2)"
v-if=
"AccountType==2 || ispower==true"
flat
:color=
"chosenMenu==2?'primary':'blue-grey-14'"
:class=
"[chosenMenu==2?'text-weight-bold':'']"
label=
"备课管理"
>
</q-btn>
<q-btn
flat
@
click=
"changeMenu(3)"
:color=
"chosenMenu==3?'primary':'blue-grey-14'"
:class=
"[chosenMenu==3?'text-weight-bold':'']"
label=
"我的排班计划"
></q-btn>
<q-btn
style=
"display:none;"
flat
@
click=
"changeMenu(3)"
:color=
"chosenMenu==3?'primary':'blue-grey-14'"
:class=
"[chosenMenu==3?'text-weight-bold':'']"
label=
"我的排班计划"
></q-btn>
</div>
<div
v-if=
"chosenMenu==1"
class=
"flex col"
style=
"flex: 1"
>
...
...
@@ -194,8 +194,8 @@
.homebx
{
margin
:
0
;
}
::-webkit-scrollbar
{
display
:
none
;
/* Chrome Safari */
.myscroll
::-webkit-scrollbar
{
display
:
none
;
}
.box
.el-tabs__header
{
...
...
src/pages/administration/AssetsSystem/CheckDetails.vue
View file @
dc0b601c
...
...
@@ -197,7 +197,6 @@ export default {
this
.
OperationLoad
=
false
;
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
datainfo
=
res
.
data
.
data
;
console
.
log
(
this
.
datainfo
)
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
...
...
src/pages/contractView.vue
View file @
dc0b601c
...
...
@@ -642,9 +642,9 @@
<div
class=
"contractContent"
>
8.2 出国留学的情况(需开具境外大学录取通知书及出行机票);
</div>
<div
class=
"contractContent"
>
8.3 不在本地学习的情况(需开具相关证明);
</div>
<div
class=
"contractContent"
>
8.4 长期外地工作实习的情况(需开具工作证明)。
</div>
<div
class=
"contractContent"
>
9、
达到正常退费要求者,
退费金额核算如下:
</div>
<div
class=
"contractContent"
>
9.1
未参加抽奖等优惠活动者:应退学费=乙方已缴总学费-已上课程学费-(乙方已缴总学费-已上课程学费)×10%。其中“(乙方已缴总学费-已上课程学费)×10%”为违约金;课程中附赠的口语课程、考前冲刺课程、真题讲解等课程不纳入退费课时,乙方无权针对该课程申请退费;班级课时剩余计算方法按照班级学费平均到每小时
计算。
<div
class=
"contractContent"
>
9、退费金额核算如下:
</div>
<div
class=
"contractContent"
>
9.1 未参加抽奖等额外减免活动者:应退学费=实收学费-已上课时费-违约金(其中,已上课时费=原价学费÷总课时×已上课时;违约金=(实收学费-已上课时费)×10%。);课程中附赠的口语课程、考前冲刺课程、真题讲解等课程不纳入退费课时,乙方无权针对该课程申请退费;班级课时剩余计算方法按照班级学费平均到每课时(45分钟)
计算。
</div>
<div
class=
"contractContent"
>
9.2 参加各项抽奖等优惠活动者,一律不予退费。
</div>
<div
class=
"contractContent"
>
9.3 因乙方自身原因(如未达到留学或旅游所对应的语言水平,且非上述七.8条不可抗力因素)不能参加境外留学、游学或旅游项目的,不予退还境外服务费。
</div>
...
...
@@ -695,7 +695,7 @@
<template
v-if=
"dataList.IsSupplement==1"
>
<div
class=
"comTitle"
style=
"margin-top:40px;"
>
<div
class=
"comTiInner"
>
<div
class=
"comTLeft"
>
甲鹤日语课程协议
</div>
<div
class=
"comTLeft"
>
甲鹤日语课程
补充
协议
</div>
<div
class=
"comTRight"
></div>
</div>
</div>
...
...
src/pages/course/prepareclassDetails.vue
View file @
dc0b601c
...
...
@@ -98,8 +98,8 @@
font-size
:
12px
;
color
:
#2961FE
;
}
::-webkit-scrollbar
{
display
:
none
;
/* Chrome Safari */
.comment
::-webkit-scrollbar
{
display
:
none
;
}
.prepareclassDetails
.width70
{
width
:
70px
;
...
...
src/pages/financial/financalDocument/addReceivablesDocuments.vue
View file @
dc0b601c
...
...
@@ -963,7 +963,6 @@
this
.
saveMsg
.
splice
(
i
,
1
);
},
uploadFileBtn
(
file
)
{
//上传
console
.
log
(
file
)
if
(
file
.
file
.
size
>
1024
*
1024
*
10
)
{
this
.
$message
.
warning
(
this
.
$t
(
'tips.wjdxbncgsz'
))
return
...
...
src/pages/financial/orderCompleteStatistics.vue
View file @
dc0b601c
...
...
@@ -776,16 +776,13 @@
},
bodyCellSpan
({
row
,
column
,
rowIndex
})
{
if
(
rowIndex
===
1
)
{
// console.log(column)
if
(
column
.
field
===
"date"
)
{
return
{
rowspan
:
1
,
colspan
:
2
,
};
}
// does not need to be rendered
else
if
(
column
.
field
===
"hobby"
)
{
return
{
rowspan
:
0
,
...
...
src/pages/sale/contractManage.vue
View file @
dc0b601c
...
...
@@ -80,7 +80,7 @@
style=
"font-weight:400"
@
click=
"EditContract(props.row)"
label=
"编辑"
/>
<el-tooltip
content=
"复制链接发送给客人签字"
placement=
"top"
effect=
"light"
>
<q-btn
flat
size=
"xs"
v-if=
"props.row.Status==2&&(props.row.Sign==''||props.row.Sign==null)"
icon=
"iconfont icon-qianming"
color=
"accent"
style=
"font-weight:400"
@
click=
"CopyUrl(props.row)"
label=
"
客人签字
"
/>
style=
"font-weight:400"
@
click=
"CopyUrl(props.row)"
label=
"
获取合同链接
"
/>
</el-tooltip>
<q-btn
flat
size=
"xs"
icon=
"iconfont icon-View"
color=
"accent"
@
click=
"goContract(props.row)"
style=
"font-weight:400"
label=
"查看"
/>
...
...
src/pages/scheduling/mySchedule.vue
View file @
dc0b601c
...
...
@@ -6,7 +6,13 @@
<div
class=
"page-content"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
separator=
"none"
title=
"我的排班计划"
:data=
"dataList"
:columns=
"columns"
row-key=
"name"
>
<template
v-slot:body-cell-PlanList=
"props"
>
<q-td>
<div
v-for=
"(item,index) in props.row.PlanList"
>
{{
index
+
1
}}{{
item
.
ItemName
}}
</div>
</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"
/>
...
...
@@ -108,7 +114,6 @@
this
.
pageCount
=
res
.
Data
.
Count
;
}
this
.
loading
=
false
;
console
.
log
(
"res"
,
res
);
})
},
//分页改变
...
...
@@ -116,8 +121,14 @@
this
.
msg
.
pageIndex
=
val
;
},
//开始值班
StartSchedule
()
{
StartSchedule
(
obj
)
{
this
.
$router
.
push
({
path
:
"/scheduling/scheduleBoard"
,
query
:
{
Id
:
obj
.
Id
,
Shift
:
obj
.
Shift
}
});
}
},
}
...
...
src/pages/scheduling/scheduleBoard.vue
0 → 100644
View file @
dc0b601c
<
style
>
.scheduMain
{
height
:
100%
;
width
:
100%
;
padding
:
15px
;
background-color
:
#f2f4f7
;
overflow
:
hidden
;
}
.scheduMain
.schedu_left
{
width
:
248px
;
flex
:
0
0
auto
;
position
:
relative
;
background-image
:
url(../../assets/images/sched_bg.png)
;
background-repeat
:
no-repeat
;
background-size
:
100%
auto
;
height
:
100%
;
}
.scheduMain
.okr-menu-active
{
color
:
var
(
--q-color-primary
);
font-weight
:
bold
;
background
:
#ecf1ff
;
}
.mySched
{
border-radius
:
8px
;
overflow
:
hidden
;
height
:
100%
;
background-color
:
#fff
;
}
.schedu_ImgDiv
{
width
:
68px
;
height
:
68px
;
border-radius
:
20px
;
overflow
:
hidden
;
margin
:
75px
auto
0
;
}
.schedu_ImgDiv
img
{
width
:
100%
;
height
:
100%
;
}
.schedu_Name
{
color
:
#fff
;
font-size
:
16px
;
margin-top
:
26px
;
text-align
:
center
;
}
.schedu_Status
{
font-size
:
12px
;
color
:
#fff
;
text-align
:
center
;
margin-top
:
15px
;
}
.schedu_st
{
display
:
inline-block
;
width
:
10px
;
height
:
10px
;
border-radius
:
50%
;
margin-right
:
5px
;
position
:
relative
;
top
:
1px
;
}
.zbz
{
background-color
:
#00DB4E
;
}
.xxz
{
background-color
:
#DBDBDB
;
}
.wdk
{
background-color
:
#FE4475
;
}
.clockon_Duty
{
width
:
120px
;
height
:
34px
;
background
:
linear-gradient
(
90deg
,
#00BDD3
,
#00D761
);
border-radius
:
10px
;
margin
:
100px
auto
24px
;
text-align
:
center
;
line-height
:
31px
;
color
:
#fff
;
font-size
:
14px
;
cursor
:
pointer
;
}
.sche_daka
{
font-size
:
18px
;
position
:
relative
;
left
:
5px
;
top
:
2px
;
}
.schedu_jiaojie
{
width
:
120px
;
height
:
34px
;
line-height
:
34px
;
text-align
:
center
;
border-radius
:
10px
;
border
:
1px
solid
#91AEFF
;
color
:
#C4D4FF
;
font-size
:
14px
;
margin
:
auto
;
cursor
:
pointer
;
}
.sche_rightTop
{
width
:
100%
;
height
:
80px
;
background-color
:
#fff
;
}
.myscroll
{
background-color
:
#F6F8FA
;
}
.sche_Topflex
{
display
:
flex
;
width
:
80%
;
height
:
80px
;
justify-content
:
space-between
;
align-items
:
center
;
}
.Sctop_Color
{
font-size
:
18px
;
color
:
#000000
;
width
:
246px
;
text-align
:
center
;
}
.Scotop_little
{
color
:
#AAAAAA
;
font-size
:
14px
;
margin-right
:
15px
;
}
.Scdu_benci
::after
{
content
:
""
;
position
:
absolute
;
height
:
29px
;
width
:
2px
;
background
:
#EBEBEB
;
right
:
0
;
}
.sche_mid
{
display
:
flex
;
width
:
100%
;
justify-content
:
space-between
;
}
.sche_midList
{
width
:
32%
;
height
:
300px
;
background
:
#fff
;
border-radius
:
16px
;
overflow
:
hidden
;
}
.Sche_Bottom
{
margin
:
26px
0
0
40px
;
}
.scheList_TOP
{
width
:
100%
;
height
:
107px
;
border-radius
:
16px
;
overflow
:
hidden
;
}
</
style
>
<
template
>
<div
class=
"scheduMain"
>
<div
class=
"flex row mySched"
>
<div
class=
"schedu_left"
>
<div
class=
"schedu_ImgDiv"
>
<img
:src=
"dataList.DutyManIcon"
alt=
""
/>
</div>
<div
class=
"schedu_Name"
>
{{
dataList
.
DutyManName
}}
</div>
<div
class=
"schedu_Status"
>
<span
class=
"schedu_st zbz"
></span>
值班中
<!--
<span
class=
"schedu_st xxz"
></span>
休息中
<span
class=
"schedu_st wdk"
></span>
未打卡 -->
</div>
<div
class=
"clockon_Duty"
>
值班打卡
<i
class=
"iconfont icon-jiejue1 sche_daka"
></i>
</div>
<div
class=
"schedu_jiaojie"
>
值班交接
</div>
</div>
<div
class=
"col scroll myscroll"
>
<div
class=
"sche_rightTop"
>
<div
class=
"sche_Topflex"
>
<div
class=
"Sctop_Color Scdu_benci"
style=
"position:relative;"
>
本次值班信息
</div>
<div
class=
"Sctop_Color"
>
<span
class=
"Scotop_little"
>
校区
</span>
城中一校区
</div>
<div
class=
"Sctop_Color"
style=
"width:300px;"
>
<span
class=
"Scotop_little"
>
时间
</span>
2021.04.27 周二 9:30
</div>
<div
class=
"Sctop_Color"
>
<span
class=
"Scotop_little"
>
班次
</span>
早班
</div>
</div>
</div>
<div
class=
"Sche_Bottom"
>
<div
class=
"sche_mid"
>
<div
class=
"sche_midList"
>
<div
class=
"scheList_TOP"
>
<img
src=
"../../assets/images/work_list.png"
/>
</div>
</div>
<div
class=
"sche_midList"
>
</div>
<div
class=
"sche_midList"
>
</div>
</div>
</div>
</div>
</div>
</div>
</
template
>
<
script
>
import
{
OnDuty
}
from
'../../api/scheduling/schedu'
export
default
{
props
:
{},
components
:
{},
data
()
{
return
{
msg
:
{
Id
:
0
,
Shfit
:
0
},
dataList
:
{}
}
},
created
()
{
console
.
log
(
this
.
$route
.
query
.
Shift
);
if
(
this
.
$route
.
query
.
Shift
&&
this
.
$route
.
query
.
Id
)
{
this
.
msg
.
Id
=
this
.
$route
.
query
.
Id
this
.
msg
.
Shfit
=
this
.
$route
.
query
.
Shift
this
.
getList
();
}
},
methods
:
{
//请求数据
getList
()
{
OnDuty
(
this
.
msg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
console
.
log
(
res
,
'数据来也'
);
this
.
dataList
=
res
.
Data
;
}
})
},
},
}
</
script
>
src/router/routes.js
View file @
dc0b601c
...
...
@@ -677,6 +677,11 @@ const routes = [{
component
:
()
=>
import
(
"pages/scheduling/schedulDetail.vue"
)
},
{
path
:
"/scheduling/scheduleBoard"
,
//值班看板
component
:
()
=>
import
(
"pages/scheduling/scheduleBoard.vue"
)
},
{
path
:
"/test"
,
//API测试
component
:
()
=>
...
...
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