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
12b54787
Commit
12b54787
authored
Dec 14, 2021
by
zhengke
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/confucius
parents
a3d65857
00c093eb
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
194 additions
and
13 deletions
+194
-13
index.js
src/api/duty/index.js
+8
-0
editOrder-form.vue
src/components/sale/editOrder-form.vue
+20
-7
schedul-visit.vue
src/components/schedul/schedul-visit.vue
+165
-6
student-visit.vue
src/components/school/student/student-visit.vue
+1
-0
No files found.
src/api/duty/index.js
View file @
12b54787
...
@@ -12,6 +12,14 @@ export function qyeryDutyFrequencyPage(data) {
...
@@ -12,6 +12,14 @@ export function qyeryDutyFrequencyPage(data) {
})
})
}
}
export
function
queryDutyTrialLesson
(
data
)
{
return
request
({
url
:
'/DutyPlan/GetDutyTrialLesson'
,
method
:
'post'
,
data
})
}
/**
/**
* 获取班次列表
* 获取班次列表
* @param {JSON参数} data
* @param {JSON参数} data
...
...
src/components/sale/editOrder-form.vue
View file @
12b54787
...
@@ -78,14 +78,11 @@
...
@@ -78,14 +78,11 @@
<q-input
filled
stack-label
:dense=
"false"
v-model=
"OrderMsg.Unit_Price"
@
input=
"calcPrice()"
class=
"col-12"
<q-input
filled
stack-label
:dense=
"false"
v-model=
"OrderMsg.Unit_Price"
@
input=
"calcPrice()"
class=
"col-12"
label=
"成交单价"
:rules=
"[val => !!val || '请填成交单价']"
/>
label=
"成交单价"
:rules=
"[val => !!val || '请填成交单价']"
/>
</
template
>
</
template
>
<!-- <q-input filled stack-label :disable="modityOrderType!=3" :dense="false" maxlength="10"
@keyup.native="checkPrice(OrderMsg,'PreferPrice')" v-model="OrderMsg.PreferPrice" class="col-12 q-pb-lg"
label="应收" /> -->
<q-input
filled
stack-label
:disable=
"modityOrderType!=3"
:dense=
"false"
maxlength=
"10"
<q-input
filled
stack-label
:disable=
"modityOrderType!=3"
:dense=
"false"
maxlength=
"10"
@
keyup
.
native=
"checkPrice(OrderMsg,'PreferPrice')"
:value=
"OrderMsg.Class_Price*OrderMsg.GuestNum*(1-OrderMsg.B2CRatio)
"
class=
"col-12 q-pb-lg"
@
keyup
.
native=
"checkPrice(OrderMsg,'PreferPrice')"
v-model=
"OrderMsg.PreferPrice
"
class=
"col-12 q-pb-lg"
label=
"应收"
/>
label=
"应收"
/>
<q-select
:disable=
"modityOrderType==2"
standout=
"bg-primary text-white"
option-value=
"Id"
option-label=
"Name"
<q-select
:disable=
"modityOrderType==2"
standout=
"bg-primary text-white"
option-value=
"Id"
option-label=
"Name"
v-model=
"OrderMsg.OrderSource"
:options=
"SourceEnumList"
emit-value
map-options
class=
"q-pb-lg"
v-model=
"OrderMsg.OrderSource"
:options=
"SourceEnumList"
emit-value
map-options
class=
"q-pb-lg"
label=
"客人来源"
/>
label=
"客人来源"
/>
...
@@ -100,6 +97,17 @@
...
@@ -100,6 +97,17 @@
</q-item>
</q-item>
</
template
>
</
template
>
</q-select>
</q-select>
<q-select
:disable=
"(modityOrderType==2)||(OrderMsg.JoinType==3)"
v-model=
"OrderMsg.CourseConsultantId"
:options=
"EmployeeList"
filled
use-input
label=
"课程顾问"
option-label=
"EmployeeName"
option-value=
"Id"
ref=
"EmployeeName"
class=
"col-6 q-pb-lg"
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>
<q-select
:disable=
"(modityOrderType==2)||(OrderMsg.JoinType==3)"
v-model=
"OrderMsg.CustomerId"
<q-select
:disable=
"(modityOrderType==2)||(OrderMsg.JoinType==3)"
v-model=
"OrderMsg.CustomerId"
:options=
"myCustomerList"
filled
use-input
label=
"同行"
option-label=
"CustomerName"
option-value=
"CustomerId"
:options=
"myCustomerList"
filled
use-input
label=
"同行"
option-label=
"CustomerName"
option-value=
"CustomerId"
ref=
"CustomerName"
class=
"col-6 q-pb-lg"
emit-value
map-options
@
filter=
"cusfilterFn"
>
ref=
"CustomerName"
class=
"col-6 q-pb-lg"
emit-value
map-options
@
filter=
"cusfilterFn"
>
...
@@ -183,7 +191,7 @@
...
@@ -183,7 +191,7 @@
B2CReNewRatio
:
0
,
B2CReNewRatio
:
0
,
CustomerId
:
0
,
//市场专员
CustomerId
:
0
,
//市场专员
Unit_Price
:
0
,
Unit_Price
:
0
,
PreferPrice
:
0
,
PreferPrice
:
0
,
//应收
OrderSource
:
0
,
OrderSource
:
0
,
SaleRemark
:
""
,
SaleRemark
:
""
,
Class_Price
:
0
,
//单价
Class_Price
:
0
,
//单价
...
@@ -206,6 +214,8 @@
...
@@ -206,6 +214,8 @@
JoinType
:
1
,
//订单报入类型
JoinType
:
1
,
//订单报入类型
DiscountMoney
:
0
,
//优惠金额
DiscountMoney
:
0
,
//优惠金额
PerDiscountMoney
:
0
,
//每人优惠金额
PerDiscountMoney
:
0
,
//每人优惠金额
CourseConsultantId
:
0
,
//课程顾问
CustomerId
:
0
,
//同行
},
},
Unit_PriceRemark
:
""
,
//单价规则
Unit_PriceRemark
:
""
,
//单价规则
IsShowUpPrice
:
false
,
//是否显示高于定价
IsShowUpPrice
:
false
,
//是否显示高于定价
...
@@ -307,7 +317,8 @@
...
@@ -307,7 +317,8 @@
}
}
var perDiscountMoney = Number(tempDiscountMoney).toFixed(2);
var perDiscountMoney = Number(tempDiscountMoney).toFixed(2);
this.OrderMsg.PerDiscountMoney = perDiscountMoney;
this.OrderMsg.PerDiscountMoney = perDiscountMoney;
this.OrderMsg.DiscountMoney = perDiscountMoney * guestNum;
// this.OrderMsg.DiscountMoney = perDiscountMoney * guestNum;
this.OrderMsg.DiscountMoney=this.OrderMsg.Class_Price*this.OrderMsg.GuestNum*this.OrderMsg.B2CRatio
//计算每人优惠和总优惠
//计算每人优惠和总优惠
if (this.OrderMsg.IsChaBan == 1) {
if (this.OrderMsg.IsChaBan == 1) {
this.OrderMsg.Unit_Price = chaBanPrice;
this.OrderMsg.Unit_Price = chaBanPrice;
...
@@ -394,6 +405,7 @@
...
@@ -394,6 +405,7 @@
this.OrderMsg.B2CRatio = tempData.B2CRatio>1?(tempData.B2CRatio/100):tempData.B2CRatio;
this.OrderMsg.B2CRatio = tempData.B2CRatio>1?(tempData.B2CRatio/100):tempData.B2CRatio;
this.OrderMsg.B2CReNewRatio = tempData.B2CReNewRatio>1?(tempData.B2CReNewRatio/100):tempData.B2CReNewRatio;
this.OrderMsg.B2CReNewRatio = tempData.B2CReNewRatio>1?(tempData.B2CReNewRatio/100):tempData.B2CReNewRatio;
this.OrderMsg.CustomerId=tempData.CustomerId
this.OrderMsg.CustomerId=tempData.CustomerId
this.OrderMsg.CourseConsultantId=tempData.CourseConsultantId
this.UnitPrice = this.OrderMsg.Unit_Price;
this.UnitPrice = this.OrderMsg.Unit_Price;
this.IsShowEditOrder = true;
this.IsShowEditOrder = true;
}
}
...
@@ -420,6 +432,7 @@
...
@@ -420,6 +432,7 @@
this.OrderMsg.B2CRatio = 0;
this.OrderMsg.B2CRatio = 0;
this.OrderMsg.B2CReNewRatio = 0;
this.OrderMsg.B2CReNewRatio = 0;
this.OrderMsg.CustomerId=0;
this.OrderMsg.CustomerId=0;
this.OrderMsg.CourseConsultantId=0;
if (this.OrderMsg.OrderType == 2) {
if (this.OrderMsg.OrderType == 2) {
this.OrderMsg.OrderNature = 1;
this.OrderMsg.OrderNature = 1;
}
}
...
...
src/components/schedul/schedul-visit.vue
View file @
12b54787
...
@@ -422,7 +422,13 @@
...
@@ -422,7 +422,13 @@
>
>
<
template
v-slot:body-cell-Option=
"props"
>
<
template
v-slot:body-cell-Option=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<q-btn
dense
flat
color=
"primary"
v-if=
"props.row.IsVisit != 1"
>
<q-btn
dense
flat
color=
"primary"
v-if=
"props.row.IsVisit != 1"
@
click=
"setCustomerVisitHandler(props.row.Id)"
>
<q-icon
<q-icon
name=
"edit"
name=
"edit"
color=
"primary"
color=
"primary"
...
@@ -441,6 +447,53 @@
...
@@ -441,6 +447,53 @@
</q-td>
</q-td>
</
template
>
</
template
>
</q-table>
</q-table>
<q-table
v-if=
"tabCheck == 'third'"
hide-bottom
:columns=
"dutyColumns"
:data=
"shwoTrialList"
:loading=
"loadingObj.trialLoading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
>
<
template
v-slot:body-cell-StuName=
"props"
>
<q-td
:props=
"props"
style=
"border-left:1px solid #E5e5e5;padding:0"
>
<template
v-for=
"(x, i) in props.row.GuestList"
>
<div
:key=
"i"
class=
"q-pa-md"
:style=
"
{
'border-bottom':
i == props.row.GuestList.length - 1
? 'none'
: '1px solid #e5e5e5'
}"
>
{{
x
.
GuestName
}}
</div>
</
template
>
</q-td>
</template>
<
template
v-slot:body-cell-StuPhone=
"props"
>
<q-td
:props=
"props"
style=
"border-right:1px solid #E5e5e5;padding:0"
>
<template
v-for=
"(x, i) in props.row.GuestList"
>
<div
:key=
"i + 'tel'"
class=
"q-pa-md"
:style=
"
{
'border-bottom':
i == props.row.GuestList.length - 1
? 'none'
: '1px solid #e5e5e5'
}"
>
{{
x
.
StuTel
}}
</div>
</
template
>
</q-td>
</template>
</q-table>
</div>
</div>
<schedulFanke
<schedulFanke
v-if=
"isShowDetail"
v-if=
"isShowDetail"
...
@@ -452,8 +505,10 @@
...
@@ -452,8 +505,10 @@
<
script
>
<
script
>
import
{
getTodayVisitList
}
from
"../../api/stuMan/index"
;
import
{
getTodayVisitList
}
from
"../../api/stuMan/index"
;
import
{
getStudentPage
,
saveStudent
,
getStudentInfo
}
from
"../../api/school"
;
import
{
getStudentPage
,
saveStudent
,
getStudentInfo
}
from
"../../api/school"
;
import
{
saveStudentVisitFeedback
}
from
"../../api/customerstudent/customerstudent"
;
import
{
getGuestBasicsEnumList
}
from
"../../api/sale/sale"
;
import
{
getGuestBasicsEnumList
}
from
"../../api/sale/sale"
;
import
schedulFanke
from
"../schedul/schedul-fanke"
;
import
schedulFanke
from
"../schedul/schedul-fanke"
;
import
{
queryDutyTrialLesson
}
from
"../../api/duty/index"
;
export
default
{
export
default
{
props
:
{
props
:
{
...
@@ -576,11 +631,49 @@ export default {
...
@@ -576,11 +631,49 @@ export default {
field
:
"Option"
field
:
"Option"
}
}
],
],
dutyColumns
:
[
{
name
:
"TeacherName"
,
label
:
"试讲老师"
,
field
:
"TeacherName"
,
align
:
"left"
},
{
name
:
"StartTime"
,
label
:
"开始时间"
,
field
:
"StartTime"
,
align
:
"left"
},
{
name
:
"CourseName"
,
label
:
"试讲内容"
,
field
:
"CourseName"
,
align
:
"left"
},
{
name
:
"RoomName"
,
label
:
"教室"
,
field
:
"RoomName"
,
align
:
"left"
},
{
name
:
"StuName"
,
label
:
"客户姓名"
,
align
:
"left"
},
{
name
:
"StuPhone"
,
label
:
"客户电话"
,
align
:
"left"
}
],
searchObj
:
{
searchObj
:
{
arriveVisitKey
:
""
arriveVisitKey
:
""
,
dutyKey
:
""
},
},
loadingObj
:
{
loadingObj
:
{
visitLoading
:
true
visitLoading
:
true
,
trialLoading
:
true
},
},
data
:
[],
data
:
[],
loading
:
true
,
loading
:
true
,
...
@@ -683,7 +776,9 @@ export default {
...
@@ -683,7 +776,9 @@ export default {
sendObj
:
{},
sendObj
:
{},
isShowDetail
:
false
,
isShowDetail
:
false
,
todayVistList
:
[],
todayVistList
:
[],
showTodayVist
:
[]
showTodayVist
:
[],
trialList
:
[],
shwoTrialList
:
[]
};
};
},
},
watch
:
{
watch
:
{
...
@@ -693,6 +788,18 @@ export default {
...
@@ -693,6 +788,18 @@ export default {
this
.
initAuth
();
this
.
initAuth
();
},
},
immediate
:
true
immediate
:
true
},
tabCheck
:
{
handler
(
newValue
)
{
if
(
newValue
==
"first"
)
{
this
.
initTodayVistList
();
}
else
if
(
newValue
==
"second"
)
{
this
.
getVisitoryPage
();
}
else
{
this
.
initDutyTrialLessonList
();
}
},
immediate
:
true
}
}
},
},
created
()
{},
created
()
{},
...
@@ -702,6 +809,7 @@ export default {
...
@@ -702,6 +809,7 @@ export default {
this
.
initAuth
();
this
.
initAuth
();
this
.
getVisitoryPage
();
this
.
getVisitoryPage
();
this
.
initTodayVistList
();
this
.
initTodayVistList
();
this
.
initDutyTrialLessonList
();
},
},
methods
:
{
methods
:
{
submitForm
(
addMsg1
)
{
submitForm
(
addMsg1
)
{
...
@@ -825,19 +933,70 @@ export default {
...
@@ -825,19 +933,70 @@ export default {
this
.
loadingObj
.
visitLoading
=
false
;
this
.
loadingObj
.
visitLoading
=
false
;
});
});
},
},
setCustomerVisitHandler
(
id
)
{
this
.
$q
.
dialog
({
title
:
"确认到访"
,
message
:
"请再次确认改客户是否到达"
,
cancel
:
true
,
persistent
:
true
})
.
onOk
(()
=>
{
let
msg
=
{
Id
:
id
,
IsVisit
:
1
,
Feedback
:
""
};
saveStudentVisitFeedback
(
msg
).
then
(
r
=>
{
this
.
initTodayVistList
();
});
});
},
initTodayVistList
()
{
initTodayVistList
()
{
this
.
loadingObj
.
visitLoading
=
true
;
this
.
loadingObj
.
visitLoading
=
true
;
if
(
this
.
$route
.
query
.
Id
)
{
if
(
this
.
$route
.
query
.
Id
)
{
let
msg
=
{
Id
:
this
.
$route
.
query
.
Id
};
let
msg
=
{
Id
:
this
.
$route
.
query
.
Id
};
getTodayVisitList
(
msg
).
then
(
r
=>
{
getTodayVisitList
(
msg
).
then
(
r
=>
{
console
.
log
(
r
);
this
.
todayVistList
=
r
.
Data
;
this
.
todayVistList
=
r
.
Data
;
this
.
showTodayVist
=
this
.
todayVistList
;
this
.
changeVisitList
()
;
this
.
loadingObj
.
visitLoading
=
false
;
this
.
loadingObj
.
visitLoading
=
false
;
});
});
}
else
{
}
else
{
this
.
loadingObj
.
visitLoading
=
false
;
this
.
loadingObj
.
visitLoading
=
false
;
}
}
},
changeDutyTrialHander
()
{
this
.
shwoTrialList
=
this
.
trialList
;
return
;
this
.
loadingObj
.
trialLoading
=
true
;
this
.
shwoTrialList
=
[];
this
.
$nextTick
(()
=>
{
this
.
shwoTrialList
=
this
.
trialList
.
filter
(
x
=>
{
return
(
x
.
StuName
.
indexOf
(
this
.
searchObj
.
dutyKey
)
!=
-
1
||
x
.
StuTel
.
indexOf
(
this
.
searchObj
.
dutyKey
)
!=
-
1
);
});
this
.
loadingObj
.
trialLoading
=
false
;
});
},
initDutyTrialLessonList
()
{
this
.
loadingObj
.
trialLoading
=
true
;
if
(
this
.
$route
.
query
.
Id
)
{
let
msg
=
{
Id
:
this
.
$route
.
query
.
Id
};
queryDutyTrialLesson
(
msg
).
then
(
r
=>
{
if
(
r
.
Data
)
{
r
.
Data
.
forEach
(
x
=>
{
x
.
CourseName
=
x
.
CourseName
.
split
(
":"
)[
0
];
});
}
this
.
trialList
=
r
.
Data
;
this
.
changeDutyTrialHander
();
this
.
loadingObj
.
trialLoading
=
false
;
});
}
else
{
this
.
loadingObj
.
trialLoading
=
false
;
}
}
}
}
}
};
};
...
...
src/components/school/student/student-visit.vue
View file @
12b54787
...
@@ -59,6 +59,7 @@
...
@@ -59,6 +59,7 @@
<div
class=
"visit_Cont"
>
<div
class=
"visit_Cont"
>
<div
class=
"Log_Content"
>
<div
class=
"Log_Content"
>
<div>
到访校区:
{{
tItem
.
SchoolName
}}
</div>
<div>
到访校区:
{{
tItem
.
SchoolName
}}
</div>
<div>
到访时间:
{{
tItem
.
Date
}}
{{
tItem
.
VisitTime
}}
</div>
<div
class=
"StuCom_Remark"
>
<div
class=
"StuCom_Remark"
>
<span
class=
"StuCom_Left"
>
接待人
</span>
:
<span
class=
"StuCom_Left"
>
接待人
</span>
:
{{
tItem
.
ReceptionPersionName
}}
{{
tItem
.
ReceptionPersionName
}}
...
...
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