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
ba1474f1
Commit
ba1474f1
authored
Nov 25, 2019
by
黄媛媛
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
c6085d73
332303e1
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
1255 additions
and
585 deletions
+1255
-585
Ground.js
src/assets/common/lang/zhCN/Ground.js
+1
-0
Ground.js
src/assets/common/lang/zhTW/Ground.js
+1
-0
HotelSupplier.vue
src/components/Hotel/HotelSupplier.vue
+581
-365
HotelSupplierHotel.vue
src/components/Hotel/HotelSupplierHotel.vue
+251
-182
roomReservationsDetails.vue
src/components/Hotel/roomReservationsDetails.vue
+43
-34
leaderReimbursement.vue
src/components/LeaderManagement/leaderReimbursement.vue
+15
-4
customerMap.vue
src/components/SalesModule/customerMap.vue
+147
-0
customerTransfer.vue
src/components/SalesModule/customerTransfer.vue
+9
-0
appUpdateLog.vue
src/components/systemManagement/appUpdateLog.vue
+191
-0
config.js
src/router/config.js
+16
-0
No files found.
src/assets/common/lang/zhCN/Ground.js
View file @
ba1474f1
...
@@ -677,5 +677,6 @@ export const obj = {
...
@@ -677,5 +677,6 @@ export const obj = {
suoshusj
:
'所属上级'
,
suoshusj
:
'所属上级'
,
shangpinlxmc
:
'商品类型名称'
,
shangpinlxmc
:
'商品类型名称'
,
qingshangctp
:
'请上传图片'
,
qingshangctp
:
'请上传图片'
,
kehuditu
:
'客户地图'
}
}
export
default
obj
;
export
default
obj
;
\ No newline at end of file
src/assets/common/lang/zhTW/Ground.js
View file @
ba1474f1
...
@@ -677,5 +677,6 @@ xiugaishangplx: '修改商品類型',
...
@@ -677,5 +677,6 @@ xiugaishangplx: '修改商品類型',
suoshusj
:
'所屬上級'
,
suoshusj
:
'所屬上級'
,
shangpinlxmc
:
'商品類型名稱'
,
shangpinlxmc
:
'商品類型名稱'
,
qingshangctp
:
'請上傳圖片'
,
qingshangctp
:
'請上傳圖片'
,
kehuditu
:
'客戶地圖'
}
}
export
default
obj
;
export
default
obj
;
\ No newline at end of file
src/components/Hotel/HotelSupplier.vue
View file @
ba1474f1
<
style
>
<
style
>
@import
"../../assets/css/comSupplier.css"
;
@import
"../../assets/css/comSupplier.css"
;
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"flexOne suppierManage"
>
<div
class=
"flexOne suppierManage"
>
...
@@ -8,147 +7,358 @@
...
@@ -8,147 +7,358 @@
<ul>
<ul>
<li>
<li>
<span>
<span>
<em>
{{
$t
(
'system.quety_area'
)
}}
</em>
<em>
{{
$t
(
"system.quety_area"
)
}}
</em>
<el-select
v-model=
"msg.CountryStr"
clearable
class=
"w150"
filterable
<el-select
@
change=
"getProvinceList(msg.CountryStr,1)"
:placeholder=
"$t('hotel.hotel_country')"
>
v-model=
"msg.CountryStr"
<el-option
v-for=
'item in countryList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
clearable
class=
"w150"
filterable
@
change=
"getProvinceList(msg.CountryStr, 1)"
:placeholder=
"$t('hotel.hotel_country')"
>
<el-option
v-for=
"item in countryList"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-option>
</el-select>
</el-select>
<el-select
v-model=
"msg.ProvinceStr"
class=
"w150"
filterable
@
change=
"getProvinceList(msg.ProvinceStr,2)"
<el-select
:placeholder=
"$t('hotel.hotel_province')"
>
v-model=
"msg.ProvinceStr"
<el-option
v-for=
'item in provinceList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
class=
"w150"
filterable
@
change=
"getProvinceList(msg.ProvinceStr, 2)"
:placeholder=
"$t('hotel.hotel_province')"
>
<el-option
v-for=
"item in provinceList"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-option>
</el-select>
</el-select>
<el-select
v-model=
"msg.CityStr"
class=
"w150"
filterable
@
change=
"getProvinceList(msg.CityStr,3)"
<el-select
:placeholder=
"$t('hotel.hotel_city')"
>
v-model=
"msg.CityStr"
<el-option
v-for=
'item in cityList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
class=
"w150"
filterable
@
change=
"getProvinceList(msg.CityStr, 3)"
:placeholder=
"$t('hotel.hotel_city')"
>
<el-option
v-for=
"item in cityList"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-option>
</el-select>
</el-select>
<el-select
v-model=
"msg.DistrictStr"
class=
"w150"
filterable
:placeholder=
"$t('hotel.hotel_area')"
>
<el-select
<el-option
v-for=
'item in district'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
v-model=
"msg.DistrictStr"
class=
"w150"
filterable
:placeholder=
"$t('hotel.hotel_area')"
>
<el-option
v-for=
"item in district"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-option>
</el-select>
</el-select>
</span>
</span>
</li>
</li>
<li>
<li>
<span>
<span>
<em>
{{
$t
(
'hotel.suplier_name'
)
}}
</em>
<em>
{{
$t
(
"hotel.suplier_name"
)
}}
</em>
<el-input
maxlength=
"50"
@
keyup
.
native
.
enter=
"initData"
v-model=
"msg.Name"
class=
"permiss-input w150"
<el-input
:placeholder=
"$t('pub.pleaseImport')"
></el-input>
maxlength=
"50"
@
keyup
.
native
.
enter=
"initData"
v-model=
"msg.Name"
class=
"permiss-input w150"
:placeholder=
"$t('pub.pleaseImport')"
></el-input>
</span>
</span>
</li>
</li>
<li>
<li>
<span>
<span>
<em>
{{
$t
(
'hotel.suplier_contact'
)
}}
</em>
<em>
{{
$t
(
"hotel.suplier_contact"
)
}}
</em>
<el-input
maxlength=
"50"
@
keyup
.
native
.
enter=
"initData"
v-model=
"msg.Contact"
class=
"permiss-input w150"
<el-input
:placeholder=
"$t('pub.pleaseImport')"
></el-input>
maxlength=
"50"
@
keyup
.
native
.
enter=
"initData"
v-model=
"msg.Contact"
class=
"permiss-input w150"
:placeholder=
"$t('pub.pleaseImport')"
></el-input>
</span>
</span>
</li>
</li>
<li>
<li>
<button
class=
"hollowFixedBtn"
type=
"button"
<button
@
click=
"resetPageIndex(),initData()"
>
{{
$t
(
'pub.searchBtn'
)
}}
</button>
class=
"hollowFixedBtn"
<button
class=
"normalBtn"
type=
"button"
type=
"button"
@
click=
"clearinputInfo(),outerVisible = true,dialogTitle=$t('visaT.Addingsuppliers')"
>
{{
$t
(
'pub.addBtn'
)
}}
</button>
@
click=
"resetPageIndex(), initData()"
>
{{
$t
(
"pub.searchBtn"
)
}}
</button>
<button
class=
"normalBtn"
type=
"button"
@
click=
"
clearinputInfo(),
(outerVisible = true),
(dialogTitle = $t('visaT.Addingsuppliers'))
"
>
{{
$t
(
"pub.addBtn"
)
}}
</button>
</li>
</li>
</ul>
</ul>
<el-dialog
custom-class=
'addCompany'
:title=
"dialogTitle"
:visible
.
sync=
"outerVisible"
center
>
<el-dialog
<el-form
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"100px"
>
custom-class=
"addCompany"
:title=
"dialogTitle"
:visible
.
sync=
"outerVisible"
center
>
<el-form
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"100px"
>
<el-form-item
:label=
"$t('hotel.suplier_name')"
prop=
"Name"
>
<el-form-item
:label=
"$t('hotel.suplier_name')"
prop=
"Name"
>
<el-input
type=
"text"
class=
"w300"
maxlength=
"50"
v-model=
"addMsg.Name"
></el-input>
<el-input
type=
"text"
class=
"w300"
maxlength=
"50"
v-model=
"addMsg.Name"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('restaurant.res_belongArea')"
>
<el-form-item
:label=
"$t('restaurant.res_belongArea')"
>
<el-select
v-model=
"addMsg.Country"
clearable
class=
"w150"
filterable
<el-select
@
change=
"getProvinceList(addMsg.Country,1)"
:placeholder=
"$t('hotel.hotel_country')"
>
v-model=
"addMsg.Country"
<el-option
v-for=
'item in countryList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
clearable
class=
"w150"
filterable
@
change=
"getProvinceList(addMsg.Country, 1)"
:placeholder=
"$t('hotel.hotel_country')"
>
<el-option
v-for=
"item in countryList"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-option>
</el-select>
</el-select>
<el-select
v-model=
"addMsg.Province"
class=
"w150"
filterable
@
change=
"getProvinceList(addMsg.Province,2)"
<el-select
:placeholder=
"$t('hotel.hotel_province')"
>
v-model=
"addMsg.Province"
<el-option
v-for=
'item in provinceList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
class=
"w150"
filterable
@
change=
"getProvinceList(addMsg.Province, 2)"
:placeholder=
"$t('hotel.hotel_province')"
>
<el-option
v-for=
"item in provinceList"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-option>
</el-select>
</el-select>
<el-select
v-model=
"addMsg.City"
class=
"w150"
filterable
@
change=
"getProvinceList(addMsg.City,3)"
<el-select
:placeholder=
"$t('hotel.hotel_city')"
>
v-model=
"addMsg.City"
<el-option
v-for=
'item in cityList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
class=
"w150"
filterable
@
change=
"getProvinceList(addMsg.City, 3)"
:placeholder=
"$t('hotel.hotel_city')"
>
<el-option
v-for=
"item in cityList"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-option>
</el-select>
</el-select>
<el-select
v-model=
"addMsg.District"
class=
"w150"
filterable
:placeholder=
"$t('hotel.hotel_area')"
>
<el-select
<el-option
v-for=
'item in district'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
v-model=
"addMsg.District"
class=
"w150"
filterable
:placeholder=
"$t('hotel.hotel_area')"
>
<el-option
v-for=
"item in district"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('hotel.table_HotelAddress')"
prop=
"Address"
>
<el-form-item
:label=
"$t('hotel.table_HotelAddress')"
prop=
"Address"
>
<el-input
type=
"text"
class=
"w300"
maxlength=
"50"
v-model=
"addMsg.Address"
<el-input
:placeholder=
"$t('hotel.table_areaDetail')"
></el-input>
type=
"text"
class=
"w300"
maxlength=
"50"
v-model=
"addMsg.Address"
:placeholder=
"$t('hotel.table_areaDetail')"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('fnc.fkfangshi')"
prop=
"Address"
>
<el-form-item
:label=
"$t('fnc.fkfangshi')"
prop=
"Address"
>
<el-select
v-model=
"addMsg.PayType"
filterable
:placeholder=
"$t('pub.pleaseSel')"
class=
"w300"
>
<el-select
<el-option
v-for=
'item in PayTypeList'
:key=
"item.Id"
:label=
"item.name"
:value=
"item.Id"
>
v-model=
"addMsg.PayType"
filterable
:placeholder=
"$t('pub.pleaseSel')"
class=
"w300"
>
<el-option
v-for=
"item in PayTypeList"
:key=
"item.Id"
:label=
"item.name"
:value=
"item.Id"
>
</el-option>
</el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('ground.shifouyouspf')"
>
<el-form-item
:label=
"$t('ground.shifouyouspf')"
>
<el-switch
v-model=
"addMsg.IsHaveShouPeiFee"
:active-value=
"inActive"
:inactive-value=
"notInActive"
>
<el-switch
v-model=
"addMsg.IsHaveShouPeiFee"
:active-value=
"inActive"
:inactive-value=
"notInActive"
>
</el-switch>
</el-switch>
</el-form-item>
</el-form-item>
<el-form-item
v-if=
"addMsg.IsHaveShouPeiFee==1"
:label=
"$t('ground.shoupeije')"
>
<el-form-item
<el-input
type=
"text"
class=
"w300"
maxlength=
"10"
@
keyup
.
native=
"checkPrice(addMsg,'ShouPeiMoney')"
v-if=
"addMsg.IsHaveShouPeiFee == 1"
v-model=
"addMsg.ShouPeiMoney"
></el-input>
:label=
"$t('ground.shoupeije')"
>
<el-input
type=
"text"
class=
"w300"
maxlength=
"10"
@
keyup
.
native=
"checkPrice(addMsg, 'ShouPeiMoney')"
v-model=
"addMsg.ShouPeiMoney"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('hotel.table_tel')"
prop=
"Tel"
>
<el-form-item
:label=
"$t('hotel.table_tel')"
prop=
"Tel"
>
<el-input
type=
"text"
class=
"w300"
maxlength=
"20"
v-model=
"addMsg.Tel"
></el-input>
<el-input
type=
"text"
class=
"w300"
maxlength=
"20"
v-model=
"addMsg.Tel"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('hotel.suplier_contact')"
prop=
"Contact"
>
<el-form-item
:label=
"$t('hotel.suplier_contact')"
prop=
"Contact"
>
<el-input
type=
"text"
class=
"w300"
maxlength=
"20"
v-model=
"addMsg.Contact"
></el-input>
<el-input
type=
"text"
class=
"w300"
maxlength=
"20"
v-model=
"addMsg.Contact"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('hotel.hotel_fax')"
prop=
"Fax"
>
<el-form-item
:label=
"$t('hotel.hotel_fax')"
prop=
"Fax"
>
<el-input
type=
"text"
class=
"w300"
maxlength=
"20"
v-model=
"addMsg.Fax"
></el-input>
<el-input
type=
"text"
class=
"w300"
maxlength=
"20"
v-model=
"addMsg.Fax"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('hotel.hotel_remark')"
prop=
"Remark"
>
<el-form-item
:label=
"$t('hotel.hotel_remark')"
prop=
"Remark"
>
<el-input
type=
"textarea"
class=
"w300"
maxlength=
"200"
v-model=
"addMsg.Remark"
></el-input>
<el-input
type=
"textarea"
class=
"w300"
maxlength=
"200"
v-model=
"addMsg.Remark"
></el-input>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"hollowFixedBtn"
<button
@
click=
"resetForm('addMsg'),outerVisible = false"
>
{{
$t
(
'pub.cancelBtn'
)
}}
</button>
class=
"hollowFixedBtn"
<button
class=
"normalBtn"
type=
"primary"
@
click=
"submitForm('addMsg')"
>
{{
$t
(
'pub.sureBtn'
)
}}
</button>
@
click=
"resetForm('addMsg'), (outerVisible = false)"
>
{{
$t
(
"pub.cancelBtn"
)
}}
</button>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"submitForm('addMsg')"
>
{{
$t
(
"pub.sureBtn"
)
}}
</button>
</div>
</div>
</el-dialog>
</el-dialog>
</div>
</div>
<div
class=
"supplierList clearfix"
v-loading=
"loading"
>
<div
class=
"supplierList clearfix"
v-loading=
"loading"
>
<div
class=
"supList"
v-for=
"item in tabelDate"
:key=
"item.subCode"
style=
"height:270px;"
>
<div
class=
"supList"
v-for=
"item in tabelDate"
:key=
"item.subCode"
style=
"height:270px;"
>
<div
class=
"suTop"
>
<div
class=
"suTop"
>
<img
src=
"../../assets/img/suplier.jpg"
>
<img
src=
"../../assets/img/suplier.jpg"
/
>
<div
class=
"topCircle"
>
{{
item
.
Number
}}
</div>
<div
class=
"topCircle"
>
{{
item
.
Number
}}
</div>
</div>
</div>
<div
class=
"supTitle"
>
{{
item
.
Name
}}
</div>
<div
class=
"supTitle"
>
{{
item
.
Name
}}
</div>
<div
class=
"telNumber"
>
{{
item
.
Tel
}}
</div>
<div
class=
"telNumber"
>
{{
item
.
Tel
}}
</div>
<div
class=
"Address"
>
<div
class=
"Address"
>
<div
v-show=
"item.Contact"
>
<div
v-show=
"item.Contact"
>
<i
class=
"iconfont icon-img_dz"
></i>
<i
class=
"iconfont icon-img_dz"
></i>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"item.Contact"
placement=
"top-start"
>
<el-tooltip
<div
class=
"AddressInner"
>
{{
item
.
Contact
}}
</div>
class=
"item"
effect=
"dark"
:content=
"item.Contact"
placement=
"top-start"
>
<div
class=
"AddressInner"
>
{{
item
.
Contact
}}
</div>
</el-tooltip>
</el-tooltip>
</div>
</div>
</div>
</div>
<div
class=
"updataBtn"
>
<div
class=
"updataBtn"
>
<button
class=
"normalBtn UPBtn"
<button
@
click=
"outerVisible = true,dialogTitle=$t('visaT.xiugaigysxx'),updateInfo(item.ID)"
>
{{
$t
(
'pub.updateMsg'
)
}}
</button>
class=
"normalBtn UPBtn"
<button
class=
"hollowFixedBtn UPBtn"
@
click=
"isdelete(item.ID)"
>
{{
$t
(
'system.table_delete'
)
}}
</button>
@
click=
"
<button
class=
"hollowFixedBtn HS_financial"
@
click=
"AccountManage(item)"
>
{{
$t
(
"visaT.Accountmanagement"
)
}}
</button>
(outerVisible = true),
<button
class=
"hollowFixedBtn HS_financial"
@
click=
"GoHotel(item)"
>
{{
$t
(
"ground.jiudianfkfspz"
)
}}
</button>
(dialogTitle = $t('visaT.xiugaigysxx')),
updateInfo(item.ID)
"
>
{{
$t
(
"pub.updateMsg"
)
}}
</button>
<button
class=
"hollowFixedBtn UPBtn"
@
click=
"isdelete(item.ID)"
>
{{
$t
(
"system.table_delete"
)
}}
</button>
<button
class=
"hollowFixedBtn HS_financial"
@
click=
"AccountManage(item)"
>
{{
$t
(
"visaT.Accountmanagement"
)
}}
</button>
<button
class=
"hollowFixedBtn HS_financial"
@
click=
"GoHotel(item)"
>
{{
$t
(
"ground.jiudianfkfspz"
)
}}
</button>
</div>
</div>
</div>
</div>
</div>
</div>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
<el-pagination
layout=
"total,prev, pager, next, jumper"
:page-size=
"this.msg.pageSize"
:total=
"total"
>
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"this.msg.pageSize"
:total=
"total"
>
</el-pagination>
</el-pagination>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
total
:
0
,
total
:
0
,
...
@@ -192,45 +402,52 @@
...
@@ -192,45 +402,52 @@
Fax
:
""
,
Fax
:
""
,
Remark
:
""
,
Remark
:
""
,
Type
:
"1"
,
Type
:
"1"
,
PayType
:
''
,
PayType
:
""
,
//是否有手配费
//是否有手配费
IsHaveShouPeiFee
:
0
,
IsHaveShouPeiFee
:
0
,
//手配费金额
//手配费金额
ShouPeiMoney
:
0
ShouPeiMoney
:
0
},
},
//付款方式
//付款方式
PayTypeList
:
[{
PayTypeList
:
[
name
:
this
.
$t
(
'ground.xianfu'
),
{
name
:
this
.
$t
(
"ground.xianfu"
),
Id
:
1
Id
:
1
},
{
},
name
:
this
.
$t
(
'ground.qiandan'
),
{
name
:
this
.
$t
(
"ground.qiandan"
),
Id
:
2
Id
:
2
}],
},
{
name
:
this
.
$t
(
"ground.yufu"
),
Id
:
4
}
],
rules
:
{
rules
:
{
Name
:
[{
Name
:
[
{
required
:
true
,
required
:
true
,
message
:
this
.
$t
(
'visaT.qsrgysname'
),
message
:
this
.
$t
(
"visaT.qsrgysname"
),
trigger
:
"blur"
trigger
:
"blur"
}],
}
Contact
:
[{
],
Contact
:
[
{
required
:
true
,
required
:
true
,
message
:
this
.
$t
(
'ground.qingshurulxr'
),
message
:
this
.
$t
(
"ground.qingshurulxr"
),
trigger
:
"blur"
trigger
:
"blur"
}]
}
]
}
}
};
};
},
},
methods
:
{
methods
:
{
//跳转到供应商酒店配置页面
//跳转到供应商酒店配置页面
GoHotel
(
item
)
GoHotel
(
item
)
{
{
this
.
$router
.
push
({
this
.
$router
.
push
({
path
:
"HotelSupplierHotel"
,
path
:
"HotelSupplierHotel"
,
query
:
{
query
:
{
ID
:
item
.
ID
,
ID
:
item
.
ID
,
Name
:
item
.
Name
,
Name
:
item
.
Name
,
tab
:
"供应商酒店备注"
,
tab
:
"供应商酒店备注"
,
blank
:
'y'
,
blank
:
"y"
}
}
});
});
},
},
...
@@ -260,21 +477,21 @@
...
@@ -260,21 +477,21 @@
isdelete
(
ID
)
{
isdelete
(
ID
)
{
this
.
deleteID
=
ID
;
this
.
deleteID
=
ID
;
this
.
$confirm
(
this
.
$t
(
"tips.shifoushanchu"
),
"提示"
,
{
this
.
$confirm
(
this
.
$t
(
"tips.shifoushanchu"
),
"提示"
,
{
confirmButtonText
:
this
.
$t
(
'pub.sureBtn'
),
confirmButtonText
:
this
.
$t
(
"pub.sureBtn"
),
cancelButtonText
:
this
.
$t
(
'pub.cancelBtn'
),
cancelButtonText
:
this
.
$t
(
"pub.cancelBtn"
),
type
:
"warning"
type
:
"warning"
})
})
.
then
(()
=>
{
.
then
(()
=>
{
this
.
$message
({
this
.
$message
({
type
:
"success"
,
type
:
"success"
,
message
:
this
.
$t
(
'tips.shanchuchenggong'
)
message
:
this
.
$t
(
"tips.shanchuchenggong"
)
});
});
this
.
delsuppli
();
this
.
delsuppli
();
})
})
.
catch
(()
=>
{
.
catch
(()
=>
{
this
.
$message
({
this
.
$message
({
type
:
"info"
,
type
:
"info"
,
message
:
this
.
$t
(
'tips.cancleDelete'
)
message
:
this
.
$t
(
"tips.cancleDelete"
)
});
});
});
});
},
},
...
@@ -287,7 +504,7 @@
...
@@ -287,7 +504,7 @@
msg
,
msg
,
response
=>
{
response
=>
{
if
(
response
.
data
.
resultCode
==
1
)
{
if
(
response
.
data
.
resultCode
==
1
)
{
this
.
Success
(
this
.
$t
(
'tips.shanchuchenggong'
));
this
.
Success
(
this
.
$t
(
"tips.shanchuchenggong"
));
this
.
initData
();
this
.
initData
();
}
else
{
}
else
{
this
.
Error
(
response
.
data
.
message
);
this
.
Error
(
response
.
data
.
message
);
...
@@ -297,7 +514,7 @@
...
@@ -297,7 +514,7 @@
);
);
},
},
saveInfo
()
{
saveInfo
()
{
if
(
this
.
addMsg
.
ShouPeiMoney
==
''
)
{
if
(
this
.
addMsg
.
ShouPeiMoney
==
""
)
{
this
.
addMsg
.
ShouPeiMoney
=
0
;
this
.
addMsg
.
ShouPeiMoney
=
0
;
}
}
this
.
apipost
(
this
.
apipost
(
...
@@ -306,7 +523,7 @@
...
@@ -306,7 +523,7 @@
res
=>
{
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
initData
();
this
.
initData
();
this
.
Success
(
this
.
$t
(
'tips.saveYes'
));
this
.
Success
(
this
.
$t
(
"tips.saveYes"
));
this
.
outerVisible
=
false
;
this
.
outerVisible
=
false
;
}
else
{
}
else
{
this
.
Error
(
res
.
data
.
message
);
this
.
Error
(
res
.
data
.
message
);
...
@@ -328,7 +545,7 @@
...
@@ -328,7 +545,7 @@
Fax
:
""
,
Fax
:
""
,
Remark
:
""
,
Remark
:
""
,
Type
:
1
,
Type
:
1
,
PayType
:
''
,
PayType
:
""
,
IsHaveShouPeiFee
:
0
,
IsHaveShouPeiFee
:
0
,
ShouPeiMoney
:
0
ShouPeiMoney
:
0
}),
}),
...
@@ -456,8 +673,8 @@
...
@@ -456,8 +673,8 @@
query
:
{
query
:
{
id
:
item
.
ID
,
id
:
item
.
ID
,
type
:
1
,
type
:
1
,
blank
:
'y'
,
blank
:
"y"
,
tab
:
'账户管理'
tab
:
"账户管理"
}
}
});
});
}
}
...
@@ -467,6 +684,5 @@
...
@@ -467,6 +684,5 @@
this
.
initData
();
this
.
initData
();
this
.
getCountryList
();
//初始化国家下拉
this
.
getCountryList
();
//初始化国家下拉
}
}
};
};
</
script
>
</
script
>
src/components/Hotel/HotelSupplierHotel.vue
View file @
ba1474f1
<
style
>
<
style
>
.CM_look
{
.CM_look
{
padding
:
4px
!important
;
padding
:
4px
!important
;
position
:
relative
;
position
:
relative
;
top
:
1px
;
top
:
1px
;
}
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"flexOne"
>
<div
class=
"flexOne"
>
<div
class=
"query-box"
>
<div
class=
"query-box"
>
<ul>
<ul>
<li>
<li>
<input
type=
"button"
class=
"normalBtn"
:value=
"$t('pub.addBtn')"
@
click=
"isShow=true,dialogTitle=$t('ground.xinzengjdgyfs')"
/>
<input
type=
"button"
class=
"normalBtn"
:value=
"$t('pub.addBtn')"
@
click=
"(isShow = true), (dialogTitle = $t('ground.xinzengjdgyfs'))"
/>
</li>
</li>
</ul>
</ul>
<el-dialog
:title=
"dialogTitle"
:visible
.
sync=
"isShow"
center
custom-class=
"w460"
>
<el-dialog
:title=
"dialogTitle"
:visible
.
sync=
"isShow"
center
custom-class=
"w460"
>
<el-form
:model=
"addMsg"
label-width=
"100px"
>
<el-form
:model=
"addMsg"
label-width=
"100px"
>
<el-form-item
:label=
"$t('hotel.suplier_name')"
prop=
"Name"
>
<el-form-item
:label=
"$t('hotel.suplier_name')"
prop=
"Name"
>
{{
SupplierName
}}
{{
SupplierName
}}
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('hotel.hotel')"
>
<el-form-item
:label=
"$t('hotel.hotel')"
>
<el-select
v-model=
"addMsg.HotelId"
filterable
:placeholder=
"$t('pub.pleaseSel')"
class=
"w220"
>
<el-select
v-model=
"addMsg.HotelId"
filterable
:placeholder=
"$t('pub.pleaseSel')"
class=
"w220"
>
<el-option
:label=
"$t('pub.pleaseSel')"
:value=
"0"
></el-option>
<el-option
:label=
"$t('pub.pleaseSel')"
:value=
"0"
></el-option>
<el-option
v-for=
'item in HotelList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
<el-option
v-for=
"item in HotelList"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('fnc.fkfangshi')"
>
<el-form-item
:label=
"$t('fnc.fkfangshi')"
>
<el-select
v-model=
"addMsg.SubPayType"
filterable
:placeholder=
"$t('pub.pleaseSel')"
class=
"w220"
>
<el-select
v-model=
"addMsg.SubPayType"
filterable
:placeholder=
"$t('pub.pleaseSel')"
class=
"w220"
>
<el-option
:label=
"$t('pub.pleaseSel')"
:value=
"0"
></el-option>
<el-option
:label=
"$t('pub.pleaseSel')"
:value=
"0"
></el-option>
<el-option
v-for=
'item in PayTypeList'
:key=
"item.Id"
:label=
"item.name"
:value=
"item.Id"
>
<el-option
v-for=
"item in PayTypeList"
:key=
"item.Id"
:label=
"item.name"
:value=
"item.Id"
>
</el-option>
</el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('hotel.hotel_StartDate')"
>
<el-form-item
:label=
"$t('hotel.hotel_StartDate')"
>
<el-date-picker
class=
"w220"
type=
"date"
v-model=
"addMsg.StartDate"
:picker-options=
"pickerBeginDateBefore"
<el-date-picker
value-format=
"yyyy-MM-dd"
placeholder
></el-date-picker>
class=
"w220"
type=
"date"
v-model=
"addMsg.StartDate"
:picker-options=
"pickerBeginDateBefore"
value-format=
"yyyy-MM-dd"
placeholder
></el-date-picker>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('hotel.hotel_EndDate')"
>
<el-form-item
:label=
"$t('hotel.hotel_EndDate')"
>
<el-date-picker
class=
"w220"
type=
"date"
v-model=
"addMsg.EndDate"
:picker-options=
"pickerBeginDateAfter"
<el-date-picker
value-format=
"yyyy-MM-dd"
placeholder
></el-date-picker>
class=
"w220"
type=
"date"
v-model=
"addMsg.EndDate"
:picker-options=
"pickerBeginDateAfter"
value-format=
"yyyy-MM-dd"
placeholder
></el-date-picker>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"hollowFixedBtn"
@
click=
"initData(),isShow = false"
>
{{
$t
(
'pub.cancelBtn'
)
}}
</button>
<button
class=
"hollowFixedBtn"
@
click=
"initData(), (isShow = false)"
>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"SaveData()"
>
{{
$t
(
'pub.sureBtn'
)
}}
</button>
{{
$t
(
"pub.cancelBtn"
)
}}
</button>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"SaveData()"
>
{{
$t
(
"pub.sureBtn"
)
}}
</button>
</div>
</div>
</el-dialog>
</el-dialog>
</div>
</div>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<tr>
<th>
{{
$t
(
'hotel.hotel'
)
}}
</th>
<th>
{{
$t
(
"hotel.hotel"
)
}}
</th>
<th>
{{
$t
(
'hotel.hotel_StartDate'
)
}}
</th>
<th>
{{
$t
(
"hotel.hotel_StartDate"
)
}}
</th>
<th>
{{
$t
(
'hotel.hotel_EndDate'
)
}}
</th>
<th>
{{
$t
(
"hotel.hotel_EndDate"
)
}}
</th>
<th>
{{
$t
(
'fnc.fkfangshi'
)
}}
</th>
<th>
{{
$t
(
"fnc.fkfangshi"
)
}}
</th>
<th>
{{
$t
(
'system.table_operation'
)
}}
</th>
<th>
{{
$t
(
"system.table_operation"
)
}}
</th>
</tr>
</tr>
<tr
v-for=
"item in dataList"
>
<tr
v-for=
"item in dataList"
>
<td>
{{
item
.
HotelName
}}
</td>
<td>
{{
item
.
HotelName
}}
</td>
<td>
{{
item
.
StartDateStr
}}
</td>
<td>
{{
item
.
StartDateStr
}}
</td>
<td>
{{
item
.
EndDateStr
}}
</td>
<td>
{{
item
.
EndDateStr
}}
</td>
<td>
{{
item
.
SubPayTypeStr
}}
</td>
<td>
{{
item
.
SubPayTypeStr
}}
</td>
<td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('system.table_edit')"
placement=
"top-start"
>
<el-tooltip
<el-button
type=
"primary"
class=
"iconfont icon-bianji-smal"
class=
"item"
@
click=
"GetData(item.Id),isShow=true,dialogTitle=$t('ground.xinzengjdgyfs')"
></el-button>
effect=
"dark"
:content=
"$t('system.table_edit')"
placement=
"top-start"
>
<el-button
type=
"primary"
class=
"iconfont icon-bianji-smal"
@
click=
"
GetData(item.Id),
(isShow = true),
(dialogTitle = $t('ground.xinzengjdgyfs'))
"
></el-button>
</el-tooltip>
</el-tooltip>
</td>
</td>
</tr>
</tr>
...
@@ -74,17 +138,17 @@
...
@@ -74,17 +138,17 @@
</
template
>
</
template
>
<
script
>
<
script
>
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
msg
:
{
msg
:
{
SupplierId
:
0
,
SupplierId
:
0
},
},
loading
:
false
,
loading
:
false
,
isShow
:
false
,
//是否显示新增修改
isShow
:
false
,
//是否显示新增修改
//供应商名称
//供应商名称
SupplierName
:
""
,
SupplierName
:
""
,
dialogTitle
:
this
.
$t
(
'ground.xinzengjdgyfs'
),
dialogTitle
:
this
.
$t
(
"ground.xinzengjdgyfs"
),
//数据源
//数据源
dataList
:
[],
dataList
:
[],
HotelList
:
[],
//酒店列表
HotelList
:
[],
//酒店列表
...
@@ -95,33 +159,37 @@
...
@@ -95,33 +159,37 @@
HotelId
:
0
,
HotelId
:
0
,
StartDate
:
""
,
StartDate
:
""
,
EndDate
:
""
,
EndDate
:
""
,
SubPayType
:
0
,
SubPayType
:
0
},
},
//付款方式
//付款方式
PayTypeList
:
[{
PayTypeList
:
[
name
:
this
.
$t
(
'ground.xianfu'
),
{
name
:
this
.
$t
(
"ground.xianfu"
),
Id
:
1
Id
:
1
},
{
},
name
:
this
.
$t
(
'ground.qiandan'
),
{
name
:
this
.
$t
(
"ground.qiandan"
),
Id
:
2
Id
:
2
}],
},
{
name
:
this
.
$t
(
"ground.yufu"
),
Id
:
4
}
],
pickerBeginDateBefore
:
{
pickerBeginDateBefore
:
{
disabledDate
:
time
=>
{
disabledDate
:
time
=>
{
if
(
this
.
addMsg
.
EndDate
==
null
)
{
if
(
this
.
addMsg
.
EndDate
==
null
)
{
return
false
;
return
false
;
}
else
{
}
else
{
let
endTime
=
new
Date
(
this
.
addMsg
.
EndDate
)
let
endTime
=
new
Date
(
this
.
addMsg
.
EndDate
);
return
endTime
.
getTime
()
<
time
.
getTime
()
return
endTime
.
getTime
()
<
time
.
getTime
();
}
}
}
}
},
},
pickerBeginDateAfter
:
{
pickerBeginDateAfter
:
{
disabledDate
:
time
=>
{
disabledDate
:
time
=>
{
let
startTime
=
new
Date
(
this
.
addMsg
.
StartDate
)
let
startTime
=
new
Date
(
this
.
addMsg
.
StartDate
);
return
startTime
.
getTime
()
>=
time
.
getTime
()
return
startTime
.
getTime
()
>=
time
.
getTime
();
}
}
}
}
}
};
},
},
mounted
()
{
mounted
()
{
this
.
msg
.
SupplierId
=
this
.
$route
.
query
.
ID
;
this
.
msg
.
SupplierId
=
this
.
$route
.
query
.
ID
;
...
@@ -142,19 +210,19 @@
...
@@ -142,19 +210,19 @@
},
},
SaveData
()
{
SaveData
()
{
if
(
this
.
addMsg
.
HotelId
<=
0
)
{
if
(
this
.
addMsg
.
HotelId
<=
0
)
{
this
.
Info
(
this
.
$t
(
'ground.qingxuanzejiud'
));
this
.
Info
(
this
.
$t
(
"ground.qingxuanzejiud"
));
return
;
return
;
}
}
if
(
this
.
addMsg
.
SubPayType
<=
0
)
{
if
(
this
.
addMsg
.
SubPayType
<=
0
)
{
this
.
Info
(
this
.
$t
(
'ground.qingxuanzefkfs'
));
this
.
Info
(
this
.
$t
(
"ground.qingxuanzefkfs"
));
return
;
return
;
}
}
if
(
this
.
addMsg
.
StartDate
==
""
)
{
if
(
this
.
addMsg
.
StartDate
==
""
)
{
this
.
Info
(
this
.
$t
(
'ground.qingxuanzekssjs'
));
this
.
Info
(
this
.
$t
(
"ground.qingxuanzekssjs"
));
return
;
return
;
}
}
if
(
this
.
addMsg
.
EndDate
==
""
)
{
if
(
this
.
addMsg
.
EndDate
==
""
)
{
this
.
Info
(
this
.
$t
(
'ground.qingxuanzejssjs'
));
this
.
Info
(
this
.
$t
(
"ground.qingxuanzejssjs"
));
return
;
return
;
}
}
this
.
apipost
(
this
.
apipost
(
...
@@ -177,7 +245,8 @@
...
@@ -177,7 +245,8 @@
//根据编号获取实体
//根据编号获取实体
GetData
(
Id
)
{
GetData
(
Id
)
{
this
.
apipost
(
this
.
apipost
(
"supplier_post_GetEntityService"
,
{
"supplier_post_GetEntityService"
,
{
Id
:
Id
Id
:
Id
},
},
res
=>
{
res
=>
{
...
@@ -217,7 +286,8 @@
...
@@ -217,7 +286,8 @@
getHotelList
()
{
getHotelList
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
this
.
apipost
(
this
.
apipost
(
"hotel_post_GetList"
,
{
"hotel_post_GetList"
,
{
QCountry
:
651
QCountry
:
651
},
},
res
=>
{
res
=>
{
...
@@ -230,8 +300,7 @@
...
@@ -230,8 +300,7 @@
},
},
null
null
);
);
},
}
}
}
}
};
</
script
>
</
script
>
src/components/Hotel/roomReservationsDetails.vue
View file @
ba1474f1
...
@@ -29,7 +29,8 @@
...
@@ -29,7 +29,8 @@
</ul>
</ul>
{{
$t
(
'ground.jisuan1'
)
}}
<br
/>
{{
$t
(
'ground.jisuan1'
)
}}
<br
/>
{{
$t
(
'ground.jisuan2'
)
}}
<br
/>
{{
$t
(
'ground.jisuan2'
)
}}
<br
/>
{{
$t
(
'ground.sidaobsuan'
)
}}
{{
$t
(
'ground.sidaobsuan'
)
}}
<br
/>
付款方式是现付的,必須上传手配书.
</div>
</div>
<div
style=
"width: 100%; overflow-x: auto;padding-bottom: 10px; "
:style=
"
{height: boxHeight + 'px'}"
<div
style=
"width: 100%; overflow-x: auto;padding-bottom: 10px; "
:style=
"
{height: boxHeight + 'px'}"
class="ownScrollbarStyle" ref="ownScrollbarStyle">
class="ownScrollbarStyle" ref="ownScrollbarStyle">
...
@@ -164,7 +165,10 @@
...
@@ -164,7 +165,10 @@
<tr>
<tr>
<td
colspan=
"2"
>
<td
colspan=
"2"
>
<p
style=
"padding-top: 5px;"
>
<p
style=
"padding-top: 5px;"
>
<a
v-if=
"subItem.ContractUrl"
target=
"_blank"
style=
"color:green"
:href=
"subItem.ContractUrl"
>
已上传手配书
</a>
<template
v-if=
"subItem.ContractUrl!=''"
>
<span
style=
"color:green"
>
已上传手配书
</span>
<a
v-if=
"subItem.ContractUrl"
target=
"_blank"
style=
"color:red"
:href=
"subItem.ContractUrl"
>
查看
</a>
</
template
>
</p>
</p>
<el-upload
:http-request=
"uploadFileBtnS"
:multiple=
"false"
:show-file-list=
"false"
action=
''
>
<el-upload
:http-request=
"uploadFileBtnS"
:multiple=
"false"
:show-file-list=
"false"
action=
''
>
<el-button
size=
"small"
type=
"danger"
@
click=
'getItem(index, subIndex)'
>
<el-button
size=
"small"
type=
"danger"
@
click=
'getItem(index, subIndex)'
>
...
@@ -875,8 +879,8 @@
...
@@ -875,8 +879,8 @@
var
str
=
""
;
var
str
=
""
;
this
.
list
.
forEach
(
item
=>
{
this
.
list
.
forEach
(
item
=>
{
item
.
HotelOrderList
.
forEach
(
subItem
=>
{
item
.
HotelOrderList
.
forEach
(
subItem
=>
{
if
(
isUpload
&&
subItem
.
PayStyle
==
1
&&
subItem
.
ContractUrl
==
''
){
if
(
isUpload
&&
subItem
.
PayStyle
==
1
&&
subItem
.
ContractUrl
==
''
&&
this
.
CurrentUserInfo
.
EmployeeId
!=
615
){
str
+=
""
str
+=
`请上传
${
item
.
UseTimeStr
}
的手配书`
isUpload
=
false
;
isUpload
=
false
;
}
}
subItem
.
OrderDetailsList
.
forEach
((
y
,
sIndex
)
=>
{
subItem
.
OrderDetailsList
.
forEach
((
y
,
sIndex
)
=>
{
...
@@ -907,8 +911,10 @@
...
@@ -907,8 +911,10 @@
}
}
});
});
})
})
if
(
!
isUpload
){
if
(
flag
){
this
.
Error
(
str
);
return
;
}
this
.
loading
=
true
;
this
.
loading
=
true
;
this
.
apipost
(
'dmcstatistics_get_SetHotelOrder'
,
this
.
list
,
res
=>
{
this
.
apipost
(
'dmcstatistics_get_SetHotelOrder'
,
this
.
list
,
res
=>
{
this
.
loading
=
false
;
this
.
loading
=
false
;
...
@@ -919,19 +925,20 @@
...
@@ -919,19 +925,20 @@
this
.
Error
(
res
.
data
.
message
);
this
.
Error
(
res
.
data
.
message
);
}
}
},
err
=>
{})
},
err
=>
{})
}
},
},
//单条保存
//单条保存
SaveSingle
(
item
)
{
SaveSingle
(
item
)
{
item
.
HotelOrderState
=
1
;
item
.
HotelOrderState
=
1
;
var
flag
=
true
;
var
flag
=
true
;
var
isUpload
=
true
;
var
str
=
""
;
this
.
list
.
forEach
(
item
=>
{
this
.
list
.
forEach
(
item
=>
{
item
.
HotelOrderList
.
forEach
(
subItem
=>
{
item
.
HotelOrderList
.
forEach
(
subItem
=>
{
subItem
.
OrderDetailsList
.
forEach
(
y
=>
{
if
(
isUpload
&&
subItem
.
PayStyle
==
1
&&
subItem
.
ContractUrl
==
''
&&
this
.
CurrentUserInfo
.
EmployeeId
!=
615
){
if
(
subItem
.
CurrencyId
==
3
&&
subItem
.
ContractUrl
==
''
){
str
+=
`请上传
${
item
.
UseTimeStr
}
的手配书`
this
.
Error
(
'请上传手配书'
);
isUpload
=
false
;
flag
=
false
;
}
}
subItem
.
OrderDetailsList
.
forEach
(
y
=>
{
if
(
y
.
HouseTypeCount
)
{
if
(
y
.
HouseTypeCount
)
{
y
.
HouseTypeCount
=
parseFloat
(
y
.
HouseTypeCount
);
y
.
HouseTypeCount
=
parseFloat
(
y
.
HouseTypeCount
);
}
else
{
}
else
{
...
@@ -960,7 +967,10 @@
...
@@ -960,7 +967,10 @@
}
}
});
});
})
})
if
(
flag
){
if
(
!
isUpload
){
this
.
Error
(
str
);
return
;
}
let
mag
=
{
let
mag
=
{
TotalList
:
this
.
list
,
TotalList
:
this
.
list
,
SingleItem
:
item
SingleItem
:
item
...
@@ -973,7 +983,6 @@
...
@@ -973,7 +983,6 @@
this
.
Error
(
res
.
data
.
message
);
this
.
Error
(
res
.
data
.
message
);
}
}
},
err
=>
{})
},
err
=>
{})
}
},
},
// 获取供应商
// 获取供应商
...
...
src/components/LeaderManagement/leaderReimbursement.vue
View file @
ba1474f1
...
@@ -363,13 +363,24 @@
...
@@ -363,13 +363,24 @@
<span
v-else-if=
"subItem.DMCPayType === 9"
>
月结
</span>
<span
v-else-if=
"subItem.DMCPayType === 9"
>
月结
</span>
<span
v-else-if=
"subItem.DMCPayType === 11"
>
刷卡
</span>
<span
v-else-if=
"subItem.DMCPayType === 11"
>
刷卡
</span>
<span
v-else-if=
"subItem.DMCPayType === 10"
>
领队导游垫付
</span>
<span
v-else-if=
"subItem.DMCPayType === 10"
>
领队导游垫付
</span>
<
/br
>
<
br/
>
<span
v-show=
"subItem.DMCPayType==6"
>
付款团号:{{subItem.PayTypeTCNUM}}
</span>
<span
v-show=
"subItem.DMCPayType==6"
>
付款团号:{{subItem.PayTypeTCNUM}}
</span>
</td>
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"6"
>
<td
v-if=
"childIndex==0"
:rowspan=
"6"
>
<span>
{{subItem.SupplierName}}
<span
v-if=
"subItem.SupplierPayType !== 0"
<span>
{{subItem.SupplierName}}
:style=
"{'color': subItem.SupplierPayType == 2 ? '#E95252': '#111111'}"
>
{{subItem.SupplierPayType == 2 ? '签单' : '现付'}}
</span></span>
<br/>
<
template
v-if=
"subItem.SupplierPayType !== 0"
>
<span
v-if=
"subItem.SupplierPayType == 1"
>
现付
</span>
<span
v-else-if=
"subItem.SupplierPayType == 2"
>
签单
</span>
<span
v-else-if=
"subItem.SupplierPayType == 4"
>
预付
</span>
</
template
>
</span>
<div
v-if=
"subItem.IsHaveShouPeiFee==0"
style=
"color:red;"
>
无手配费
</div>
<div
v-if=
"subItem.IsHaveShouPeiFee==0"
style=
"color:red;"
>
无手配费
</div>
<div
v-if=
"subItem.IsHaveShouPeiFee==1"
style=
"color:red;"
>
手配费:{{subItem.ShouPeiMoney}}
</div>
<div
v-if=
"subItem.IsHaveShouPeiFee==1"
style=
"color:red;"
>
手配费:{{subItem.ShouPeiMoney}}
</div>
...
...
src/components/SalesModule/customerMap.vue
0 → 100644
View file @
ba1474f1
<
style
>
.customerMap
{
width
:
100%
;
height
:
100%
;
}
</
style
>
<
template
>
<div
class=
"customerMap"
>
<div
:style=
"
{height:'100%',width:'100%'}" ref="myEchart" id="centerMpBaidu">
</div>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
map
:
{},
baiduMapData
:
[
{
lng
:
120.03469
,
lat
:
30.303904
,
type
:
2
},
{
lng
:
120.088499
,
lat
:
30.275182
,
type
:
2
},
{
lng
:
120.089249
,
lat
:
30.317759
,
type
:
0
},
{
lng
:
120.161941
,
lat
:
30.283073
,
type
:
0
},
{
lng
:
120.174941
,
lat
:
30.275073
,
type
:
0
},
{
lng
:
120.186941
,
lat
:
30.297073
,
type
:
1
},
{
lng
:
120.198941
,
lat
:
30.299073
,
type
:
1
},
]
};
},
methods
:
{
creatMap
(){
let
_this
=
this
let
data
=
this
.
baiduMapData
;
//实例化,并设置最大最小缩放层级
const
map
=
new
BMap
.
Map
(
"centerMpBaidu"
,
{
minZoom
:
3
,
maxZoom
:
20
,
});
//设置中心点、默认缩放层级
if
(
data
.
length
>
0
)
{
map
.
centerAndZoom
(
new
BMap
.
Point
(
data
[
0
].
lng
,
data
[
0
].
lat
),
10
);
}
else
{
map
.
centerAndZoom
(
new
BMap
.
Point
(
104.0727017791
,
30.6643622306
),
10
);
}
//可以鼠标缩放
map
.
enableScrollWheelZoom
(
true
);
const
points
=
data
const
markerClusterers
=
[[],
[],
[]]
points
.
forEach
(
item
=>
{
//实例化点
const
point
=
new
BMap
.
Point
(
item
.
lng
,
item
.
lat
)
//自定义点的样式
// type 0 激活 绿色 20191125015057879
// 1 未拜访 紫色 20191125015102111
// 2 未激活 红色 20191125015100234
const
icon
=
new
BMap
.
Icon
(
item
.
type
===
0
?
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015057879.png'
:
item
.
type
===
1
?
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015102111.png'
:
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015100234.png'
,
new
BMap
.
Size
(
30
,
30
)
);
//生成点标注
const
marker
=
new
BMap
.
Marker
(
point
,
{
icon
:
icon
});
// const infoWindow = new BMap.InfoWindow('简易的信息窗口')
//绑定事件,显示窗口
marker
.
addEventListener
(
"click"
,
function
(){
_this
.
markerClick
(
point
,
item
)
// map.openInfoWindow(infoWindow,point);
});
markerClusterers
[
item
.
type
||
0
].
push
(
marker
)
//添加点标注即添加覆盖物
map
.
addOverlay
(
marker
);
})
// //2种聚合的实现
const
size
=
new
BMap
.
Size
(
30
,
30
)
var
markerClusterer1
=
new
window
.
BMapLib
.
MarkerClusterer
(
map
,
{
markers
:
markerClusterers
[
1
],
styles
:
[{
url
:
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015102111.png'
,
size
:
size
,
textSize
:
18
,
textColor
:
'white'
,
},
{
url
:
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015102111.png'
,
size
:
size
,
textSize
:
18
,
textColor
:
'white'
,
},
{
url
:
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015102111.png'
,
size
:
size
,
textSize
:
18
,
textColor
:
'white'
,
}]
})
var
markerClusterer2
=
new
window
.
BMapLib
.
MarkerClusterer
(
map
,
{
markers
:
markerClusterers
[
2
],
styles
:
[{
url
:
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015100234.png'
,
size
:
size
,
textSize
:
18
,
textColor
:
'white'
,
},
{
url
:
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015100234.png'
,
size
:
size
,
textSize
:
18
,
textColor
:
'white'
,
},
{
url
:
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015100234.png'
,
size
:
size
,
textSize
:
18
,
textColor
:
'white'
,
}]
})
var
markerClusterer4
=
new
window
.
BMapLib
.
MarkerClusterer
(
map
,
{
markers
:
markerClusterers
[
0
],
styles
:
[{
url
:
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015057879.png'
,
size
:
size
,
textSize
:
18
,
textColor
:
'white'
,
},
{
url
:
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015057879.png'
,
size
:
size
,
textSize
:
18
,
textColor
:
'white'
,
},
{
url
:
'http://imgfile.oytour.com/New/Upload/Cloud/2019-11/20191125015057879.png'
,
size
:
size
,
textSize
:
18
,
textColor
:
'white'
,
}]
})
this
.
map
=
map
},
markerClick
(
point
,
item
){
this
.
apipost
(
'financestatistics_post_GetCustomerInfoForB2BKB'
,
{
CustomerId
:
item
.
CustomerId
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
const
infoWindow
=
new
BMap
.
InfoWindow
(
`
<p>联系人:
${
res
.
data
.
data
.
Contact
}
</p>
<p>联系电话:
${
res
.
data
.
data
.
ContactNumber
}
</p>
<p>门店名称:
${
res
.
data
.
data
.
CustomerName
}
</p>
<p>门店地址:
${
res
.
data
.
data
.
Address
}
</p>
`
)
this
.
map
.
openInfoWindow
(
infoWindow
,
point
);
}
})
}
},
mounted
()
{
this
.
creatMap
()
}
};
</
script
>
\ No newline at end of file
src/components/SalesModule/customerTransfer.vue
View file @
ba1474f1
...
@@ -75,6 +75,12 @@
...
@@ -75,6 +75,12 @@
</li>
</li>
<li
style=
"float:right;padding-top:10px;color:#111111"
>
{{
$t
(
'salesModule.JYETJ'
)
}}
:
{{
datainfo
.
sumMoney
}}
</li>
<li
style=
"float:right;padding-top:10px;color:#111111"
>
{{
$t
(
'salesModule.JYETJ'
)
}}
:
{{
datainfo
.
sumMoney
}}
</li>
<li>
<li>
<input
type=
"button"
class=
"hollowFixedBtn"
:value=
"$t('ground.kehuditu')"
@
click=
"getMap()"
>
<input
<input
type=
"button"
type=
"button"
class=
"hollowFixedBtn"
class=
"hollowFixedBtn"
...
@@ -633,6 +639,9 @@ export default {
...
@@ -633,6 +639,9 @@ export default {
getUrl
(
item
){
getUrl
(
item
){
this
.
$router
.
push
({
name
:
"CustomerAnalysis"
,
query
:{
"customerId"
:
item
.
CustomerIdS
,
blank
:
'y'
}
})
this
.
$router
.
push
({
name
:
"CustomerAnalysis"
,
query
:{
"customerId"
:
item
.
CustomerIdS
,
blank
:
'y'
}
})
},
},
getMap
(){
this
.
$router
.
push
({
name
:
"customerMap"
,
query
:{
blank
:
'y'
}
})
},
updateData
:
function
(
obj
)
{
updateData
:
function
(
obj
)
{
this
.
apipost
(
this
.
apipost
(
"app_customer_GetLeaderCustomerInfo"
,
"app_customer_GetLeaderCustomerInfo"
,
...
...
src/components/systemManagement/appUpdateLog.vue
0 → 100644
View file @
ba1474f1
<
style
>
.syslog_Content
{
width
:
100%
;
}
.syslog_ul
li
{
width
:
100%
;
min-height
:
135px
;
margin-bottom
:
10px
;
}
.syslog_top
{
width
:
100%
;
height
:
34px
;
line-height
:
34px
;
background-color
:
#dfdfdf
;
}
.sys_content
{
width
:
100%
;
min-height
:
101px
;
padding
:
20px
;
font-size
:
14px
;
background-color
:
#fff
;
}
.appUpdateLog
.ql-editor
{
min-height
:
200px
;
}
.sysTop_left
{
float
:
left
;
}
.sysTop_banben
{
display
:
inline-block
;
color
:
#38425d
;
font-size
:
14px
;
font-weight
:
bold
;
margin
:
0
30px
;
}
.sysTop_uptime
{
font-size
:
14px
;
color
:
#666666
;
}
.sysTop_right
{
float
:
right
;
margin-right
:
30px
;
}
.sysliteleBtn
{
color
:
#fff
;
padding
:
0
10px
;
height
:
20px
;
background
:
#e95252
;
border
:
1px
solid
#e95252
;
cursor
:
pointer
;
border-radius
:
15px
;
margin-left
:
10px
;
}
</
style
>
<
template
>
<div
class=
"flexOne appUpdateLog"
>
<table
v-loading=
"loading"
class=
"singeRowTable"
>
<tr>
<th
width=
"150"
>
名称
</th>
<th
width=
"150"
>
Code
</th>
<th>
Content
</th>
<th
width=
"100"
>
操作
</th>
</tr>
<tr
v-for=
"(item, index) in dataList"
:key=
"index"
>
<td>
{{
item
.
Name
}}
</td>
<td>
{{
item
.
Code
}}
</td>
<td
style=
"text-align:left;padding:0 5px;"
>
{{
item
.
Content
}}
</td>
<td>
<input
type=
"button"
class=
"sysliteleBtn"
@
click=
"updateLog(item)"
value=
"修改"
/>
</td>
</tr>
</table>
<el-dialog
custom-class=
"w800"
:title=
"dialogTitle"
:visible
.
sync=
"outerVisible"
center
>
<el-form
:model=
"addMsg"
label-width=
"80px"
>
<table
style=
"width:100%"
>
<tr>
<td
colspan=
"2"
>
<el-form-item
label=
"更新內容"
>
<el-input
v-model=
"addMsg.Content"
class=
"w595"
placeholder=
"请输入"
/>
</el-form-item>
</td>
</tr>
</table>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"normalBtn"
@
click=
"SaveAppLog()"
>
{{
$t
(
"pub.saveBtn"
)
}}
</button>
<button
class=
"hollowFixedBtn"
@
click=
"(outerVisible = false), clearMsg()"
>
{{
$t
(
"pub.cancelBtn"
)
}}
</button>
</div>
</el-dialog>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
msg
:
{},
loading
:
false
,
dataList
:
[],
dialogTitle
:
""
,
outerVisible
:
false
,
addMsg
:
{
ID
:
0
,
Content
:
""
}
};
},
methods
:
{
getList
()
{
//获取现有线路列表
this
.
loading
=
true
;
this
.
apipost
(
"admin_get_GetDictValueListService"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
dataList
=
res
.
data
.
data
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
//修改获取数据
updateLog
(
item
)
{
this
.
addMsg
.
ID
=
item
.
ID
;
this
.
addMsg
.
Content
=
item
.
Content
;
this
.
dialogTitle
=
"修改更新日志"
;
this
.
outerVisible
=
true
;
},
clearMsg
()
{
this
.
addMsg
.
ID
=
0
;
this
.
addMsg
.
Content
=
""
;
},
SaveAppLog
()
{
this
.
apipost
(
"admin_post_SetDictValueListService"
,
this
.
addMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
outerVisible
=
false
;
this
.
clearMsg
();
this
.
Success
(
res
.
data
.
message
);
this
.
getList
();
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
}
},
mounted
()
{
this
.
getList
();
}
};
</
script
>
src/router/config.js
View file @
ba1474f1
...
@@ -940,6 +940,14 @@ export default {
...
@@ -940,6 +940,14 @@ export default {
title
:
'系统更新与日志管理'
title
:
'系统更新与日志管理'
},
},
},
},
{
path
:
'/appUpdateLog'
,
//App更新与日志管理
name
:
'appUpdateLog'
,
component
:
resolve
=>
require
([
'@/components/systemManagement/appUpdateLog'
],
resolve
),
meta
:
{
title
:
'系统更新与日志管理'
},
},
{
{
path
:
'/destinationManagement'
,
//目的地管理
path
:
'/destinationManagement'
,
//目的地管理
name
:
'destinationManagement'
,
name
:
'destinationManagement'
,
...
@@ -2200,6 +2208,14 @@ export default {
...
@@ -2200,6 +2208,14 @@ export default {
title
:
'客户转交'
title
:
'客户转交'
},
},
},
},
{
// 客户 地图
path
:
'/customerMap'
,
name
:
'customerMap'
,
component
:
resolve
=>
require
([
'@/components/SalesModule/customerMap'
],
resolve
),
meta
:
{
title
:
'客户地图'
},
},
{
// 销售 活动统计
{
// 销售 活动统计
path
:
'/ActivityStatistics'
,
path
:
'/ActivityStatistics'
,
name
:
'ActivityStatistics'
,
name
:
'ActivityStatistics'
,
...
...
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