Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SuperMan
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
罗超
SuperMan
Commits
764192dc
Commit
764192dc
authored
Feb 14, 2020
by
黄媛媛
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
46440ffe
514158f4
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
1822 additions
and
510 deletions
+1822
-510
AuditDan.vue
src/components/TravelManager/TravelGroupControl/AuditDan.vue
+480
-482
CostNewPrice.vue
...ponents/TravelManager/TravelNewQuotation/CostNewPrice.vue
+37
-22
CostNewPriceAudit.vue
...ts/TravelManager/TravelNewQuotation/CostNewPriceAudit.vue
+1023
-0
QuotationAduit.vue
...nents/TravelManager/TravelNewQuotation/QuotationAduit.vue
+263
-0
QuotationNewPrice.vue
...ts/TravelManager/TravelNewQuotation/QuotationNewPrice.vue
+8
-4
newQuotation.vue
...ponents/TravelManager/TravelNewQuotation/newQuotation.vue
+2
-2
config.js
src/router/config.js
+9
-0
No files found.
src/components/TravelManager/TravelGroupControl/AuditDan.vue
View file @
764192dc
<
style
>
@import
"../../../assets/css/newTravelManager.css"
;
@import
"../../../assets/css/newTravelManager.css"
;
</
style
>
<
template
>
<div
class=
"flexOne quoTation"
>
<div
class=
"query-box"
>
<ul>
<li>
<span>
<em>
所属线路
</em>
<el-select
v-model=
"queryData.LineId"
class=
'w200'
filterable
:placeholder=
"$t('pub.pleaseSel')"
@
change=
"getLineTeamList()"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'noLimit'
></el-option>
<el-option
v-for=
"item in LineList"
:label=
'item.LineName'
:value=
'item.LineID'
:key=
'item.LineID'
>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>
所属系列
</em>
<el-select
v-model=
"queryData.LineteamId"
class=
'w200'
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'noLimit'
></el-option>
<el-option
v-for=
"item in LineTeamList"
:label=
'item.LtName'
:value=
'item.LtID'
:key=
'item.LtID'
>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>
提交人
</em>
<el-select
v-model=
"queryData.CreateBy"
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'noLimit'
></el-option>
<el-option
v-for=
"item in EmployeeList"
:label=
'item.EmName'
:value=
'item.EmployeeId'
:key=
'item.EmployeeId'
>
</el-option>
</el-select>
</span>
</li>
<li>
<button
class=
"hollowFixedBtn"
@
click=
"getList(),resetPageIndex()"
>
查询
</button>
</li>
</ul>
</div>
<el-tabs
v-model=
"activeName"
@
tab-click=
"handleClick(activeName)"
>
<el-tab-pane
v-for=
"item in $tripUtils.TravelStateList"
:label=
"item.label"
:name=
"item.Id"
:key=
"item.subCode"
></el-tab-pane>
</el-tabs>
<div
class=
"commonContent"
v-loading=
"loading"
>
<ul
class=
"_content"
>
<div
class=
"flexOne quoTation"
>
<div
class=
"query-box"
>
<ul>
<li>
<span>
<em>
所属线路
</em>
<el-select
v-model=
"queryData.LineId"
class=
'w200'
filterable
:placeholder=
"$t('pub.pleaseSel')"
@
change=
"getLineTeamList()"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'noLimit'
></el-option>
<el-option
v-for=
"item in LineList"
:label=
'item.LineName'
:value=
'item.LineID'
:key=
'item.LineID'
>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>
所属系列
</em>
<el-select
v-model=
"queryData.LineteamId"
class=
'w200'
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'noLimit'
></el-option>
<el-option
v-for=
"item in LineTeamList"
:label=
'item.LtName'
:value=
'item.LtID'
:key=
'item.LtID'
>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>
提交人
</em>
<el-select
v-model=
"queryData.CreateBy"
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'noLimit'
></el-option>
<el-option
v-for=
"item in EmployeeList"
:label=
'item.EmName'
:value=
'item.EmployeeId'
:key=
'item.EmployeeId'
>
</el-option>
</el-select>
</span>
</li>
<li>
<button
class=
"hollowFixedBtn"
@
click=
"getList(),resetPageIndex()"
>
查询
</button>
</li>
</ul>
</div>
<el-tabs
v-model=
"activeName"
@
tab-click=
"handleClick(activeName)"
>
<el-tab-pane
v-for=
"item in $tripUtils.TravelStateList"
:label=
"item.label"
:name=
"item.Id"
:key=
"item.subCode"
>
</el-tab-pane>
</el-tabs>
<div
class=
"commonContent"
v-loading=
"loading"
>
<ul
class=
"_content"
>
<li
v-for=
"item in dataList"
:key=
"item.subCode"
:data-id=
'item.ID'
>
<div
class=
"_left"
>
<div>
<p
class=
"quoListName"
@
click=
"getJourney(item.ID,item.Title)"
>
<el-tooltip
popper-class=
"max-w250"
effect=
"dark"
:content=
"item.Title"
placement=
"top-start"
>
<span>
{{
item
.
Title
}}
</span>
</el-tooltip>
</p>
<p
class=
"Quo_Content"
><i
v-if=
"item.ProductRecommend"
class=
"iconfont icon-richeng"
></i>
<span>
{{
item
.
ProductRecommend
}}
</span>
</p>
</div>
<div
class=
"_left"
>
<div>
<p
class=
"quoListName"
>
<el-tooltip
popper-class=
"max-w250"
effect=
"dark"
:content=
"item.ID"
placement=
"top-start"
>
<span>
{{
item
.
ID
}}
</span>
</el-tooltip>
</p>
</div>
<div
class=
"_cent"
>
<div
class=
"stayDays"
>
{{
item
.
DayNum
}}
天
{{
item
.
NightNum
}}
晚
</div>
<div
class=
""
>
销售定价
<el-popover
popper-class=
"salsSetPrice"
trigger=
"click"
>
<div
class=
"priceContentDiv"
v-if=
"item.QuotationPrice!=null"
>
<div>
<div>
成人
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
同业会员:¥
{{
item
.
QuotationPrice
.
B2BMemberPrice
}}
</span>
<span
class=
"pRightPrice"
>
同业:¥
{{
item
.
QuotationPrice
.
B2BPrice
}}
</span>
</div>
<div
class=
"priceDivCon"
>
<span
class=
"pLeftPrice"
>
直客会员:¥
{{
item
.
QuotationPrice
.
B2CMemberPrice
}}
</span>
<span
class=
"pRightPrice"
>
直客:¥
{{
item
.
QuotationPrice
.
B2CPrice
}}
</span>
</div>
</div>
<div>
小孩
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
占床:¥
{{
item
.
QuotationPrice
.
ChildNeedPrice
}}
</span>
<span
class=
"pRightPrice"
>
不占床:¥
{{
item
.
QuotationPrice
.
ChildNoNeedPrice
}}
</span>
</div>
<div
class=
"priceDivCon"
>
<span
class=
"pLeftPrice"
>
婴儿:¥
{{
item
.
QuotationPrice
.
BabyPrice
}}
</span>
<span
class=
"pRightPrice"
>
附加费:¥
{{
item
.
QuotationPrice
.
BabyChargePrice
}}
</span>
</div>
</div>
<div>
老人
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
附加费:¥
{{
item
.
QuotationPrice
.
OldManChargePrice
}}
</span>
</div>
</div>
<div>
杂费
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
签证:¥
{{
item
.
QuotationPrice
.
VisaPrice
}}
</span>
<span
class=
"pRightPrice"
>
单房差:¥
{{
item
.
QuotationPrice
.
SingleRoomPrice
}}
</span>
</div>
<div
class=
"priceDivCon"
>
<span
class=
"pLeftPrice"
>
杂费:¥
{{
item
.
QuotationPrice
.
OtherPrice
}}
</span>
</div>
</div>
<div>
单项报价
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
单地接:¥
{{
item
.
QuotationPrice
.
SingleDMCPrice
}}
</span>
</div>
</div>
<div>
优惠
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
同行返佣:¥
{{
item
.
QuotationPrice
.
RebatePrice
}}
</span>
<span
class=
"pRightPrice"
>
早鸟优惠:¥
{{
item
.
QuotationPrice
.
DiscountPrice
}}
</span>
</div>
</div>
</div>
</div>
<div
class=
"_left"
>
<div>
<p
class=
"quoListName"
>
<el-tooltip
popper-class=
"max-w250"
effect=
"dark"
:content=
"item.LineName"
placement=
"top-start"
>
<span>
{{
item
.
LineName
}}
</span>
</el-tooltip>
</p>
<p
class=
"Quo_Content"
><i
v-if=
"item.LtName"
class=
"iconfont icon-richeng"
></i>
<span>
{{
item
.
LtName
}}
</span>
</p>
</div>
</div>
<div
class=
"_left"
>
<div>
<p
class=
"quoListName"
>
<el-tooltip
popper-class=
"max-w250"
effect=
"dark"
:content=
"item.Title"
placement=
"top-start"
>
<span>
{{
item
.
Title
}}
</span>
</el-tooltip>
</p>
<p
class=
"Quo_Content"
><i
v-if=
"item.CustomerName"
class=
"iconfont icon-richeng"
></i>
<span>
{{
item
.
CustomerName
}}
</span>
</p>
</div>
</div>
<div
class=
"_cent"
>
<div
class=
"stayDays"
>
{{
item
.
DayNum
}}
天
</div>
<div
class=
""
>
销售定价
<el-popover
popper-class=
"salsSetPrice"
trigger=
"click"
>
<div
class=
"priceContentDiv"
v-if=
"item.QuotationPrice!=null"
>
<div>
<div>
成人
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
销售价格:¥
{{
item
.
QuotationPrice
.
B2BMemberPrice
}}
</span>
</div>
<span
slot=
"reference"
class=
"diPrice"
>
{{
item
.
SalesPrice
}}
<span
class=
"qi"
>
起
</span></span>
</el-popover>
<span
class=
"AudiDanTeamDate"
>
有效期:
{{
item
.
QuotationLimitStartStr
}}
至
{{
item
.
QuotationLimitEndStr
}}
</span>
</div>
<div>
小孩
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
占床:¥
{{
item
.
QuotationPrice
.
ChildNeedPrice
}}
</span>
<span
class=
"pRightPrice"
>
不占床:¥
{{
item
.
QuotationPrice
.
ChildNoNeedPrice
}}
</span>
</div>
<div
class=
"priceDivCon"
>
<span
class=
"pLeftPrice"
>
婴儿:¥
{{
item
.
QuotationPrice
.
BabyPrice
}}
</span>
<span
class=
"pRightPrice"
>
附加费:¥
{{
item
.
QuotationPrice
.
BabyChargePrice
}}
</span>
</div>
</div>
<div>
老人
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
附加费:¥
{{
item
.
QuotationPrice
.
OldManChargePrice
}}
</span>
</div>
</div>
<div>
杂费
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
签证:¥
{{
item
.
QuotationPrice
.
VisaPrice
}}
</span>
<span
class=
"pRightPrice"
>
单房差:¥
{{
item
.
QuotationPrice
.
SingleRoomPrice
}}
</span>
</div>
</div>
<div>
单项报价
</div>
<div
class=
"priceList"
>
<div>
<span
class=
"pLeftPrice"
>
单地接:¥
{{
item
.
QuotationPrice
.
SingleDMCPrice
}}
</span>
</div>
</div>
</div>
</div>
<span
slot=
"reference"
class=
"diPrice"
>
{{
item
.
SalesPrice
}}
<span
class=
"qi"
>
起
</span></span>
</el-popover>
</div>
<div
class=
"_rightAudit"
>
<div
class=
"AuditUserInfo clearfix aa"
>
<div
class=
"AuditDanHeader"
>
<img
v-if=
"item.CreateUserPhoto"
:src=
"item.CreateUserPhoto"
alt=
""
>
<img
v-else
src=
"../../../assets/img/default_head_img.jpg"
alt=
""
>
</div>
<div
class=
"AuditUserInfoDetail"
>
<div>
{{
item
.
CreateUserName
}}
</div>
<div
class=
"AuditChangeDate"
>
{{
item
.
CreateDate
}}
</div>
</div>
</div>
<div
class=
"_rightAudit"
>
<div
class=
"AuditUserInfo clearfix aa"
>
<div
class=
"AuditDanHeader"
>
<img
v-if=
"item.CreateUserPhoto"
:src=
"item.CreateUserPhoto"
alt=
""
>
<img
v-else
src=
"../../../assets/img/default_head_img.jpg"
alt=
""
>
</div>
<div
class=
"AuditStatus"
>
<div
v-if=
"item.TravelState==2"
>
<div>
待审核
</div>
<div
class=
"AuditUserInfoDetail"
>
<div>
{{
item
.
CreateUserName
}}
</div>
<div
class=
"AuditChangeDate"
>
{{
item
.
CreateDate
}}
</div>
</div>
</div>
<div
class=
"AuditStatus"
>
<div
v-if=
"item.TravelState==2"
>
<div>
待审核
</div>
</div>
<div
v-if=
"item.TravelState==3"
>
<div
class=
"Auditapproved"
>
已通过
</div>
<el-popover
popper-class=
"salsSetPrice"
trigger=
"click"
>
<div
class=
"priceContentDiv"
>
<div>
<span>
审批结果
</span>
<span
class=
"AuditDate"
>
{{
item
.
hours
}}
</span>
</div>
<div>
{{
item
.
AuditContent
}}
</div>
</div>
<div
v-if=
"item.TravelState==3"
>
<div
class=
"Auditapproved"
>
已通过
</div>
<el-popover
popper-class=
"salsSetPrice"
trigger=
"click"
>
<div
class=
"priceContentDiv"
>
<div>
<span>
审批结果
</span>
<span
class=
"AuditDate"
>
{{
item
.
hours
}}
</span>
</div>
<div>
{{
item
.
AuditContent
}}
</div>
</div>
<div
slot=
"reference"
class=
"AuditLookDetail"
>
查看说明
</div>
</el-popover>
<div
slot=
"reference"
class=
"AuditLookDetail"
>
查看说明
</div>
</el-popover>
</div>
<div
v-if=
"item.TravelState==4"
>
<div
class=
"Auditrejected"
>
已驳回
</div>
<el-popover
popper-class=
"salsSetPrice"
trigger=
"click"
>
<div
class=
"priceContentDiv"
>
<div>
<span>
审批结果
</span>
<span
class=
"AuditDate"
>
{{
item
.
hours
}}
</span>
</div>
<div>
{{
item
.
AuditContent
}}
</div>
</div>
<div
v-if=
"item.TravelState==4"
>
<div
class=
"Auditrejected"
>
已驳回
</div>
<el-popover
popper-class=
"salsSetPrice"
trigger=
"click"
>
<div
class=
"priceContentDiv"
>
<div>
<span>
审批结果
</span>
<span
class=
"AuditDate"
>
{{
item
.
hours
}}
</span>
<div
slot=
"reference"
class=
"AuditLookDetail"
>
查看说明
</div>
</el-popover>
</div>
</div>
<div
class=
"AD_Operation"
>
<span
class=
"openGroup opbd"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"查看"
placement=
"top-start"
popper-class=
"max-w250"
>
<span
@
click=
"goUrl('QuotationAduit',item.ID,1)"
>
查
</span>
</el-tooltip>
</span>
<span
class=
"openGroup opbd"
v-if=
"item.TravelState==2"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"审核"
placement=
"top-start"
popper-class=
"max-w250"
>
<span
@
click=
"goUrl('QuotationAduit',item.ID,2)"
>
审
</span>
</el-tooltip>
</span>
<span
class=
"openGroup opbd"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"日志"
placement=
"top-start"
popper-class=
"max-w250"
>
<el-popover
popper-class=
"salsSetPrice"
trigger=
"click"
>
<div
class=
"priceContentDiv"
>
<div
class=
"AuditLog"
>
报价单日志
</div>
<div
class=
"logContact"
>
<div
v-for=
"(childItem,logIndex) in AuditLogList"
:key=
"childItem.subCode"
>
<div
class=
"clearfix"
>
<div
class=
"Auditcircle"
></div>
<div
class=
"operateName"
>
{{
childItem
.
UserName
}}
</div>
<div
class=
"operateDate"
>
{{
childItem
.
hour
}}
</div>
</div>
<div>
{{
childItem
.
LogContent
}}
<span
class=
"spread"
v-if=
"childItem.LogType==2"
@
click=
"expectInfo(logIndex)"
>
{{
childItem
.
expectName
}}
</span></div>
<div
v-if=
"childItem.isShow"
>
{{
childItem
.
LogRemark
}}
</div>
</div>
<div>
{{
item
.
AuditContent
}}
</div>
</div>
<div
slot=
"reference"
class=
"AuditLookDetail"
>
查看说明
</div>
</el-popover>
</div>
</div>
<div
class=
"AD_Operation"
>
<span
class=
"openGroup opbd"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"查看"
placement=
"top-start"
popper-class=
"max-w250"
>
<span
@
click=
"goUrl('QuotationDetails',item.ID,1)"
>
查
</span>
</el-tooltip>
</span>
<span
class=
"openGroup opbd"
v-if=
"item.TravelState==2"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"审核"
placement=
"top-start"
popper-class=
"max-w250"
>
<span
@
click=
"goUrl('QuotationDetails',item.ID,2)"
>
审
</span>
</el-tooltip>
</span>
<span
class=
"openGroup opbd"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"日志"
placement=
"top-start"
popper-class=
"max-w250"
>
<el-popover
popper-class=
"salsSetPrice"
trigger=
"click"
>
<div
class=
"priceContentDiv"
>
<div
class=
"AuditLog"
>
报价单日志
</div>
<div
class=
"logContact"
>
<div
v-for=
"(childItem,logIndex) in AuditLogList"
:key=
"childItem.subCode"
>
<div
class=
"clearfix"
>
<div
class=
"Auditcircle"
></div>
<div
class=
"operateName"
>
{{
childItem
.
UserName
}}
</div>
<div
class=
"operateDate"
>
{{
childItem
.
hour
}}
</div>
</div>
<div>
{{
childItem
.
LogContent
}}
<span
class=
"spread"
v-if=
"childItem.LogType==2"
@
click=
"expectInfo(logIndex)"
>
{{
childItem
.
expectName
}}
</span></div>
<div
v-if=
"childItem.isShow"
>
{{
childItem
.
LogRemark
}}
</div>
</div>
</div>
</div>
<span
slot=
"reference"
class=
"AuditLogSpan"
@
click=
"getAudiDanLog(item.ID)"
>
志
</span>
</el-popover>
</el-tooltip>
</span>
</div>
</div>
<span
slot=
"reference"
class=
"AuditLogSpan"
@
click=
"getAudiDanLog(item.ID)"
>
志
</span>
</el-popover>
</el-tooltip>
</span>
</div>
</div>
</li>
</ul>
<div
class=
"noData"
v-show=
"noData"
>
{{
$t
(
'system.content_noData'
)
}}
</ul>
<div
class=
"noData"
v-show=
"noData"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
</div>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"queryData.pageSize"
:total=
"total"
>
</el-pagination>
<el-dialog
custom-class=
'ComTeamPlan_info_box'
:title=
"tripTitle"
:visible
.
sync=
"outerVisible"
center
>
<commonTeamInfo
ref=
"comDialog"
></commonTeamInfo>
</el-dialog>
<div
class=
"shenheBtm"
v-if=
"isShowDan"
>
<el-form
label-width=
"100px"
:model=
"AuditInfo"
:rules=
"rules"
ref=
"AuditInfo"
>
<el-col
:span=
"3"
>
<div
style=
"margin:58px 0 0 50px;"
>
<el-radio
v-model=
"AuditInfo.TravelState"
label=
"3"
>
通过
</el-radio>
<el-radio
v-model=
"AuditInfo.TravelState"
label=
"4"
>
驳回
</el-radio>
</div>
</el-col>
<el-col
:span=
"10"
style=
"margin-top:30px;"
>
<el-form-item
label=
"审批说明"
prop=
"AuditContent"
>
<el-input
type=
"textarea"
class=
"w600"
v-model=
"AuditInfo.AuditContent"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"3"
style=
"margin-top:60px;"
>
<button
class=
"hollowFixedBtn"
@
click=
"isShowDan=false"
>
取消
</button>
<button
class=
"normalBtn"
@
click=
"submitForm('AuditInfo')"
>
保存
</button>
</el-col>
</el-form>
</div>
</div>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"queryData.pageSize"
:total=
"total"
>
</el-pagination>
<el-dialog
custom-class=
'ComTeamPlan_info_box'
:title=
"tripTitle"
:visible
.
sync=
"outerVisible"
center
>
<commonTeamInfo
ref=
"comDialog"
></commonTeamInfo>
</el-dialog>
<div
class=
"shenheBtm"
v-if=
"isShowDan"
>
<el-form
label-width=
"100px"
:model=
"AuditInfo"
:rules=
"rules"
ref=
"AuditInfo"
>
<el-col
:span=
"3"
>
<div
style=
"margin:58px 0 0 50px;"
>
<el-radio
v-model=
"AuditInfo.TravelState"
label=
"3"
>
通过
</el-radio>
<el-radio
v-model=
"AuditInfo.TravelState"
label=
"4"
>
驳回
</el-radio>
</div>
</el-col>
<el-col
:span=
"10"
style=
"margin-top:30px;"
>
<el-form-item
label=
"审批说明"
prop=
"AuditContent"
>
<el-input
type=
"textarea"
class=
"w600"
v-model=
"AuditInfo.AuditContent"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"3"
style=
"margin-top:60px;"
>
<button
class=
"hollowFixedBtn"
@
click=
"isShowDan=false"
>
取消
</button>
<button
class=
"normalBtn"
@
click=
"submitForm('AuditInfo')"
>
保存
</button>
</el-col>
</el-form>
</div>
</div>
</
template
>
<
script
>
import
commonTeamInfo
from
"../../commonPage/commonTeamInfo.vue"
;
export
default
{
data
()
{
return
{
queryData
:
{
LineId
:
0
,
LineteamId
:
0
,
CreateBy
:
0
,
PageIndex
:
"1"
,
PageSize
:
"5"
,
TravelState
:
2
},
AuditInfo
:
{
ID
:
""
,
TravelState
:
""
,
AuditContent
:
""
},
rules
:
{
AuditContent
:
[
{
required
:
true
,
message
:
"请填写审核说明"
,
trigger
:
"blur"
}
]
},
loading
:
true
,
//默认选中
activeName
:
"2"
,
//员工列表
EmployeeList
:
[],
//日志
AuditLogList
:
""
,
//显示隐藏审核
isShowDan
:
false
,
//线路列表
LineList
:
""
,
noLimit
:
0
,
//系列列表
//是否有数据
noData
:
false
,
LineTeamList
:
""
,
dataList
:
""
,
total
:
0
,
currentPage
:
1
,
SalesPriceList
:
[],
CostList
:
[],
outerVisible
:
false
,
tripTitle
:
""
};
},
components
:
{
commonTeamInfo
:
commonTeamInfo
},
methods
:
{
handleCurrentChange
(
val
)
{
this
.
queryData
.
pageIndex
=
val
;
this
.
getList
();
},
resetPageIndex
()
{
this
.
queryData
.
pageIndex
=
1
;
this
.
currentPage
=
1
;
},
//选项卡切换
handleClick
(
activeName
)
{
this
.
queryData
.
TravelState
=
activeName
;
this
.
getList
();
},
//获取操作日志
getAudiDanLog
(
ID
)
{
let
msg
=
{
configId
:
ID
import
commonTeamInfo
from
"../../commonPage/commonTeamInfo.vue"
;
export
default
{
data
()
{
return
{
queryData
:
{
LineId
:
0
,
LineteamId
:
0
,
CreateBy
:
0
,
PageIndex
:
"1"
,
PageSize
:
"5"
,
TravelState
:
2
},
AuditInfo
:
{
ID
:
""
,
TravelState
:
""
,
AuditContent
:
""
},
rules
:
{
AuditContent
:
[{
required
:
true
,
message
:
"请填写审核说明"
,
trigger
:
"blur"
}]
},
loading
:
true
,
//默认选中
activeName
:
"2"
,
//员工列表
EmployeeList
:
[],
//日志
AuditLogList
:
""
,
//显示隐藏审核
isShowDan
:
false
,
//线路列表
LineList
:
""
,
noLimit
:
0
,
//系列列表
//是否有数据
noData
:
false
,
LineTeamList
:
""
,
dataList
:
""
,
total
:
0
,
currentPage
:
1
,
SalesPriceList
:
[],
CostList
:
[],
outerVisible
:
false
,
tripTitle
:
""
};
this
.
apipost
(
"travel_get_GetTravelConfigLog"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
var
endDate
=
new
Date
();
endDate
.
setMonth
(
endDate
.
getMonth
()
+
1
);
var
tempData
=
res
.
data
.
data
;
tempData
.
forEach
(
x
=>
{
if
(
x
.
LogType
==
2
)
{
x
.
isShow
=
false
;
x
.
expectName
=
"展开"
;
}
x
.
hour
=
this
.
$commonUtils
.
formatMsgTime
(
x
.
LogTimeStr
);
});
this
.
AuditLogList
=
tempData
;
}
});
},
expectInfo
(
logIndex
)
{
var
flag
=
this
.
AuditLogList
[
logIndex
].
isShow
;
this
.
AuditLogList
[
logIndex
].
isShow
=
!
flag
;
if
(
this
.
AuditLogList
[
logIndex
].
isShow
)
{
this
.
AuditLogList
[
logIndex
].
expectName
=
"关闭"
;
}
else
{
this
.
AuditLogList
[
logIndex
].
expectName
=
"展开"
;
}
components
:
{
commonTeamInfo
:
commonTeamInfo
},
//获取线路列表
getLineList
()
{
this
.
apipost
(
"line_post_GetList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
LineList
=
res
.
data
.
data
;
}
});
},
//获取系列列表
getLineTeamList
(
lineId
)
{
this
.
queryData
.
LineteamId
=
0
;
let
msg
=
{
lineID
:
this
.
queryData
.
LineId
,
isTOOP
:
1
};
this
.
apipost
(
"team_post_GetList"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
LineTeamList
=
res
.
data
.
data
;
}
});
},
//初始化表格数据
getList
()
{
this
.
loading
=
true
;
this
.
apipost
(
"travel_get_GetTravelOfferAuditPageList"
,
this
.
queryData
,
res
=>
{
this
.
loading
=
false
;
methods
:
{
handleCurrentChange
(
val
)
{
this
.
queryData
.
pageIndex
=
val
;
this
.
getList
();
},
resetPageIndex
()
{
this
.
queryData
.
pageIndex
=
1
;
this
.
currentPage
=
1
;
},
//选项卡切换
handleClick
(
activeName
)
{
this
.
queryData
.
TravelState
=
activeName
;
this
.
getList
();
},
//获取操作日志
getAudiDanLog
(
ID
)
{
let
msg
=
{
configId
:
ID
};
this
.
apipost
(
"travel_get_GetTravelConfigLog"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
total
=
res
.
data
.
data
.
count
;
this
.
noData
=
!
this
.
total
>
0
;
var
tempData
=
res
.
data
.
data
.
pageData
;
var
endDate
=
new
Date
()
;
endDate
.
setMonth
(
endDate
.
getMonth
()
+
1
)
;
var
tempData
=
res
.
data
.
data
;
tempData
.
forEach
(
x
=>
{
x
.
hours
=
this
.
$commonUtils
.
formatMsgTime
(
x
.
AuditDate
);
if
(
x
.
LogType
==
2
)
{
x
.
isShow
=
false
;
x
.
expectName
=
"展开"
;
}
x
.
hour
=
this
.
$commonUtils
.
formatMsgTime
(
x
.
LogTimeStr
);
});
this
.
data
List
=
tempData
;
this
.
AuditLog
List
=
tempData
;
}
});
},
expectInfo
(
logIndex
)
{
var
flag
=
this
.
AuditLogList
[
logIndex
].
isShow
;
this
.
AuditLogList
[
logIndex
].
isShow
=
!
flag
;
if
(
this
.
AuditLogList
[
logIndex
].
isShow
)
{
this
.
AuditLogList
[
logIndex
].
expectName
=
"关闭"
;
}
else
{
this
.
AuditLogList
[
logIndex
].
expectName
=
"展开"
;
}
);
},
//点击销售定价获取数据
getSalsPrice
(
ID
)
{
let
msg
=
{
ID
:
ID
};
this
.
SalesPriceList
=
[];
this
.
apipost
(
"travel_get_GetTravelQuotationPrice"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
SalesPriceList
.
push
(
res
.
data
.
data
[
0
]);
}
});
},
//点击地接成本获取数据
getCostPrice
(
ID
)
{
let
msg
=
{
ID
:
ID
};
this
.
CostList
=
[];
this
.
apipost
(
"travel_get_GetTravelOfferPrice"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
data
[
0
]
!=
undefined
||
res
.
data
.
data
[
0
]
!=
null
)
{
let
cost
=
res
.
data
.
data
[
0
];
let
dayNum
=
0
;
cost
.
LocalOfferPriceList
.
forEach
(
x
=>
{
if
(
x
.
DayNum
>
dayNum
)
{
dayNum
=
x
.
DayNum
;
}
});
let
offerPriceList
=
[];
for
(
let
i
=
1
;
i
<=
dayNum
;
i
++
)
{
let
dayOfferPriceList
=
[];
let
totalPrice
=
0
;
},
//获取线路列表
getLineList
()
{
this
.
apipost
(
"line_post_GetList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
LineList
=
res
.
data
.
data
;
}
});
},
//获取系列列表
getLineTeamList
(
lineId
)
{
this
.
queryData
.
LineteamId
=
0
;
let
msg
=
{
lineID
:
this
.
queryData
.
LineId
,
isTOOP
:
1
};
this
.
apipost
(
"team_post_GetList"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
LineTeamList
=
res
.
data
.
data
;
}
});
},
//初始化表格数据
getList
()
{
this
.
loading
=
true
;
this
.
apipost
(
"travel_get_GetTravelOfferAuditPageList"
,
this
.
queryData
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
total
=
res
.
data
.
data
.
count
;
this
.
noData
=
!
this
.
total
>
0
;
var
tempData
=
res
.
data
.
data
.
pageData
;
tempData
.
forEach
(
x
=>
{
x
.
hours
=
this
.
$commonUtils
.
formatMsgTime
(
x
.
AuditDate
);
});
this
.
dataList
=
tempData
;
}
}
);
},
//点击销售定价获取数据
getSalsPrice
(
ID
)
{
let
msg
=
{
ID
:
ID
};
this
.
SalesPriceList
=
[];
this
.
apipost
(
"travel_get_GetTravelQuotationPrice"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
SalesPriceList
.
push
(
res
.
data
.
data
[
0
]);
}
});
},
//点击地接成本获取数据
getCostPrice
(
ID
)
{
let
msg
=
{
ID
:
ID
};
this
.
CostList
=
[];
this
.
apipost
(
"travel_get_GetTravelOfferPrice"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
data
[
0
]
!=
undefined
||
res
.
data
.
data
[
0
]
!=
null
)
{
let
cost
=
res
.
data
.
data
[
0
];
let
dayNum
=
0
;
cost
.
LocalOfferPriceList
.
forEach
(
x
=>
{
if
(
x
.
DayNum
==
i
)
{
dayOfferPriceList
.
push
(
x
);
totalPrice
+=
x
.
OfferPrice
;
if
(
x
.
DayNum
>
dayNum
)
{
dayNum
=
x
.
DayNum
;
}
});
let
offerPrice
=
{
day
:
i
,
dayOfferPriceList
,
totalPrice
};
offerPriceList
.
push
(
offerPrice
);
let
offerPriceList
=
[];
for
(
let
i
=
1
;
i
<=
dayNum
;
i
++
)
{
let
dayOfferPriceList
=
[];
let
totalPrice
=
0
;
cost
.
LocalOfferPriceList
.
forEach
(
x
=>
{
if
(
x
.
DayNum
==
i
)
{
dayOfferPriceList
.
push
(
x
);
totalPrice
+=
x
.
OfferPrice
;
}
});
let
offerPrice
=
{
day
:
i
,
dayOfferPriceList
,
totalPrice
};
offerPriceList
.
push
(
offerPrice
);
}
cost
[
"offerPriceList"
]
=
offerPriceList
;
this
.
CostList
.
push
(
cost
);
}
cost
[
"offerPriceList"
]
=
offerPriceList
;
this
.
CostList
.
push
(
cost
);
}
});
},
//根据当前员工所在部门获取该部门及子部门员工信息
getEmployeeList
()
{
this
.
apipost
(
"admin_get_GetEmployeeByUserDepartmentId"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
EmployeeList
=
res
.
data
.
data
;
}
},
err
=>
{}
);
},
getJourney
(
id
,
title
)
{
//根据ID 获取行程内容
var
that
=
this
;
this
.
tripTitle
=
title
;
this
.
$nextTick
(()
=>
{
that
.
$refs
.
comDialog
.
GetTrip
(
id
);
});
that
.
outerVisible
=
true
;
},
goUrl
(
path
,
configId
,
qType
)
{
if
(
configId
>
0
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
configId
:
configId
,
Qtype
:
qType
,
blank
:
'y'
,
tab
:
'报价单审核'
}
});
}
else
{
this
.
$router
.
push
({
name
:
path
});
}
});
},
//根据当前员工所在部门获取该部门及子部门员工信息
getEmployeeList
()
{
this
.
apipost
(
"admin_get_GetEmployeeByUserDepartmentId"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
EmployeeList
=
res
.
data
.
data
;
},
submitForm
()
{
//提交创建、修改表单
this
.
$refs
[
"AuditInfo"
].
validate
(
valid
=>
{
if
(
valid
)
{
this
.
saveAudit
();
}
else
{
return
false
;
}
},
err
=>
{}
);
},
getJourney
(
id
,
title
)
{
//根据ID 获取行程内容
var
that
=
this
;
this
.
tripTitle
=
title
;
this
.
$nextTick
(()
=>
{
that
.
$refs
.
comDialog
.
GetTrip
(
id
);
});
that
.
outerVisible
=
true
;
},
goUrl
(
path
,
configId
,
qType
)
{
if
(
configId
>
0
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
configId
:
configId
,
Qtype
:
qType
}
});
}
else
{
this
.
$router
.
push
({
name
:
path
});
}
},
submitForm
()
{
//提交创建、修改表单
this
.
$refs
[
"AuditInfo"
].
validate
(
valid
=>
{
if
(
valid
)
{
this
.
saveAudit
();
},
auditDanList
(
ID
)
{
this
.
isShowDan
=
true
;
this
.
AuditInfo
.
ID
=
ID
;
},
//提交审核
saveAudit
()
{
this
.
apipost
(
"travel_get_AuditTravelConfig"
,
this
.
AuditInfo
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
Success
(
"审核成功"
);
this
.
isShowDan
=
false
;
this
.
getList
();
}
},
err
=>
{}
);
},
//格式化日期去掉年
formatStartDate
(
value
)
{
if
(
value
==
null
||
value
==
undefined
)
{
return
""
;
}
else
{
return
false
;
let
dataArr
=
value
.
split
(
"-"
);
return
dataArr
[
1
]
+
"-"
+
dataArr
[
2
];
}
});
},
auditDanList
(
ID
)
{
this
.
isShowDan
=
true
;
this
.
AuditInfo
.
ID
=
ID
;
},
//提交审核
saveAudit
()
{
this
.
apipost
(
"travel_get_AuditTravelConfig"
,
this
.
AuditInfo
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
Success
(
"审核成功"
);
this
.
isShowDan
=
false
;
this
.
getList
();
}
},
err
=>
{}
);
},
//格式化日期去掉年
formatStartDate
(
value
)
{
if
(
value
==
null
||
value
==
undefined
)
{
return
""
;
}
else
{
let
dataArr
=
value
.
split
(
"-"
);
return
dataArr
[
1
]
+
"-"
+
dataArr
[
2
];
}
},
mounted
()
{
this
.
getLineList
();
this
.
getEmployeeList
();
this
.
getList
();
}
},
mounted
()
{
this
.
getLineList
();
this
.
getEmployeeList
();
this
.
getList
();
}
};
};
</
script
>
src/components/TravelManager/TravelNewQuotation/CostNewPrice.vue
View file @
764192dc
...
...
@@ -290,7 +290,7 @@
{{
childItem
.
PeopleNumber
}}
</td>
<td>
{{
(
Number
(
subItem
.
BusCostPrice
)
/
Number
(
childItem
.
PeopleNumber
)).
toFixed
(
0
)
}}
{{
(
(
Number
(
subItem
.
BusCostPrice
)
+
Number
(
subItem
.
PassFee
)
)
/
Number
(
childItem
.
PeopleNumber
)).
toFixed
(
0
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
<el-input
type=
'text'
v-model=
"subItem.ScenicCostPrice"
class=
"w70"
...
...
@@ -435,7 +435,7 @@
</td>
<td>
<
template
v-if=
"CostNumberList&&CostNumberList.length>0"
>
{{
(
Number
(
subItem
.
BusCostPrice
)
/
Number
(
CostNumberList
[
0
].
PeopleNumber
)).
toFixed
(
0
)
}}
{{
(
(
Number
(
subItem
.
BusCostPrice
)
+
Number
(
subItem
.
PassFee
)
)
/
Number
(
CostNumberList
[
0
].
PeopleNumber
)).
toFixed
(
0
)
}}
</
template
>
</td>
<td>
...
...
@@ -655,7 +655,7 @@
<tr>
<td
colspan=
"6"
></td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
4
</td>
<td
colspan=
"2"
class=
"CP_ComTitle2"
>
司机
、导游
小费
</td>
<td
colspan=
"2"
class=
"CP_ComTitle2"
>
司机小费
</td>
<td>
<el-form-item>
<el-select
v-model=
'OtherPrice.DriverGuideMoneyCurrencyId'
class=
"w70"
>
...
...
@@ -673,6 +673,27 @@
</el-form-item>
</td>
</tr>
<tr>
<td
colspan=
"6"
></td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
5
</td>
<td
colspan=
"2"
class=
"CP_ComTitle2"
>
导游小费
</td>
<td>
<el-form-item>
<el-select
v-model=
'OtherPrice.GuideMoneyCurrencyId'
class=
"w70"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'defaultSelect'
></el-option>
<el-option
v-for=
"items in CostCurrencyList"
:label=
'items.CurrencyName'
:value=
'items.CurrencyId'
:key=
'items.CurrencyId'
>
</el-option>
</el-select>
</el-form-item>
</td>
<td
colspan=
"2"
>
<el-form-item>
<el-input
type=
'text'
class=
"w100"
v-model=
"OtherPrice.GuideMoney"
@
keyup
.
native=
"checkPrice(OtherPrice,'GuideMoney'),getchange()"
></el-input>
</el-form-item>
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
>
外币小计
...
...
@@ -961,7 +982,6 @@
@
keyup
.
native=
"checkPrice(teamPrice,'SingleRoomPrice')"
class=
"w100"
>
</el-input>
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
>
备注
</td>
...
...
@@ -1082,6 +1102,12 @@
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
DriverGuideMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
DriverGuideMoneyCurrencyId
);
}
if
(
this
.
OtherPrice
.
GuideMoneyCurrencyId
==
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
GuideMoney
);
}
else
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
GuideMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
GuideMoneyCurrencyId
);
}
}
//外币
else
{
...
...
@@ -1097,10 +1123,12 @@
if
(
this
.
OtherPrice
.
DriverGuideMoneyCurrencyId
!=
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
DriverGuideMoney
);
}
if
(
this
.
OtherPrice
.
GuideMoneyCurrencyId
!=
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
GuideMoney
);
}
}
return
zazhiTotal
.
toFixed
(
0
);
},
//每天小计
getDayXiaoJi
(
type
,
currencyType
)
{
var
xiaoJi
=
0
;
...
...
@@ -1170,20 +1198,6 @@
});
return
flag
;
},
//获取不同人数组合价
getCurrencyNumberTotalMoney
(
peopleNumber
)
{
let
totalMoney
=
0.0
;
this
.
CurrencyNumberListExt
.
forEach
(
x
=>
{
x
.
currencyNumberList
.
forEach
(
y
=>
{
// if (peopleNumber === y.PeopleNumber) {
// totalMoney +=
// this.getConvertMoney(y.Money) *
// this.getCurrencyMoney(y.CurrencyId);
// }
});
});
return
totalMoney
;
},
//获取主成本价
getCostTotalMoney
()
{
let
totalMoney
=
...
...
@@ -1198,6 +1212,9 @@
this
.
getConvertMoney
(
this
.
OtherPrice
.
DriverGuideMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
DriverGuideMoneyCurrencyId
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
GuideMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
GuideMoneyCurrencyId
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
LeaderTripMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
LeaderTripMoneyCurrencyId
)
+
...
...
@@ -1429,12 +1446,10 @@
console
.
log
(
"trip"
,
trip
);
//其他价格
var
otherPrice
=
Number
(
that
.
getCostTotalMoney
())
console
.
log
(
"otherPrice"
,
otherPrice
)
var
otherPrice
=
Number
(
that
.
getCostTotalMoney
());
x
.
TotalMoney
=
(
trip
+
otherPrice
+
Number
(
that
.
getConvertMoney
(
x
.
SubtotalMoney
))
).
toFixed
(
0
);
// + that.getCurrencyNumberTotalMoney(x.PeopleNumber)
});
},
//价格转换器
...
...
src/components/TravelManager/TravelNewQuotation/CostNewPriceAudit.vue
0 → 100644
View file @
764192dc
<
style
>
@import
"../../../assets/css/newTravelManager.css"
;
.CostNewPrice
.el-form-item__content
,
.CostNewPrice
.el-form-item__label
{
line-height
:
30px
;
}
.CostNewPrice
.CP_halfWi
{
width
:
45%
;
}
.CostNewPrice
.QuotationFirstDiv1
{
padding-top
:
30px
;
}
.CostNewPrice
.QuotationFirstDiv1
.el-form-item__content
.el-select
{
width
:
calc
(
100%
-
100px
);
}
.CostNewPrice
.CP_ComTitle2
{
color
:
#106BAF
;
font-weight
:
bold
;
background-color
:
#D1EEEE
;
white-space
:
nowrap
;
}
.CostNewTable
td
{
padding
:
5px
;
height
:
40px
;
border
:
1px
solid
#106BAF
!important
;
}
.CostPriceDiv
{
float
:
left
;
width
:
19%
;
margin-right
:
23px
;
}
.CP_ComTitle
{
color
:
#106BAF
;
}
.w79
{
width
:
79px
!important
;
}
.w70
{
width
:
70px
!important
;
}
.CostcomCenter
{
text-align
:
center
;
}
.txtRightCost
{
text-align
:
right
;
padding-right
:
10px
;
}
.CostNewTable
.el-input__inner
{
padding
:
0
5px
;
}
</
style
>
<
template
>
<div>
<div
class=
"CostNewPrice clearfix CP_Div"
style=
"width:980px;"
>
<el-form>
<div
class=
"QuotationFirstDiv1"
>
<table
style=
"font-size:14px;"
>
<tr>
<td
width=
"80"
class=
"txtRightCost"
>
线路
</td>
<td
width=
"300"
>
{{
postConfig
.
LineName
}}
</td>
<td
width=
"60"
class=
"txtRightCost"
>
系列
</td>
<td
width=
"300"
>
{{
postConfig
.
LtName
}}
</td>
<td
width=
"80"
class=
"txtRightCost"
>
客户名称
</td>
<td>
{{
postConfig
.
CustomerName
}}
</td>
</tr>
<tr>
<td
colspan=
"6"
style=
"height:20px;"
>
</td>
</tr>
<tr>
<td
width=
"80"
class=
"txtRightCost"
>
团队标题
</td>
<td
colspan=
"3"
>
{{
postConfig
.
Title
}}
</td>
<td
width=
"80"
class=
"txtRightCost"
>
行程天数
</td>
<td>
{{
postConfig
.
DayNum
}}
</td>
</tr>
</table>
</div>
<br
/>
<table
class=
"CostPriceTable CostNewTable"
>
<thead>
<tr>
<td
colspan=
"12"
class=
"CP_ComTitle2 CostcomCenter"
>
报价信息
</td>
</tr>
<tr>
<td
width=
"170"
class=
"CP_ComTitle2 CostcomCenter"
>
币种
</td>
<td
v-for=
'(item,index) in CostCurrencyList'
>
{{
item
.
CurrencyName
}}
</td>
<td
:colspan=
"13-2-CostCurrencyList.length+1"
>
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
汇率
</td>
<td
v-for=
'item in CostCurrencyList'
>
{{
item
.
ExchangeRate
}}
</td>
<td
:colspan=
"13-2-CostCurrencyList.length+1"
>
</td>
</tr>
<tr>
<td
width=
"170"
class=
"CP_ComTitle2 CostcomCenter"
>
人数
</td>
<td
v-for=
"(item,index) in CostNumberList"
:key=
'item.subCode'
>
{{
item
.
PeopleNumber
}}
</td>
<td
width=
"150"
:colspan=
"13-2-CostNumberList.length+1"
>
</td>
</tr>
</thead>
<tr>
<td
colspan=
"13"
></td>
</tr>
<tr>
<td
rowspan=
"2"
width=
'180'
class=
"CP_ComTitle2 CostcomCenter"
>
Day
</td>
<td
rowspan=
"2"
width=
'200'
class=
"CP_ComTitle2 CostcomCenter"
>
行程大点
</td>
<td
rowspan=
"2"
width=
"100"
class=
"CP_ComTitle2 CostcomCenter"
>
币种
</td>
<td
rowspan=
"2"
width=
'60'
class=
"CP_ComTitle2 CostcomCenter"
>
酒店
</td>
<td
colspan=
"4"
width=
'100'
class=
"CP_ComTitle2 CostcomCenter"
>
车
</td>
<td
rowspan=
"2"
width=
'80'
class=
"CP_ComTitle2 CostcomCenter"
>
门票
</td>
<td
colspan=
"3"
width=
'100'
class=
"CP_ComTitle2 CostcomCenter"
>
餐
</td>
</tr>
<tr>
<td
width=
"120"
class=
"CP_ComTitle2 CostcomCenter"
>
总车资
</td>
<td
width=
"120"
class=
"CP_ComTitle2 CostcomCenter"
>
过路费
</td>
<td
width=
"100"
class=
"CP_ComTitle2 CostcomCenter"
>
人数
</td>
<td
width=
"100"
class=
"CP_ComTitle2 CostcomCenter"
style=
"white-space:nowrap; "
>
每人车资
</td>
<td
width=
"120"
class=
"CP_ComTitle2 CostcomCenter"
>
早
</td>
<td
width=
"100"
class=
"CP_ComTitle2 CostcomCenter"
>
中
</td>
<td
width=
"100"
class=
"CP_ComTitle2 CostcomCenter"
>
晚
</td>
</tr>
<template
v-if=
"CostNumberList&&CostNumberList.length>1"
>
<template
v-for=
"(subItem,subIndex) in dayCostPrice"
>
<template
v-for=
"(childItem,childIndex) in CostNumberList"
>
<tr>
<td
align=
"center"
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
<div
style=
"width:100px;"
>
{{
subItem
.
DayNum
}}
</div>
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
subItem
.
Title
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getCurrencyName
(
subItem
.
CurrencyId
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
<template
v-if=
"subItem.ContainDinnerType==0"
>
含餐类型
</
template
>
<
template
v-if=
"subItem.ContainDinnerType==1"
>
含早餐
</
template
>
<
template
v-if=
"subItem.ContainDinnerType==2"
>
含晚餐
</
template
>
<
template
v-if=
"subItem.ContainDinnerType==3"
>
含晚餐
</
template
>
<br
/>
{{subItem.HotelCostPrice}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{subItem.BusCostPrice}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{subItem.PassFee}}
</td>
<td>
{{childItem.PeopleNumber}}
</td>
<td>
{{((Number(subItem.BusCostPrice)+Number(subItem.PassFee))/Number(childItem.PeopleNumber)).toFixed(0)}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{subItem.ScenicCostPrice}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{subItem.BreakfastCostPrice}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{subItem.LunchCostPrice}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{subItem.DinnerCostPrice}}
</td>
</tr>
</template>
</template>
<
template
v-for=
"(childItem,childIndex) in CostNumberList"
>
<tr>
<td
colspan=
"3"
class=
"CP_ComTitle2 CostcomCenter"
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
外币小计
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
1
,
1
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
2
,
1
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
7
,
1
)
}}
</td>
<td>
{{
childItem
.
PeopleNumber
}}
</td>
<td>
{{
((
Number
(
getDayXiaoJi
(
2
,
1
))
+
Number
(
getDayXiaoJi
(
7
,
1
)))
/
Number
(
childItem
.
PeopleNumber
)).
toFixed
(
0
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
3
,
1
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
4
,
1
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
5
,
1
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
6
,
1
)
}}
</td>
</tr>
</
template
>
<
template
v-for=
"(childItem,childIndex) in CostNumberList"
>
<tr>
<td
colspan=
"3"
class=
"CP_ComTitle2 CostcomCenter"
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
人民币小计
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
1
,
2
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
2
,
2
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
7
,
2
)
}}
</td>
<td>
{{
childItem
.
PeopleNumber
}}
</td>
<td>
{{
((
Number
(
getDayXiaoJi
(
2
,
2
))
+
Number
(
getDayXiaoJi
(
7
,
2
)))
/
Number
(
childItem
.
PeopleNumber
)).
toFixed
(
0
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
3
,
2
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
4
,
2
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
5
,
2
)
}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"CostNumberList.length"
>
{{
getDayXiaoJi
(
6
,
2
)
}}
</td>
</tr>
</
template
>
</template>
<
template
v-else
>
<tr
v-for=
"subItem in dayCostPrice"
:key=
"subItem.subCode"
>
<td
align=
"center"
>
<div
style=
"width:100px;"
>
{{
subItem
.
DayNum
}}
</div>
</td>
<td>
{{
subItem
.
Title
}}
</td>
<td>
{{
getCurrencyName
(
subItem
.
CurrencyId
)
}}
</td>
<td>
<template
v-if=
"subItem.ContainDinnerType==0"
>
含餐类型
</
template
>
<
template
v-if=
"subItem.ContainDinnerType==1"
>
含早餐
</
template
>
<
template
v-if=
"subItem.ContainDinnerType==2"
>
含晚餐
</
template
>
<
template
v-if=
"subItem.ContainDinnerType==3"
>
含晚餐
</
template
>
<br
/>
{{subItem.HotelCostPrice}}
</td>
<td>
{{subItem.BusCostPrice}}
</td>
<td>
{{subItem.PassFee}}
</td>
<td>
<
template
v-if=
"CostNumberList&&CostNumberList.length>0"
>
{{
CostNumberList
[
0
].
PeopleNumber
}}
</
template
>
</td>
<td>
<
template
v-if=
"CostNumberList&&CostNumberList.length>0"
>
{{
((
Number
(
subItem
.
BusCostPrice
)
+
Number
(
subItem
.
PassFee
))
/
Number
(
CostNumberList
[
0
].
PeopleNumber
)).
toFixed
(
0
)
}}
</
template
>
</td>
<td>
{{subItem.ScenicCostPrice}}
</td>
<td>
{{subItem.BreakfastCostPrice}}
</td>
<td>
{{subItem.LunchCostPrice}}
</td>
<td>
{{subItem.DinnerCostPrice}}
</td>
</tr>
<tr>
<td
colspan=
"3"
class=
"CP_ComTitle2 CostcomCenter"
>
外币小计
</td>
<td>
{{getDayXiaoJi(1,1)}}
</td>
<td>
{{getDayXiaoJi(2,1)}}
</td>
<td>
{{getDayXiaoJi(7,1)}}
</td>
<td>
<
template
v-if=
"CostNumberList&&CostNumberList.length>0"
>
{{
CostNumberList
[
0
].
PeopleNumber
}}
</
template
>
</td>
<td>
<
template
v-if=
"CostNumberList&&CostNumberList.length>0"
>
{{
((
Number
(
getDayXiaoJi
(
2
,
1
))
+
Number
(
getDayXiaoJi
(
7
,
1
)))
/
Number
(
CostNumberList
[
0
].
PeopleNumber
)).
toFixed
(
0
)
}}
</
template
>
</td>
<td>
{{getDayXiaoJi(3,1)}}
</td>
<td>
{{getDayXiaoJi(4,1)}}
</td>
<td>
{{getDayXiaoJi(5,1)}}
</td>
<td>
{{getDayXiaoJi(6,1)}}
</td>
</tr>
<tr>
<td
colspan=
"3"
class=
"CP_ComTitle2 CostcomCenter"
>
人民币小计
</td>
<td>
{{getDayXiaoJi(1,2)}}
</td>
<td>
{{getDayXiaoJi(2,2)}}
</td>
<td>
{{getDayXiaoJi(7,2)}}
</td>
<td>
<
template
v-if=
"CostNumberList&&CostNumberList.length>0"
>
{{
CostNumberList
[
0
].
PeopleNumber
}}
</
template
>
</td>
<td>
<
template
v-if=
"CostNumberList&&CostNumberList.length>0"
>
{{
(
(
Number
(
getDayXiaoJi
(
2
,
2
))
+
Number
(
getDayXiaoJi
(
7
,
2
)))
/
Number
(
CostNumberList
[
0
].
PeopleNumber
)).
toFixed
(
0
)
}}
</
template
>
</td>
<td>
{{getDayXiaoJi(3,2)}}
</td>
<td>
{{getDayXiaoJi(4,2)}}
</td>
<td>
{{getDayXiaoJi(5,2)}}
</td>
<td>
{{getDayXiaoJi(6,2)}}
</td>
</tr>
</template>
<tr>
<td
colspan=
"13"
></td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
colspan=
"6"
>
内陆段交通部分
</td>
<td
class=
"CP_ComTitle2"
colspan=
"6"
>
杂支部分
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
1
</td>
<td
class=
"CP_ComTitle2"
>
内陆段机位(每人)
</td>
<td
colspan=
"2"
>
{{getCurrencyName(OtherPrice.InlandAirTicketCurrency)}}
</td>
<td
colspan=
"2"
>
{{OtherPrice.InlandAirTicketMoney}}
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
1
</td>
<td
colspan=
"2"
class=
"CP_ComTitle2"
>
签证费(每人)
</td>
<td>
{{getCurrencyName(OtherPrice.VisaMoneyCurrencyId)}}
</td>
<td
colspan=
"2"
>
{{OtherPrice.VisaMoney}}
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
2
</td>
<td
class=
"CP_ComTitle2"
>
内陆段船票(每人)
</td>
<td
colspan=
"2"
>
{{getCurrencyName(OtherPrice.InlandShipTicketCurrency)}}
</td>
<td
colspan=
"2"
>
{{OtherPrice.InlandShipTicketMoney}}
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
2
</td>
<td
colspan=
"2"
class=
"CP_ComTitle2"
>
保险费(每人)
</td>
<td>
{{getCurrencyName(OtherPrice.SafeMoneyCurrencyId)}}
</td>
<td
colspan=
"2"
>
{{OtherPrice.SafeMoney}}
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
3
</td>
<td
class=
"CP_ComTitle2"
>
内陆段火车票(每人)
</td>
<td
colspan=
"2"
>
{{getCurrencyName(OtherPrice.InlandTrainTicketCurrency)}}
</td>
<td
colspan=
"2"
>
{{OtherPrice.InlandTrainTicketMoney}}
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
3
</td>
<td
colspan=
"2"
class=
"CP_ComTitle2"
>
领队小费
</td>
<td>
{{getCurrencyName(OtherPrice.LeaderTripMoneyCurrencyId)}}
</td>
<td
colspan=
"2"
>
{{OtherPrice.LeaderTripMoney}}
</td>
</tr>
<tr>
<td
colspan=
"6"
></td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
4
</td>
<td
colspan=
"2"
class=
"CP_ComTitle2"
>
司机、导游小费
</td>
<td>
{{getCurrencyName(OtherPrice.DriverGuideMoneyCurrencyId)}}
</td>
<td
colspan=
"2"
>
{{OtherPrice.DriverGuideMoney}}
</td>
</tr>
<tr>
<td
colspan=
"6"
></td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
5
</td>
<td
colspan=
"2"
class=
"CP_ComTitle2"
>
导游小费
</td>
<td>
{{getCurrencyName(OtherPrice.GuideMoneyCurrencyId)}}
</td>
<td
colspan=
"2"
>
{{OtherPrice.GuideMoney}}
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
>
外币小计
</td>
<td
colspan=
"5"
>
{{trafficXiaoJi(2)}}
</td>
<td
class=
"CP_ComTitle2"
>
外币小计
</td>
<td
colspan=
"5"
>
{{zazhiXiaoJi(2)}}
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
>
人民币小计
</td>
<td
colspan=
"5"
>
{{ trafficXiaoJi(1) }}
</td>
<td
class=
"CP_ComTitle2"
>
人民币小计
</td>
<td
colspan=
"5"
>
{{zazhiXiaoJi(1)}}
</td>
</tr>
<tr>
<td
colspan=
"13"
></td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
colspan=
"4"
>
其他支出
</td>
<td
class=
"CP_ComTitle2"
colspan=
"3"
style=
"display:none;"
>
机票
</td>
<td
class=
"CP_ComTitle2"
colspan=
"4"
>
收入
</td>
<td
class=
"CP_ComTitle2"
colspan=
"5"
>
团负费
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2 CostcomCenter"
colspan=
"2"
>
摘要
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
colspan=
"2"
>
金额
<br
/>
(人民币)
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
colspan=
"2"
style=
"display:none;"
>
摘要
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
style=
"display:none;"
>
金额
<br
/>
(人民币)
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
colspan=
"2"
>
摘要
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
colspan=
"2"
>
金额
<br
/>
(人民币)
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
colspan=
"2"
>
摘要
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
colspan=
"3"
>
金额
<br
/>
(人民币)
</td>
</tr>
<tr>
<td
style=
"white-space:nowrap; "
class=
"CP_ComTitle2"
colspan=
"2"
>
销售提成1%
</td>
<td
colspan=
"2"
>
{{OtherPrice.SalesCommissionMoney}}
</td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
style=
"display:none;"
>
机票
</td>
<td
style=
"display:none;"
>
{{OtherPrice.AirTicketMoeny}}
</td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
客人小费收入
</td>
<td
colspan=
"2"
>
{{OtherPrice.TripMoney}}
</td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
KB
</td>
<td
colspan=
"3"
>
{{OtherPrice.KBMoney}}
</td>
</tr>
<tr>
<td
style=
"white-space:nowrap; "
class=
"CP_ComTitle2"
colspan=
"2"
>
作业处提成
</td>
<td
colspan=
"2"
>
{{OtherPrice.OfficeCommissionMoney}}
</td>
<td
colspan=
"3"
style=
"display:none;"
></td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
导游人头费
</td>
<td
colspan=
"2"
>
{{OtherPrice.GuidePeopleMoney}}
</td>
<td
colspan=
"5"
></td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
人民币小计
</td>
<td
colspan=
"2"
>
{{Number(OtherPrice.SalesCommissionMoney)+Number(OtherPrice.OfficeCommissionMoney)}}
</td>
<td
class=
"CP_ComTitle2"
style=
"display:none;"
>
人民币小计
</td>
<td
colspan=
"2"
style=
"display:none;"
>
{{Number(OtherPrice.AirTicketMoeny)}}
</td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
人民币小计
</td>
<td
colspan=
"2"
>
{{Number(OtherPrice.TripMoney)+Number(OtherPrice.GuidePeopleMoney)}}
</td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
人民币小计
</td>
<td
colspan=
"5"
>
{{Number(OtherPrice.KBMoney)}}
</td>
</tr>
<tr>
<td
colspan=
"12"
></td>
</tr>
<tr>
<td
colspan=
"12"
class=
"CP_ComTitle2"
>
领队分摊部分
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
人数
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
机票
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
门票
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
领队导游司机住宿
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
>
单房差
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
colspan=
"2"
>
内陆段交通
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
colspan=
"2"
>
杂费
</td>
<td
class=
"CP_ComTitle2 CostcomCenter"
colspan=
"3"
>
小计
</td>
</tr>
<tr>
<td></td>
<td>
{{OtherPrice.AirTicketShareMoney}}
</td>
<td>
{{OtherPrice.TicketShareMoney}}
</td>
<td>
{{OtherPrice.LeaderGuideDriveZhuSu}}
</td>
<td>
{{OtherPrice.SingleRoomShareMoney}}
</td>
<td
colspan=
"2"
>
{{OtherPrice.InlandTrafficShareMoney}}
</td>
<td
colspan=
"2"
>
{{OtherPrice.OtherShareMoney}}
</td>
<td
colspan=
"3"
></td>
</tr>
<tr
v-for=
"item in CostNumberList"
:key=
"item.subCode"
>
<td>
{{item.PeopleNumber}}+1
</td>
<td>
{{item.AirTicketMoney}}
</td>
<td>
{{item.TicketMoney}}
</td>
<td>
{{item.LeaderGuideDriveZhuSu}}
</td>
<td>
{{item.SingleRoomMoney}}
</td>
<td
colspan=
"2"
>
{{item.InlandTrafficMoney}}
</td>
<td
colspan=
"2"
>
{{item.OtherMoney}}
</td>
<td
colspan=
"3"
>
{{item.SubtotalMoney}}
</td>
</tr>
<tr>
<td
colspan=
"13"
></td>
</tr>
<tr>
<td
colspan=
"13"
class=
"CP_ComTitle2"
>
成本统计(以下报价为每人费用)
<br
/>
计算规则: (房+餐+车+景点)*汇率+内陆段交通*汇率+杂支部分*汇率+其他资产+机票票+收入-团负费+领队分摊+地接报价*汇率
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
>
人数统计
</td>
<td
class=
"CP_ComTitle2"
>
成本价
</td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
销售价格
</td>
<td
colspan=
"8"
class=
"CP_ComTitle2"
>
备注
</td>
</tr>
<tr
v-for=
"item in CostNumberList"
:key=
"item.subCode"
>
<td>
{{item.PeopleNumber}}+1
</td>
<td>
{{item.TotalMoney}}
</td>
<td
colspan=
"2"
>
{{item.SalePrice}}
</td>
<td
colspan=
"8"
>
{{item.CostRemark}}
</td>
</tr>
<tr>
<td
colspan=
"13"
></td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
>
婴儿
</td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
单地接
</td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
儿童占床
</td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
儿童不占床
</td>
<td
class=
"CP_ComTitle2"
>
儿童附加费
</td>
<td
class=
"CP_ComTitle2"
>
老人附加费
</td>
<td
class=
"CP_ComTitle2"
>
签证费
</td>
<td
class=
"CP_ComTitle2"
colspan=
"2"
>
单房差
</td>
</tr>
<tr>
<td>
{{teamPrice.BabyPrice}}
</td>
<td
colspan=
"2"
>
{{teamPrice.SingleDMCPrice}}
</td>
<td
colspan=
"2"
>
{{teamPrice.ChildNeedPrice}}
</td>
<td
colspan=
"2"
>
{{teamPrice.ChildNoNeedPrice}}
</td>
<td>
{{teamPrice.BabyChargePrice}}
</td>
<td>
{{teamPrice.OldManChargePrice}}
</td>
<td>
{{teamPrice.VisaPrice}}
</td>
<td
colspan=
"2"
>
{{teamPrice.SingleRoomPrice}}
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
>
备注
</td>
<td
colspan=
"12"
>
{{OtherPrice.OtherRemark}}
</td>
</tr>
<tr>
<td
class=
"CP_ComTitle2"
>
备注
</td>
<td
colspan=
"12"
>
<el-input
type=
"textarea"
v-model=
"postConfig.AuditContent"
></el-input>
</td>
</tr>
<tr>
<td
colspan=
"13"
style=
"text-align:center;"
>
<input
type=
"button"
class=
"normalBtn"
value=
"同意"
@
click=
"SubSaveType(3)"
/>
<input
type=
"button"
class=
"normalBtn"
value=
"拒绝"
@
click=
"SubSaveType(4)"
/>
</td>
</tr>
</table>
<div
class=
"Cost_Line"
></div>
</el-form>
</div>
</div>
</template>
<
script
>
export
default
{
props
:
[
"postConfig"
,
"OtherPrice"
,
"dayCostPrice"
,
"LineList"
,
"CostNumberList"
,
"CurrencyNumberListExt"
,
"CostCurrencyList"
,
"teamPrice"
],
data
()
{
return
{
//审核信息
AduitMsg
:
{
}
}
},
methods
:
{
//调用父组件方法
SubSaveType
(
type
)
{
this
.
$parent
.
SaveData
(
type
);
},
//交通部分小计
trafficXiaoJi
(
currencyType
)
{
var
trafficTotal
=
0
;
//人民币
if
(
currencyType
==
1
)
{
if
(
this
.
OtherPrice
.
InlandAirTicketCurrency
==
1
)
{
trafficTotal
+=
Number
(
this
.
OtherPrice
.
InlandAirTicketMoney
);
}
else
{
trafficTotal
+=
Number
(
this
.
OtherPrice
.
InlandAirTicketMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
InlandAirTicketCurrency
);
}
if
(
this
.
OtherPrice
.
InlandShipTicketCurrency
==
1
)
{
trafficTotal
+=
Number
(
this
.
OtherPrice
.
InlandShipTicketMoney
);
}
else
{
trafficTotal
+=
Number
(
this
.
OtherPrice
.
InlandShipTicketMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
InlandShipTicketCurrency
);
}
if
(
this
.
OtherPrice
.
InlandTrainTicketCurrency
==
1
)
{
trafficTotal
+=
Number
(
this
.
OtherPrice
.
InlandTrainTicketMoney
);
}
else
{
trafficTotal
+=
Number
(
this
.
OtherPrice
.
InlandTrainTicketMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
InlandTrainTicketCurrency
);
}
}
//外币
else
{
if
(
this
.
OtherPrice
.
InlandAirTicketCurrency
!=
1
)
{
trafficTotal
+=
Number
(
this
.
OtherPrice
.
InlandAirTicketMoney
);
}
if
(
this
.
OtherPrice
.
InlandShipTicketCurrency
!=
1
)
{
trafficTotal
+=
Number
(
this
.
OtherPrice
.
InlandShipTicketMoney
);
}
if
(
this
.
OtherPrice
.
InlandTrainTicketCurrency
!=
1
)
{
trafficTotal
+=
Number
(
this
.
OtherPrice
.
InlandTrainTicketMoney
);
}
}
return
trafficTotal
.
toFixed
(
0
);
},
//杂支小计
zazhiXiaoJi
(
currencyType
)
{
var
zazhiTotal
=
0
;
//人民币
if
(
currencyType
==
1
)
{
if
(
this
.
OtherPrice
.
VisaMoneyCurrencyId
==
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
VisaMoney
);
}
else
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
VisaMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
VisaMoneyCurrencyId
);
}
if
(
this
.
OtherPrice
.
SafeMoneyCurrencyId
==
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
SafeMoney
);
}
else
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
SafeMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
SafeMoneyCurrencyId
);
}
if
(
this
.
OtherPrice
.
LeaderTripMoneyCurrencyId
==
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
LeaderTripMoney
);
}
else
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
LeaderTripMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
LeaderTripMoneyCurrencyId
);
}
if
(
this
.
OtherPrice
.
DriverGuideMoneyCurrencyId
==
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
DriverGuideMoney
);
}
else
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
DriverGuideMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
DriverGuideMoneyCurrencyId
);
}
if
(
this
.
OtherPrice
.
GuideMoneyCurrencyId
==
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
GuideMoney
);
}
else
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
GuideMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
GuideMoneyCurrencyId
);
}
}
//外币
else
{
if
(
this
.
OtherPrice
.
VisaMoneyCurrencyId
!=
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
VisaMoney
);
}
if
(
this
.
OtherPrice
.
SafeMoneyCurrencyId
!=
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
SafeMoney
);
}
if
(
this
.
OtherPrice
.
LeaderTripMoneyCurrencyId
!=
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
LeaderTripMoney
);
}
if
(
this
.
OtherPrice
.
DriverGuideMoneyCurrencyId
!=
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
DriverGuideMoney
);
}
if
(
this
.
OtherPrice
.
GuideMoneyCurrencyId
!=
1
)
{
zazhiTotal
+=
Number
(
this
.
OtherPrice
.
GuideMoney
);
}
}
return
zazhiTotal
.
toFixed
(
0
);
},
//每天小计
getDayXiaoJi
(
type
,
currencyType
)
{
var
xiaoJi
=
0
;
this
.
dayCostPrice
.
forEach
(
item
=>
{
var
currencyRate
=
1
;
if
(
currencyType
==
2
)
{
currencyRate
=
this
.
getCurrencyMoney
(
item
.
CurrencyId
);
}
//酒店
if
(
type
==
1
)
{
xiaoJi
+=
Number
(
item
.
HotelCostPrice
)
*
Number
(
currencyRate
);
}
//车
if
(
type
==
2
)
{
xiaoJi
+=
Number
(
item
.
BusCostPrice
)
*
Number
(
currencyRate
);
}
//景点
if
(
type
==
3
)
{
xiaoJi
+=
Number
(
item
.
ScenicCostPrice
)
*
Number
(
currencyRate
);
}
//早餐
if
(
type
==
4
)
{
xiaoJi
+=
Number
(
item
.
BreakfastCostPrice
)
*
Number
(
currencyRate
);
}
//午餐
if
(
type
==
5
)
{
xiaoJi
+=
Number
(
item
.
LunchCostPrice
)
*
Number
(
currencyRate
);
}
//午餐
if
(
type
==
6
)
{
xiaoJi
+=
Number
(
item
.
DinnerCostPrice
)
*
Number
(
currencyRate
);
}
//过路费
if
(
type
==
7
)
{
xiaoJi
+=
Number
(
item
.
PassFee
)
*
Number
(
currencyRate
);
}
});
return
xiaoJi
.
toFixed
(
0
);
},
//获取汇率
getCurrencyMoney
(
currencyId
)
{
let
currency
=
1
;
this
.
CostCurrencyList
.
forEach
(
x
=>
{
if
(
x
.
CurrencyId
==
currencyId
)
{
currency
=
x
.
ExchangeRate
;
}
});
return
currency
;
},
//获取币种名称
getCurrencyName
(
currencyId
)
{
let
CurrencyName
=
""
;
this
.
CostCurrencyList
.
forEach
(
x
=>
{
if
(
x
.
CurrencyId
==
currencyId
)
{
CurrencyName
=
x
.
CurrencyName
;
}
});
return
CurrencyName
;
},
//获取主成本价
getCostTotalMoney
()
{
let
totalMoney
=
this
.
getConvertMoney
(
this
.
OtherPrice
.
InlandAirTicketMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
InlandAirTicketCurrency
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
InlandShipTicketMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
InlandShipTicketCurrency
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
InlandTrainTicketMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
InlandTrainTicketCurrency
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
DriverGuideMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
DriverGuideMoneyCurrencyId
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
GuideMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
GuideMoneyCurrencyId
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
LeaderTripMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
LeaderTripMoneyCurrencyId
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
OfficeCommissionMoney
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
SafeMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
SafeMoneyCurrencyId
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
SalesCommissionMoney
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
TripMoney
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
GuidePeopleMoney
)
-
this
.
getConvertMoney
(
this
.
OtherPrice
.
KBMoney
)
+
this
.
getConvertMoney
(
this
.
OtherPrice
.
VisaMoney
)
*
this
.
getCurrencyMoney
(
this
.
OtherPrice
.
VisaMoneyCurrencyId
);
//KBMoney[团负费用减法]
return
totalMoney
;
},
//计算总价
getSubtotalMoney
()
{
let
that
=
this
;
this
.
CostNumberList
.
forEach
(
x
=>
{
x
.
SubtotalMoney
=
(
that
.
getConvertMoney
(
x
.
AirTicketMoney
)
+
that
.
getConvertMoney
(
x
.
TicketMoney
)
+
that
.
getConvertMoney
(
x
.
SingleRoomMoney
)
+
that
.
getConvertMoney
(
x
.
InlandTrafficMoney
)
+
that
.
getConvertMoney
(
x
.
OtherMoney
)
+
that
.
getConvertMoney
(
x
.
LeaderGuideDriveZhuSu
)
).
toFixed
(
0
);
//房餐车景点价格
var
trip
=
Number
(
that
.
getLocalTotalMoney
(
x
.
PeopleNumber
));
//其他价格
var
otherPrice
=
Number
(
that
.
getCostTotalMoney
())
x
.
TotalMoney
=
(
trip
+
otherPrice
+
Number
(
that
.
getConvertMoney
(
x
.
SubtotalMoney
))
).
toFixed
(
0
);
});
},
//价格转换器
getConvertMoney
(
value
)
{
if
(
value
===
""
||
value
===
undefined
||
value
===
null
)
{
value
=
0.0
;
}
return
parseFloat
(
value
);
},
//获取地接项目报价
getLocalTotalMoney
(
PeopleNumber
)
{
let
totalMoney
=
0.0
;
totalMoney
=
Number
(
this
.
getDayXiaoJi
(
1
,
2
))
+
Number
(
this
.
getDayXiaoJi
(
3
,
2
))
+
Number
(
this
.
getDayXiaoJi
(
4
,
2
))
+
Number
(
this
.
getDayXiaoJi
(
5
,
2
))
+
Number
(
this
.
getDayXiaoJi
(
6
,
2
))
+
Number
(
this
.
getDayXiaoJi
(
2
,
2
))
/
Number
(
PeopleNumber
)
+
Number
(
this
.
getDayXiaoJi
(
7
,
2
))
/
Number
(
PeopleNumber
);
return
totalMoney
.
toFixed
(
0
);
},
//计算领队分摊
getLeaderShare
()
{
let
that
=
this
;
var
AirTicketShareMoney
=
this
.
OtherPrice
.
AirTicketShareMoney
;
var
TicketShareMoney
=
this
.
OtherPrice
.
TicketShareMoney
;
var
SingleRoomShareMoney
=
this
.
OtherPrice
.
SingleRoomShareMoney
;
var
InlandTrafficShareMoney
=
this
.
OtherPrice
.
InlandTrafficShareMoney
;
var
OtherShareMoney
=
this
.
OtherPrice
.
OtherShareMoney
;
//司机导游住宿
var
LeaderGuideDriveZhuSu
=
this
.
OtherPrice
.
LeaderGuideDriveZhuSu
;
this
.
CostNumberList
.
forEach
(
x
=>
{
x
.
AirTicketMoney
=
(
AirTicketShareMoney
/
x
.
PeopleNumber
).
toFixed
(
0
);
x
.
TicketMoney
=
(
TicketShareMoney
/
x
.
PeopleNumber
).
toFixed
(
0
);
x
.
SingleRoomMoney
=
(
SingleRoomShareMoney
/
x
.
PeopleNumber
).
toFixed
(
0
);
x
.
InlandTrafficMoney
=
(
InlandTrafficShareMoney
/
x
.
PeopleNumber
).
toFixed
(
0
);
x
.
OtherMoney
=
(
OtherShareMoney
/
x
.
PeopleNumber
).
toFixed
(
0
);
x
.
LeaderGuideDriveZhuSu
=
(
LeaderGuideDriveZhuSu
/
x
.
PeopleNumber
).
toFixed
(
0
);
});
},
getchange
()
{
this
.
getLeaderShare
();
this
.
getSubtotalMoney
();
}
},
mounted
()
{
this
.
getSubtotalMoney
();
},
created
()
{
console
.
log
(
"CostCurrencyList"
,
this
.
CostCurrencyList
);
console
.
log
(
"Post"
,
this
.
postConfig
)
},
watch
:
{
CostNumberList
:
{
handler
:
function
(
val
,
oldVal
)
{
this
.
getchange
()
},
deep
:
true
},
},
};
</
script
>
src/components/TravelManager/TravelNewQuotation/QuotationAduit.vue
0 → 100644
View file @
764192dc
<
style
>
.singlePrice
{
width
:
100%
;
position
:
relative
;
margin-bottom
:
15px
;
background-color
:
#fff
;
padding
:
0
20px
20px
20px
;
border-radius
:
4px
;
}
</
style
>
<
template
>
<div
class=
"DirectQuotation clearfix"
v-loading=
"loading"
>
<div
class=
"singlePrice clearfix"
>
<CostNewPriceAudit
ref=
"CostNewPrice"
:postConfig=
"postData"
:OtherPrice=
"otherPrice"
:dayCostPrice=
"dayCostPriceList"
:CostCurrencyList=
"CostCurrencyList"
:CostNumberList=
"CostNumberList"
:CurrencyNumberListExt=
"CurrencyNumberListExt"
:teamPrice=
"teamPrice"
></CostNewPriceAudit>
</div>
</div>
</
template
>
<
script
>
import
CostNewPriceAudit
from
"../TravelNewQuotation/CostNewPriceAudit"
;
export
default
{
data
()
{
return
{
ConfigID
:
0
,
IsShow
:
false
,
//基本配置
postData
:
{
ID
:
0
,
StartCityId
:
0
,
LineId
:
0
,
LineteamId
:
0
,
Title
:
""
,
IsOrder
:
1
,
IsSubstitution
:
1
,
IsB2B
:
1
,
IsB2C
:
1
,
FSeat
:
0
,
CSeat
:
0
,
YSeat
:
0
,
//最低成团人数
LowNum
:
0
,
//OP备注
OpRemark
:
""
,
//产品经理备注
ProductRecommend
:
""
,
IsDirect
:
0
,
//是否直采(0-否-1-是)【全部默认非直采】
PriceIsDirect
:
1
,
//是否直采报价(1-否-2-是)【全部默认非直采】
PDFAlias
:
""
,
//pdf别名
ImgCover
:
""
,
//封面图
DayNum
:
0
,
//天数
NightNum
:
0
,
//晚数
StartCityId
:
0
,
ReturnArriveCityId
:
0
,
//返回抵达城市
CustomerName
:
""
,
//客户名称
TeamType
:
0
,
//团队类型,
LineName
:
""
,
//线路名称
LtName
:
""
,
//系列名称
},
dayCostPriceList
:
[],
//报价列表
isSubmit
:
true
,
otherPrice
:
{
CostId
:
0
,
//主键编号
ConfigID
:
0
,
//配置编号
OfferId
:
0
,
//报价单编号
InlandAirTicketCurrency
:
0
,
//内陆段机位币种
InlandAirTicketMoney
:
0
,
//内陆段机位金额(每人)
InlandShipTicketCurrency
:
0
,
//内陆段船票币种
InlandShipTicketMoney
:
0
,
//内陆段船票金额(每人)
InlandTrainTicketCurrency
:
0
,
//内陆段火车币种
InlandTrainTicketMoney
:
0
,
//内陆段火车金额(每人)
VisaMoney
:
0
,
//签证费用(每人)
SafeMoney
:
0
,
//保险费用(每人)
LeaderTripMoney
:
0
,
//领队小费
DriverGuideMoney
:
0
,
//司机小费
SalesCommissionMoney
:
0
,
//销售提成
OfficeCommissionMoney
:
0
,
//作业处提成
TripMoney
:
0
,
//小费
GuidePeopleMoney
:
0
,
//导游人头费
AirTicketMoeny
:
0
,
//机票成本费用
KBMoney
:
0
,
//KB人头费
AirTicketShareMoney
:
0
,
//机票分摊费用
TicketShareMoney
:
0
,
//门票分摊费用,
SingleRoomShareMoney
:
0
,
//单房差分摊费用
InlandTrafficShareMoney
:
0
,
//内陆段交通分摊费用
OtherShareMoney
:
0
,
//杂费分摊费用
OtherRemark
:
""
,
//其他价格备注
VisaMoneyCurrencyId
:
0
,
//签证费币种
SafeMoneyCurrencyId
:
0
,
//保险费币种
LeaderTripMoneyCurrencyId
:
0
,
//领队小费币种
DriverGuideMoneyCurrencyId
:
0
,
//司机小费币种
GuideMoneyCurrencyId
:
0
,
//导游小费币种
GuideMoney
:
0
,
//导游小费
},
CostCurrencyList
:
[],
//选择的币种
CostNumberList
:
[],
//人数
CurrencyNumberListExt
:
[],
//币种和人数列表
//团报价信息
teamPrice
:
{
QuotationId
:
0
,
//主键编号
TeamId
:
0
,
//团期编号
ConfigID
:
0
,
//团队配置编号
OfferId
:
0
,
//报价编号
B2BMemberPrice
:
0
,
//同业会员价
B2BPrice
:
0
,
//同业价格
B2CMemberPrice
:
0
,
//直客会员价,
B2CPrice
:
0
,
//直客价格
ChildNeedPrice
:
0
,
//小孩占床价格,
ChildNoNeedPrice
:
0
,
//小孩不占床价格
BabyPrice
:
0
,
//婴儿价格
BabyChargePrice
:
0
,
//婴儿附加费
OldManChargePrice
:
0
,
//老人附加费
VisaPrice
:
0
,
//签证
OtherPrice
:
0
,
//杂费
SingleRoomPrice
:
0
,
//单房差
SingleDMCPrice
:
0
,
//单地接
RebatePrice
:
0
,
//同行返佣
DiscountPrice
:
0
,
//早鸟优惠
IsSupportChildren
:
1
,
//是否支持儿童出游(1-支持,2-不支持)
SafeMoney
:
0
,
//保险费
PeopleNumber
:
0
,
//人数
AirticketMoney
:
0
,
//机票费用
BackVisaPrice
:
0
,
//退签证费
BackSafeMoney
:
0
,
//退保险费
ContractUrl
:
""
,
//合同地址
PriceRemark
:
""
,
//定价备注
LeaderGuideDriveZhuSu
:
0
,
//领队导游住宿费
AuditContent
:
""
,
//审核备注
TravelState
:
0
,
//3审核通过,4拒绝
},
LineList
:
[],
//线路列表
loading
:
false
};
},
methods
:
{
//保存数据
SaveData
(
Type
)
{
var
nObj
=
{
ID
:
this
.
$route
.
query
.
configId
,
AuditContent
:
this
.
postData
.
AuditContent
,
TravelState
:
Type
};
this
.
loading
=
true
;
this
.
apipost
(
"travel_get_AuditTravelConfig"
,
nObj
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
Success
(
res
.
data
.
message
);
this
.
goUrl
(
'AuditDan'
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
goUrl
(
path
)
{
this
.
$router
.
push
({
path
:
path
,
query
:
{
cache
:
true
}
});
},
getPostData
()
{
let
configId
=
this
.
$route
.
query
.
configId
;
let
offerId
=
0
;
if
(
this
.
$route
.
query
.
offerid
)
{
offerId
=
this
.
$route
.
query
.
offerid
;
}
let
msg
=
{
ID
:
configId
,
offerId
:
offerId
};
this
.
apipost
(
"travel_get_GetMyTravelInfo_V2"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
var
tempData
=
res
.
data
.
data
;
console
.
log
(
"tempData1"
,
tempData
);
if
(
tempData
.
ID
&&
tempData
.
ID
>
0
)
{
this
.
postData
.
ID
=
tempData
.
ID
;
}
if
(
tempData
.
LineId
&&
tempData
.
LineId
>
0
)
{
this
.
postData
.
LineId
=
tempData
.
LineId
;
}
if
(
tempData
.
LineteamId
&&
tempData
.
LineteamId
>
0
)
{
this
.
postData
.
LineteamId
=
tempData
.
LineteamId
;
}
if
(
tempData
.
CSeat
&&
tempData
.
CSeat
>
0
)
{
this
.
postData
.
CSeat
=
tempData
.
CSeat
;
}
if
(
tempData
.
FSeat
&&
tempData
.
FSeat
>
0
)
{
this
.
postData
.
FSeat
=
tempData
.
FSeat
;
}
if
(
tempData
.
YSeat
&&
tempData
.
YSeat
>
0
)
{
this
.
postData
.
YSeat
=
tempData
.
YSeat
;
}
if
(
tempData
.
LowNum
&&
tempData
.
LowNum
>
0
)
{
this
.
postData
.
LowNum
=
tempData
.
LowNum
;
}
if
(
tempData
.
Title
&&
tempData
.
Title
!=
''
)
{
this
.
postData
.
Title
=
tempData
.
Title
;
}
if
(
tempData
.
DayNum
&&
tempData
.
DayNum
>
0
)
{
this
.
postData
.
DayNum
=
tempData
.
DayNum
;
}
if
(
tempData
.
NightNum
&&
tempData
.
NightNum
>
0
)
{
this
.
postData
.
NightNum
=
tempData
.
NightNum
;
}
this
.
postData
.
CustomerName
=
tempData
.
CustomerName
;
this
.
postData
.
LineName
=
tempData
.
LineName
;
this
.
postData
.
LtName
=
tempData
.
LtName
;
this
.
LineList
=
tempData
.
LineList
;
if
(
tempData
.
dayCostPriceList
&&
tempData
.
dayCostPriceList
!=
null
&&
tempData
.
dayCostPriceList
.
length
>
0
)
{
this
.
dayCostPriceList
=
tempData
.
dayCostPriceList
;
}
if
(
tempData
.
otherPrice
)
{
this
.
otherPrice
=
tempData
.
otherPrice
;
}
if
(
tempData
.
teamPrice
)
{
this
.
teamPrice
=
tempData
.
teamPrice
;
}
if
(
tempData
.
CostNumberList
&&
tempData
.
CostNumberList
!=
null
&&
tempData
.
CostNumberList
.
length
>
0
)
{
this
.
CostNumberList
=
tempData
.
CostNumberList
;
}
if
(
tempData
.
CostCurrencyList
&&
tempData
.
CostCurrencyList
!=
null
&&
tempData
.
CostCurrencyList
.
length
>
0
)
{
this
.
CostCurrencyList
=
tempData
.
CostCurrencyList
;
}
if
(
tempData
.
CurrencyNumberListExt
&&
tempData
.
CurrencyNumberListExt
!=
null
&&
tempData
.
CurrencyNumberListExt
.
length
>
0
)
{
this
.
CurrencyNumberListExt
=
tempData
.
CurrencyNumberListExt
;
}
this
.
IsShow
=
true
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
},
created
()
{
if
(
this
.
$route
.
query
.
TeamType
)
{
this
.
postData
.
TeamType
=
this
.
$route
.
query
.
TeamType
;
}
this
.
getPostData
();
},
components
:
{
CostNewPriceAudit
:
CostNewPriceAudit
}
};
</
script
>
src/components/TravelManager/TravelNewQuotation/QuotationNewPrice.vue
View file @
764192dc
...
...
@@ -53,6 +53,7 @@
ReturnArriveCityId
:
0
,
//返回抵达城市
CustomerName
:
""
,
//客户名称
TeamType
:
0
,
//团队类型
TravelState
:
1
,
//团控状态(1-草稿,2-待审核,3-审核通过,4-审核拒绝,5已撤销)
},
dayCostPriceList
:
[],
//报价列表
isSubmit
:
true
,
...
...
@@ -69,7 +70,7 @@
VisaMoney
:
0
,
//签证费用(每人)
SafeMoney
:
0
,
//保险费用(每人)
LeaderTripMoney
:
0
,
//领队小费
DriverGuideMoney
:
0
,
//司机
导游
小费
DriverGuideMoney
:
0
,
//司机小费
SalesCommissionMoney
:
0
,
//销售提成
OfficeCommissionMoney
:
0
,
//作业处提成
TripMoney
:
0
,
//小费
...
...
@@ -85,7 +86,9 @@
VisaMoneyCurrencyId
:
0
,
//签证费币种
SafeMoneyCurrencyId
:
0
,
//保险费币种
LeaderTripMoneyCurrencyId
:
0
,
//领队小费币种
DriverGuideMoneyCurrencyId
:
0
,
//司机导游小费币种
DriverGuideMoneyCurrencyId
:
0
,
//司机小费币种
GuideMoneyCurrencyId
:
0
,
//导游小费币种
GuideMoney
:
0
,
//导游小费
},
CostCurrencyList
:
[],
//选择的币种
CostNumberList
:
[],
//人数
...
...
@@ -131,7 +134,7 @@
this
.
$refs
[
"QuotationPrice"
].
submitForm
(
type
);
},
//保存数据
SaveData
()
{
SaveData
(
type
)
{
var
currencyNumList
=
[];
if
(
this
.
CurrencyNumberListExt
!=
null
&&
this
.
CurrencyNumberListExt
.
length
>
0
)
{
this
.
CurrencyNumberListExt
.
forEach
((
item
,
index
)
=>
{
...
...
@@ -140,6 +143,8 @@
});
});
}
this
.
postData
.
TravelState
=
type
;
console
.
log
(
"this.postData"
,
this
.
postData
);
var
nObj
=
{
config
:
this
.
postData
,
dayCostPriceList
:
this
.
dayCostPriceList
,
...
...
@@ -192,7 +197,6 @@
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
var
tempData
=
res
.
data
.
data
;
console
.
log
(
"tempData"
,
tempData
);
if
(
tempData
.
ID
&&
tempData
.
ID
>
0
)
{
this
.
postData
.
ID
=
tempData
.
ID
;
}
...
...
src/components/TravelManager/TravelNewQuotation/newQuotation.vue
View file @
764192dc
...
...
@@ -114,7 +114,7 @@
</div>
<div
class=
"_cent"
>
<div
style=
"margin: 0 13px 0 10px;"
class=
"stayDays"
>
{{
item
.
DayNum
}}{{
$t
(
'hotel.hotel_day'
)
}}
{{
item
.
NightNum
}}{{
$t
(
'Operation.Op_night'
)
}}
</div>
{{
item
.
DayNum
}}{{
$t
(
'hotel.hotel_day'
)
}}
</div>
<div
class=
""
>
{{
$t
(
'op.SalesPrice'
)
}}
<el-popover
popper-class=
"salsSetPrice"
trigger=
"click"
>
...
...
@@ -175,7 +175,7 @@
</div>
</div>
</div>
<span
slot=
"reference"
class=
"diPrice"
@
click=
"getSalsPrice(item.ID)"
>
{{
item
.
SalesPrice
}}
<span
<span
slot=
"reference"
class=
"diPrice"
>
{{
item
.
SalesPrice
}}
<span
class=
"qi"
>
{{
$t
(
'op.Qi'
)
}}
</span></span>
</el-popover>
</div>
...
...
src/router/config.js
View file @
764192dc
...
...
@@ -2916,6 +2916,15 @@ export default {
title
:
'制作报价单'
},
},
{
//新版报价单审核
path
:
'/QuotationAduit'
,
name
:
'QuotationAduit'
,
component
:
resolve
=>
require
([
'@/components/TravelManager/TravelNewQuotation/QuotationAduit'
],
resolve
),
meta
:
{
title
:
'报价单审核'
},
},
{
//团控-我的机票
path
:
'/TravelMyTicket'
,
name
:
'TravelMyTicket'
,
...
...
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