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
d783c0b8
Commit
d783c0b8
authored
Sep 04, 2024
by
liudong1993
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/confucius
parents
7a2d699e
b71ca52d
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
95 additions
and
457 deletions
+95
-457
quasar.conf.js
quasar.conf.js
+1
-1
orderlist.vue
src/components/sale/orderlist.vue
+18
-83
abroad-form.vue
src/components/school/student/abroad-form.vue
+4
-0
reserveclass-form copy.vue
src/components/school/student/reserveclass-form copy.vue
+0
-321
study-form.vue
src/components/school/student/transfer-order/study-form.vue
+3
-1
course.vue
src/pages/course/course.vue
+2
-2
rewardDetailed.vue
src/pages/course/rewardDetailed.vue
+5
-5
addFinancialDocuments.vue
...ages/financial/financalDocument/addFinancialDocuments.vue
+33
-16
achievementPeriodsList.vue
src/pages/financial/market/achievementPeriodsList.vue
+21
-20
courseList.vue
src/pages/sale/courseList.vue
+6
-6
studyOrder.vue
src/pages/sale/studyOrder.vue
+1
-1
studyOrderStatistics.vue
src/pages/sale/studyOrderStatistics.vue
+1
-1
No files found.
quasar.conf.js
View file @
d783c0b8
...
...
@@ -47,7 +47,7 @@ module.exports = function(ctx) {
vueRouterMode
:
'history'
,
// available values: 'hash', 'history'
env
:
ctx
.
dev
?
{
API
:
'http://192.168.5.
46:8300
/api'
,
API
:
'http://192.168.5.
57:5001
/api'
,
// API: 'http://192.168.10.128:8300/api',
// API: 'https://eduapi.oytour.com/api',
API_ZC
:
'http://192.168.5.238:8087/api'
,
...
...
src/components/sale/orderlist.vue
View file @
d783c0b8
...
...
@@ -2,86 +2,16 @@
<
template
>
<div
class=
"classorder"
>
<div
class=
"table-head"
>
<!--
<table
class=
"enrollTotalSearchTable"
border=
"1"
cellspacing=
"0"
cellpadding=
"0"
>
<colgroup>
<col
width=
"12%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<col
width=
"6%"
/>
<template
v-if=
"AuthorityObj.isShowStudyRebate"
>
<col
width=
"6%"
/>
</
template
>
<col
width=
"6%"
/>
<col
/>
</colgroup>
<thead>
<tr
class=
"fix_th"
>
<th
width=
"12%"
>
单号
</th>
<th
width=
"6%"
>
人数
</th>
<th
width=
"6%"
>
单价
</th>
<th
width=
"6%"
>
教材费
</th>
<th
width=
"6%"
>
课件费
</th>
<th
width=
"6%"
>
总课时
</th>
<th
width=
"6%"
>
成交
</th>
<th
width=
"6%"
>
应收总额
</th>
<th
width=
"6%"
>
实收
</th>
<th
width=
"6%"
>
优惠
</th>
<th
width=
"6%"
>
少价金额
</th>
<th
width=
"6%"
>
退款
</th>
<th
width=
"6%"
>
平台税金
</th>
<th
width=
"6%"
>
待收金额
</th>
<
template
v-if=
"AuthorityObj.isShowStudyRebate"
>
<th
width=
"6%"
>
留学订单回佣
</th>
</
template
>
<th
width=
"6%"
>
状态
</th>
<th
v-if=
"viewType == 0"
>
操作
</th>
</tr>
</thead>
</table>
-->
</div>
<div
class=
"table-body"
v-loading=
"loading"
>
<table
class=
"enrollTotalSearchTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<!-- <colgroup>
<col width="12%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<col width="6%" />
<template v-if="AuthorityObj.isShowStudyRebate">
<col width="6%" />
</template>
<col width="6%" />
<col v-if="viewType == 0" />
</colgroup> -->
<tr
class=
"fix_th"
>
<th
width=
"12%"
>
单号
</th>
<th
width=
"6%"
>
人数
</th>
<th
width=
"6%"
>
单价
</th>
<th
width=
"6%"
>
教材费
</th>
<th
width=
"6%"
>
课件费
</th>
<th
width=
"6%"
>
总课时
</th>
<th
width=
"6%"
v-if=
"studyOrderType!=1"
>
教材费
</th>
<th
width=
"6%"
v-if=
"studyOrderType!=1"
>
课件费
</th>
<th
width=
"6%"
v-if=
"studyOrderType!=1"
>
总课时
</th>
<th
width=
"6%"
>
成交
</th>
<th
width=
"6%"
>
应收总额
</th>
<th
width=
"6%"
>
实收
</th>
...
...
@@ -261,20 +191,21 @@
<
template
v-if=
"item.Class_Price >= 0"
>
{{
item
.
Class_Price
.
toFixed
(
2
)
}}
</br>
(
{{
item
.
SellPriceType
==
2
?
'课时单价'
:
'课时总价'
}}
)
<template
v-if=
"studyOrderType!=1"
>
(
{{
item
.
SellPriceType
==
2
?
'课时单价'
:
'课时总价'
}}
)
</
template
>
</template>
</td>
<td
style=
"border:none;"
>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
<
template
v-if=
"item.TextbookFee >= 0"
>
{{
item
.
TextbookFee
.
toFixed
(
2
)
}}
</
template
>
</td>
<td
style=
"border:none;"
>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
<
template
v-if=
"item.CoursewareFee >= 0"
>
{{
item
.
CoursewareFee
.
toFixed
(
2
)
}}
</
template
>
</td>
<td
style=
"border:none;"
>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
{{ item.TotalClassHours }}
...
...
@@ -519,7 +450,7 @@
</td>
</tr>
<tr>
<td
:colspan=
"
17
"
style=
"text-align: left"
>
<td
:colspan=
"
studyOrderType!=1?17:14
"
style=
"text-align: left"
>
<div
class=
"row"
v-if=
"item.GuestList && item.GuestList.length > 0"
>
学生名单:
<
template
v-for=
"(x, j) in item.GuestList"
:index=
"j"
>
...
...
@@ -591,7 +522,7 @@
</td>
</tr>
<tr>
<td
:colspan=
"
17
"
style=
"height: 168px;text-align: left"
>
<td
:colspan=
"
studyOrderType!=1?17:14
"
style=
"height: 168px;text-align: left"
>
<div
class=
"col row remarks q-gutter-x-md"
>
<div
class=
"col"
>
<div>
销售备注:
</div>
...
...
@@ -950,7 +881,7 @@
</template>
<tbody
v-if=
"cancelList && cancelList.length > 0"
>
<tr>
<td
:colspan=
"
17
"
>
<td
:colspan=
"
studyOrderType!=1?17:14
"
>
<span
style=
"color:red;cursor:pointer;font-weight:bold;"
@
click=
"isShowCancel = !isShowCancel"
>
取消订单
</span>
</td>
</tr>
...
...
@@ -976,17 +907,17 @@
{{
item
.
Class_Price
.
toFixed
(
2
)
}}
</
template
>
</td>
<td
style=
"border:none;"
>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
<
template
v-if=
"item.TextbookFee >= 0"
>
{{
item
.
TextbookFee
.
toFixed
(
2
)
}}
</
template
>
</td>
<td
style=
"border:none;"
>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
<
template
v-if=
"item.CoursewareFee >= 0"
>
{{
item
.
CoursewareFee
.
toFixed
(
2
)
}}
</
template
>
</td>
<td
style=
"border:none;"
>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
{{ item.TotalClassHours }}
</td>
...
...
@@ -1361,6 +1292,10 @@
type
:
Number
,
default
:
0
//1-销售修改,2-OP修改,3-总经理修改
},
studyOrderType
:
{
type
:
Number
,
default
:
0
//1-留学订单
},
isShowEditBtn
:
{
type
:
Number
,
default
:
null
...
...
src/components/school/student/abroad-form.vue
View file @
d783c0b8
...
...
@@ -124,6 +124,10 @@
if
(
val
&&
val
.
length
>
0
){
this
.
saveObj
=
val
[
0
];
this
.
defaultCourse
=
val
;
this
.
saveObj
.
OrderCourseList
=
[];
this
.
saveObj
.
OrderCourseList
.
push
(
JSON
.
parse
(
JSON
.
stringify
(
this
.
saveObj
)));
this
.
saveObj
.
TextbookFee
=
0
;
this
.
saveObj
.
CoursewareFee
=
0
;
}
},
next
()
{
...
...
src/components/school/student/reserveclass-form copy.vue
deleted
100644 → 0
View file @
7a2d699e
<
style
scoped
>
.Student_Date
.el-input__inner
{
background
:
transparent
!important
;
border
:
0
!important
;
padding-right
:
0
!important
;
}
</
style
>
<
template
>
<div>
<div
class=
"row wrap"
>
<q-btn
label=
"选择试听课"
color=
"accent q-mb-lg"
size=
"sm"
@
click=
"isShowTeacher = true"
/>
</div>
<template
v-if=
"isShowReserve"
>
<div
class=
"row studentDate"
>
<q-field
filled
class=
"col-6 q-pb-lg q-pr-lg"
dense
>
<template
v-slot:control
>
<el-date-picker
v-model=
"addMsg.ClassDate"
ref=
"ClassDate"
:rules=
"[val => !!val || '请选择预约日期']"
style=
"width:225px"
size=
"mini"
type=
"date"
placeholder=
"预约日期"
value-format=
"yyyy-MM-dd"
>
</el-date-picker>
</
template
>
</q-field>
<div
class=
"col-6 q-pr-lg Student_Date "
>
<q-field
filled
class=
"q-pb-lg"
dense
>
<
template
v-slot:control
>
<el-time-select
v-model=
"addMsg.ClassTime"
size=
"mini"
ref=
"ClassTime"
style=
"width:50%"
:picker-options=
"
{
start: '09:00',
step: '00:15',
end: '21:00',
maxTime: addMsg.EndTime
}" placeholder="预约开始时间">
</el-time-select>
<el-time-select
v-model=
"addMsg.EndTime"
size=
"mini"
dense
ref=
"EndTime"
style=
"width:50%"
:picker-options=
"
{
start: '09:00',
step: '00:15',
end: '21:00',
minTime: addMsg.ClassTime
}" placeholder="预约结束时间">
</el-time-select>
</
template
>
</q-field>
</div>
</div>
<div
class=
"row wrap"
>
<q-select
filled
stack-label
option-value=
"Name"
dense
option-label=
"Name"
@
input=
"getTeacherChoose(addMsg.ClassContent)"
v-model=
"addMsg.ClassContent"
ref=
"ClassContent"
:options=
"ContentList"
:rules=
"[val => !!val || '请选择主讲内容']"
label=
"主讲内容"
class=
"col-6 q-pb-lg q-pr-lg"
emit-value
map-options
/>
<q-select
filled
stack-label
option-value=
"TId"
option-label=
"TeacherName"
v-model=
"addMsg.TeacherId"
ref=
"TeacherId"
:options=
"TeacherList"
label=
"选择教师"
dense
class=
"col-6 q-pb-lg q-pr-lg"
emit-value
map-options
/>
</div>
<div
class=
"row wrap"
>
<q-select
filled
stack-label
option-value=
"RoomId"
dense
option-label=
"RoomName"
v-model=
"addMsg.ClassRoomId"
ref=
"ClassRoomId"
:options=
"ClassRoomList"
label=
"关联教室"
class=
"col-6 q-pb-lg q-pr-lg"
emit-value
map-options
/>
<q-select
filled
stack-label
option-value=
"Id"
dense
option-label=
"LessonName"
v-model=
"addMsg.TrialLessonId"
:options=
"TrialList"
label=
"试听课程"
class=
"col-6 q-pb-lg q-pr-lg"
emit-value
map-options
/>
</div>
<div
class=
"row wrap"
>
<q-field
label=
"类型"
filled
dense
stack-label
class=
"col-6 q-pb-lg q-pr-lg"
v-if=
"addMsg.ReserveType==1"
>
<
template
v-slot:control
>
<div
>
跟班
</div>
</
template
>
</q-field>
<!-- <q-field label="班级" filled dense stack-label class="col-6 q-pb-lg q-pr-lg" v-if="addMsg.ReserveType==1&&showObj.className">
<template v-slot:control>
<div>{{showObj.className}}</div>
</template>
</q-field> -->
<q-field
label=
"课程"
filled
dense
stack-label
class=
"col-6 q-pb-lg q-pr-lg"
v-if=
"addMsg.ReserveType==1&&showObj.courseName"
>
<
template
v-slot:control
>
<div>
{{
showObj
.
courseName
}}
</div>
</
template
>
</q-field>
</div>
<div
class=
"row wrap justify-end q-pr-lg"
style=
"margin-bottom:10px;"
>
<q-btn
label=
"关闭"
flat
color=
"accent q-mb-lg"
size=
"md"
style=
"margin-right:10px;"
@
click=
"closeClassForm"
/>
<q-btn
label=
"保存"
color=
"accent q-mb-lg"
size=
"md"
@
click=
"saveAppointForm()"
/>
</div>
</template>
<ShitingCourseList-form
v-if=
"isShowTeacher"
@
close=
"closeAuditForm"
@
getchildInfo=
"getchildInfo"
>
</ShitingCourseList-form>
</div>
</template>
<
script
>
import
{
SetVisitorReserve
}
from
"../../../api/scheduling/schedu"
;
import
{
getTeacherDropDownList
,
queryClassRoomList
,
GetTrialLessonList
}
from
"../../../api/school/index"
;
// import auditionForm from "../../schedul/audition-form";
import
ShitingCourseListForm
from
"./shitingCourseList-form.vue"
export
default
{
components
:
{
// auditionForm,
ShitingCourseListForm
},
props
:
{
saveObj
:
{
type
:
Object
,
default
:
null
}
},
data
()
{
return
{
isShowReserve
:
false
,
addMsg
:
{
Id
:
0
,
//编号
Visitor_Id
:
0
,
//访客编号
ReserveClassId
:
0
,
//选中的班级编号
ClassDate
:
""
,
//预约日期
ClassTime
:
""
,
//预约开始时间
EndTime
:
""
,
//预约结束时间
TeacherId
:
0
,
//教师编号
ClassRoomId
:
0
,
//教室编号
ClassContent
:
""
,
//主讲内容
TrialLessonId
:
""
,
ReserveType
:
0
,
ClassPlanId
:
0
,
},
ContentList
:
[{
Id
:
1
,
Name
:
"少儿类:主要以丰富可与时间和兴趣为主,要求课堂轻松活跃。趣味性十足"
},
{
Id
:
2
,
Name
:
"兴趣类:成年人,对日语学习从兴趣开始,要求课堂丰富有趣"
},
{
Id
:
3
,
Name
:
"实用类:对于日语学习有一定的需求(考研、就业等),要求学习过程专业,干货多"
},
{
Id
:
4
,
Name
:
"留学类:打算去往日本留学(本科、硕士、语言学校、私塾等)"
}
],
ClassRoomList
:
[],
//教师列表
TeacherList
:
[],
//教师列表
AllTeacherList
:
[],
//全部教师列表
TrialList
:
[],
//试听课程列表
isShowTeacher
:
false
,
//是否显示试听课弹窗
showObj
:{
className
:
""
,
courseName
:
""
,
}
};
},
created
()
{
this
.
GetTrialDrop
();
this
.
getClassRoomList
();
this
.
GetTeacherList
();
},
mounted
()
{
if
(
this
.
saveObj
)
{
this
.
addMsg
.
Visitor_Id
=
this
.
saveObj
.
StuId
;
}
},
methods
:
{
//关闭窗口
closeClassForm
()
{
this
.
isShowReserve
=
false
;
this
.
$emit
(
"success"
);
},
//选择主讲内容赋值选择教师
getTeacherChoose
(
content
)
{
var
TList
=
[];
this
.
addMsg
.
TeacherId
=
""
;
this
.
TeacherList
=
this
.
AllTeacherList
;
this
.
TeacherList
.
forEach
(
x
=>
{
this
.
ContentList
.
forEach
(
y
=>
{
if
(
y
.
Name
==
content
)
{
if
(
x
.
TId
>
0
)
{
if
(
x
.
ChooseSpecialty
.
indexOf
(
y
.
Id
)
>
-
1
)
{
TList
.
push
(
x
);
}
}
}
});
});
this
.
TeacherList
=
TList
;
},
//试听课程列表
GetTrialDrop
()
{
GetTrialLessonList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
TrialList
=
res
.
Data
;
}
});
},
//获取教室下拉
getClassRoomList
()
{
queryClassRoomList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
ClassRoomList
=
res
.
Data
;
var
obj
=
{
RoomName
:
"请选择"
,
RoomId
:
0
};
this
.
ClassRoomList
.
unshift
(
obj
);
}
});
},
//获取教师下拉
GetTeacherList
()
{
getTeacherDropDownList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
TeacherList
=
JSON
.
parse
(
JSON
.
stringify
(
res
.
Data
));
this
.
AllTeacherList
=
JSON
.
parse
(
JSON
.
stringify
(
res
.
Data
));
var
obj
=
{
TeacherName
:
"请选择"
,
TId
:
0
};
this
.
TeacherList
.
unshift
(
obj
);
this
.
AllTeacherList
.
unshift
(
obj
);
}
});
},
//清除
clearMsg
()
{
this
.
addMsg
.
Id
=
0
;
this
.
addMsg
.
ReserveClassId
=
0
;
this
.
addMsg
.
ClassDate
=
""
;
this
.
addMsg
.
ClassTime
=
""
;
this
.
addMsg
.
EndTime
=
""
;
this
.
addMsg
.
TeacherId
=
0
;
this
.
addMsg
.
ClassRoomId
=
0
;
this
.
addMsg
.
ClassContent
=
""
;
this
.
addMsg
.
TrialLessonId
=
""
;
this
.
addMsg
.
ReserveType
=
0
;
this
.
addMsg
.
ClassPlanId
=
0
;
},
//保存
saveAppointForm
()
{
if
(
this
.
addMsg
.
ClassDate
==
""
)
{
this
.
$q
.
notify
({
type
:
"negative"
,
position
:
"top"
,
timeout
:
2000
,
message
:
"请选择预约日期!"
});
return
;
}
if
(
this
.
addMsg
.
ClassTime
==
""
)
{
this
.
$q
.
notify
({
type
:
"negative"
,
position
:
"top"
,
timeout
:
2000
,
message
:
"请选择预约开始时间!"
});
return
;
}
if
(
this
.
addMsg
.
EndTime
==
""
)
{
this
.
$q
.
notify
({
type
:
"negative"
,
position
:
"top"
,
timeout
:
2000
,
message
:
"请选择预约结束时间!"
});
return
;
}
if
(
!
this
.
$refs
.
ClassContent
.
hasError
)
{
SetVisitorReserve
(
this
.
addMsg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
icon
:
"iconfont icon-chenggong"
,
color
:
"accent"
,
timeout
:
2000
,
message
:
res
.
Message
,
position
:
"top"
});
this
.
$emit
(
"success"
);
}
else
{
this
.
$q
.
notify
({
type
:
"negative"
,
position
:
"top"
,
timeout
:
2000
,
message
:
res
.
Message
});
}
this
.
clearMsg
();
this
.
isShowReserve
=
false
;
});
}
},
closeAuditForm
()
{
this
.
isShowTeacher
=
false
;
},
//子组件选中传值
getchildInfo
(
obj
)
{
if
(
obj
)
{
this
.
addMsg
.
ReserveType
=
obj
.
ReserveType
;
this
.
addMsg
.
ClassPlanId
=
obj
.
ClassPlanId
;
this
.
addMsg
.
TeacherId
=
obj
.
TeacherId
;
this
.
addMsg
.
ClassRoomId
=
obj
.
ClassRoomId
;
this
.
addMsg
.
ReserveClassId
=
obj
.
ReserveClassId
;
this
.
addMsg
.
ClassDate
=
obj
.
ClassDateStr
;
this
.
addMsg
.
ClassTime
=
obj
.
ClassTime
;
this
.
addMsg
.
EndTime
=
obj
.
EndTime
;
this
.
addMsg
.
ClassContent
=
obj
.
ClassContent
;
this
.
addMsg
.
TrialLessonId
=
obj
.
TrialLessonId
;
if
(
obj
.
ReserveType
==
1
)
{
this
.
addMsg
.
TrialLessonId
=
obj
.
TrialLessonId
?
obj
.
TrialLessonId
:
this
.
TrialList
[
0
].
Id
this
.
addMsg
.
ClassContent
=
obj
.
ClassContent
?
obj
.
ClassContent
:
this
.
ContentList
[
0
].
Name
this
.
showObj
.
courseName
=
obj
.
courseName
this
.
showObj
.
className
=
obj
.
className
}
this
.
isShowReserve
=
true
;
}
}
}
};
</
script
>
src/components/school/student/transfer-order/study-form.vue
View file @
d783c0b8
...
...
@@ -122,7 +122,8 @@
SourceId
:
1
,
//传入Id
SaleRemark
:
''
,
//备注
EnterId
:
0
,
//市场人员
StuIds
:
''
StuIds
:
''
,
OrderCourseList
:[],
},
EnterName
:
''
,
HelpEnterDisable
:
false
,
...
...
@@ -134,6 +135,7 @@
this
.
OrderMsg
.
SourceId
=
this
.
saveObj
.
Id
;
this
.
OrderMsg
.
Unit_Price
=
this
.
saveObj
.
SellPrice
;
this
.
OrderMsg
.
PreferPrice
=
this
.
OrderMsg
.
Unit_Price
;
this
.
OrderMsg
.
OrderCourseList
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
saveObj
.
OrderCourseList
));
}
if
(
this
.
select
&&
this
.
select
.
length
>
0
){
this
.
OrderMsg
.
EnterId
=
this
.
select
[
0
].
CreateBy
;
...
...
src/pages/course/course.vue
View file @
d783c0b8
...
...
@@ -648,9 +648,9 @@
CourseId
:
item
.
CourseId
,
Status
:
status
};
var
message
=
"是否要删除
该
课程?"
;
var
message
=
"是否要删除
【"
+
item
.
CourseName
+
"】
课程?"
;
if
(
status
==
0
)
{
message
=
"是否要恢复
该
课程?"
;
message
=
"是否要恢复
【"
+
item
.
CourseName
+
"】
课程?"
;
}
this
.
$q
.
dialog
({
...
...
src/pages/course/rewardDetailed.vue
View file @
d783c0b8
...
...
@@ -18,7 +18,7 @@
</div>
</div>
<div
class=
"page-content"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
<q-table
style=
"max-height: 65vh;overflow: auto;"
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
separator=
"none"
:data=
"data.List"
:columns=
"columns"
row-key=
"name"
>
<template
v-slot:top=
"props"
>
<div
class=
"col-2 q-table__title"
>
教师课时费明细
</div>
...
...
@@ -46,7 +46,7 @@
</
template
>
</q-table>
<div
style=
"font-size: 20px;font-weight: 400;"
>
教师课时费汇总
</div>
<div
v-for=
"(x,y) in data.Statistics"
:key=
'y'
>
<div
v-for=
"(x,y) in data.Statistics"
:key=
'y'
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
style=
"margin-top: 10px"
separator=
"none"
:data=
"x.TeacherList"
:columns=
"columnsZ"
row-key=
"name"
>
<
template
v-slot:top=
"props"
>
...
...
@@ -72,7 +72,7 @@
</
template
>
</q-table>
</div>
</div>
</div>
</template>
...
...
@@ -118,7 +118,7 @@
field
:
'ClassName'
,
align
:
'left'
},
{
name
:
'Type'
,
...
...
@@ -233,7 +233,7 @@
let
idsArr
=
[]
arr
.
map
(
e
=>
{
let
_arr
=
e
.
split
(
'-'
)
idsArr
.
push
(
_arr
[
1
])
idsArr
.
push
(
_arr
[
1
])
})
this
.
msg
.
TeacherIds
=
idsArr
.
toString
();
}
...
...
src/pages/financial/financalDocument/addFinancialDocuments.vue
View file @
d783c0b8
...
...
@@ -17,7 +17,7 @@
}
.page_addFD
input
::-ms-input-placeholder
{
/*Internet Explorer*/
.page_addFD
input
::-ms-input-placeholder
{
/*Internet Explorer*/
color
:
#999999
;
...
...
@@ -555,13 +555,13 @@
</el-select>
</td>
<td
height=
"26px"
>
<el-input
v-model=
"da.Number"
@
keyup
.
native=
"checkInteger(da,'Number')"
:disabled=
"
daIn === 0 && XSTC
"
<el-input
v-model=
"da.Number"
@
keyup
.
native=
"checkInteger(da,'Number')"
:disabled=
"
(daIn === 0 && XSTC)||(orderObj.PeopleCostType&&orderObj.PeopleCostType==486)
"
type=
"text"
@
blur=
"addList(2,daIn+1)"
@
change=
"Calculation(2,daIn+1)"
@
input=
"chages($event)"
class=
"w80 _border_b_1"
>
</el-input>
</td>
<td
height=
"26px"
>
<el-input
v-model=
"da.UnitPrice"
type=
"text"
:disabled=
"((msg.TemplateId == 43 || msg.TemplateId == 48 || msg.TemplateId == 56 || msg.TemplateId == 53) && !ZhuiJiaTK) || (daIn === 0 && XSTC)"
:disabled=
"((msg.TemplateId == 43 || msg.TemplateId == 48 || msg.TemplateId == 56 || msg.TemplateId == 53) && !ZhuiJiaTK) || (daIn === 0 && XSTC)
||(orderObj.PeopleCostType&&orderObj.PeopleCostType==486)
"
@
keyup
.
native=
"checkPrice(da,'UnitPrice',true)"
@
blur=
"addList(2,daIn+1)"
@
change=
"Calculation(2,daIn+1)"
@
input=
"chages($event)"
class=
"w80 h34 _border_b_1"
></el-input>
</td>
...
...
@@ -738,8 +738,8 @@
发票金额:
<el-input
v-model=
'msg.InvoiceMoney'
type=
"number"
placeholder=
"发票金额"
class=
"w135 _border_b_1"
style=
"margin-left:10px"
@
input=
"$forceUpdate()"
></el-input>
</p>
</div>
<div
style=
"justify-content: flex-start;align-items: flex-start;"
>
<p>
发票备注:
</p>
...
...
@@ -754,9 +754,9 @@
</el-input>
</div>
</div>
<div
class=
"_remark"
>
<p>
{{$t('system.label_info')}}
</p>
<textarea
v-model=
"Description"
>
...
...
@@ -813,7 +813,7 @@
</div>
<!-- <button class="normalBtn" v-if="GetDetail.Status==0||GetDetail.Status==3||msg.FrID==0"
@click="AddFinancial(1)">{{$t('fnc.zancun')}}</button> -->
<q-btn
color=
"primary"
size=
"11px"
:label=
"$t('fnc.zancun')"
@
click=
"AddFinancial(1)"
style=
"marginRight:10px"
v-if=
"iscopy==1 && (GetDetail.Status==0||GetDetail.Status==3||msg.FrID==0)"
/>
<q-btn
color=
"primary"
size=
"11px"
:label=
"$t('fnc.zancun')"
@
click=
"AddFinancial(1)"
style=
"marginRight:10px"
v-if=
"iscopy==1 && (GetDetail.Status==0||GetDetail.Status==3||msg.FrID==0)"
/>
<!-- <button class="normalBtn" @click="AddFinancial()">{{$t('fnc.tijiao')}}</button> -->
<q-btn
color=
"primary"
size=
"11px"
v-if=
"iscopy==1"
:label=
"$t('fnc.tijiao')"
@
click=
"AddFinancial()"
style=
"marginRight:10px"
/>
<q-btn
color=
"primary"
size=
"11px"
v-if=
"iscopy==2"
label=
"复制"
@
click=
"AddFinancial()"
style=
"marginRight:10px"
/>
...
...
@@ -864,9 +864,9 @@
<q-card-actions
align=
"right"
>
<q-btn
color=
"primary"
label=
"我知道了"
@
click=
"costmode = false"
/>
</q-card-actions>
</q-card>
</q-dialog>
</div>
</template>
...
...
@@ -1325,7 +1325,7 @@
this
.
msg
.
GuestId
=
this
.
$route
.
query
.
GuestId
;
if
(
this
.
iscopy
==
2
){
//如果是复制赋值为0
this
.
msg
.
FrID
=
0
;
if
(
this
.
msg
.
vorcherInos
.
length
>
0
){
//如果是复制的话 收据ID 为0
if
(
this
.
msg
.
vorcherInos
.
length
>
0
){
//如果是复制的话 收据ID 为0
this
.
msg
.
vorcherInos
.
forEach
(
x
=>
{
x
.
ID
=
0
})
...
...
@@ -1413,6 +1413,23 @@
this
.
msg
.
detailList
[
i
-
1
]
=
list
;
}
else
{
this
.
msg
.
detailList
.
push
(
list
);
// 人头奖励类型
if
(
this
.
orderObj
.
PeopleCostType
&&
this
.
orderObj
.
PeopleCostType
>
0
)
{
let
num
=
(
1
*
this
.
orderObj
.
PeopleMoney
)
*
list
.
Rate
;
num
=
Math
.
round
(
num
*
100
)
/
100
;
this
.
msg
.
detailList
.
push
({
...
list
,
UnitPrice
:
this
.
orderObj
.
PeopleMoney
,
UnitPriceTo
:
this
.
$commonUtils
.
addCommas
(
Math
.
round
(
this
.
orderObj
.
PeopleMoney
*
100
)
/
100
),
yTotalPrice
:
this
.
orderObj
.
PeopleMoney
,
yTotalPriceTo
:
this
.
$commonUtils
.
addCommas
(
Math
.
round
(
this
.
orderObj
.
PeopleMoney
*
100
)
/
100
),
bTotalPrice
:
num
,
bTotalPriceTo
:
this
.
$commonUtils
.
addCommas
(
num
),
CostTypeId
:
this
.
orderObj
.
PeopleCostType
})
};
}
let
allPrice
=
0
this
.
msg
.
detailList
.
forEach
(
x
=>
{
...
...
@@ -1873,7 +1890,7 @@
})
},
get_GetInvoiceTypeEnumList
(){
this
.
apipost
(
'Financial_get_GetInvoiceTypeEnumList'
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
getInvoiceList
=
res
.
data
.
data
...
...
@@ -1884,7 +1901,7 @@
}
},
err
=>
{})
},
getCompany
()
{
//公司
getSchoolDropdown
({}).
then
(
res
=>
{
let
data
=
res
.
Data
;
...
...
@@ -1894,14 +1911,14 @@
}
})
let
Status
=
false
;
if
(
this
.
$route
.
query
.
companyID
!==
'-1'
&&
this
.
$route
.
query
.
companyID
!==
undefined
){
Status
=
true
;
data
.
forEach
(
x
=>
{
x
.
disabled
=
true
;
})
}
if
(
this
.
orderObj
&&
this
.
orderObj
.
companyIDList
&&
this
.
orderObj
.
companyIDList
.
length
>
0
)
{
Status
=
true
;
this
.
orderObj
.
companyIDList
.
forEach
(
x
=>
{
...
...
@@ -2148,7 +2165,7 @@
if
(
this
.
$route
.
query
.
Conditon
)
{
this
.
returnCode
=
this
.
$route
.
query
.
Conditon
;
}
// this.admin_get_DepartmentGetList();
...
...
src/pages/financial/market/achievementPeriodsList.vue
View file @
d783c0b8
...
...
@@ -33,9 +33,9 @@
.salesCommission
.el-table
td
,
.el-table
th
{
padding
:
5px
0
;
}
</
style
>
<
template
>
<div
class=
"page-body salesCommission"
>
...
...
@@ -61,7 +61,7 @@
<q-btn
:loading=
"loading1"
color=
"primary"
size=
"11px"
label=
"生成提成"
@
click=
"scCommission"
style=
"margin-left:10px"
/>
</div>
</div>
</div>
</div>
<template
>
...
...
@@ -80,7 +80,7 @@
<div
style=
"display: flex;flex-wrap: wrap;"
v-if=
'scope.row.SchooldCommission>=0'
>
{{
scope
.
row
.
SchooldCommission
>=
0
?
scope
.
row
.
SchooldCommission
:
'-'
}}
</div>
</
template
>
</
template
>
</el-table-column>
<el-table-column
prop=
"FrIdList"
label=
"财务单据"
>
<
template
slot-scope=
"scope"
>
...
...
@@ -88,8 +88,8 @@
<span
v-for=
"(x,y) in scope.row.FrIdList"
@
click=
"gocaiwuxiangq(x)"
style=
"cursor: pointer;text-decoration: underline;margin-right: 5px; color: #409EFF;"
>
{{
x
}}
</span>
</div>
<div
v-else
>
无
</div>
</
template
>
</
template
>
</el-table-column>
<el-table-column
prop=
"CreateByName"
label=
"创建人"
>
</el-table-column>
<el-table-column
prop=
"CreateTime"
label=
"创建时间"
>
</el-table-column>
...
...
@@ -97,7 +97,7 @@
<
template
slot-scope=
"scope"
>
<div
class=
"_icon_btn"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"查看"
placement=
"top"
>
<i
class=
"iconfont icon-sousuo"
<i
class=
"iconfont icon-sousuo"
@
click=
"goUrl(scope.row.Id)"
></i>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"制单"
placement=
"top"
v-if=
'iscMaker==true'
>
...
...
@@ -107,14 +107,14 @@
</div>
</
template
>
</el-table-column>
</el-table>
<div
style=
"margin-top: 10px;text-align: center;"
>
<el-pagination
background
@
current-change=
"handleCurrentChanges"
layout=
"total,prev, pager, next, jumper"
:current-page
.
sync=
"msg.PageIndex"
:page-size=
"msg.PageSize"
:total=
'total'
>
</el-pagination>
</div>
</template>
<el-dialog
title=
"设置发放用户"
width=
"700px"
:visible
.
sync=
"costmode"
center
>
...
...
@@ -128,13 +128,13 @@
<el-table-column
prop=
"StudentCount"
label=
"客人数量"
>
</el-table-column>
<el-table-column
prop=
"CurrentPeriodMoney"
label=
"应发提成金额"
>
</el-table-column>
<el-table-column
prop=
"PeopleNumMoney"
label=
"应发人头奖励"
>
</el-table-column>
<el-table-column
prop=
"IsGiveOut"
label=
"是否已发放"
>
<el-table-column
prop=
"IsGiveOut"
label=
"是否已发放"
>
<
template
slot-scope=
"scope"
>
<span
v-if=
'scope.row.IsGiveOut==1'
>
已发放
</span>
<span
v-if=
'scope.row.IsGiveOut==2'
>
未发放
</span>
</
template
>
</el-table-column>
</el-table>
<div
style=
"margin-top: 10px;"
>
总提成金额:{{totalAmount}}
</div>
<div
style=
"margin-top: 10px;"
>
总人头奖励:{{totalPeople}}
</div>
...
...
@@ -143,7 +143,7 @@
<el-button
class=
"normalBtn"
type=
"primary"
@
click=
"preservetransaction()"
>
确定
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
...
...
@@ -279,11 +279,11 @@
this
.
$message
.
error
(
'校区提成总金额为0'
)
}
}
},
goaddFinancial
(
Money
,
Id
,
EmpIds
){
let
School_Id
=
0
;
let
obj
=
{
CostType
:
316
,
Money
:
Money
,
...
...
@@ -293,7 +293,9 @@
OtherType
:
50
,
//业绩提成
ReFinanceId
:
Id
,
ReFinanceId2
:
this
.
msg
.
SchoolId
,
EduCommissionEmp
:
EmpIds
EduCommissionEmp
:
EmpIds
,
PeopleCostType
:
this
.
totalPeople
>
0
?
486
:
0
,
PeopleMoney
:
this
.
totalPeople
,
}
let
query
=
{
blank
:
"y"
,
...
...
@@ -393,14 +395,13 @@
})
});
}
},
}
</
script
>
<
style
lang=
"sass"
>
@import
url('~assets/css/table.sass')
</
style
>
\ No newline at end of file
src/pages/sale/courseList.vue
View file @
d783c0b8
...
...
@@ -365,12 +365,12 @@
align
:
"left"
,
field
:
row
=>
row
.
CateName
},
{
name
:
"OriginalPrice"
,
label
:
"原价"
,
align
:
"left"
,
field
:
row
=>
row
.
OriginalPrice
.
toFixed
(
2
)
},
//
{
//
name: "OriginalPrice",
//
label: "原价",
//
align: "left",
//
field: row => row.OriginalPrice.toFixed(2)
//
},
{
name
:
"SellPrice"
,
label
:
"售价"
,
...
...
src/pages/sale/studyOrder.vue
View file @
d783c0b8
...
...
@@ -85,7 +85,7 @@
</div>
</div>
<div
class=
"page-content"
>
<orderlist
:dataList=
"data.List"
:authObj=
"authObj"
:modityOrderType=
"1"
@
success=
"refreshClassOrder"
ref=
"orderL"
<orderlist
:dataList=
"data.List"
:authObj=
"authObj"
:
studyOrderType=
"1"
:
modityOrderType=
"1"
@
success=
"refreshClassOrder"
ref=
"orderL"
:loading=
"loading"
>
</orderlist>
<div
class=
"row"
style=
"justify-content: flex-end;padding: 5px 20px"
>
...
...
src/pages/sale/studyOrderStatistics.vue
View file @
d783c0b8
...
...
@@ -94,7 +94,7 @@
</div>
</div>
<div
class=
"page-content"
>
<orderlist
:dataList=
"data.List"
:authObj=
"authObj"
:modityOrderType=
"3"
@
success=
"refreshClassOrder"
ref=
"orderL"
:loading=
"loading"
>
<orderlist
:dataList=
"data.List"
:authObj=
"authObj"
:
studyOrderType=
"1"
:
modityOrderType=
"3"
@
success=
"refreshClassOrder"
ref=
"orderL"
:loading=
"loading"
>
</orderlist>
<div
class=
"row"
style=
"justify-content: flex-end;padding: 5px 20px"
>
<q-pagination
v-model=
"msg.pageIndex"
:max=
"pageCount"
@
input=
"changePage"
class=
"full-width justify-end"
...
...
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