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
5209fd6f
Commit
5209fd6f
authored
Mar 04, 2024
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
0599d826
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
786 additions
and
816 deletions
+786
-816
HotelManagement.vue
src/components/Hotel/HotelManagement.vue
+36
-22
MyCustomer.vue
src/components/SalesModule/MyCustomer.vue
+166
-191
CharteringInfoManage.vue
...sManagement/CharteringManagement/CharteringInfoManage.vue
+0
-19
CharteringProductList.vue
...Management/CharteringManagement/CharteringProductList.vue
+584
-584
No files found.
src/components/Hotel/HotelManagement.vue
View file @
5209fd6f
...
...
@@ -433,28 +433,42 @@
</div>
</el-tooltip>
<div
class=
"btnList"
>
<button
@
click=
"goSubInfo('HotelInfo', item.ID)"
class=
"hotelBtnMan"
>
{{
$t
(
"pub.updateMsg"
)
}}
</button>
<button
@
click=
"CopyHotel(item.ID)"
class=
"hotelBtnMan"
v-if=
"userInfo.RB_Group_id == QjGroupId()"
>
复制
</button>
<button
@
click=
"goproduct('HotelProductManage', item)"
class=
"hotelBtnMan"
v-if=
"userInfo.RB_Group_id != QjGroupId()"
>
房型
</button>
<br
/>
<button
v-if=
"IsHotelPriceStock==1"
style=
"width: 80px; margin-top: 10px"
@
click=
"goUrl('HotelProductManage2', item)"
class=
"hotelBtnMan"
>
{{
$t
(
"ground.baojiayukucun"
)
}}
</button>
<button
v-if=
"IsHotelPriceStock==1"
style=
"width: 80px; margin-top: 10px"
@
click=
"downloadFile(item)"
class=
"hotelBtnMan"
>
上传报价
</button>
<template
v-if=
"item.MaxFileDate&&item.MaxFileDate!=''"
>
<span
style=
"color:red"
>
最近一次上传时间:
{{
item
.
MaxFileDate
}}
</span>
<template
v-if=
"userInfo.RB_Group_id==2"
>
<button
@
click=
"goSubInfo('HotelInfo', item.ID)"
class=
"hotelBtnMan"
>
{{
$t
(
"pub.updateMsg"
)
}}
</button>
<button
@
click=
"CopyHotel(item.ID)"
class=
"hotelBtnMan"
v-if=
"userInfo.RB_Group_id == QjGroupId()"
>
复制
</button>
<button
@
click=
"goproduct('HotelProductManage', item)"
class=
"hotelBtnMan"
v-if=
"userInfo.RB_Group_id != QjGroupId()"
>
房型
</button>
<br
/>
<button
v-if=
"IsHotelPriceStock==1||userInfo.RB_Group_id!=2"
style=
"width: 80px; margin-top: 10px"
@
click=
"goUrl('HotelProductManage2', item)"
class=
"hotelBtnMan"
>
{{
$t
(
"ground.baojiayukucun"
)
}}
</button>
<button
v-if=
"IsHotelPriceStock==1"
style=
"width: 80px; margin-top: 10px"
@
click=
"downloadFile(item)"
class=
"hotelBtnMan"
>
上传报价
</button>
<template
v-if=
"item.MaxFileDate&&item.MaxFileDate!=''"
>
<span
style=
"color:red"
>
最近一次上传时间:
{{
item
.
MaxFileDate
}}
</span>
</
template
>
</template>
<
template
v-else
>
<button
@
click=
"goSubInfo('HotelInfo', item.ID)"
class=
"hotelBtnMan"
>
{{
$t
(
"pub.updateMsg"
)
}}
</button>
<button
@
click=
"CopyHotel(item.ID)"
class=
"hotelBtnMan"
v-if=
"userInfo.RB_Group_id == QjGroupId()"
>
复制
</button>
<button
style=
"width: 80px; margin-top: 10px"
@
click=
"goUrl('HotelProductManage2', item)"
class=
"hotelBtnMan"
>
{{
$t
(
"ground.baojiayukucun"
)
}}
</button>
</
template
>
</div>
</div>
...
...
src/components/SalesModule/MyCustomer.vue
View file @
5209fd6f
<
style
>
.addMsgSW
{
.addMsgSW
{
width
:
105px
;
}
.updateMsgSw
{
.updateMsgSw
{
width
:
169px
;
}
._info_img
ul
{
/* padding: 10px 0 */
}
...
...
@@ -59,17 +61,23 @@
text-align
:
center
;
overflow
:
auto
;
}
.page_MyCustomer
.icon-guanbi1
{
width
:
18px
;
height
:
18px
;
.page_MyCustomer
.icon-guanbi1
{
width
:
18px
;
height
:
18px
;
line-height
:
20px
;
text-align
:
center
;
color
:
#fff
;
position
:
absolute
;
right
:
-5px
;
top
:
-10px
;
background
:
#dedede
;
border-radius
:
50%
;
color
:
#fff
;
position
:
absolute
;
right
:
-5px
;
top
:
-10px
;
background
:
#dedede
;
border-radius
:
50%
;
font-size
:
12px
;
cursor
:
pointer
;
z-index
:
3
;
}
.page_MyCustomer
._mc_addbox
{
height
:
52px
;
width
:
100%
;
...
...
@@ -476,10 +484,11 @@
</li>
<li>
<button
class=
"hollowFixedBtn"
@
click=
"reSearchPage"
>
{{
$t
(
'pub.searchBtn'
)
}}
</button>
<button
class=
"normalBtn"
@
click=
"clickAdd"
>
{{
$t
(
'salesModule.addCustomer'
)
}}
</button>
<button
class=
"normalBtn"
@
click=
"outerVisible=true"
>
导入
</button>
<button
class=
"normalBtn"
@
click=
"getDownList"
>
模板下载
</button>
<button
class=
"normalBtn"
@
click=
"clickAdd"
>
{{
$t
(
'salesModule.addCustomer'
)
}}
</button>
<template
v-if=
"currentUserInfo&¤tUserInfo.RB_Group_id==2"
>
<button
class=
"normalBtn"
@
click=
"outerVisible=true"
>
导入
</button>
<button
class=
"normalBtn"
@
click=
"getDownList"
>
模板下载
</button>
</
template
>
</li>
</div>
<div
class=
"_mc_addbox"
>
...
...
@@ -505,7 +514,8 @@
</li>
</div>
<div
class=
"_mc_list _scrollbar"
:class=
"addShow==true?'_edHeight':''"
>
<table
v-if=
"msg.CustomerStatus!=0"
class=
"MycustomerTable singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<table
v-if=
"msg.CustomerStatus!=0"
class=
"MycustomerTable singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th>
姓名
</th>
<th>
联系电话
</th>
...
...
@@ -575,9 +585,10 @@
<td><span
style=
"cursor: pointer;text-decoration: underline;"
@
click
.
stop=
"goUrC('CouponsList',item.customerAccountId)"
>
{{item.couponNum}}
</span></td>
<td>
<span
style=
"cursor: pointer;color: #2CA4F0"
@
click=
"seeDeta(item)"
>
{{
item
.
depositMoney
?
item
.
depositMoney
:
0
}}
</span>
<span
style=
"cursor: pointer;color: #2CA4F0"
@
click=
"seeDeta(item)"
>
{{ item.depositMoney?item.depositMoney:0 }}
</span>
</td>
<td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"编辑"
placement=
"top-start"
>
<el-button
@
click
.
stop=
"EditMsg(item)"
style=
"padding:4px"
type=
"primary"
icon=
"iconfont icon-bianji"
circle
></el-button>
...
...
@@ -591,8 +602,8 @@
icon=
"iconfont icon-icon-test6"
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"团队成员"
placement=
"top-start"
>
<el-button
style=
"padding:4px"
@
click
.
stop=
"goTeamMember(item)"
type=
"primary"
icon=
"el-icon-user-solid"
circle
></el-button>
<el-button
style=
"padding:4px"
@
click
.
stop=
"goTeamMember(item)"
type=
"primary"
icon=
"el-icon-user-solid"
circle
></el-button>
</el-tooltip>
</td>
</tr>
...
...
@@ -601,7 +612,8 @@
</tr>
</table>
<!-- 产品列表 -->
<signedClientList
v-else
:loading=
"loading"
:list=
"dataList"
:isVisa=
"isVisa"
@
success=
"reSearchPage"
:pagesTitle=
"pagesTitle"
></signedClientList>
<signedClientList
v-else
:loading=
"loading"
:list=
"dataList"
:isVisa=
"isVisa"
@
success=
"reSearchPage"
:pagesTitle=
"pagesTitle"
></signedClientList>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"this.msg.pageSize"
:total=
"total"
>
</el-pagination>
...
...
@@ -612,8 +624,8 @@
<p
class=
"_tit"
>
{{$t('salesModule.addCustomer')}}
<span
class=
"fr"
>
<button
class=
"hollowFixedBtn"
type=
"button"
@
click=
"cancelEdit()"
>
{{$t('pub.cancelBtn')}}
</button>
<el-button
type=
"button"
class=
"normalBtn"
v-if=
'allowAdd'
@
click=
"saveVisa()"
:loading=
"loadingSave"
>
{{
$t
(
'pub.saveBtn'
)
}}
</el-button>
<el-button
type=
"button"
class=
"normalBtn"
v-if=
'allowAdd'
@
click=
"saveVisa()"
:loading=
"loadingSave"
>
{{$t('pub.saveBtn')}}
</el-button>
</span>
</p>
</div>
...
...
@@ -656,7 +668,7 @@
</el-col>
<el-col
:span=
"6"
>
<el-form-item
:label=
"$t('hotel.hotel_detailinfo')"
prop=
"address"
>
<el-input
v-model=
"addMsg.address"
:placeholder=
"$t('salesModule.HouseNumber')"
maxlength=
"50"
></el-input>
<el-input
v-model=
"addMsg.address"
:placeholder=
"$t('salesModule.HouseNumber')"
maxlength=
"50"
></el-input>
</el-form-item>
</el-col>
<!--
...
...
@@ -679,72 +691,53 @@
<el-col
:span=
"8"
>
<el-form-item
label=
"合同资料"
>
<div
style=
"display: flex;flex-wrap: wrap;"
>
<div
class=
"_info_img"
v-if=
"addMsg.BusinessCardPhotos&&addMsg.BusinessCardPhotos.length>0"
>
<ul
class=
"clearfix"
>
<li
v-for=
"(img,imgI) in addMsg.BusinessCardPhotos"
style=
"margin-right: 5px;position: relative;border:1px dashed #d1d1d1;border-radius: 6px;"
>
<img
v-if=
"!img"
src=
"../../assets/img/Travelslider.png"
alt=
""
>
<el-image
v-if=
"img&&verificationFile(img,3)"
:src=
"img"
:preview-src-list=
"[img]"
>
</el-image>
<div
v-if=
"img&&verificationFile(img,1)"
style=
"width: 50px; line-height: 50px;text-align: center;"
>
<span
class=
"_wenjian_P iconfont"
:class=
"img.substring(img.lastIndexOf('.')+1,img.length).toUpperCase()=='PDF'? 'icon-pdf' : 'icon-excel'"
></span>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(imgI)"
></span>
<div
v-if=
"img&&verificationFile(img,1)"
class=
"_see_img"
@
click=
"verificationFile(img,3)?'':showUpLoadFile2(img)"
>
<i
class=
"iconfont icon-sousuo"
></i>
</div>
</li>
</ul>
</div>
<div
style=
"display: flex; justify-content: end;"
>
<el-upload
class=
"upload-demo"
ref=
"my-upload"
style=
"display:inline-block;position:relative;top:-1px;left:3px;"
:http-request=
"uploadImg"
:show-file-list=
"false"
action=
""
>
<el-button
size=
"small"
type=
"primary"
>
上传合同
</el-button>
</el-upload>
<div
class=
"_info_img"
v-if=
"addMsg.BusinessCardPhotos&&addMsg.BusinessCardPhotos.length>0"
>
<ul
class=
"clearfix"
>
<li
v-for=
"(img,imgI) in addMsg.BusinessCardPhotos"
style=
"margin-right: 5px;position: relative;border:1px dashed #d1d1d1;border-radius: 6px;"
>
<img
v-if=
"!img"
src=
"../../assets/img/Travelslider.png"
alt=
""
>
<el-image
v-if=
"img&&verificationFile(img,3)"
:src=
"img"
:preview-src-list=
"[img]"
>
</el-image>
<div
v-if=
"img&&verificationFile(img,1)"
style=
"width: 50px; line-height: 50px;text-align: center;"
>
<span
class=
"_wenjian_P iconfont"
:class=
"img.substring(img.lastIndexOf('.')+1,img.length).toUpperCase()=='PDF'? 'icon-pdf' : 'icon-excel'"
></span>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(imgI)"
></span>
<div
v-if=
"img&&verificationFile(img,1)"
class=
"_see_img"
@
click=
"verificationFile(img,3)?'':showUpLoadFile2(img)"
>
<i
class=
"iconfont icon-sousuo"
></i>
</div>
</li>
</ul>
</div>
<div
style=
"display: flex; justify-content: end;"
>
<el-upload
class=
"upload-demo"
ref=
"my-upload"
style=
"display:inline-block;position:relative;top:-1px;left:3px;"
:http-request=
"uploadImg"
:show-file-list=
"false"
action=
""
>
<el-button
size=
"small"
type=
"primary"
>
上传合同
</el-button>
</el-upload>
</div>
</div>
</div>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"平台用户名"
>
<div
style=
"display: flex;flex-wrap: nowrap;justify-content: space-between;"
>
<div
style=
"display: flex; flex-wrap: wrap;align-items: center;"
>
<el-tag
:key=
"tag"
v-for=
"tag in addMsg.PlatformUserNameList"
closable
:disable-transitions=
"false"
@
close=
"handleClose(tag,1)"
size=
"medium"
style=
"margin-right: 5px;margin-bottom: 3px;"
>
{{
tag
}}
</el-tag>
<div>
<el-input
class=
"input-new-tag"
v-if=
"inputVisible"
v-model=
"inputValue"
ref=
"saveTagInputTwo"
size=
"small"
@
keyup
.
enter
.
native=
"handleInputConfirm(1)"
@
blur=
"handleInputConfirm(1)"
>
</el-input>
<el-button
v-else
class=
"button-new-tag"
size=
"small"
@
click=
"showInput(1)"
>
+ 添加
</el-button>
</div>
<el-tag
:key=
"tag"
v-for=
"tag in addMsg.PlatformUserNameList"
closable
:disable-transitions=
"false"
@
close=
"handleClose(tag,1)"
size=
"medium"
style=
"margin-right: 5px;margin-bottom: 3px;"
>
{{tag}}
</el-tag>
<div>
<el-input
class=
"input-new-tag"
v-if=
"inputVisible"
v-model=
"inputValue"
ref=
"saveTagInputTwo"
size=
"small"
@
keyup
.
enter
.
native=
"handleInputConfirm(1)"
@
blur=
"handleInputConfirm(1)"
>
</el-input>
<el-button
v-else
class=
"button-new-tag"
size=
"small"
@
click=
"showInput(1)"
>
+ 添加
</el-button>
</div>
</div>
</div>
</el-form-item>
</el-col>
<el-col
:span=
"4"
>
<el-form-item
label=
"签约月结客户"
prop=
"SigningType"
>
...
...
@@ -763,7 +756,6 @@
<
template
v-for=
"(subItem,subIndex) in saveMsg"
>
<a
style=
"margin-left:20px;color:blue;cursor:pointer;"
target=
"_blank"
:key=
"subIndex"
@
click=
"downloadFile(subItem.URL,subItem.FileName)"
>
{{
subItem
.
FileName
}}
</a>
<a
:key=
"subIndex+1000"
style=
"margin-left:20px;color:blue;cursor:pointer;"
@
click=
"DeleteFile(subIndex)"
>
删除
</a>
</
template
>
...
...
@@ -777,7 +769,8 @@
<
template
v-if=
"isShow"
>
<el-col
:span=
"6"
>
<el-form-item
:label=
"$t('salesModule.CustomerSource')"
prop=
"CustomerSourceType"
>
<el-select
filterable
v-model=
'addMsg.CustomerSourceType'
style=
"width: 100%;"
:placeholder=
"$t('pub.pleaseSel')"
>
<el-select
filterable
v-model=
'addMsg.CustomerSourceType'
style=
"width: 100%;"
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
v-for=
'item in khly'
:label=
'item.Name'
:value=
'item.ID'
:key=
'item.ID'
>
</el-option>
</el-select>
...
...
@@ -808,7 +801,6 @@
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
:label=
"$t('hotel.hotel_remark')"
prop=
"remark"
>
<el-input
v-model=
"addMsg.remark"
autosize
type=
"textarea"
maxlength=
"500"
></el-input>
...
...
@@ -819,7 +811,6 @@
<el-input
v-model=
"addMsg.CustomerSource"
maxlength=
"20"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"4"
>
<el-form-item
:label=
"$t('salesModule.doorPhoto')"
>
<el-upload
class=
"avatar-uploader"
action=
""
:http-request=
"uploadImg1"
...
...
@@ -838,7 +829,7 @@
</el-upload>
</el-form-item>
</el-col>
</
template
>
</
template
>
</el-row>
</el-form>
</div>
...
...
@@ -854,8 +845,7 @@
<div
slot=
"tip"
class=
"el-upload__tip"
>
只能上传Excel文件
</div>
</el-upload>
</el-dialog>
<div
class=
"MyCustomerDetailbottomLayer ownScrollbarStyle"
style=
"height:500px;"
v-if=
"addLayer1"
>
<div
class=
"MyCustomerDetailbottomLayer ownScrollbarStyle"
style=
"height:500px;"
v-if=
"addLayer1"
>
<p>
修改客户信息
</p>
<el-row
:gutter=
"20"
>
<el-col
:span=
"18"
>
...
...
@@ -866,8 +856,7 @@
<input
type=
"button"
class=
"normalBtn"
value=
"保存"
@
click=
"saveUpdate()"
/>
</el-col>
</el-row>
<el-form
label-width=
"80px"
>
<el-form
label-width=
"80px"
>
<el-row
:gutter=
"20"
>
<el-col
:span=
"4"
>
<el-form-item
label=
"联系电话"
>
...
...
@@ -887,8 +876,7 @@
</el-col>
<el-col
:span=
"4"
v-if=
"updateMsg.customerExceptionList.length > 0"
>
<el-form-item
label=
"解决异常"
>
<el-select
filterable
multiple
clearable
collapse-tags
v-model=
'updateMsg.CustomerExceptionIds'
>
<el-select
filterable
multiple
clearable
collapse-tags
v-model=
'updateMsg.CustomerExceptionIds'
>
<el-option
v-for=
'item in updateMsg.customerExceptionList'
:label=
'item.exceptionName'
:value=
'item.exceptionId'
:key=
'item.exceptionId'
>
</el-option>
...
...
@@ -921,20 +909,20 @@
</div>
<div
v-show=
"updateMsg.SigningType"
>
<el-upload
v-if=
"!saveMsg || !saveMsg.length"
class=
"upload-demo"
:disabled=
"!updateMsg.SigningType"
style=
"display:inline-block;position:relative;top:-1px;left:3px;"
:http-request=
"uploadFileBtn"
:show-file-list=
"false"
action=
""
>
<el-button
size=
"small"
type=
"primary"
>
上传签约资料
</el-button>
</el-upload>
<
template
v-if=
"updateMsg.SigningType && saveMsg&& saveMsg.length>0"
>
<div
v-for=
"(subItem,subIndex) in saveMsg"
style=
"display: flex;flex-wrap: nowrap;"
>
<a
style=
"margin-left:20px;color:blue;cursor:pointer;"
target=
"_blank"
:key=
"subIndex"
@
click=
"downloadFile(subItem.URL,subItem.FileName)"
>
{{
subItem
.
FileName
}}
</a>
style=
"display:inline-block;position:relative;top:-1px;left:3px;"
:http-request=
"uploadFileBtn"
:show-file-list=
"false"
action=
""
>
<el-button
size=
"small"
type=
"primary"
>
上传签约资料
</el-button>
</el-upload>
<
template
v-if=
"updateMsg.SigningType && saveMsg&& saveMsg.length>0"
>
<div
v-for=
"(subItem,subIndex) in saveMsg"
style=
"display: flex;flex-wrap: nowrap;"
>
<a
style=
"margin-left:20px;color:blue;cursor:pointer;"
target=
"_blank"
:key=
"subIndex"
@
click=
"downloadFile(subItem.URL,subItem.FileName)"
>
{{
subItem
.
FileName
}}
</a>
<a
:key=
"subIndex+1000"
style=
"margin-left:20px;color:blue;cursor:pointer;"
@
click=
"DeleteFile(subIndex)"
>
删除
</a>
</div>
</
template
>
<span
style=
"color: red;margin-left: 5px;"
>
(此处为客户与我司月度结款)
</span>
<a
:key=
"subIndex+1000"
style=
"margin-left:20px;color:blue;cursor:pointer;"
@
click=
"DeleteFile(subIndex)"
>
删除
</a>
</div>
</
template
>
<span
style=
"color: red;margin-left: 5px;"
>
(此处为客户与我司月度结款)
</span>
</div>
</div>
...
...
@@ -965,7 +953,7 @@
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"详细地址"
>
<el-input
v-model=
'updateMsg.Address'
maxlength=
"50"
></el-input>
<el-input
v-model=
'updateMsg.Address'
maxlength=
"50"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
...
...
@@ -973,62 +961,44 @@
<div
style=
"display: flex;flex-wrap: wrap;"
>
<div
class=
"_info_img"
v-if=
"updateMsg.BusinessCardPhotos&&updateMsg.BusinessCardPhotos.length>0"
>
<ul
class=
"clearfix"
>
<li
v-for=
"(img,imgI) in updateMsg.BusinessCardPhotos"
style=
"margin-right: 5px;position: relative;border:1px dashed #d1d1d1;border-radius: 6px;"
>
<img
v-if=
"!img"
src=
"../../assets/img/Travelslider.png"
alt=
""
>
<el-image
v-if=
"img&&verificationFile(img,3)"
:src=
"img"
:preview-src-list=
"[img]"
>
</el-image>
<div
v-if=
"img&&verificationFile(img,1)"
style=
"width: 50px; line-height: 50px;text-align: center;"
>
<span
class=
"_wenjian_P iconfont"
:class=
"img.substring(img.lastIndexOf('.')+1,img.length).toUpperCase()=='PDF'? 'icon-pdf' : 'icon-excel'"
></span>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(imgI)"
></span>
<div
v-if=
"img&&verificationFile(img,1)"
class=
"_see_img"
@
click=
"verificationFile(img,3)?'':showUpLoadFile2(img)"
>
<i
class=
"iconfont icon-sousuo"
></i>
</div>
</li>
<li
v-for=
"(img,imgI) in updateMsg.BusinessCardPhotos"
style=
"margin-right: 5px;position: relative;border:1px dashed #d1d1d1;border-radius: 6px;"
>
<img
v-if=
"!img"
src=
"../../assets/img/Travelslider.png"
alt=
""
>
<el-image
v-if=
"img&&verificationFile(img,3)"
:src=
"img"
:preview-src-list=
"[img]"
>
</el-image>
<div
v-if=
"img&&verificationFile(img,1)"
style=
"width: 50px; line-height: 50px;text-align: center;"
>
<span
class=
"_wenjian_P iconfont"
:class=
"img.substring(img.lastIndexOf('.')+1,img.length).toUpperCase()=='PDF'? 'icon-pdf' : 'icon-excel'"
></span>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(imgI)"
></span>
<div
v-if=
"img&&verificationFile(img,1)"
class=
"_see_img"
@
click=
"verificationFile(img,3)?'':showUpLoadFile2(img)"
>
<i
class=
"iconfont icon-sousuo"
></i>
</div>
</li>
</ul>
</div>
<div
style=
"display: flex; justify-content: end;"
>
<el-upload
class=
"upload-demo"
ref=
"my-upload"
style=
"display:inline-block;position:relative;top:-1px;left:3px;"
:http-request=
"uploadImg"
<el-upload
class=
"upload-demo"
ref=
"my-upload"
style=
"display:inline-block;position:relative;top:-1px;left:3px;"
:http-request=
"uploadImg"
:show-file-list=
"false"
action=
""
>
<el-button
size=
"small"
type=
"primary"
>
上传合同
</el-button>
</el-upload>
</el-upload>
</div>
</div>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"平台用户名"
>
<el-tag
:key=
"tag"
v-for=
"tag in updateMsg.PlatformUserNameList"
closable
:disable-transitions=
"false"
@
close=
"handleClose(tag)"
size=
"small"
style=
"margin-right: 5px;margin-bottom: 3px;"
>
{{tag}}
</el-tag>
<el-input
class=
"input-new-tag"
v-if=
"inputVisible"
v-model=
"inputValue"
ref=
"saveTagInput"
size=
"small"
@
keyup
.
enter
.
native=
"handleInputConfirm"
@
blur=
"handleInputConfirm"
>
</el-input>
<el-button
v-else
class=
"button-new-tag"
size=
"small"
@
click=
"showInput"
>
+ 添加
</el-button>
<el-tag
:key=
"tag"
v-for=
"tag in updateMsg.PlatformUserNameList"
closable
:disable-transitions=
"false"
@
close=
"handleClose(tag)"
size=
"small"
style=
"margin-right: 5px;margin-bottom: 3px;"
>
{{tag}}
</el-tag>
<el-input
class=
"input-new-tag"
v-if=
"inputVisible"
v-model=
"inputValue"
ref=
"saveTagInput"
size=
"small"
@
keyup
.
enter
.
native=
"handleInputConfirm"
@
blur=
"handleInputConfirm"
>
</el-input>
<el-button
v-else
class=
"button-new-tag"
size=
"small"
@
click=
"showInput"
>
+ 添加
</el-button>
</el-form-item>
</el-col>
...
...
@@ -1055,9 +1025,8 @@
</div>
<detailList
v-if=
"showdetail"
:ClientId=
"detailObj&&detailObj.customerId"
@
cancel=
"showdetail=false"
></detailList>
<!-- 团队成员 -->
<TeamMemberList
v-if=
"ShowTeamMember"
:customerId=
"customerId"
@
close=
"ShowTeamMember=false,customerId=null"
@
success=
"getList"
></TeamMemberList>
<TeamMemberList
v-if=
"ShowTeamMember"
:customerId=
"customerId"
@
close=
"ShowTeamMember=false,customerId=null"
@
success=
"getList"
></TeamMemberList>
</div>
</template>
<
script
>
...
...
@@ -1065,7 +1034,7 @@
import
signedClientList
from
'./Common/signedClientList'
import
TeamMemberList
from
'./Common/TeamMemberList'
export
default
{
components
:{
components
:
{
signedClientList
,
detailList
,
TeamMemberList
...
...
@@ -1253,6 +1222,7 @@
isShow
:
true
,
inputVisible
:
false
,
inputValue
:
''
,
currentUserInfo
:
{},
//当前登录用户
}
},
methods
:
{
...
...
@@ -1263,19 +1233,19 @@
window
.
open
(
"https://view.officeapps.live.com/op/view.aspx?src="
+
i
)
}
},
handleClose
(
tag
,
type
)
{
if
(
type
==
1
)
{
handleClose
(
tag
,
type
)
{
if
(
type
==
1
)
{
this
.
addMsg
.
PlatformUserNameList
.
splice
(
this
.
addMsg
.
PlatformUserNameList
.
indexOf
(
tag
),
1
);
}
else
{
}
else
{
this
.
updateMsg
.
PlatformUserNameList
.
splice
(
this
.
updateMsg
.
PlatformUserNameList
.
indexOf
(
tag
),
1
);
}
},
showInput
(
type
)
{
this
.
inputVisible
=
true
;
this
.
$nextTick
(
_
=>
{
if
(
type
==
1
)
{
if
(
type
==
1
)
{
this
.
$refs
.
saveTagInputTwo
.
$refs
.
input
.
focus
();
}
else
{
}
else
{
this
.
$refs
.
saveTagInput
.
$refs
.
input
.
focus
();
}
});
...
...
@@ -1283,35 +1253,35 @@
handleInputConfirm
(
type
)
{
let
inputValue
=
this
.
inputValue
;
if
(
inputValue
)
{
if
(
type
==
1
)
{
if
(
type
==
1
)
{
this
.
addMsg
.
PlatformUserNameList
.
push
(
inputValue
);
}
else
{
}
else
{
this
.
updateMsg
.
PlatformUserNameList
.
push
(
inputValue
);
}
}
this
.
inputVisible
=
false
;
this
.
inputValue
=
''
;
},
goTeamMember
(
row
){
goTeamMember
(
row
)
{
this
.
customerId
=
row
.
customerId
this
.
ShowTeamMember
=
true
},
seeDeta
(
row
){
seeDeta
(
row
)
{
this
.
detailObj
=
row
this
.
showdetail
=
true
},
reSearchPage
(){
reSearchPage
()
{
this
.
msg
.
pageIndex
=
1
this
.
currentPage
=
1
this
.
getList
()
},
clickAdd
(){
clickAdd
()
{
this
.
cancelData
()
this
.
inputValue
=
''
this
.
inputVisible
=
false
this
.
addShow
=
true
;
this
.
isOldPerson
=
false
,
this
.
addLayer1
=
false
this
.
addShow
=
true
;
this
.
isOldPerson
=
false
,
this
.
addLayer1
=
false
},
uploadFileBtn
(
file
)
{
//上传
if
(
file
.
file
.
size
>
1024
*
1024
*
100
)
{
...
...
@@ -1444,11 +1414,11 @@
}
})
let
AreaName
=
sheng
+
shi
+
qu
if
(
this
.
updateMsg
.
Address
==
''
||!
this
.
updateMsg
.
Address
)
{
if
(
this
.
updateMsg
.
Address
==
''
||
!
this
.
updateMsg
.
Address
)
{
this
.
updateMsg
.
Address
=
AreaName
// this.updateMsg.Address = AreaName + ',' + this.updateMsg.Address
}
if
(
this
.
updateMsg
.
Address
&&
this
.
updateMsg
.
Address
.
indexOf
(
AreaName
)
==-
1
)
{
if
(
this
.
updateMsg
.
Address
&&
this
.
updateMsg
.
Address
.
indexOf
(
AreaName
)
==
-
1
)
{
this
.
updateMsg
.
Address
=
AreaName
+
','
+
this
.
updateMsg
.
Address
}
...
...
@@ -1464,14 +1434,13 @@
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{
})
},
err
=>
{})
},
deleteUploadFile
(
fIndex
,
type
)
{
if
(
type
)
{
this
.
addMsg
.
BusinessCardPhotos
.
splice
(
fIndex
,
1
)
}
else
{
this
.
updateMsg
.
BusinessCardPhotos
.
splice
(
fIndex
,
1
)
deleteUploadFile
(
fIndex
,
type
)
{
if
(
type
)
{
this
.
addMsg
.
BusinessCardPhotos
.
splice
(
fIndex
,
1
)
}
else
{
this
.
updateMsg
.
BusinessCardPhotos
.
splice
(
fIndex
,
1
)
}
},
uploadImgNew
(
file
)
{
...
...
@@ -1530,11 +1499,12 @@
this
.
updateMsg
.
CustomerExceptionIds
=
[]
this
.
updateMsg
.
District
=
x
.
district
this
.
BusinessCardPhotos
=
x
.
businessCardPhotos
&&
x
.
businessCardPhotos
.
length
>
0
?
x
.
businessCardPhotos
[
0
]:
''
this
.
updateMsg
.
BusinessCardPhotos
=
x
.
businessCardPhotos
?
x
.
businessCardPhotos
:[]
this
.
updateMsg
.
PlatformUserNameList
=
x
.
platformUserNameList
?
x
.
platformUserNameList
:[]
this
.
Images
=
x
.
images
&&
x
.
images
.
length
>
0
?
x
.
images
[
0
]:
''
this
.
HousePhotos
=
x
.
housePhotos
&&
x
.
housePhotos
.
length
>
0
?
x
.
housePhotos
[
0
]:
''
this
.
BusinessCardPhotos
=
x
.
businessCardPhotos
&&
x
.
businessCardPhotos
.
length
>
0
?
x
.
businessCardPhotos
[
0
]
:
''
this
.
updateMsg
.
BusinessCardPhotos
=
x
.
businessCardPhotos
?
x
.
businessCardPhotos
:
[]
this
.
updateMsg
.
PlatformUserNameList
=
x
.
platformUserNameList
?
x
.
platformUserNameList
:
[]
this
.
Images
=
x
.
images
&&
x
.
images
.
length
>
0
?
x
.
images
[
0
]
:
''
this
.
HousePhotos
=
x
.
housePhotos
&&
x
.
housePhotos
.
length
>
0
?
x
.
housePhotos
[
0
]
:
''
this
.
updateMsg
.
uniqueCode
=
x
.
uniqueCode
this
.
updateMsg
.
lineid
=
x
.
lineid
...
...
@@ -1633,10 +1603,10 @@
let
path
=
"/Upload/Temporary/"
;
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
that
.
BusinessCardPhotos
=
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
if
(
that
.
addShow
==
true
)
{
if
(
that
.
addShow
==
true
)
{
that
.
addMsg
.
BusinessCardPhotos
.
push
(
that
.
BusinessCardPhotos
)
}
if
(
that
.
addLayer1
==
true
)
{
if
(
that
.
addLayer1
==
true
)
{
that
.
updateMsg
.
BusinessCardPhotos
.
push
(
that
.
BusinessCardPhotos
)
}
that
.
$message
.
success
(
'上传成功'
);
...
...
@@ -1814,10 +1784,10 @@
},
clickGetList
(
type
)
{
this
.
msg
.
CustomerStatus
=
type
if
(
type
==
0
)
{
this
.
msg
.
SigningType
=
1
}
else
{
this
.
msg
.
SigningType
=
0
if
(
type
==
0
)
{
this
.
msg
.
SigningType
=
1
}
else
{
this
.
msg
.
SigningType
=
0
}
this
.
reSearchPage
()
},
...
...
@@ -1914,11 +1884,11 @@
}
})
let
AreaName
=
sheng
+
shi
+
qu
if
(
this
.
addMsg
.
address
==
''
||!
this
.
addMsg
.
address
)
{
if
(
this
.
addMsg
.
address
==
''
||
!
this
.
addMsg
.
address
)
{
this
.
addMsg
.
address
=
AreaName
// this.addMsg.address = AreaName + ',' + this.addMsg.address
}
if
(
this
.
addMsg
.
address
&&
this
.
addMsg
.
address
.
indexOf
(
AreaName
)
==-
1
)
{
if
(
this
.
addMsg
.
address
&&
this
.
addMsg
.
address
.
indexOf
(
AreaName
)
==
-
1
)
{
this
.
addMsg
.
address
=
AreaName
+
','
+
this
.
addMsg
.
address
}
if
(
!
this
.
addMsg
.
address
)
{
...
...
@@ -1961,14 +1931,16 @@
this
.
$message
.
error
(
res
.
data
.
message
)
}
this
.
loadingSave
=
false
},
err
=>
{
this
.
loadingSave
=
false
})
},
err
=>
{
this
.
loadingSave
=
false
})
},
cancelEdit
()
{
// 取消新增
this
.
addShow
=
false
this
.
cancelData
()
this
.
resetForm
(
'addMsg'
)
},
cancelData
(){
cancelData
()
{
this
.
addMsg
=
{
CustomerId
:
0
,
customerName
:
''
,
...
...
@@ -1995,9 +1967,9 @@
PlatformUserNameList
:
[]
}
this
.
BusinessCardPhotos
=
''
,
this
.
HousePhotos
=
''
,
this
.
Images
=
''
,
this
.
addMsgS
.
customerVisit
.
expectVisitDateTime
=
''
this
.
HousePhotos
=
''
,
this
.
Images
=
''
,
this
.
addMsgS
.
customerVisit
.
expectVisitDateTime
=
''
},
resetForm
(
formName
)
{
// 重置表单
this
.
$refs
[
formName
].
resetFields
();
...
...
@@ -2007,6 +1979,9 @@
this
.
getList
();
},
},
created
()
{
this
.
currentUserInfo
=
this
.
getLocalStorage
();
},
mounted
()
{
this
.
getList
()
this
.
getCustomerBrandList
()
...
...
src/components/busManagement/CharteringManagement/CharteringInfoManage.vue
View file @
5209fd6f
...
...
@@ -1301,25 +1301,15 @@ export default {
if
(
this
.
outerVisible
)
{
if
(
!
blo
)
{
this
.
addMsg
.
AirportList
&&
this
.
addMsg
.
AirportList
.
forEach
(
x
=>
{
// x.Id=0,
// x.ProductId= 0//产品id
x
.
AirportId
=
x
.
AirportId
?
x
.
AirportId
:
''
//机场id
// x.Lng= ''
// x.Lat= ''
x
.
Name
=
x
.
Name
?
x
.
Name
:
''
//机场名称 包含IATA
// x.Address= ''//详细地址
})
}
this
.
layer_Departure_airport
=
res
.
data
.
data
;
}
else
{
this
.
addMsg
.
AirportList
&&
this
.
addMsg
.
AirportList
.
forEach
(
x
=>
{
// x.Id=0,
// x.ProductId= 0//产品id
x
.
AirportId
=
x
.
AirportId
?
x
.
AirportId
:
''
//机场id
// x.Lng= ''
// x.Lat= ''
x
.
Name
=
x
.
Name
?
x
.
Name
:
''
//机场名称 包含IATA
// x.Address= ''//详细地址
})
this
.
Departure_airport
=
res
.
data
.
data
;
}
...
...
@@ -1333,15 +1323,6 @@ export default {
showImg
:
function
(
src
)
{
this
.
images
=
[]
this
.
images
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
addMsg
.
ImageList
))
// let srcArr = src.split('?')
// src = srcArr[0]
// let isExsit = false
// this.images.forEach(x => {
// if (x === src)
// isExsit = true
// })
// if (!isExsit)
// this.images.push(src)
this
.
$viewer
.
show
()
this
.
$viewer
.
view
(
this
.
images
.
indexOf
(
src
))
},
...
...
src/components/busManagement/CharteringManagement/CharteringProductList.vue
View file @
5209fd6f
<
style
>
.scenicSpotList
.clearfix
:after
{
content
:
"\0020"
;
display
:
block
;
height
:
0
;
clear
:
both
;
}
.scenicSpotList
.hotelResource
{
width
:
100%
;
min-height
:
500px
;
margin-top
:
20px
;
}
.scenicSpotList
.resourceList
{
width
:
215px
;
background-color
:
#fff
;
border
:
1px
dashed
#ededed
;
border-radius
:
4px
;
margin
:
0
20px
20px
0
;
font-size
:
12px
;
color
:
#333333
;
float
:
left
;
}
.scenicSpotList
.resourceList
:hover
{
box-shadow
:
0px
0px
20px
rgba
(
191
,
191
,
191
,
1
);
transition
:
all
linear
0.5s
;
}
.scenicSpotList
.reTopInfo
{
width
:
100%
;
height
:
123px
;
position
:
relative
;
}
.scenicSpotList
.reTopInfo
img
{
position
:
absolute
;
width
:
100%
;
height
:
100%
;
top
:
0
;
border-top-left-radius
:
4px
;
border-top-right-radius
:
4px
;
}
.scenicSpotList
.resTypeList
{
position
:
absolute
;
top
:
10px
;
left
:
10px
;
}
.scenicSpotList
.resTypeList
span
{
display
:
inline-block
;
padding
:
1px
5px
;
border-radius
:
10px
;
color
:
#fff
;
margin-right
:
10px
;
}
.scenicSpotList
.L1
{
background-color
:
#e95252
;
}
.scenicSpotList
.L2
{
background-color
:
#47bf8c
;
}
.scenicSpotList
.L3
{
background-color
:
#2aaef2
;
}
.scenicSpotList
.L4
{
background-color
:
#9cf
;
}
.scenicSpotList
.L5
{
background-color
:
#00c6ff
;
margin-top
:
5px
;
}
.scenicSpotList
.starSu
{
position
:
absolute
;
bottom
:
8px
;
right
:
10px
;
display
:
flex
;
}
.scenicSpotList
.starSu
.star
{
margin-left
:
5px
;
}
.scenicSpotList
.sushe
{
background-color
:
#ffc800
;
display
:
inline-block
;
padding
:
1px
5px
;
border-radius
:
10px
;
color
:
#fff
;
}
.scenicSpotList
.hotelTitle
{
margin
:
20px
16px
0
16px
;
font-size
:
14px
;
color
:
#333333
;
height
:
20px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
.scenicSpotList
.brandList
i
{
position
:
relative
;
top
:
2px
;
}
.scenicSpotList
.brand
{
float
:
left
;
width
:
49%
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
text-align
:
center
;
}
.scenicSpotList
.dayNum
{
float
:
right
;
text-align
:
center
;
width
:
50%
;
}
.scenicSpotList
.iconfont
{
margin-right
:
5px
;
}
.scenicSpotList
.dieline
{
color
:
#2aaef2
;
font-size
:
14px
;
top
:
1px
!important
;
}
.scenicSpotList
.AddressInner
{
float
:
right
;
width
:
160px
;
height
:
18px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
;
}
.scenicSpotList
.btnList
{
padding
:
10px
10px
20px
10px
;
display
:
flex
;
justify-content
:
space-between
;
}
.scenicSpotList
.hotelBtn
{
width
:
60px
;
height
:
28px
;
background
:
#f76f6f
;
border-radius
:
14px
;
color
:
#fff
;
cursor
:
pointer
;
}
.scenicSpotList
.w150
.el-input
{
width
:
150px
!important
;
}
.scenicSpotList
.SupportCount
{
color
:
#4bca81
;
font-size
:
18px
;
font-weight
:
bold
;
margin
:
0
5px
5px
0
;
display
:
inline-block
;
}
.scenicSpotList
.dayNumber
{
color
:
#2aaef2
;
font-size
:
18px
;
font-weight
:
bold
;
margin
:
0
5px
5px
5px
;
display
:
inline-block
;
}
.scenicSpotList
.line
{
float
:
left
;
width
:
1px
;
height
:
35px
;
background-color
:
#ededed
;
margin-top
:
6px
;
}
.scenicSpotList
.foodList
{
display
:
inline-block
;
padding
:
1px
5px
;
background-color
:
#ff9c00
;
color
:
#fff
;
margin-right
:
6px
;
border-radius
:
2px
;
}
.scenicSpotList
.foodList
:last-child
{
margin-right
:
0
;
}
.scenicSpotList
.delScien
{
position
:
absolute
;
right
:
10px
;
top
:
10px
;
display
:
none
;
}
.scenicSpotList
.delScien
:hover
{
color
:
#f76f6f
;
cursor
:
pointer
;
}
.scenicSpotList
.resourceList
:hover
.delScien
{
display
:
block
;
}
.scenicSpotList
.comCursorUrl
{
cursor
:
pointer
;
}
/* 景区列表 */
</
style
>
<
template
>
<div
class=
"flexOne scenicSpotList"
>
<div
class=
"query-box"
>
<ul>
<li>
<span
class=
"hotel_name"
>
<em>
产品名称
</em>
<el-input
maxlength=
"50"
clearable
@
keyup
.
native
.
enter=
"resetPageIndex(),selectResource()"
v-model=
"msg.Name"
>
</el-input
>
</
span
>
</
li
>
<
li>
<span
>
<em>
类型
</em
>
<el-select
v-model=
"msg.CarType"
class=
'multiple_input w210'
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
v-for=
"item in IsCarList"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value
"
>
</el-option
>
</el-
select
>
</
span
>
</
li
>
<
li>
<button
class=
"hollowFixedBtn"
type=
"button"
@
click=
"resetPageIndex(),selectResource()"
>
{{
$t
(
'pub.searchBtn'
)
}}
</button>
<button
class=
"normalBtn"
type=
"button"
@
click=
"goUrl('CharteringInfoManage')"
>
{{
$t
(
'pub.addBtn'
)
}}
</button>
<!--
<button
class=
"hollowFixedBtn"
type=
"button"
@
click=
"DownLoadFile()"
>
{{
$t
(
'adm.adm_download'
)
}}
</button>
-->
</li>
</ul>
</div>
<div
class=
"hotelResource clearfix"
v-loading=
"loading"
>
<div
class=
"resourceList"
v-for=
"item in tableData"
:key=
"item.subCode"
>
<div
class=
"reTopInfo"
:class=
"
{'comCursorUrl':item.ImageList}" @click="OpenNewUrl(item.ImageList[0])">
<img
v-if=
"!item.ImageList"
src=
"../../../assets/img/bg_c3@3x.png"
>
<img
v-else
:src=
'item.ImageList[0]'
:onerror=
"defaultImg"
>
<div
class=
"resTypeList"
>
<!-- B2B 内部 APP 小程序 -->
<!--
<span
v-for=
"(items,index) in item.PlaceList"
.scenicSpotList
.clearfix
:after
{
content
:
"\0020"
;
display
:
block
;
height
:
0
;
clear
:
both
;
}
.scenicSpotList
.hotelResource
{
width
:
100%
;
min-height
:
500px
;
margin-top
:
20px
;
}
.scenicSpotList
.resourceList
{
width
:
215px
;
background-color
:
#fff
;
border
:
1px
dashed
#ededed
;
border-radius
:
4px
;
margin
:
0
20px
20px
0
;
font-size
:
12px
;
color
:
#333333
;
float
:
left
;
}
.scenicSpotList
.resourceList
:hover
{
box-shadow
:
0px
0px
20px
rgba
(
191
,
191
,
191
,
1
);
transition
:
all
linear
0.5s
;
}
.scenicSpotList
.reTopInfo
{
width
:
100%
;
height
:
123px
;
position
:
relative
;
}
.scenicSpotList
.reTopInfo
img
{
position
:
absolute
;
width
:
100%
;
height
:
100%
;
top
:
0
;
border-top-left-radius
:
4px
;
border-top-right-radius
:
4px
;
}
.scenicSpotList
.resTypeList
{
position
:
absolute
;
top
:
10px
;
left
:
10px
;
}
.scenicSpotList
.resTypeList
span
{
display
:
inline-block
;
padding
:
1px
5px
;
border-radius
:
10px
;
color
:
#fff
;
margin-right
:
10px
;
}
.scenicSpotList
.L1
{
background-color
:
#e95252
;
}
.scenicSpotList
.L2
{
background-color
:
#47bf8c
;
}
.scenicSpotList
.L3
{
background-color
:
#2aaef2
;
}
.scenicSpotList
.L4
{
background-color
:
#9cf
;
}
.scenicSpotList
.L5
{
background-color
:
#00c6ff
;
margin-top
:
5px
;
}
.scenicSpotList
.starSu
{
position
:
absolute
;
bottom
:
8px
;
right
:
10px
;
display
:
flex
;
}
.scenicSpotList
.starSu
.star
{
margin-left
:
5px
;
}
.scenicSpotList
.sushe
{
background-color
:
#ffc800
;
display
:
inline-block
;
padding
:
1px
5px
;
border-radius
:
10px
;
color
:
#fff
;
}
.scenicSpotList
.hotelTitle
{
margin
:
20px
16px
0
16px
;
font-size
:
14px
;
color
:
#333333
;
height
:
20px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
.scenicSpotList
.brandList
i
{
position
:
relative
;
top
:
2px
;
}
.scenicSpotList
.brand
{
float
:
left
;
width
:
49%
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
text-align
:
center
;
}
.scenicSpotList
.dayNum
{
float
:
right
;
text-align
:
center
;
width
:
50%
;
}
.scenicSpotList
.iconfont
{
margin-right
:
5px
;
}
.scenicSpotList
.dieline
{
color
:
#2aaef2
;
font-size
:
14px
;
top
:
1px
!important
;
}
.scenicSpotList
.AddressInner
{
float
:
right
;
width
:
160px
;
height
:
18px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
;
}
.scenicSpotList
.btnList
{
padding
:
10px
10px
20px
10px
;
display
:
flex
;
justify-content
:
space-between
;
}
.scenicSpotList
.hotelBtn
{
width
:
60px
;
height
:
28px
;
background
:
#f76f6f
;
border-radius
:
14px
;
color
:
#fff
;
cursor
:
pointer
;
}
.scenicSpotList
.w150
.el-input
{
width
:
150px
!important
;
}
.scenicSpotList
.SupportCount
{
color
:
#4bca81
;
font-size
:
18px
;
font-weight
:
bold
;
margin
:
0
5px
5px
0
;
display
:
inline-block
;
}
.scenicSpotList
.dayNumber
{
color
:
#2aaef2
;
font-size
:
18px
;
font-weight
:
bold
;
margin
:
0
5px
5px
5px
;
display
:
inline-block
;
}
.scenicSpotList
.line
{
float
:
left
;
width
:
1px
;
height
:
35px
;
background-color
:
#ededed
;
margin-top
:
6px
;
}
.scenicSpotList
.foodList
{
display
:
inline-block
;
padding
:
1px
5px
;
background-color
:
#ff9c00
;
color
:
#fff
;
margin-right
:
6px
;
border-radius
:
2px
;
}
.scenicSpotList
.foodList
:last-child
{
margin-right
:
0
;
}
.scenicSpotList
.delScien
{
position
:
absolute
;
right
:
10px
;
top
:
10px
;
display
:
none
;
}
.scenicSpotList
.delScien
:hover
{
color
:
#f76f6f
;
cursor
:
pointer
;
}
.scenicSpotList
.resourceList
:hover
.delScien
{
display
:
block
;
}
.scenicSpotList
.comCursorUrl
{
cursor
:
pointer
;
}
/* 景区列表 */
</
style
>
<
template
>
<div
class=
"flexOne scenicSpotList"
>
<div
class=
"query-box"
>
<ul>
<li>
<span
class=
"hotel_name"
>
<em>
产品名称
</em>
<el-input
maxlength=
"50"
clearable
@
keyup
.
native
.
enter=
"resetPageIndex(),selectResource()"
v-model=
"msg.Name"
>
</
el-input
>
</
span
>
</
li>
<li
>
<span
>
<em>
类型
</em
>
<el-select
v-model=
"msg.CarType"
class=
'multiple_input w210'
:placeholder=
"$t('pub.pleaseSel')
"
>
<el-option
v-for=
"item in IsCarList"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
>
</el-
option
>
</
el-select
>
</
span
>
</
li>
<li>
<button
class=
"hollowFixedBtn"
type=
"button"
@
click=
"resetPageIndex(),selectResource()"
>
{{
$t
(
'pub.searchBtn'
)
}}
</button>
<button
class=
"normalBtn"
type=
"button"
@
click=
"goUrl('CharteringInfoManage')"
>
{{
$t
(
'pub.addBtn'
)
}}
</button>
<!--
<button
class=
"hollowFixedBtn"
type=
"button"
@
click=
"DownLoadFile()"
>
{{
$t
(
'adm.adm_download'
)
}}
</button>
-->
</li>
</ul>
</div>
<div
class=
"hotelResource clearfix"
v-loading=
"loading"
>
<div
class=
"resourceList"
v-for=
"item in tableData"
:key=
"item.subCode"
>
<div
class=
"reTopInfo"
:class=
"
{'comCursorUrl':item.ImageList}" @click="OpenNewUrl(item.ImageList[0])">
<img
v-if=
"!item.ImageList"
src=
"../../../assets/img/bg_c3@3x.png"
>
<img
v-else
:src=
'item.ImageList[0]'
:onerror=
"defaultImg"
>
<div
class=
"resTypeList"
>
<!-- B2B 内部 APP 小程序 -->
<!--
<span
v-for=
"(items,index) in item.PlaceList"
:class=
"
{'L1':items.AirportName,'L2':'','L3':'','L4':'','L5':''}"
:key="index">
{{
items
.
AirportName
}}
</span>
-->
</div>
<div
class=
"delScien"
@
click
.
stop=
"isdelete(item.Id)"
>
<i
class=
"iconfont icon-xingzhuang"
></i>
</div>
<div
class=
"starSu"
>
<div
class=
"star"
v-if=
"item.PlaceList[0].AirportName!=''"
v-for=
"(items,index) in item.PlaceList"
>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"items.Bname"
placement=
"bottom-start"
popper-class=
"max-w250"
>
<span
class=
"foodList"
:key=
"index"
v-if=
"index==0&&items.AirportName"
>
{{
items
.
AirportName
}}
</span>
</el-tooltip>
</div>
<span
v-if=
"item.CarType==1"
class=
"sushe"
>
接机
</span>
<span
v-if=
"item.CarType==2"
class=
"sushe"
>
送机
</span>
<span
v-if=
"item.CarType==3"
class=
"sushe"
>
包车
</span>
</div>
</div>
<
el-tooltip
class=
"item"
effect=
"dark"
:content=
"item.Name"
placement=
"top-start"
popper-class=
"max-w250
"
>
<
div
class=
"hotelTitle"
>
{{
item
.
Name
}}
</div
>
</
el-tooltip
>
<
el-tooltip
class=
"item"
effect=
"dark"
:content=
"item.UpdateByName+''+item.UpdateTime"
placement=
"top-start"
popper-class=
"max-w250
"
>
<div
style=
"padding-left:15px;margin:10px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;"
>
<i
style=
"top: 1px;position: relative;"
class=
"iconfont icon-renyuanguanli"
></i
>
<span
v-if=
"item.UpdateTime && item.UpdateTime!=''"
>
{{
item
.
UpdateBy
Name
}}
</span>
{{
item
.
UpdateTime
}}
<
div
class=
"delScien"
@
click
.
stop=
"isdelete(item.Id)
"
>
<
i
class=
"iconfont icon-xingzhuang"
></i
>
</
div
>
<
div
class=
"starSu"
>
<div
class=
"star"
v-if=
"item.PlaceList[0].AirportName!=''"
v-for=
"(items,index) in item.PlaceList
"
>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"items.Bname"
placement=
"bottom-start"
popper-class=
"max-w250"
>
<span
class=
"foodList"
:key=
"index"
v-if=
"index==0&&items.AirportName"
>
{{
items
.
Airport
Name
}}
</span>
</el-tooltip>
</div>
</el-tooltip>
<div
class=
"btnList"
>
<button
@
click=
"goUrl('CharteringInfoManage',item.Id)"
class=
"hotelBtn"
>
{{
$t
(
'pub.updateMsg'
)
}}
</button>
<button
@
click=
"goUrlT('CharteringQuotation',item.Id,item.Name)"
class=
"hotelBtn"
>
报价
</button>
<button
class=
"hotelBtn"
@
click=
"clickShelf(item)"
>
{{
item
.
ProductState
==
2
?
'上架'
:
'下架'
}}
</button>
<span
v-if=
"item.CarType==1"
class=
"sushe"
>
接机
</span>
<span
v-if=
"item.CarType==2"
class=
"sushe"
>
送机
</span>
<span
v-if=
"item.CarType==3"
class=
"sushe"
>
包车
</span>
</div>
</div>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"item.Name"
placement=
"top-start"
popper-class=
"max-w250"
>
<div
class=
"hotelTitle"
>
{{
item
.
Name
}}
</div>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"item.UpdateByName+''+item.UpdateTime"
placement=
"top-start"
popper-class=
"max-w250"
>
<div
style=
"padding-left:15px;margin:10px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;"
>
<i
style=
"top: 1px;position: relative;"
class=
"iconfont icon-renyuanguanli"
></i>
<span
v-if=
"item.UpdateTime && item.UpdateTime!=''"
>
{{
item
.
UpdateByName
}}
</span>
{{
item
.
UpdateTime
}}
</div>
</el-tooltip>
<div
class=
"btnList"
>
<button
@
click=
"goUrl('CharteringInfoManage',item.Id)"
class=
"hotelBtn"
>
{{
$t
(
'pub.updateMsg'
)
}}
</button>
<button
@
click=
"goUrlT('CharteringQuotation',item.Id,item.Name)"
class=
"hotelBtn"
>
报价
</button>
<button
class=
"hotelBtn"
@
click=
"clickShelf(item)"
>
{{
item
.
ProductState
==
2
?
'上架'
:
'下架'
}}
</button>
</div>
<div
class=
"noData"
v-show=
"noData"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
</div>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"msg.currentPage"
:page-size=
"msg.pageSize"
layout=
"total,prev, pager, next, jumper"
:total=
"msg.total"
></el-pagination>
<div
class=
"noData"
v-show=
"noData"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
countryList
:
""
,
provinceList
:
""
,
cityList
:
""
,
district
:
""
,
Ids
:
[],
tableData
:
""
,
noData
:
false
,
deleteID
:
""
,
status
:
[{
value
:
"0"
,
label
:
this
.
$t
(
'pub.normalSel'
)
},
{
value
:
"1"
,
label
:
this
.
$t
(
'system.table_delete'
)
}
],
IsCarList
:
[{
value
:
"-1"
,
label
:
this
.
$t
(
'pub.unlimitedSel'
)
},
{
value
:
"1"
,
label
:
'接机'
},
{
value
:
"2"
,
label
:
"送机"
},
{
value
:
"3"
,
label
:
"包车"
}
],
loading
:
true
,
EmployeeList
:
[],
defaultImg
:
'this.src="'
+
require
(
"../../../assets/img/bg_z1@2x.png"
)
+
'"'
,
msg
:
{
pageIndex
:
1
,
pageSize
:
14
,
Name
:
""
,
CarType
:
"-1"
,
total
:
0
,
currentPage
:
1
,
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"msg.currentPage"
:page-size=
"msg.pageSize"
layout=
"total,prev, pager, next, jumper"
:total=
"msg.total"
></el-pagination>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
countryList
:
""
,
provinceList
:
""
,
cityList
:
""
,
district
:
""
,
Ids
:
[],
tableData
:
""
,
noData
:
false
,
deleteID
:
""
,
status
:
[{
value
:
"0"
,
label
:
this
.
$t
(
'pub.normalSel'
)
},
{
value
:
"1"
,
label
:
this
.
$t
(
'system.table_delete'
)
}
};
},
methods
:
{
// 上下架
clickShelf
(
item
){
var
that
=
this
;
let
text
if
(
item
.
ProductState
==
1
){
text
=
'下架'
}
if
(
item
.
ProductState
==
2
){
text
=
'上架'
],
IsCarList
:
[{
value
:
"-1"
,
label
:
this
.
$t
(
'pub.unlimitedSel'
)
},
{
value
:
"1"
,
label
:
'接机'
},
{
value
:
"2"
,
label
:
"送机"
},
{
value
:
"3"
,
label
:
"包车"
}
that
.
Confirm
(
`是否要
${
text
}
该包车产品?`
,
function
()
{
var
msg
=
{
ProductId
:
item
.
Id
};
that
.
apipost
(
"CarSingle_post_SetCarSingleProcudtState"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
that
.
Success
(
res
.
data
.
message
);
that
.
selectResource
();
}
else
{
that
.
Error
(
res
.
data
.
message
);
}
},
null
);
});
},
CopyScenic
(
Id
)
{
var
that
=
this
;
that
.
Confirm
(
'是否要复制此景点?'
,
function
()
{
var
msg
=
{
ID
:
Id
};
that
.
apipost
(
"ticketcoupons_post_CopyTicketCouponsService"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
that
.
Success
(
res
.
data
.
message
);
that
.
selectResource
();
}
else
{
that
.
Error
(
res
.
data
.
message
);
}
},
null
);
});
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
selectResource
();
},
resetPageIndex
()
{
this
.
msg
.
pageIndex
=
1
;
this
.
msg
.
currentPage
=
1
;
},
//根据省份获取城市
getProvinceList
(
ID
,
type
)
{
let
msg
=
{
Id
:
ID
],
loading
:
true
,
EmployeeList
:
[],
defaultImg
:
'this.src="'
+
require
(
"../../../assets/img/bg_z1@2x.png"
)
+
'"'
,
msg
:
{
pageIndex
:
1
,
pageSize
:
14
,
Name
:
""
,
CarType
:
"-1"
,
total
:
0
,
currentPage
:
1
,
}
};
},
methods
:
{
// 上下架
clickShelf
(
item
)
{
var
that
=
this
;
let
text
if
(
item
.
ProductState
==
1
)
{
text
=
'下架'
}
if
(
item
.
ProductState
==
2
)
{
text
=
'上架'
}
that
.
Confirm
(
`是否要
${
text
}
该包车产品?`
,
function
()
{
var
msg
=
{
ProductId
:
item
.
Id
};
if
(
type
==
1
)
{
this
.
msg
.
QProvince
=
""
;
this
.
msg
.
QCity
=
""
;
this
.
msg
.
QDistrict
=
""
;
}
else
if
(
type
==
2
)
{
this
.
msg
.
QCity
=
""
;
this
.
msg
.
QDistrict
=
""
;
}
else
if
(
type
==
3
)
{
this
.
msg
.
QDistrict
=
""
;
}
if
(
this
.
msg
.
QCountry
!==
""
)
{
this
.
apipost
(
"dict_post_Destination_GetChildList"
,
msg
,
res
=>
{
if
(
type
==
1
)
{
this
.
provinceList
=
res
.
data
.
data
;
}
else
if
(
type
==
2
)
{
this
.
cityList
=
res
.
data
.
data
;
}
else
if
(
type
==
3
)
{
this
.
district
=
res
.
data
.
data
;
}
},
err
=>
{}
);
}
},
//获取国家
getCountryList
()
{
this
.
apipost
(
"dict_post_Destination_GetCountry"
,
{},
that
.
apipost
(
"CarSingle_post_SetCarSingleProcudtState"
,
msg
,
res
=>
{
this
.
countryList
=
res
.
data
.
data
;
if
(
res
.
data
.
resultCode
==
1
)
{
that
.
Success
(
res
.
data
.
message
);
that
.
selectResource
();
}
else
{
that
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
null
);
},
isdelete
(
ID
)
{
var
that
=
this
;
that
.
Confirm
(
that
.
$t
(
'tips.shifoushanchu'
),
function
()
{
that
.
apipost
(
"CarSingle_post_DelCarSingleProcudt"
,
{
ProductId
:
ID
},
response
=>
{
if
(
response
.
data
.
resultCode
==
1
)
{
that
.
Success
(
that
.
$t
(
'tips.shanchuchenggong'
));
that
.
selectResource
();
}
else
{
that
.
Error
(
response
.
data
.
message
);
}
},
null
);
});
},
DownLoadFile
()
{
this
.
loading
=
true
;
let
myDate
=
new
Date
();
let
_year
=
myDate
.
getFullYear
();
let
_month
=
myDate
.
getMonth
()
>=
9
?
myDate
.
getMonth
()
+
1
:
'0'
+
(
myDate
.
getMonth
()
+
1
);
let
_date
=
myDate
.
getDate
()
>
9
?
myDate
.
getDate
()
:
'0'
+
myDate
.
getDate
();
let
_hours
=
myDate
.
getHours
()
>
9
?
myDate
.
getHours
()
:
'0'
+
myDate
.
getHours
();
let
_minutes
=
myDate
.
getMinutes
()
>
9
?
myDate
.
getMinutes
()
:
'0'
+
myDate
.
getMinutes
();
let
_seconds
=
myDate
.
getSeconds
()
>
9
?
myDate
.
getSeconds
()
:
'0'
+
myDate
.
getSeconds
();
let
downDate
=
_year
+
_month
+
_date
+
_hours
+
_minutes
+
_seconds
;
var
fileName
=
this
.
$t
(
'ground.jingdanxinx'
)
+
downDate
+
".xls"
;
this
.
GetLocalFile
(
"dmcstatistics_post_GetTicketCouponsExport"
,
this
.
msg
,
fileName
,
res
=>
{
this
.
loading
=
false
;
});
},
selectResource
()
{
this
.
loading
=
true
;
if
(
this
.
msg
.
Status
==
""
)
{
this
.
msg
.
Status
=
"-1"
;
}
this
.
apipost
(
"CarSingle_post_GetCarSingleProductPageList"
,
this
.
msg
,
});
},
CopyScenic
(
Id
)
{
var
that
=
this
;
that
.
Confirm
(
'是否要复制此景点?'
,
function
()
{
var
msg
=
{
ID
:
Id
};
that
.
apipost
(
"ticketcoupons_post_CopyTicketCouponsService"
,
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
msg
.
total
=
res
.
data
.
data
.
count
;
var
tempData
=
res
.
data
.
data
.
pageData
;
this
.
noData
=
!
this
.
msg
.
total
>
0
;
tempData
.
forEach
(
x
=>
{
if
(
x
.
ScenicSpotTag
!=
null
&&
x
.
ScenicSpotTag
!==
""
)
{
x
.
FoodTagArr
=
x
.
ScenicSpotTag
.
split
(
","
);
var
newAr
=
[];
if
(
x
.
FoodTagArr
!=
null
)
{
x
.
FoodTagArr
.
forEach
(
o
=>
{
newAr
.
push
({
Aname
:
o
.
slice
(
0
,
3
),
Bname
:
o
});
});
x
.
newAr
=
newAr
;
}
}
});
this
.
tableData
=
tempData
;
that
.
Success
(
res
.
data
.
message
);
that
.
selectResource
();
}
else
{
that
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
goUrl
(
path
,
id
)
{
if
(
id
){
this
.
$store
.
commit
(
"pageConditionUpdate"
,
this
.
msg
);
this
.
$router
.
push
({
path
:
path
,
query
:
{
id
:
id
,
blank
:
'y'
,
tab
:
'修改产品信息'
}
});
}
else
{
this
.
$router
.
push
({
path
:
path
,
query
:
{
id
:
0
,
blank
:
'y'
,
tab
:
'新增产品信息'
}
});
}
},
goUrlT
(
path
,
id
,
Name
)
{
let
data
=
{
id
:
id
,
Name
:
Name
,
}
this
.
$router
.
push
({
path
:
path
,
query
:
{
obj
:
JSON
.
stringify
(
data
),
blank
:
'y'
,
tab
:
'产品报价'
}
});
},
//根据当前员工所在部门获取该部门及子部门员工信息
getEmployeeList
()
{
let
userInfo
=
this
.
getLocalStorage
();
let
msg
=
{
GroupId
:
userInfo
.
RB_Group_id
,
BranchId
:
"-1"
,
DepartmentId
:
"-1"
,
PostId
:
"-1"
,
IsLeave
:
"0"
};
});
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
selectResource
();
},
resetPageIndex
()
{
this
.
msg
.
pageIndex
=
1
;
this
.
msg
.
currentPage
=
1
;
},
//根据省份获取城市
getProvinceList
(
ID
,
type
)
{
let
msg
=
{
Id
:
ID
};
if
(
type
==
1
)
{
this
.
msg
.
QProvince
=
""
;
this
.
msg
.
QCity
=
""
;
this
.
msg
.
QDistrict
=
""
;
}
else
if
(
type
==
2
)
{
this
.
msg
.
QCity
=
""
;
this
.
msg
.
QDistrict
=
""
;
}
else
if
(
type
==
3
)
{
this
.
msg
.
QDistrict
=
""
;
}
if
(
this
.
msg
.
QCountry
!==
""
)
{
this
.
apipost
(
"admin_get_EmployeeGetList"
,
{},
"dict_post_Destination_GetChildList"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
EmployeeList
=
res
.
data
.
data
;
if
(
type
==
1
)
{
this
.
provinceList
=
res
.
data
.
data
;
}
else
if
(
type
==
2
)
{
this
.
cityList
=
res
.
data
.
data
;
}
else
if
(
type
==
3
)
{
this
.
district
=
res
.
data
.
data
;
}
},
err
=>
{}
);
}
,
}
},
mounted
()
{
this
.
getEmployeeList
();
this
.
getCountryList
();
//获取国家
getCountryList
()
{
this
.
apipost
(
"dict_post_Destination_GetCountry"
,
{},
res
=>
{
this
.
countryList
=
res
.
data
.
data
;
},
err
=>
{}
);
},
created
()
{
if
(
this
.
$route
.
query
.
hasOwnProperty
(
"cache"
))
{
if
(
this
.
$store
.
state
.
pageCondition
!=
null
)
{
this
.
msg
=
this
.
$store
.
state
.
pageCondition
;
}
isdelete
(
ID
)
{
var
that
=
this
;
that
.
Confirm
(
that
.
$t
(
'tips.shifoushanchu'
),
function
()
{
that
.
apipost
(
"CarSingle_post_DelCarSingleProcudt"
,
{
ProductId
:
ID
},
response
=>
{
if
(
response
.
data
.
resultCode
==
1
)
{
that
.
Success
(
that
.
$t
(
'tips.shanchuchenggong'
));
that
.
selectResource
();
}
else
{
that
.
Error
(
response
.
data
.
message
);
}
},
null
);
});
},
DownLoadFile
()
{
this
.
loading
=
true
;
let
myDate
=
new
Date
();
let
_year
=
myDate
.
getFullYear
();
let
_month
=
myDate
.
getMonth
()
>=
9
?
myDate
.
getMonth
()
+
1
:
'0'
+
(
myDate
.
getMonth
()
+
1
);
let
_date
=
myDate
.
getDate
()
>
9
?
myDate
.
getDate
()
:
'0'
+
myDate
.
getDate
();
let
_hours
=
myDate
.
getHours
()
>
9
?
myDate
.
getHours
()
:
'0'
+
myDate
.
getHours
();
let
_minutes
=
myDate
.
getMinutes
()
>
9
?
myDate
.
getMinutes
()
:
'0'
+
myDate
.
getMinutes
();
let
_seconds
=
myDate
.
getSeconds
()
>
9
?
myDate
.
getSeconds
()
:
'0'
+
myDate
.
getSeconds
();
let
downDate
=
_year
+
_month
+
_date
+
_hours
+
_minutes
+
_seconds
;
var
fileName
=
this
.
$t
(
'ground.jingdanxinx'
)
+
downDate
+
".xls"
;
this
.
GetLocalFile
(
"dmcstatistics_post_GetTicketCouponsExport"
,
this
.
msg
,
fileName
,
res
=>
{
this
.
loading
=
false
;
});
},
selectResource
()
{
this
.
loading
=
true
;
if
(
this
.
msg
.
Status
==
""
)
{
this
.
msg
.
Status
=
"-1"
;
}
if
(
this
.
$route
.
query
.
StatisticsSTime
){
this
.
msg
.
StatisticsSTime
=
this
.
$route
.
query
.
StatisticsSTime
this
.
apipost
(
"CarSingle_post_GetCarSingleProductPageList"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
msg
.
total
=
res
.
data
.
data
.
count
;
var
tempData
=
res
.
data
.
data
.
pageData
;
this
.
noData
=
!
this
.
msg
.
total
>
0
;
tempData
.
forEach
(
x
=>
{
if
(
x
.
ScenicSpotTag
!=
null
&&
x
.
ScenicSpotTag
!==
""
)
{
x
.
FoodTagArr
=
x
.
ScenicSpotTag
.
split
(
","
);
var
newAr
=
[];
if
(
x
.
FoodTagArr
!=
null
)
{
x
.
FoodTagArr
.
forEach
(
o
=>
{
newAr
.
push
({
Aname
:
o
.
slice
(
0
,
3
),
Bname
:
o
});
});
x
.
newAr
=
newAr
;
}
}
});
this
.
tableData
=
tempData
;
}
},
null
);
},
goUrl
(
path
,
id
)
{
if
(
id
)
{
this
.
$store
.
commit
(
"pageConditionUpdate"
,
this
.
msg
);
this
.
$router
.
push
({
path
:
path
,
query
:
{
id
:
id
,
blank
:
'y'
,
tab
:
'修改产品信息'
}
});
}
else
{
this
.
$router
.
push
({
path
:
path
,
query
:
{
id
:
0
,
blank
:
'y'
,
tab
:
'新增产品信息'
}
});
}
if
(
this
.
$route
.
query
.
StatisticsETime
){
this
.
msg
.
StatisticsETime
=
this
.
$route
.
query
.
StatisticsETime
},
goUrlT
(
path
,
id
,
Name
)
{
let
data
=
{
id
:
id
,
Name
:
Name
,
}
if
(
this
.
$route
.
query
.
type
)
{
if
(
this
.
$route
.
query
.
type
==
1
){
this
.
msg
.
CreateBy
=
this
.
$route
.
query
.
EmployeeId
;
}
if
(
this
.
$route
.
query
.
type
==
2
){
t
his
.
msg
.
UpdateBy
=
this
.
$route
.
query
.
EmployeeId
;
this
.
$router
.
push
(
{
path
:
path
,
query
:
{
obj
:
JSON
.
stringify
(
data
),
blank
:
'y'
,
t
ab
:
'产品报价'
}
});
},
//根据当前员工所在部门获取该部门及子部门员工信息
getEmployeeList
()
{
let
userInfo
=
this
.
getLocalStorage
();
let
msg
=
{
GroupId
:
userInfo
.
RB_Group_id
,
BranchId
:
"-1"
,
DepartmentId
:
"-1"
,
PostId
:
"-1"
,
IsLeave
:
"0"
};
this
.
apipost
(
"admin_get_EmployeeGetList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
EmployeeList
=
res
.
data
.
data
;
}
},
err
=>
{}
);
},
},
mounted
()
{
this
.
getEmployeeList
();
this
.
getCountryList
();
},
created
()
{
if
(
this
.
$route
.
query
.
hasOwnProperty
(
"cache"
))
{
if
(
this
.
$store
.
state
.
pageCondition
!=
null
)
{
this
.
msg
=
this
.
$store
.
state
.
pageCondition
;
}
var
id
=
this
.
$route
.
query
.
ID
;
if
(
id
)
{
this
.
msg
.
ID
=
id
;
}
if
(
this
.
$route
.
query
.
StatisticsSTime
)
{
this
.
msg
.
StatisticsSTime
=
this
.
$route
.
query
.
StatisticsSTime
}
if
(
this
.
$route
.
query
.
StatisticsETime
)
{
this
.
msg
.
StatisticsETime
=
this
.
$route
.
query
.
StatisticsETime
}
if
(
this
.
$route
.
query
.
type
)
{
if
(
this
.
$route
.
query
.
type
==
1
)
{
this
.
msg
.
CreateBy
=
this
.
$route
.
query
.
EmployeeId
;
}
if
(
this
.
$route
.
query
.
type
==
2
)
{
this
.
msg
.
UpdateBy
=
this
.
$route
.
query
.
EmployeeId
;
}
this
.
selectResource
();
}
};
</
script
>
\ No newline at end of file
var
id
=
this
.
$route
.
query
.
ID
;
if
(
id
)
{
this
.
msg
.
ID
=
id
;
}
this
.
selectResource
();
}
};
</
script
>
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