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
af3375d1
Commit
af3375d1
authored
Dec 12, 2023
by
吴春
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
6d9eb05c
767eeca0
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
481 additions
and
456 deletions
+481
-456
FinancialDocumentsDetail.vue
src/components/FinancialModule/FinancialDocumentsDetail.vue
+0
-2
addFinancialDocuments.vue
src/components/FinancialModule/addFinancialDocuments.vue
+0
-3
leaderReimbursement.vue
src/components/LeaderManagement/leaderReimbursement.vue
+0
-1
ShoppingReimbursement.vue
src/components/ShoppingStore/ShoppingReimbursement.vue
+377
-363
PassengerList.vue
src/components/Ticketing/PassengerList.vue
+0
-2
CouponDetail.vue
src/components/activity/CouponDetail.vue
+0
-1
CouponList.vue
src/components/activity/CouponList.vue
+31
-29
confirmationOrderDownLoadNew.vue
src/components/confirmationOrderDownLoadNew.vue
+0
-2
TravelFeature.vue
...nts/newTravelmanager/TravelGroupControl/TravelFeature.vue
+28
-11
index.vue
...ravelmanager/TravelGroupControl/UpgradedVersion/index.vue
+45
-40
index.js
src/plug/index.js
+0
-2
No files found.
src/components/FinancialModule/FinancialDocumentsDetail.vue
View file @
af3375d1
...
...
@@ -2168,8 +2168,6 @@
Id
:
this
.
ID
,
InvoiceVoucherList
:
this
.
InvoiceVoucherList
};
console
.
log
(
"this.InvoiceVoucherList"
,
this
.
InvoiceVoucherList
);
this
.
apipost
(
'Financial_post_UpdateInvoiceVoucher'
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
$message
.
success
(
'上传成功'
);
...
...
src/components/FinancialModule/addFinancialDocuments.vue
View file @
af3375d1
...
...
@@ -2290,7 +2290,6 @@
TempId
:
tempId
,
TCIDList
:
(
this
.
orderObj
&&
this
.
orderObj
.
TCIDList
)
?
this
.
orderObj
.
TCIDList
:
[]
},
res
=>
{
console
.
log
(
"Financial_post_Get"
,
res
.
data
.
data
);
if
(
res
.
data
.
resultCode
==
1
)
{
let
data
=
res
.
data
.
data
;
...
...
@@ -2463,8 +2462,6 @@
this
.
saveMsg
.
push
(
x
);
})
}
console
.
log
(
"InvoiceVoucherInfo"
,
data
.
InvoiceVoucherInfo
);
if
(
data
.
InvoiceVoucherInfo
)
{
data
.
InvoiceVoucherInfo
.
forEach
(
x
=>
{
x
.
Url
=
x
.
Content
;
...
...
src/components/LeaderManagement/leaderReimbursement.vue
View file @
af3375d1
...
...
@@ -1754,7 +1754,6 @@
};
this
.
TotalNav
.
planPriceList
.
forEach
(
item
=>
{
if
(
item
.
CurrencyId
==
id
)
{
console
.
log
(
"ceeeeee"
,
item
);
obj
.
money
+=
item
.
PlanTotalPrice
;
obj
.
CurrencyId
=
item
.
CurrencyId
;
}
...
...
src/components/ShoppingStore/ShoppingReimbursement.vue
View file @
af3375d1
...
...
@@ -43,10 +43,10 @@
</li>
<li>
<span>
<em>
只看已导入佣金数据的团
</em>
<el-switch
v-model=
"msg.IsQCommission"
active-value=
"true"
inactive-value=
"false"
>
</el-switch>
</span>
<em>
只看已导入佣金数据的团
</em>
<el-switch
v-model=
"msg.IsQCommission"
active-value=
"true"
inactive-value=
"false"
>
</el-switch>
</span>
</li>
<li>
<input
type=
"button"
class=
"normalBtn"
:value=
"$t('pub.searchBtn')"
@
click=
"getList();resetPageIndex()"
/>
...
...
@@ -79,7 +79,9 @@
<table
border=
"0"
cellspacing=
"1"
cellpadding=
"0"
class=
"ShoppingTable"
style=
"border: 1px solid rgb(230, 230, 230);min-width: 1600px"
v-loading=
"loading"
>
<tr>
<th
width=
"60"
>
<el-checkbox
v-model=
"checkAll"
@
change=
"getSelectAll()"
>
全选
</el-checkbox></th>
<th
width=
"60"
>
<el-checkbox
v-model=
"checkAll"
@
change=
"getSelectAll()"
>
全选
</el-checkbox>
</th>
<th
width=
"115"
>
{{
$t
(
'active.ad_xuhao'
)
}}
</th>
<th
width=
"100"
>
{{
$t
(
'sm.chufadi'
)
}}
</th>
<th
width=
"110"
>
{{
$t
(
'salesModule.CompanyNum'
)
}}
</th>
...
...
@@ -112,8 +114,9 @@
<template
v-for=
"(subItem,subIndex) in item.ShopDetailsList"
>
<tr>
<td
:rowspan=
"outItem.rowspanCount"
v-if=
"index==0&&subIndex==0"
>
<el-checkbox
@
change=
"changeCheck(outItem)"
v-model=
"outItem.IsCheck"
:disabled=
"outItem.IsCheckDisabled"
></el-checkbox>
</td>
<el-checkbox
@
change=
"changeCheck(outItem)"
v-model=
"outItem.IsCheck"
:disabled=
"outItem.IsCheckDisabled"
></el-checkbox>
</td>
<td
:rowspan=
"outItem.rowspanCount"
v-if=
"index==0&&subIndex==0"
>
{{
outItem
.
NewCombinationNum
}}
</td>
...
...
@@ -160,18 +163,18 @@
</td>
<td
width=
"80"
>
{{subItem.LeaderCommission}}
</br>
<!-- <span v-if="subItem.LeaderCommission>0&&subItem.LeaderCommissionFrId"
<!-- <span v-if="subItem.LeaderCommission>0&&subItem.LeaderCommissionFrId"
style="color:red;text-decoration: underline;cursor:pointer;"
@click="goUrlFinancial('财务单据','FinancialDocumentsDetail',subItem.LeaderCommissionFrId)">
{{subItem.LeaderCommissionFrId}}</span> -->
<span
class=
"cursor-p"
v-if=
"subItem.LeaderFinanceList"
v-for=
"(item2, index2) in subItem.LeaderFinanceList"
:key=
"index2"
@
click=
"goUrlFinancial('财务单据','FinancialDocumentsDetail',item2.FrID)"
>
<span
v-if=
"item2.Status === 0||item2.Status === 1"
class=
"groupTourOrder_tickets_blue"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 2"
class=
"groupTourOrder_tickets_green"
>
{{ item2.FrID }}
</span>
<span
class=
"cursor-p"
v-if=
"subItem.LeaderFinanceList"
v-for=
"(item2, index2) in subItem.LeaderFinanceList"
:key=
"index2"
@
click=
"goUrlFinancial('财务单据','FinancialDocumentsDetail',item2.FrID)"
>
<span
v-if=
"item2.Status === 0||item2.Status === 1"
class=
"groupTourOrder_tickets_blue"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 2"
class=
"groupTourOrder_tickets_green"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 3"
class=
"groupTourOrder_tickets_red"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 4"
class=
"groupTourOrder_tickets_black"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 4"
class=
"groupTourOrder_tickets_black"
>
{{ item2.FrID }}
</span>
</span>
</td>
<td
width=
"80"
>
...
...
@@ -180,15 +183,15 @@
style="color:red;text-decoration: underline;cursor:pointer;"
@click="goUrlFinancial('财务单据','FinancialDocumentsDetail',subItem.GuideCommissionFrId)">
{{subItem.GuideCommissionFrId}}</span> -->
<span
class=
"cursor-p"
v-if=
"subItem.GuideFinanceList"
v-for=
"(item2, index2) in subItem.GuideFinanceList"
:key=
"index2"
<span
class=
"cursor-p"
v-if=
"subItem.GuideFinanceList"
v-for=
"(item2, index2) in subItem.GuideFinanceList"
:key=
"index2"
@
click=
"goUrlFinancial('财务单据','FinancialDocumentsDetail',item2.FrID)"
>
<span
v-if=
"item2.Status === 0||item2.Status === 1"
class=
"groupTourOrder_tickets_blue"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 2"
class=
"groupTourOrder_tickets_green"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 3"
class=
"groupTourOrder_tickets_red"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 4"
class=
"groupTourOrder_tickets_black"
>
{{ item2.FrID }}
</span>
</span>
<span
v-if=
"item2.Status === 0||item2.Status === 1"
class=
"groupTourOrder_tickets_blue"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 2"
class=
"groupTourOrder_tickets_green"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 3"
class=
"groupTourOrder_tickets_red"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 4"
class=
"groupTourOrder_tickets_black"
>
{{ item2.FrID }}
</span>
</span>
</td>
<td
width=
"80"
>
{{subItem.PICCommission}}
</br>
...
...
@@ -196,15 +199,14 @@
style="color:red;text-decoration: underline;cursor:pointer;"
@click="goUrlFinancial('财务单据','FinancialDocumentsDetail',subItem.CompanyCommissionFrId)">
{{subItem.CompanyCommissionFrId}}</span> -->
<span
class=
"cursor-p"
v-if=
"subItem.PICFinanceList"
v-for=
"(item2, index2) in subItem.PICFinanceList"
:key=
"index2"
@
click=
"goUrlFinancial('财务单据','FinancialDocumentsDetail',item2.FrID)"
>
<span
v-if=
"item2.Status === 0||item2.Status === 1"
class=
"groupTourOrder_tickets_blue"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 2"
class=
"groupTourOrder_tickets_green"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 3"
class=
"groupTourOrder_tickets_red"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 4"
class=
"groupTourOrder_tickets_black"
>
{{ item2.FrID }}
</span>
</span>
<span
class=
"cursor-p"
v-if=
"subItem.PICFinanceList"
v-for=
"(item2, index2) in subItem.PICFinanceList"
:key=
"index2"
@
click=
"goUrlFinancial('财务单据','FinancialDocumentsDetail',item2.FrID)"
>
<span
v-if=
"item2.Status === 0||item2.Status === 1"
class=
"groupTourOrder_tickets_blue"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 2"
class=
"groupTourOrder_tickets_green"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 3"
class=
"groupTourOrder_tickets_red"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 4"
class=
"groupTourOrder_tickets_black"
>
{{ item2.FrID }}
</span>
</span>
</td>
<td
width=
"80"
>
{{subItem.CompanyCommission}}
</br>
...
...
@@ -212,15 +214,15 @@
style="color:red;text-decoration: underline;cursor:pointer;"
@click="goUrlFinancial('财务单据','FinancialDocumentsDetail',subItem.PICCommissionFrId)">
{{subItem.PICCommissionFrId}}</span> -->
<span
class=
"cursor-p"
v-if=
"subItem.CompanyFinanceList"
v-for=
"(item2, index2) in subItem.CompanyFinanceList"
:key=
"index2"
<span
class=
"cursor-p"
v-if=
"subItem.CompanyFinanceList"
v-for=
"(item2, index2) in subItem.CompanyFinanceList"
:key=
"index2"
@
click=
"goUrlFinancial('财务单据','FinancialDocumentsDetail',item2.FrID)"
>
<span
v-if=
"item2.Status === 0||item2.Status === 1"
class=
"groupTourOrder_tickets_blue"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 2"
class=
"groupTourOrder_tickets_green"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 3"
class=
"groupTourOrder_tickets_red"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 4"
class=
"groupTourOrder_tickets_black"
>
{{ item2.FrID }}
</span>
</span>
<span
v-if=
"item2.Status === 0||item2.Status === 1"
class=
"groupTourOrder_tickets_blue"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 2"
class=
"groupTourOrder_tickets_green"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 3"
class=
"groupTourOrder_tickets_red"
>
{{ item2.FrID }}
</span>
<span
v-else-if=
"item2.Status === 4"
class=
"groupTourOrder_tickets_black"
>
{{ item2.FrID }}
</span>
</span>
</td>
<td
width=
"80"
:rowspan=
"item.ShopDetailsList.length"
v-if=
'subIndex==0'
>
...
...
@@ -263,7 +265,8 @@
</div>
</td> -->
<td
:rowspan=
"outItem.rowspanCount"
v-if=
"index==0&&subIndex==0"
>
<p
style=
"cursor: pointer;color:blue;"
@
click=
"GenerateDocuments(outItem,subItem.LeaderId,subItem.GuideId)"
>
<p
style=
"cursor: pointer;color:blue;"
@
click=
"GenerateDocuments(outItem,subItem.LeaderId,subItem.GuideId)"
>
{{$t('ground.scdanju')}}
</p>
<p
style=
"cursor: pointer;color:blue;margin-top:5px;"
...
...
@@ -309,13 +312,9 @@
</tr>
</tbody>
</table>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"msg.currentPage"
layout=
"total, sizes, prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:page-sizes=
"[10, 20, 30, 40,50]"
@
size-change=
"handleSizeChange"
:total=
"msg.total"
>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"msg.currentPage"
layout=
"total, sizes, prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:page-sizes=
"[10, 20, 30, 40,50]"
@
size-change=
"handleSizeChange"
:total=
"msg.total"
>
</el-pagination>
</div>
<a
id=
'blankLink1'
target=
"_blank"
style=
"display:none"
>
1
</a>
...
...
@@ -345,27 +344,20 @@
</el-form-item>
<el-form-item
label=
"佣金类型"
>
<el-select
multiple
v-model=
"FinanceTypes"
>
<el-option
v-for=
"(item,index) in FinanceTypeList"
:label=
"item.Name"
:value=
"item.Id"
:key=
"item.Id"
:disabled=
"getFinanceType(item)"
></el-option>
<el-option
v-for=
"(item,index) in FinanceTypeList"
:label=
"item.Name"
:value=
"item.Id"
:key=
"item.Id"
:disabled=
"getFinanceType(item)"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"领队账户"
v-if=
"LeaderAccountList && LeaderAccountList.length>0"
>
<el-select
v-model=
"LeaderAccountId"
>
<el-option
v-for=
"(item,index) in LeaderAccountList"
:label=
"item.Name"
:value=
"item.ID"
:key=
"item.ID"
></el-option>
<el-option
v-for=
"(item,index) in LeaderAccountList"
:label=
"item.Name"
:value=
"item.ID"
:key=
"item.ID"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"导游账户"
v-if=
"GuideAccountList && GuideAccountList.length>0"
>
<el-select
v-model=
"GuideAccountId"
>
<el-option
v-for=
"(item,index) in GuideAccountList"
:label=
"item.Name"
:value=
"item.ID"
:key=
"item.ID"
></el-option>
<el-option
v-for=
"(item,index) in GuideAccountList"
:label=
"item.Name"
:value=
"item.ID"
:key=
"item.ID"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"生成550手续费"
>
...
...
@@ -378,65 +370,67 @@
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"hollowFixedBtn"
@
click=
"isShowFinaceDailog=false,CurrentOutItem=
{}">
{{
$t
(
'pub.cancelBtn'
)
}}
</button>
<el-button
class=
"normalBtn"
type=
"primary"
@
click=
"CreateBill()"
:disabled=
"FinanceTypes.length==0"
>
{{
$t
(
'pub.sureBtn'
)
}}
</el-button>
<el-button
class=
"normalBtn"
type=
"primary"
@
click=
"CreateBill()"
:disabled=
"FinanceTypes.length==0"
>
{{
$t
(
'pub.sureBtn'
)
}}
</el-button>
</div>
</
template
>
</el-dialog>
<el-dialog
title=
"生成财务单据"
:visible
.
sync=
"BOSSDialogText"
class=
"Shopping_bossdialog"
>
<
template
v-if=
"!BOSSDialog"
>
<el-dialog
title=
"生成财务单据"
:visible
.
sync=
"BOSSDialogText"
class=
"Shopping_bossdialog"
>
<
template
v-if=
"!BOSSDialog"
>
<el-form
label-width=
"110px"
>
<el-row>
<el-col
:span=
"12"
:gutter=
"35"
>
<el-form-item
label=
"上传凭证"
>
<div
class=
"_addUpload_box clearfix"
>
<template
v-for=
"(file,fIndex) in saveMsg"
>
<div
v-if=
"file.Type==3"
>
<div
style=
"width:100%;height:100%;overflow: hidden;"
>
<img
style=
"width:100%;height:100%;"
:src=
"file.Url?file.Url:file.Content"
@
click=
"showUpLoadFile(file)"
>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
<div
v-if=
"file.Type==1"
>
<div
class=
"iconfont "
:class=
"file.Content.substring(file.Content.lastIndexOf('.')+1,file.Content.length).toUpperCase()=='PDF'? 'icon-pdf' : 'icon-excel'"
@
click=
"showUpLoadFile(file)"
>
<el-form
label-width=
"110px"
>
<el-row>
<el-col
:span=
"12"
:gutter=
"35"
>
<el-form-item
label=
"上传凭证"
>
<div
class=
"_addUpload_box clearfix"
>
<template
v-for=
"(file,fIndex) in saveMsg"
>
<div
v-if=
"file.Type==3"
>
<div
style=
"width:100%;height:100%;overflow: hidden;"
>
<img
style=
"width:100%;height:100%;"
:src=
"file.Url?file.Url:file.Content"
@
click=
"showUpLoadFile(file)"
>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
<div
v-if=
"file.Type==1"
>
<div
class=
"iconfont "
:class=
"file.Content.substring(file.Content.lastIndexOf('.')+1,file.Content.length).toUpperCase()=='PDF'? 'icon-pdf' : 'icon-excel'"
@
click=
"showUpLoadFile(file)"
>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
<div
v-if=
"file.Type==2"
>
<div
class=
"iconfont icon-excel"
@
click=
"showUpLoadFile(file)"
>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
<div
v-if=
"file.Type==2"
>
<div
class=
"iconfont icon-excel"
@
click=
"showUpLoadFile(file)"
>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
</
template
>
<div
class=
"_pic_upload"
>
<el-upload
drag
:http-request=
"uploadFileBtn"
:multiple=
"true"
:show-file-list=
"false"
action=
""
>
<i
class=
"el-icon-plus avatar-uploader-icon"
></i>
<div
class=
"el-upload__text"
>
{{$t('active.ld_djscwj')}}
</div>
</el-upload>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
</
template
>
<div
class=
"_pic_upload"
>
<el-upload
drag
:http-request=
"uploadFileBtn"
:multiple=
"true"
:show-file-list=
"false"
action=
""
>
<i
class=
"el-icon-plus avatar-uploader-icon"
></i>
<div
class=
"el-upload__text"
>
{{$t('active.ld_djscwj')}}
</div>
</el-upload>
</div>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"bossLen = 1, MoreSureCreateBill()"
>
{{$t('pub.saveBtn')}}
</button>
</div>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"bossLen = 1, MoreSureCreateBill()"
>
{{$t('pub.saveBtn')}}
</button>
<button
class=
"hollowFixedBtn"
@
click=
"BOSSDialogText=false"
>
{{$t('pub.cancelBtn')}}
</button>
</div>
</template>
<
template
v-else
>
<p
class=
"boss_btn"
>
{{
$t
(
'ios.gongji'
)
}}
{{
selectedRowKeys
.
length
}}
{{
$t
(
'ios.tdqdi'
)
}}
<span>
{{
(
bossLen
>
selectedRowKeys
.
length
)?
selectedRowKeys
.
length
:
bossLen
}}
</span>
</template>
<
template
v-else
>
<p
class=
"boss_btn"
>
{{
$t
(
'ios.gongji'
)
}}
{{
selectedRowKeys
.
length
}}
{{
$t
(
'ios.tdqdi'
)
}}
<span>
{{
(
bossLen
>
selectedRowKeys
.
length
)?
selectedRowKeys
.
length
:
bossLen
}}
</span>
{{
$t
(
'ios.tiao'
)
}}
</p>
<p
class=
"boss_btn_tips"
>
批量制单中请不要进行其他操作。
</p>
</
template
>
</el-dialog>
</div>
</template>
...
...
@@ -444,24 +438,38 @@
export
default
{
data
()
{
return
{
FinanceTypeList
:[
{
Name
:
'全部'
,
Id
:
0
},
{
Name
:
'领队佣金'
,
Id
:
1
},
{
Name
:
'导游佣金'
,
Id
:
2
},
{
Name
:
'公司佣金'
,
Id
:
3
},
{
Name
:
'PIC部分'
,
Id
:
4
},
FinanceTypeList
:
[{
Name
:
'全部'
,
Id
:
0
},
{
Name
:
'领队佣金'
,
Id
:
1
},
{
Name
:
'导游佣金'
,
Id
:
2
},
{
Name
:
'公司佣金'
,
Id
:
3
},
{
Name
:
'PIC部分'
,
Id
:
4
},
],
checkAll
:
false
,
//全选状态
checkAll
:
false
,
//全选状态
selectedRowKeys
:
[],
//选中的key
FinanceTypes
:
[
0
],
//佣金类型
FinanceTypes
:
[
0
],
//佣金类型
loading
:
false
,
PayType
:
1
,
//付款方式
LeaderAccountId
:
0
,
GuideAccountId
:
0
,
LeaderAccountList
:
[],
GuideAccountList
:
[],
IsFee
:
1
,
LeaderAccountId
:
0
,
GuideAccountId
:
0
,
LeaderAccountList
:
[],
GuideAccountList
:
[],
IsFee
:
1
,
msg
:
{
pageIndex
:
1
,
pageSize
:
8
,
...
...
@@ -475,7 +483,7 @@
total
:
0
,
CombinationNum
:
""
,
//合团号
TCNUM
:
""
,
//团号
IsQCommission
:
false
IsQCommission
:
false
},
LineList
:
[],
LineTeamList
:
[],
...
...
@@ -489,37 +497,37 @@
bossLen
:
null
,
BOSSDialog
:
false
,
BOSSDialogText
:
false
,
//上传数组
saveMsg
:
[],
//上传数组
saveMsg
:
[],
userMenuCode
:
false
,
HandShow
:
false
,
nMsg
:
{
TCIDs
:
""
,
PayType
:
1
,
uid
:
0
,
FinanceType
:
"3,4"
,
LeaderAccountId
:
0
,
GuideAccountId
:
0
,
IsFee
:
1
,
VoucherList
:
[],
IsBatch
:
1
},
nMsg
:
{
TCIDs
:
""
,
PayType
:
1
,
uid
:
0
,
FinanceType
:
"3,4"
,
LeaderAccountId
:
0
,
GuideAccountId
:
0
,
IsFee
:
1
,
VoucherList
:
[],
IsBatch
:
1
},
}
},
methods
:
{
GenerateDocuments
(
outItem
,
LeaderId
,
GuideId
)
{
GenerateDocuments
(
outItem
,
LeaderId
,
GuideId
)
{
this
.
isShowFinaceDailog
=
true
this
.
CurrentOutItem
=
outItem
// 处理账户
this
.
LeaderAccountList
=
[];
this
.
LeaderAccountId
=
0
;
this
.
LeaderAccountId
=
0
;
this
.
GuideAccountList
=
[];
this
.
GuideAccountId
=
0
;
if
(
LeaderId
&&
LeaderId
>
0
)
{
this
.
financeinfo_post_GetClientAccountList
(
LeaderId
,
1
);
this
.
GuideAccountId
=
0
;
if
(
LeaderId
&&
LeaderId
>
0
)
{
this
.
financeinfo_post_GetClientAccountList
(
LeaderId
,
1
);
}
if
(
GuideId
&&
GuideId
>
0
)
{
this
.
financeinfo_post_GetClientAccountList
(
GuideId
,
2
);
if
(
GuideId
&&
GuideId
>
0
)
{
this
.
financeinfo_post_GetClientAccountList
(
GuideId
,
2
);
}
},
goCreateHandBill
:
function
()
{
...
...
@@ -628,8 +636,15 @@
});
},
goUrlFinancial
:
function
(
name
,
path
,
id
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
id
:
id
,
blank
:
'y'
,
tab
:
name
}
});
goUrlFinancial
:
function
(
name
,
path
,
id
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
id
:
id
,
blank
:
'y'
,
tab
:
name
}
});
},
goUrl
(
path
,
obj
,
title
)
{
this
.
$router
.
push
({
...
...
@@ -652,7 +667,7 @@
handleSizeChange
(
val
)
{
this
.
msg
.
pageIndex
=
1
;
this
.
msg
.
pageSize
=
val
;
this
.
msg
.
pageSize
=
val
;
this
.
getList
();
},
resetPageIndex
()
{
...
...
@@ -671,34 +686,34 @@
}
},
err
=>
{})
},
getFinanceType
(
item
){
if
(
this
.
FinanceTypes
&&
this
.
FinanceTypes
.
length
==
0
)
return
false
else
if
(
this
.
FinanceTypes
.
length
>
0
&&
this
.
FinanceTypes
.
indexOf
(
0
)
!=-
1
)
{
if
(
item
.
Id
!=
0
)
{
getFinanceType
(
item
)
{
if
(
this
.
FinanceTypes
&&
this
.
FinanceTypes
.
length
==
0
)
return
false
else
if
(
this
.
FinanceTypes
.
length
>
0
&&
this
.
FinanceTypes
.
indexOf
(
0
)
!=
-
1
)
{
if
(
item
.
Id
!=
0
)
{
return
true
}
else
return
false
}
else
if
(
this
.
FinanceTypes
.
length
>
0
&&
this
.
FinanceTypes
.
indexOf
(
0
)
==-
1
)
{
if
(
item
.
Id
==
0
)
{
}
else
return
false
}
else
if
(
this
.
FinanceTypes
.
length
>
0
&&
this
.
FinanceTypes
.
indexOf
(
0
)
==
-
1
)
{
if
(
item
.
Id
==
0
)
{
return
true
}
else
{
}
else
{
return
false
}
}
},
//全选
getSelectAll
(){
//全选
getSelectAll
()
{
if
(
this
.
checkAll
)
{
this
.
selectedRowKeys
=
[]
// 判断是否已全部选中,是则清空已选列表
this
.
checkAll
=
false
;
this
.
shopDataList
.
forEach
((
item
)
=>
{
if
(
item
.
IsCheck
)
item
.
IsCheck
=
false
;
if
(
item
.
IsCheck
)
item
.
IsCheck
=
false
;
})
this
.
$forceUpdate
();
}
else
{
this
.
shopDataList
.
forEach
((
item
)
=>
{
if
(
!
this
.
selectedRowKeys
.
includes
(
item
.
TCIDs
)
&&
item
.
IsCheckDisabled
==
false
)
{
item
.
IsCheck
=
true
;
if
(
!
this
.
selectedRowKeys
.
includes
(
item
.
TCIDs
)
&&
item
.
IsCheckDisabled
==
false
)
{
item
.
IsCheck
=
true
;
this
.
selectedRowKeys
.
push
(
item
.
TCIDs
)
// 否则将未选中的全部加入已选列表中
}
})
...
...
@@ -706,45 +721,45 @@
this
.
$forceUpdate
();
}
},
changeCheck
(
row
){
if
(
!
this
.
selectedRowKeys
.
includes
(
row
.
TCIDs
))
{
row
.
IsCheck
=
true
;
this
.
selectedRowKeys
.
push
(
row
.
TCIDs
);
}
else
{
row
.
IsCheck
=
false
;
let
index
=
this
.
selectedRowKeys
.
indexOf
(
row
.
TCIDs
);
this
.
selectedRowKeys
.
splice
(
index
,
1
);
}
if
(
this
.
selectedRowKeys
.
length
==
this
.
shopDataList
.
length
)
{
this
.
checkAll
=
true
;
}
else
{
this
.
checkAll
=
false
;
}
this
.
$forceUpdate
();
},
changeCheck
(
row
)
{
if
(
!
this
.
selectedRowKeys
.
includes
(
row
.
TCIDs
))
{
row
.
IsCheck
=
true
;
this
.
selectedRowKeys
.
push
(
row
.
TCIDs
);
}
else
{
row
.
IsCheck
=
false
;
let
index
=
this
.
selectedRowKeys
.
indexOf
(
row
.
TCIDs
);
this
.
selectedRowKeys
.
splice
(
index
,
1
);
}
if
(
this
.
selectedRowKeys
.
length
==
this
.
shopDataList
.
length
)
{
this
.
checkAll
=
true
;
}
else
{
this
.
checkAll
=
false
;
}
this
.
$forceUpdate
();
},
//生成单据
CreateBill
()
{
var
that
=
this
;
if
(
this
.
FinanceTypes
&&
this
.
FinanceTypes
.
length
==
0
)
{
if
(
this
.
FinanceTypes
&&
this
.
FinanceTypes
.
length
==
0
)
{
that
.
Error
(
"请选择至少一个佣金类型!"
);
return
}
this
.
$confirm
(
'是否生成财务单据?'
,
this
.
$t
(
'tips.tips'
),
{
confirmButtonText
:
`确定`
,
cancelButtonText
:
`取消`
,
type
:
'warning'
}).
then
(()
=>
{
var
nMsg
=
{
TCIDs
:
that
.
CurrentOutItem
.
TCIDs
,
PayType
:
that
.
PayType
,
uid
:
that
.
getLocalStorage
().
EmployeeId
,
FinanceType
:
this
.
FinanceTypes
.
join
(
','
),
LeaderAccountId
:
that
.
LeaderAccountId
,
GuideAccountId
:
that
.
GuideAccountId
,
IsFee
:
that
.
IsFee
};
that
.
loading
=
true
;
that
.
apipost
(
"dmcstatistics_post_CheckShopDetailsDMCRate"
,
nMsg
,
res
=>
{
confirmButtonText
:
`确定`
,
cancelButtonText
:
`取消`
,
type
:
'warning'
}).
then
(()
=>
{
var
nMsg
=
{
TCIDs
:
that
.
CurrentOutItem
.
TCIDs
,
PayType
:
that
.
PayType
,
uid
:
that
.
getLocalStorage
().
EmployeeId
,
FinanceType
:
this
.
FinanceTypes
.
join
(
','
),
LeaderAccountId
:
that
.
LeaderAccountId
,
GuideAccountId
:
that
.
GuideAccountId
,
IsFee
:
that
.
IsFee
};
that
.
loading
=
true
;
that
.
apipost
(
"dmcstatistics_post_CheckShopDetailsDMCRate"
,
nMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
data
.
result
==
0
)
{
// that.Error("请检查汇率有为0的数据,请先在【操作】里面修改汇率再生成财务单据!");
...
...
@@ -763,17 +778,12 @@
}
}
});
}).
catch
(()
=>
{})
// this.Confirm('是否生成财务单据?', function () {
// });
}).
catch
(()
=>
{})
},
//生成单据
//生成单据
increment
()
{
console
.
log
(
"bossLen"
,
this
.
bossLen
);
if
(
this
.
bossLen
&&
this
.
bossLen
<=
this
.
selectedRowKeys
.
length
)
{
this
.
nMsg
.
uid
=
this
.
getLocalStorage
().
EmployeeId
;
this
.
nMsg
.
uid
=
this
.
getLocalStorage
().
EmployeeId
;
this
.
nMsg
.
TCIDs
=
this
.
selectedRowKeys
[
this
.
bossLen
-
1
];
this
.
apipost
(
"dmcstatistics_post_CheckShopDetailsDMCRate"
,
...
...
@@ -781,39 +791,37 @@
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
data
.
result
==
0
)
{
console
.
log
(
"我进来了错误信息"
,
res
.
data
.
data
.
errorMessage
);
this
.
$message
.
error
(
res
.
data
.
data
.
errorMessage
);
this
.
loading
=
false
;
this
.
selectedRowKeys
=
[];
this
.
getList
();
this
.
saveMsg
=
[];
this
.
BOSSDialog
=
false
;
this
.
BOSSDialogText
=
false
;
return
;
this
.
$message
.
error
(
res
.
data
.
data
.
errorMessage
);
this
.
loading
=
false
;
this
.
selectedRowKeys
=
[];
this
.
getList
();
this
.
saveMsg
=
[];
this
.
BOSSDialog
=
false
;
this
.
BOSSDialogText
=
false
;
return
;
}
else
{
this
.
apipost
(
"dmcstatistics_post_BatchShopCreateBill"
,
this
.
nMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
bossLen
+=
1
;
this
.
increment
();
}
else
{
this
.
$message
.
error
(
"单据生成失败,请稍后重试"
);
this
.
loading
=
false
;
this
.
selectedRowKeys
=
[];
this
.
getList
();
this
.
saveMsg
=
[];
this
.
BOSSDialog
=
false
;
this
.
BOSSDialogText
=
false
;
}
});
}
}
else
{
this
.
apipost
(
"dmcstatistics_post_BatchShopCreateBill"
,
this
.
nMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
bossLen
+=
1
;
this
.
increment
();
}
else
{
this
.
$message
.
error
(
"单据生成失败,请稍后重试"
);
this
.
loading
=
false
;
this
.
selectedRowKeys
=
[];
this
.
getList
();
this
.
saveMsg
=
[];
this
.
BOSSDialog
=
false
;
this
.
BOSSDialogText
=
false
;
}
});
}
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
loading
=
false
;
this
.
selectedRowKeys
=
[];
this
.
getList
();
this
.
saveMsg
=
[];
this
.
saveMsg
=
[];
this
.
BOSSDialog
=
false
;
this
.
BOSSDialogText
=
false
;
}
...
...
@@ -823,96 +831,97 @@
}
else
{
this
.
BOSSDialog
=
false
;
this
.
BOSSDialogText
=
false
;
this
.
saveMsg
=
[];
this
.
saveMsg
=
[];
this
.
selectedRowKeys
=
[];
this
.
$message
.
success
(
"批量制单成功!"
);
this
.
loading
=
false
;
this
.
checkAll
=
false
;
this
.
checkAll
=
false
;
this
.
getList
();
}
},
},
MoreCreateBill
(){
if
(
this
.
selectedRowKeys
&&
this
.
selectedRowKeys
.
length
==
0
){
this
.
$message
.
error
(
"请至少选择一个团!"
);
return
;
}
this
.
saveMsg
=
[];
this
.
BOSSDialog
=
false
;
this
.
BOSSDialogText
=
true
;
},
MoreSureCreateBill
()
{
this
.
$confirm
(
'是否批量生成财务单据?'
,
this
.
$t
(
'tips.tips'
),
{
confirmButtonText
:
`确定`
,
cancelButtonText
:
`取消`
,
type
:
'warning'
}).
then
(()
=>
{
this
.
bossLen
=
1
;
this
.
BOSSDialog
=
true
;
this
.
increment
();
}).
catch
(()
=>
{});
},
showUpLoadFile
(
i
){
// 预览上传文件
if
(
i
.
Type
==
3
){
this
.
picObj
.
push
(
i
.
Url
);
this
.
imgList
.
push
(
i
.
Url
);
this
.
picIsShow
=
false
;
// this.hideFlashMan = true;
}
else
{
if
(
i
.
Content
.
substring
(
i
.
Content
.
lastIndexOf
(
'.'
)
+
1
,
i
.
Content
.
length
).
toUpperCase
()
==
'PDF'
){
this
.
previewPDF
(
i
.
Url
)
}
else
{
window
.
open
(
"https://view.officeapps.live.com/op/view.aspx?src="
+
i
.
Url
)
}
}
},
deleteUploadFile
(
i
){
// 删除上传文件
this
.
saveMsg
.
splice
(
i
,
1
);
this
.
nMsg
.
VoucherList
=
this
.
saveMsg
;
},
MoreCreateBill
()
{
if
(
this
.
selectedRowKeys
&&
this
.
selectedRowKeys
.
length
==
0
)
{
this
.
$message
.
error
(
"请至少选择一个团!"
);
return
;
}
this
.
saveMsg
=
[];
this
.
BOSSDialog
=
false
;
this
.
BOSSDialogText
=
true
;
},
MoreSureCreateBill
()
{
uploadFileBtn
(
file
)
{
//上传
if
(
file
.
file
.
size
>
1024
*
1024
*
10
)
{
this
.
Error
(
'文件大小不能超过10M!'
)
return
}
// 1 文档 2 数据 3 图片
let
typeArr
=
[
{
stringArr
:
'GIF|JPG|JPEG|PNG|BMP'
,
type
:
3
},
{
stringArr
:
'DOCX|DOC|XLSX|XLS|PPT|PPTX|PDF'
,
type
:
1
},
]
let
ft
=
file
.
file
.
name
.
substring
(
file
.
file
.
name
.
lastIndexOf
(
'.'
)
+
1
,
file
.
file
.
name
.
length
).
toUpperCase
();
let
fileTypeNumber
=
2
;
let
typeOk
=
false
;
typeArr
.
forEach
(
x
=>
{
if
(
x
.
stringArr
.
indexOf
(
ft
)
!=
'-1'
)
{
fileTypeNumber
=
x
.
type
typeOk
=
true
;
}
})
if
(
!
typeOk
)
return
this
.
Error
(
'请上传图片、word、excel类型的文件!'
);
let
newArr
=
[];
newArr
.
push
(
file
.
file
)
let
path
=
"/Upload/Temporary/"
this
.
$message
.
info
(
'上传中...'
)
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
let
fileSize
=
file
.
file
.
size
<
1024
?
file
.
file
.
size
:(
file
.
file
.
size
/
1024
).
toFixed
(
0
);
this
.
saveMsg
.
push
({
Content
:
x
.
data
.
FilePath
,
ID
:
0
,
Type
:
fileTypeNumber
,
Url
:
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
,
})
console
.
log
(
"x"
,
x
,
"saveMsg"
,
this
.
saveMsg
);
this
.
nMsg
.
VoucherList
=
this
.
saveMsg
;
this
.
Success
(
'上传成功'
);
});
},
financeinfo_post_GetClientAccountList
(
ObjID
,
type
)
{
//获取付款 对象类型 新增用
this
.
$confirm
(
'是否批量生成财务单据?'
,
this
.
$t
(
'tips.tips'
),
{
confirmButtonText
:
`确定`
,
cancelButtonText
:
`取消`
,
type
:
'warning'
}).
then
(()
=>
{
this
.
bossLen
=
1
;
this
.
BOSSDialog
=
true
;
this
.
increment
();
}).
catch
(()
=>
{});
},
showUpLoadFile
(
i
)
{
// 预览上传文件
if
(
i
.
Type
==
3
)
{
this
.
picObj
.
push
(
i
.
Url
);
this
.
imgList
.
push
(
i
.
Url
);
this
.
picIsShow
=
false
;
// this.hideFlashMan = true;
}
else
{
if
(
i
.
Content
.
substring
(
i
.
Content
.
lastIndexOf
(
'.'
)
+
1
,
i
.
Content
.
length
).
toUpperCase
()
==
'PDF'
)
{
this
.
previewPDF
(
i
.
Url
)
}
else
{
window
.
open
(
"https://view.officeapps.live.com/op/view.aspx?src="
+
i
.
Url
)
}
}
},
deleteUploadFile
(
i
)
{
// 删除上传文件
this
.
saveMsg
.
splice
(
i
,
1
);
this
.
nMsg
.
VoucherList
=
this
.
saveMsg
;
},
uploadFileBtn
(
file
)
{
//上传
if
(
file
.
file
.
size
>
1024
*
1024
*
10
)
{
this
.
Error
(
'文件大小不能超过10M!'
)
return
}
// 1 文档 2 数据 3 图片
let
typeArr
=
[{
stringArr
:
'GIF|JPG|JPEG|PNG|BMP'
,
type
:
3
},
{
stringArr
:
'DOCX|DOC|XLSX|XLS|PPT|PPTX|PDF'
,
type
:
1
},
]
let
ft
=
file
.
file
.
name
.
substring
(
file
.
file
.
name
.
lastIndexOf
(
'.'
)
+
1
,
file
.
file
.
name
.
length
).
toUpperCase
();
let
fileTypeNumber
=
2
;
let
typeOk
=
false
;
typeArr
.
forEach
(
x
=>
{
if
(
x
.
stringArr
.
indexOf
(
ft
)
!=
'-1'
)
{
fileTypeNumber
=
x
.
type
typeOk
=
true
;
}
})
if
(
!
typeOk
)
return
this
.
Error
(
'请上传图片、word、excel类型的文件!'
);
let
newArr
=
[];
newArr
.
push
(
file
.
file
)
let
path
=
"/Upload/Temporary/"
this
.
$message
.
info
(
'上传中...'
)
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
this
.
saveMsg
.
push
({
Content
:
x
.
data
.
FilePath
,
ID
:
0
,
Type
:
fileTypeNumber
,
Url
:
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
,
})
this
.
nMsg
.
VoucherList
=
this
.
saveMsg
;
this
.
Success
(
'上传成功'
);
});
},
financeinfo_post_GetClientAccountList
(
ObjID
,
type
)
{
//获取付款 对象类型 新增用
let
msg
=
{
ID
:
0
,
Type
:
7
,
...
...
@@ -924,23 +933,23 @@
let
data
=
res
.
data
.
data
;
let
ClientAccountList
=
[];
data
.
forEach
(
x
=>
{
let
obj
=
{
ID
:
x
.
ID
,
Name
:
x
.
AccountHolder
+
x
.
CardNum
+
`(
${
x
.
AccountAlias
}
)`
,
}
ClientAccountList
.
push
(
obj
)
})
if
(
type
==
1
){
this
.
LeaderAccountList
=
ClientAccountList
;
if
(
ClientAccountList
&&
ClientAccountList
.
length
>
0
){
this
.
LeaderAccountId
=
ClientAccountList
[
0
].
ID
;
}
}
else
{
this
.
GuideAccountList
=
ClientAccountList
;
if
(
ClientAccountList
&&
ClientAccountList
.
length
>
0
){
this
.
GuideAccountId
=
ClientAccountList
[
0
].
ID
;
}
let
obj
=
{
ID
:
x
.
ID
,
Name
:
x
.
AccountHolder
+
x
.
CardNum
+
`(
${
x
.
AccountAlias
}
)`
,
}
ClientAccountList
.
push
(
obj
)
})
if
(
type
==
1
)
{
this
.
LeaderAccountList
=
ClientAccountList
;
if
(
ClientAccountList
&&
ClientAccountList
.
length
>
0
)
{
this
.
LeaderAccountId
=
ClientAccountList
[
0
].
ID
;
}
}
else
{
this
.
GuideAccountList
=
ClientAccountList
;
if
(
ClientAccountList
&&
ClientAccountList
.
length
>
0
)
{
this
.
GuideAccountId
=
ClientAccountList
[
0
].
ID
;
}
}
}
},
err
=>
{})
},
...
...
@@ -1004,43 +1013,48 @@
}
.Shopping_bossdialog
._addUpload_box
{
display
:
initial
;
margin-top
:
20px
;
width
:
138px
!important
;
}
.Shopping_bossdialog
._addUpload_box
>
div
{
float
:
left
;
width
:
138px
;
height
:
92px
;
border-radius
:
2px
;
cursor
:
pointer
;
padding
:
5px
;
margin
:
0
10px
10px
0
;
position
:
relative
;
}
.Shopping_bossdialog
._addUpload_box
.icon-guanbi1
{
font-size
:
12px
;
color
:
white
;
display
:
inline-block
;
margin-left
:
15px
;
position
:
absolute
;
right
:
-6px
;
top
:
-9px
;
background-color
:
#f56c6c
;
border-radius
:
50%
;
height
:
20px
;
width
:
20px
;
text-align
:
center
;
line-height
:
20px
;
}
.Shopping_bossdialog
._addUpload_box
.icon-guanbi1
:hover
{
font-size
:
12px
;
color
:
#c94052
;
}
/
deep
/
.Shopping_bossdialog
._pic_upload
.el-upload-dragger
{
width
:
126px
!important
;
height
:
80px
!important
;
}
.Shopping_bossdialog
._addUpload_box
{
display
:
initial
;
margin-top
:
20px
;
width
:
138px
!important
;
}
.Shopping_bossdialog
._addUpload_box
>
div
{
float
:
left
;
width
:
138px
;
height
:
92px
;
border-radius
:
2px
;
cursor
:
pointer
;
padding
:
5px
;
margin
:
0
10px
10px
0
;
position
:
relative
;
}
.Shopping_bossdialog
._addUpload_box
.icon-guanbi1
{
font-size
:
12px
;
color
:
white
;
display
:
inline-block
;
margin-left
:
15px
;
position
:
absolute
;
right
:
-6px
;
top
:
-9px
;
background-color
:
#f56c6c
;
border-radius
:
50%
;
height
:
20px
;
width
:
20px
;
text-align
:
center
;
line-height
:
20px
;
}
.Shopping_bossdialog
._addUpload_box
.icon-guanbi1
:hover
{
font-size
:
12px
;
color
:
#c94052
;
}
/
deep
/
.Shopping_bossdialog
._pic_upload
.el-upload-dragger
{
width
:
126px
!important
;
height
:
80px
!important
;
}
</
style
>
src/components/Ticketing/PassengerList.vue
View file @
af3375d1
...
...
@@ -547,14 +547,12 @@
})
fileName
=
fileName
+
TempfileName
fileName
=
fileName
+
this
.
$route
.
query
.
alcode
console
.
log
(
"QueryMsg"
,
this
.
QueryMsg
);
//厦航的用csv
if
(
this
.
QueryMsg
.
TempCode
==
"MF"
)
{
fileName
=
fileName
+
".csv"
;
}
else
{
fileName
=
fileName
+
".xls"
;
}
// fileName = fileName + ".xls";
this
.
GetLocalFile
(
"travel_get_GetAirTicketGuestExport"
,
msg
,
fileName
);
},
handleCurrentChange
(
val
)
{
...
...
src/components/activity/CouponDetail.vue
View file @
af3375d1
...
...
@@ -103,7 +103,6 @@
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
console
.
log
(
"coupon_post_GetCouponAllotPage"
,
res
.
data
);
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
total
=
res
.
data
.
data
.
count
;
this
.
DataList
=
res
.
data
.
data
.
pageData
;
...
...
src/components/activity/CouponList.vue
View file @
af3375d1
...
...
@@ -513,7 +513,7 @@
<el-checkbox
@
change=
"getSelect(fitem)"
v-model=
"fitem.ischecked"
></el-checkbox>
</td>
<td>
{{fitem.customerName}}-
{{fitem.contact}}
{{fitem.customerName}}- {{fitem.contact}}
</td>
<td>
{{fitem.contactNumber}}
...
...
@@ -700,7 +700,7 @@
CouponPlatformEnumList
:
[],
companyList
:
[],
customerList
:
[],
checkedCustomerList
:
[],
//选择的人员信息
checkedCustomerList
:
[],
//选择的人员信息
layerDepartMentList
:
[],
departMentList
:
[],
PostList
:
[],
...
...
@@ -747,7 +747,7 @@
},
methods
:
{
getcouponPriceList
()
{
this
.
addMsg
.
couponPriceList
=
[]
this
.
addMsg
.
couponPriceLists
.
forEach
(
item
=>
{
...
...
@@ -808,14 +808,16 @@
//发放优惠券
AutoGrantCounItem
(
item
)
{
this
.
grantCouponMsg
=
Object
.
assign
({},
item
);
this
.
customerList
=
[];
this
.
checkedCustomerList
=
[];
console
.
log
(
"grantCouponMsg"
,
this
.
grantCouponMsg
);
this
.
customerList
=
[];
this
.
checkedCustomerList
=
[];
},
//发放优惠券确认
AdminGrantCoupon
()
{
this
.
apipost
(
"coupon_post_AdminGrantCoupon"
,
{
Id
:
this
.
grantCouponMsg
.
id
,
CustomerList
:
this
.
checkedCustomerList
},
res
=>
{
//发放优惠券确认
AdminGrantCoupon
()
{
this
.
apipost
(
"coupon_post_AdminGrantCoupon"
,
{
Id
:
this
.
grantCouponMsg
.
id
,
CustomerList
:
this
.
checkedCustomerList
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
Success
(
res
.
data
.
message
);
this
.
autoCouponDialog
=
false
;
...
...
@@ -851,20 +853,21 @@ AdminGrantCoupon() {
}
);
},
//删除客户标签
deleteTag
(
item
)
{
let
result
=
this
.
customerList
.
find
(
temp
=>
temp
.
customerId
===
item
.
customerId
);
if
(
result
){
result
.
ischecked
=
false
;
}
let
index
=
this
.
checkedCustomerList
.
indexOf
(
item
);
if
(
index
!==
-
1
)
{
this
.
checkedCustomerList
.
splice
(
index
,
1
);
}
//删除客户标签
deleteTag
(
item
)
{
let
result
=
this
.
customerList
.
find
(
temp
=>
temp
.
customerId
===
item
.
customerId
);
if
(
result
)
{
result
.
ischecked
=
false
;
}
let
index
=
this
.
checkedCustomerList
.
indexOf
(
item
);
if
(
index
!==
-
1
)
{
this
.
checkedCustomerList
.
splice
(
index
,
1
);
}
},
getSelect
(
item
)
{
if
(
item
.
ischecked
)
{
if
(
item
.
ischecked
)
{
this
.
checkedCustomerList
.
push
(
item
);
}
else
{
}
else
{
let
index
=
this
.
checkedCustomerList
.
indexOf
(
item
.
customerId
);
this
.
checkedCustomerList
.
splice
(
index
,
1
);
}
...
...
@@ -873,10 +876,9 @@ AdminGrantCoupon() {
getCustomerBrandByKeyWord
()
{
this
.
xuanzeCustomerLoading
=
true
;
this
.
customerList
=
[];
console
.
log
(
"this.grantCouponMsg.customerType"
,
this
.
grantCouponMsg
.
customerType
);
let
cmdStr
=
"app_post_GetCustomerBrandByKeyWord"
;
if
(
this
.
grantCouponMsg
.
customerType
==
1
){
cmdStr
=
"Sell_Post_GetDirectCustomerListByKey"
;
let
cmdStr
=
"app_post_GetCustomerBrandByKeyWord"
;
if
(
this
.
grantCouponMsg
.
customerType
==
1
)
{
cmdStr
=
"Sell_Post_GetDirectCustomerListByKey"
;
}
this
.
apipost
(
cmdStr
,
...
...
@@ -887,10 +889,10 @@ AdminGrantCoupon() {
var
tempData
=
res
.
data
.
data
;
if
(
tempData
&&
tempData
.
length
>
0
)
{
tempData
.
forEach
(
item
=>
{
let
result
=
this
.
checkedCustomerList
.
find
(
temp
=>
temp
.
customerId
===
item
.
customerId
);
if
(
result
){
item
.
ischecked
=
true
;
}
else
{
let
result
=
this
.
checkedCustomerList
.
find
(
temp
=>
temp
.
customerId
===
item
.
customerId
);
if
(
result
)
{
item
.
ischecked
=
true
;
}
else
{
item
.
ischecked
=
false
;
}
})
...
...
src/components/confirmationOrderDownLoadNew.vue
View file @
af3375d1
...
...
@@ -554,7 +554,6 @@
}
else
{
title
+=
this
.
orderMsg
.
lineteamName
+
this
.
orderMsg
.
dayNum
+
'日游'
;
}
console
.
log
(
"title"
,
title
);
var
fileName
=
title
+
".pdf"
;
that
.
pdfDownLoad
(
fileName
,
msg
);
// if (this.orderId && this.orderId > 0) {
...
...
@@ -569,7 +568,6 @@
// objFileKey += "/" + msg.configId + "_" + msg.tcid;
// objFileKey += "/" + msg.configId + "_" + msg.tcid + ".pdf";
// that.downloadChengDuFileRename(objFileKey, fileName, res => {
// console.log("ali_doanload", res)
// if (res.resultCode == 0) {
// } else {
...
...
src/components/newTravelmanager/TravelGroupControl/TravelFeature.vue
View file @
af3375d1
...
...
@@ -302,18 +302,35 @@
console
.
log
(
event
.
data
,
'-----------event.data'
)
if
(
event
.
data
&&
event
.
data
.
data
&&!
event
.
data
.
data
)
return
if
(
this
.
isPostMessage
)
return
if
(
event
.
data
&&
event
.
data
==
'行程数据保存成功'
){
// this.dialogPptistVisible = false
this
.
$emit
(
'ConfigInfo'
)
if
(
document
.
all
.
myIframe
){
document
.
all
.
myIframe
.
src
=
this
.
myIframeUrl
// if(event.data&&event.data=='行程数据保存成功'){
// // this.dialogPptistVisible = false
// this.$emit('ConfigInfo')
// if(document.all.myIframe){
// document.all.myIframe.src = this.myIframeUrl
// }
// }else if(event.data&&event.data.indexOf('行程特色高')!=-1){
// this.PostMessageText = ''
// let datas = event.data.split('-')
// this.myIframeHeigth = datas[1]
// }else if(event.data&&event.data=='暂无行程数据'){
// this.PostMessageText = event.data
// }
if
(
event
&&
event
.
data
)
{
if
(
event
.
data
==
'行程数据保存成功'
)
{
this
.
$emit
(
'ConfigInfo'
)
if
(
document
.
all
.
myIframe
)
{
document
.
all
.
myIframe
.
src
=
this
.
myIframeUrl
}
}
else
if
(
event
.
data
==
'暂无行程数据'
)
{
this
.
PostMessageText
=
event
.
data
}
else
{
//行程特色高
this
.
PostMessageText
=
''
;
if
(
event
.
data
&&
typeof
(
event
.
data
)
==
'string'
)
{
let
datas
=
event
.
data
.
split
(
'-'
)
this
.
myIframeHeigth
=
datas
[
1
];
}
}
}
else
if
(
event
.
data
&&
event
.
data
.
indexOf
(
'行程特色高'
)
!=-
1
){
this
.
PostMessageText
=
''
let
datas
=
event
.
data
.
split
(
'-'
)
this
.
myIframeHeigth
=
datas
[
1
]
}
else
if
(
event
.
data
&&
event
.
data
==
'暂无行程数据'
){
this
.
PostMessageText
=
event
.
data
}
this
.
isPostMessage
=
true
this
.
iframeLoading
=
false
...
...
src/components/newTravelmanager/TravelGroupControl/UpgradedVersion/index.vue
View file @
af3375d1
...
...
@@ -72,7 +72,25 @@
data
()
{
return
{
canEdit
:
true
,
pageList
:
[{
pageList
:
[],
homeBg3
:
"https://imgfile.oytour.com/Static/NewTripFeature/homeBg3.jpg"
,
homeBg1
:
"https://imgfile.oytour.com/Static/NewTripFeature/homeBg1.jpg"
,
homeBgOz1
:
"https://imgfile.oytour.com/Static/NewTripFeature/homebgoz.jpg"
,
//欧洲线默认图
homeBgNy
:
"https://imgfile.oytour.com/Static/NewTripFeature/homebgny.jpg"
,
//南亚线默认图
homeBgGn
:
"https://imgfile.oytour.com/Static/NewTripFeature/homebggn.jpg"
,
//国内线
homeBghg
:
"https://imgfile.oytour.com/Static/NewTripFeature/homebghg.jpg"
,
//韩国
homeBg2
:
"http://imgfile.oytour.com/Static/NewTripFeature/homeBg2.jpg"
,
dinner1
:
"http://imgfile.oytour.com/Static/NewTripFeature/dinner1.jpg"
,
dinner2
:
"http://imgfile.oytour.com/Static/NewTripFeature/dinner2.jpg"
,
dinner3
:
"http://imgfile.oytour.com/Static/NewTripFeature/dinner3.jpg"
,
dinner4
:
"https://imgfile.oytour.com/Static/NewTripFeature/dinner4.jpg"
,
RenderingOk
:
false
,
DataArray
:
[],
//房、餐、景点数组
};
},
methods
:
{
getConfigData
()
{
var
configArray
=
[{
pageTitle
:
'介绍'
,
pageType
:
1
,
pageTemplate
:
0
,
...
...
@@ -121,26 +139,12 @@
pageTemplate
:
3
,
dataObj
:
{},
},
],
homeBg3
:
"https://imgfile.oytour.com/Static/NewTripFeature/homeBg3.jpg"
,
homeBg1
:
"https://imgfile.oytour.com/Static/NewTripFeature/homeBg1.jpg"
,
homeBgOz1
:
"https://imgfile.oytour.com/Static/NewTripFeature/homebgoz.jpg"
,
//欧洲线默认图
homeBgNy
:
"https://imgfile.oytour.com/Static/NewTripFeature/homebgny.jpg"
,
//南亚线默认图
homeBgGn
:
"https://imgfile.oytour.com/Static/NewTripFeature/homebggn.jpg"
,
//国内线
homeBghg
:
"https://imgfile.oytour.com/Static/NewTripFeature/homebghg.jpg"
,
//韩国
homeBg2
:
"http://imgfile.oytour.com/Static/NewTripFeature/homeBg2.jpg"
,
dinner1
:
"http://imgfile.oytour.com/Static/NewTripFeature/dinner1.jpg"
,
dinner2
:
"http://imgfile.oytour.com/Static/NewTripFeature/dinner2.jpg"
,
dinner3
:
"http://imgfile.oytour.com/Static/NewTripFeature/dinner3.jpg"
,
dinner4
:
"https://imgfile.oytour.com/Static/NewTripFeature/dinner4.jpg"
,
RenderingOk
:
false
,
DataArray
:
[],
//房、餐、景点数组
};
},
methods
:
{
]
return
configArray
;
},
UploadImg
(
pageType
,
index
,
url
)
{
if
(
pageType
==
1
)
{
this
.
pageList
[
index
].
dataObj
.
ImgList
[
0
].
url
=
url
this
.
pageList
[
index
].
dataObj
.
ImgList
[
0
].
url
=
url
;
}
},
getPageObj
()
{
...
...
@@ -195,8 +199,9 @@
//首页2
else
if
(
featureDataObj
.
pageType
==
7
)
{
pageData
.
pageTitle
=
"首页2"
;
if
(
pageData
.
dataObj
&&
pageData
.
dataObj
.
ImgList
&&
pageData
.
dataObj
.
ImgList
.
length
>
0
)
pageData
.
dataObj
.
ImgList
[
0
].
x
=
0
this
.
getHomeData
(
tripObj
,
newObj
,
1
);
if
(
pageData
.
dataObj
&&
pageData
.
dataObj
.
ImgList
&&
pageData
.
dataObj
.
ImgList
.
length
>
0
)
pageData
.
dataObj
.
ImgList
[
0
].
x
=
0
this
.
getHomeData
(
tripObj
,
newObj
,
1
);
}
pageData
.
dataObj
=
newObj
;
this
.
pageList
.
splice
(
index
,
0
,
pageData
);
...
...
@@ -220,7 +225,6 @@
this
.
$set
(
this
.
pageList
,
index
,
downItem
);
}
}
},
//删除页面
DeletePages
(
index
)
{
...
...
@@ -267,6 +271,7 @@
this
.
pageList
=
oldJson
;
this
.
RenderingOk
=
true
;
}
else
{
this
.
pageList
=
this
.
getConfigData
();
this
.
pageList
.
forEach
(
pItem
=>
{
var
newObj
=
this
.
getDetailsObj
();
newObj
.
LineName
=
this
.
FeatureData
.
LineName
;
...
...
@@ -298,7 +303,7 @@
}
//首页2
else
if
(
pItem
.
pageType
==
7
)
{
this
.
getHomeData
(
tripObj
,
newObj
);
this
.
getHomeData
(
tripObj
,
newObj
,
1
);
}
pItem
.
dataObj
=
newObj
;
});
...
...
@@ -306,7 +311,7 @@
}
},
//首页数据渲染
getHomeData
(
tripObj
,
newObj
,
type
)
{
getHomeData
(
tripObj
,
newObj
,
type
)
{
if
(
tripObj
.
cityStr
&&
tripObj
.
cityStr
!=
''
)
{
newObj
.
MainName
=
tripObj
.
cityStr
;
//地区1
}
else
{
...
...
@@ -343,23 +348,24 @@
newObj
.
MainDesc
=
"景点描述"
;
}
// 新版首页2023/11/20
if
(
type
)
{
if
(
!
newObj
.
SceneDesc
)
{
if
(
type
)
{
if
(
!
newObj
.
SceneDesc
)
{
newObj
.
maskPosition
=
false
newObj
.
Meal
=
'餐食'
newObj
.
MealName
=
tripObj
.
dinnerArray
.
length
>
0
?
tripObj
.
dinnerArray
[
0
].
MainName
:
'餐食名称'
newObj
.
MealName2
=
tripObj
.
dinnerArray
.
length
>
1
?
tripObj
.
dinnerArray
[
1
].
MainName
:
'餐食名称'
newObj
.
Meal
=
'餐食'
newObj
.
MealName
=
tripObj
.
dinnerArray
.
length
>
0
?
tripObj
.
dinnerArray
[
0
].
MainName
:
'餐食名称'
newObj
.
MealName2
=
tripObj
.
dinnerArray
.
length
>
1
?
tripObj
.
dinnerArray
[
1
].
MainName
:
'餐食名称'
newObj
.
Host
=
'住宿'
newObj
.
HostName
=
tripObj
.
hotelArray
.
length
>
0
?
tripObj
.
hotelArray
[
0
].
MainName
:
'酒店名称'
newObj
.
HostName2
=
tripObj
.
hotelArray
.
length
>
1
?
tripObj
.
hotelArray
[
1
].
MainName
:
'酒店名称'
newObj
.
HostName
=
tripObj
.
hotelArray
.
length
>
0
?
tripObj
.
hotelArray
[
0
].
MainName
:
'酒店名称'
newObj
.
HostName2
=
tripObj
.
hotelArray
.
length
>
1
?
tripObj
.
hotelArray
[
1
].
MainName
:
'酒店名称'
newObj
.
Scene
=
'风景'
newObj
.
SceneDesc
=
tripObj
.
scenicArray
.
length
>
0
?
tripObj
.
scenicArray
[
0
].
MainName
+
':'
+
tripObj
.
scenicArray
[
0
].
MainDesc
:
'景点描述信息'
newObj
.
SceneTitle2
=
tripObj
.
scenicArray
.
length
>
1
?
tripObj
.
scenicArray
[
1
].
MainName
:
'景点名称'
newObj
.
SceneDesc2
=
tripObj
.
scenicArray
.
length
>
1
?
tripObj
.
scenicArray
[
1
].
MainDesc
:
'景点描述信息'
newObj
.
HostTitle
=
tripObj
.
hotelArray
.
length
>
1
?
tripObj
.
hotelArray
[
1
].
MainName
:
'酒店名称'
newObj
.
HostDesc
=
tripObj
.
hotelArray
.
length
>
1
?
tripObj
.
hotelArray
[
1
].
MainDesc
:
'酒店描述信息'
newObj
.
SceneTitle3
=
tripObj
.
scenicArray
.
length
>
2
?
tripObj
.
scenicArray
[
2
].
MainName
:
'景点名称'
newObj
.
SceneDesc3
=
tripObj
.
scenicArray
.
length
>
2
?
tripObj
.
scenicArray
[
2
].
MainDesc
:
'景点描述信息'
newObj
.
SceneDesc
=
tripObj
.
scenicArray
.
length
>
0
?
tripObj
.
scenicArray
[
0
].
MainName
+
':'
+
tripObj
.
scenicArray
[
0
].
MainDesc
:
'景点描述信息'
newObj
.
SceneTitle2
=
tripObj
.
scenicArray
.
length
>
1
?
tripObj
.
scenicArray
[
1
].
MainName
:
'景点名称'
newObj
.
SceneDesc2
=
tripObj
.
scenicArray
.
length
>
1
?
tripObj
.
scenicArray
[
1
].
MainDesc
:
'景点描述信息'
newObj
.
HostTitle
=
tripObj
.
hotelArray
.
length
>
1
?
tripObj
.
hotelArray
[
1
].
MainName
:
'酒店名称'
newObj
.
HostDesc
=
tripObj
.
hotelArray
.
length
>
1
?
tripObj
.
hotelArray
[
1
].
MainDesc
:
'酒店描述信息'
newObj
.
SceneTitle3
=
tripObj
.
scenicArray
.
length
>
2
?
tripObj
.
scenicArray
[
2
].
MainName
:
'景点名称'
newObj
.
SceneDesc3
=
tripObj
.
scenicArray
.
length
>
2
?
tripObj
.
scenicArray
[
2
].
MainDesc
:
'景点描述信息'
}
}
},
...
...
@@ -817,8 +823,7 @@
},
watch
:
{
FeatureData
:
{
handler
(
val
,
oldVal
)
{
},
handler
(
val
,
oldVal
)
{},
deep
:
true
,
immediate
:
true
},
...
...
src/plug/index.js
View file @
af3375d1
...
...
@@ -1162,7 +1162,6 @@ export default {
if
(
xhr
.
status
===
200
)
{
resolve
(
xhr
.
response
);
}
else
if
(
xhr
.
status
===
404
)
{
console
.
log
(
"downloadChengDuFileRename_404"
,
objectKey
);
if
(
callBack
)
{
callBack
(
resultJson
)
}
...
...
@@ -1195,7 +1194,6 @@ export default {
});
}
catch
(
err
)
{
resultJson
.
resultCode
=
0
;
console
.
log
(
"downloadChengDuFileRename"
,
err
);
if
(
callBack
)
{
callBack
(
resultJson
)
}
...
...
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