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
fc1b186e
Commit
fc1b186e
authored
Apr 12, 2019
by
huangyuanyuan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
fdfa3041
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
3789 additions
and
3784 deletions
+3789
-3784
RecPayQuery.vue
src/components/FinancialModule/RecPayQuery.vue
+2
-1
CombinedRevenueReport.vue
...ents/FinancialModule/ReportForm/CombinedRevenueReport.vue
+2
-2
invoicesManagerDetail.vue
src/components/FinancialModule/invoicesManagerDetail.vue
+4
-1
VisaProductCountryManager.vue
src/components/SalesVisa/VisaProductCountryManager.vue
+775
-775
ExaminationStatistics.vue
src/components/administrative/ExaminationStatistics.vue
+7
-6
config.js
src/router/config.js
+2999
-2999
No files found.
src/components/FinancialModule/RecPayQuery.vue
View file @
fc1b186e
...
...
@@ -929,6 +929,7 @@ export default {
if
(
!
this
.
msg
.
TradeWay
)
this
.
msg
.
TradeWay
=
0
;
if
(
!
this
.
msg
.
AccountType
)
this
.
msg
.
AccountType
=
0
;
this
.
loading
=
true
;
console
.
log
(
this
.
msg
)
this
.
apipost
(
'Financial_post_GetALLPageList'
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
let
data
=
res
.
data
.
data
.
pageData
.
list
;
...
...
@@ -1239,7 +1240,7 @@ export default {
pageSize
:
6
,
FrID
:
this
.
msg
.
FrID
==
0
?
''
:
this
.
msg
.
FrID
,
sDate
:
this
.
msg
.
sDate
,
eDate
:
this
.
msg
.
s
Date
,
eDate
:
this
.
msg
.
e
Date
,
Status
:
this
.
msg
.
Status
,
TemplateId
:
this
.
msg
.
TemplateId
,
RB_Branch_Id
:
this
.
msg
.
RB_Branch_Id
,
...
...
src/components/FinancialModule/ReportForm/CombinedRevenueReport.vue
View file @
fc1b186e
...
...
@@ -1683,8 +1683,8 @@ export default {
getPageList
()
{
// 获取列表数据
this
.
loading
=
true
;
if
(
!
this
.
msg
.
OutBranchId
)
this
.
msg
.
OutBranchId
=
-
1
;
//
if (!this.msg.OutBranchId)
//
this.msg.OutBranchId = -1;
if
(
!
this
.
msg
.
Is_Transport
&&
this
.
msg
.
Is_Transport
!==
0
)
this
.
msg
.
Is_Transport
=-
1
;
if
(
!
this
.
msg
.
StartCityId
)
this
.
msg
.
StartCityId
=
0
;
...
...
src/components/FinancialModule/invoicesManagerDetail.vue
View file @
fc1b186e
...
...
@@ -157,7 +157,7 @@
<button
class=
"normalBtn"
@
click=
"dialogFormVisible2 = true"
>
通过
</button>
<button
class=
"hollowFixedBtn"
@
click=
"dialogFormVisible = true"
>
拒绝
</button>
</div>
<div
class=
"iis_save"
v-else-if=
"noDetail && detail.InvoiceApplyState===1"
>
<div
class=
"iis_save"
v-else-if=
"noDetail && detail.InvoiceApplyState===1
&& EmployeeId === detail.CreateBy && EmployeeId === 1
"
>
<button
class=
"normalBtn"
@
click=
"setStatus(2)"
>
{{$t('pub.cancelBtn')}}
</button>
</div>
<el-dialog
title=
"提示信息"
width=
"400px"
:visible
.
sync=
"dialogFormVisible"
center
:before-close=
"closeChangeMachie"
>
...
...
@@ -190,6 +190,7 @@ export default {
InvoiceNo
:
''
,
},
noDetail
:
false
,
EmployeeId
:
0
,
};
},
methods
:
{
...
...
@@ -274,6 +275,8 @@ export default {
},
},
mounted
()
{
let
userInfo
=
this
.
getLocalStorage
();
this
.
EmployeeId
=
userInfo
.
EmployeeId
;
let
id
=
this
.
$route
.
query
.
id
this
.
noDetail
=
this
.
$route
.
query
.
noDetail
?
true
:
false
this
.
msg
.
ID
=
id
...
...
src/components/SalesVisa/VisaProductCountryManager.vue
View file @
fc1b186e
<
style
>
.page_visaMG
._vMG_edit
{
position
:
fixed
;
font-family
:
"PingFangSc-Fine"
;
bottom
:
0
;
left
:
50px
;
border-top
:
3px
solid
#38425d
;
background-color
:
#fff
;
padding
:
10px
;
width
:
calc
(
100%
-
50px
);
min-width
:
1146px
;
padding-right
:
10px
;
}
/* .page_visaMG .edHeight{display: block;height: 330px;} */
.page_visaMG
._vMG_conten
{
padding
:
30px
0
;
overflow-x
:
auto
;
}
.page_visaMG
._vMG_conten
.list
li
{
width
:
175px
;
height
:
auto
;
padding
:
20px
;
float
:
left
;
background-color
:
#ffffff
;
margin-right
:
26px
;
}
.page_visaMG
._vMG_conten
ul
li
._top
{
text-align
:
center
;
position
:
relative
;
}
.page_visaMG
._vMG_conten
ul
li
._top
p
{
font-size
:
14px
;
color
:
#333333
;
font-weight
:
bold
;
margin-top
:
8px
;
padding-bottom
:
10px
;
font-weight
:
bold
;
}
.page_visaMG
._vMG_conten
ul
li
._btm
{
border-top
:
1px
dashed
#b8b8b8
;
display
:
flex
;
text-align
:
center
;
padding-top
:
22px
;
}
.page_visaMG
._vMG_conten
ul
li
._btmt
{
border
:
none
;
}
.page_visaMG
._vMG_conten
ul
li
._btm
>
div
{
width
:
50%
;
}
.page_visaMG
._vMG_conten
ul
li
._btm
>
div
:nth-child
(
1
)
{
border-right
:
1px
solid
#b8b8b8
;
}
.page_visaMG
._vMG_conten
ul
li
._btm
>
div
._num
{
font-size
:
16px
;
color
:
#333333
;
font-weight
:
bold
;
}
.page_visaMG
._vMG_conten
ul
li
._btmt
>
div
._num
{
font-size
:
14px
;
}
.page_visaMG
._vMG_conten
ul
li
._btm
>
div
._text
{
font-size
:
12px
;
color
:
#666666
;
}
.page_visaMG
._vMG_conten
ul
li
.tcenter
{
margin-top
:
15px
;
}
.page_visaMG
._vMG_conten
li
:hover
{
box-shadow
:
0px
0px
20px
rgba
(
191
,
191
,
191
,
1
);
transition
:
all
linear
0.5s
;
}
.page_visaMG
._black
{
filter
:
gray
;
-webkit-filter
:
grayscale
(
100%
);
}
.page_visaMG
._noOpen
{
line-height
:
34px
;
color
:
#666666
;
font-size
:
12px
;
text-align
:
center
;
padding-top
:
22px
;
border-top
:
1px
dashed
#b8b8b8
;
}
.page_visaMG
._vMG_edit
._tit
{
padding-left
:
10px
;
border-left
:
3px
solid
#e95252
;
font-size
:
16px
;
color
:
#000000
;
}
.page_visaMG
._vMG_edit
._tit
span
{
color
:
#666666
;
font-size
:
14px
;
}
.page_visaMG
._info_box
{
padding
:
30px
15px
;
font-size
:
12px
!important
;
margin-bottom
:
20px
;
}
.page_visaMG
._info_box
>
div
{
float
:
left
;
}
.page_visaMG
.w400
{
width
:
450px
;
margin-right
:
20px
;
height
:
100px
;
}
.page_visaMG
.w225
{
width
:
225px
;
margin-right
:
20px
;
}
.page_visaMG
.wauto
label
{
width
:
98px
;
}
.page_visaMG
._info_box
{
/* padding-bottom: 0; */
}
.page_visaMG
._info_box
ul
{
margin-top
:
10px
;
}
.page_visaMG
._info_box
ul
li
{
}
.page_visaMG
._info_box
ul
li
.el-form-item
{
display
:
flex
;
height
:
30px
;
line-height
:
30px
;
}
.page_visaMG
._info_box
ul
li
.el-form-item
.el-input
{
display
:
flex
;
height
:
30px
;
line-height
:
30px
;
}
.page_visaMG
._info_box
ul
li
:nth-child
(
odd
)
{
margin-right
:
15px
;
}
.page_visaMG
._info_box
ul
li
.el-form-item__label
{
font-size
:
12px
!important
;
line-height
:
30px
;
}
.page_visaMG
._info_box
ul
li
.el-form-item
input
{
height
:
30px
;
line-height
:
30px
;
}
.page_visaMG
._info_box
ul
li
.el-form-item
textarea
{
height
:
80px
;
resize
:
none
;
width
:
280px
;
}
.page_visaMG
._edHeight
{
height
:
400px
;
}
.page_visaMG
._scrollbar
::-webkit-scrollbar
{
width
:
4px
;
height
:
8px
;
}
.page_visaMG
._scrollbar
::-webkit-scrollbar-thumb
{
border-radius
:
4px
;
-webkit-box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
background
:
#c9c9c9
;
}
.page_visaMG
._scrollbar
::-webkit-scrollbar-track
{
-webkit-box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
border-radius
:
4px
;
background
:
#ededed
;
}
.page_visaMG
._status
{
position
:
absolute
;
left
:
-20px
;
top
:
0px
;
}
.page_visaMG
._status
span
{
display
:
inline-block
;
padding
:
2px
5px
;
background-color
:
#4bca81
;
color
:
white
;
font-size
:
12px
;
border-top-right-radius
:
15px
;
border-bottom-right-radius
:
15px
;
}
.page_visaMG
._status
span
:nth-child
(
2
)
{
background-color
:
#e95252
;
}
.page_visaMG
._tips
{
display
:
inline-block
;
width
:
16px
;
height
:
16px
;
border-radius
:
50%
;
border
:
1px
solid
#e95252
;
color
:
#e95252
;
font-size
:
12px
;
line-height
:
15px
;
cursor
:
pointer
;
}
.page_visaMG_tips
{
text-align
:
center
;
}
.page_visaMG_tips
.hollowFixedBtn
{
margin-top
:
10px
;
}
.el-upload-list__item-status-label
{
}
._info_box
.el-form-item
{
display
:
inline-block
;
margin-left
:
10px
;
}
._top
img
{
width
:
71px
;
height
:
46px
;
}
.productlabel
.el-form-item__content
{
line-height
:
30px
;
}
.tag_ul
li
.input-new-tag
{
width
:
150px
;
}
.tag_ul
li
.el-tag
{
margin-right
:
15px
;
margin-bottom
:
15px
;
width
:
70px
;
padding
:
0
;
text-align
:
center
;
white-space
:
nowrap
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
cursor
:
pointer
;
position
:
relative
;
}
.tag_ul
li
>
div
{
margin-top
:
15px
;
}
.page_visaMG
.country
.el-upload-list--text
{
max-width
:
200px
;
}
.visa_pro_country
.el-tag
.el-icon-close
{
position
:
absolute
;
top
:
2px
;
right
:
0px
;
}
</
style
>
<
template
>
<div
class=
"page_visaMG visa_pro_country"
>
<p
style=
"padding-top:10px"
>
<span>
国家:
<el-input
style=
"width:200px;display:inline-block"
v-model=
"countryList.countryName"
placeholder=
"请输入国家"
/>
<button
type=
"button"
class=
"normalBtn"
@
click=
"getVisaManagementList(),resetPageIndex()"
>
查询
</button>
</span>
<button
style=
"float:right"
type=
"button"
class=
"normalBtn"
@
click=
"AddForm"
>
新增
</button>
</p>
<div
class=
"_vMG_conten _scrollbar"
>
<ul
class=
"clearfix list"
>
<li
v-for=
"(item,index) in DataList"
:key=
"index"
>
<div
class=
"_top"
>
<img
:src=
"item.Icon"
alt=
""
>
<p
class=
"PingFangSC"
>
{{
item
.
CountryName
}}
</p>
<div
class=
"_status"
>
<span
v-if=
"item.HotCountry==1"
>
热门
</span>
</div>
</div>
<div
class=
"tcenter"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"编辑"
placement=
"top-start"
>
<el-button
@
click=
"EditCountry(item)"
style=
"padding:6px"
type=
"primary"
icon=
"el-icon-edit"
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"产品标签"
placement=
"top-start"
>
<el-button
@
click=
"Product(item)"
style=
"padding:6px;background:#4bca81;color:#fff;border:none"
icon=
"el-icon-edit-outline"
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"删除"
placement=
"top-start"
>
<el-button
@
click=
"Delete(item)"
style=
"padding:6px;background:#E95252;color:#fff;border:none"
icon=
"el-icon-delete"
circle
></el-button>
</el-tooltip>
</div>
</li>
</ul>
<el-pagination
background
@
current-change=
"handleCurrentChange"
v-if=
"DataList.length>0"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"countryList.pageSize"
:total=
"total"
></el-pagination>
</div>
<div
class=
"_vMG_edit"
v-show=
"addShow"
>
<p
class=
"_tit"
>
签证国家
<span
style=
"float:right"
>
<button
class=
"hollowFixedBtn"
type=
"button"
@
click=
"cancelEdit()"
>
取消
</button>
<button
type=
"button"
class=
"normalBtn"
@
click=
"saveVisa"
>
保存
</button>
</span>
</p>
<el-form
class=
"country _info_box clearfix"
label-width=
"80px"
>
<el-form-item
label=
"国家"
>
<el-select
@
change=
"Selectchange"
filterable
v-model=
"country.CountryId"
placeholder=
"请选择"
>
<el-option
v-for=
"item in allcountry"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"是否热门"
>
<el-select
v-model=
"country.HotCountry"
placeholder=
"请选择"
>
<el-option
key=
"1"
label=
"是"
:value=
"1"
></el-option>
<el-option
key=
"0"
label=
"否"
:value=
"0"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"排序"
>
<el-input
v-model=
"country.Sort"
placeholder=
"排序"
/>
</el-form-item>
<el-form-item
label=
"国家图标"
>
<el-upload
:file-list=
"fileList"
:http-request=
"uploadTest"
:multiple=
"true"
:limit=
"2"
:on-change=
"handleChange1"
action=
""
>
<el-button
size=
"small"
type=
"primary"
>
点击上传
</el-button>
</el-upload>
</el-form-item>
<el-form-item
label=
"背景图片"
>
<el-upload
:file-list=
"fileList2"
:http-request=
"uploadTest2"
:multiple=
"true"
:limit=
"2"
:on-change=
"handleChange2"
action=
""
>
<el-button
size=
"small"
type=
"primary"
>
点击上传
</el-button>
</el-upload>
</el-form-item>
<!--
<el-form-item>
<button
class=
"hollowFixedBtn"
type=
"button"
@
click=
"cancelEdit()"
>
取消
</button>
<button
type=
"button"
class=
"normalBtn"
@
click=
"saveVisa"
>
保存
</button>
</el-form-item>
-->
</el-form>
</div>
<!-- 国家产品标签 -->
<el-dialog
@
close=
"dialogclose"
v-loading=
"tagloading"
title=
"提示"
:visible
.
sync=
"CPBQ"
width=
"550px"
>
<ul
class=
"tag_ul"
>
<li>
<span>
签证类型
</span>
<span
style=
"margin-left:10px"
>
<el-input
class=
"input-new-tag"
v-if=
"inputVisible1"
v-model=
"inputValue"
ref=
"saveTagInput1"
size=
"small"
@
keyup
.
enter
.
native=
"handleInputConfirm(1)"
>
</el-input>
<el-button
v-else
class=
"button-new-tag"
size=
"mini"
@
click=
"showInput(1)"
>
新增
</el-button>
</span>
<div>
<el-tag
size=
"small"
v-for=
"tag in CountryTagList"
v-if=
"tag.TagType==1"
:key=
"tag.Id"
closable
:disable-transitions=
"false"
@
click
.
native=
"EditTag(tag,1)"
@
close=
"handleClose(tag)"
>
<!--
<el-input
v-model=
"tag.TagTame"
:disabled=
"tagstate==tag.Id"
></el-input>
-->
{{
tag
.
TagTame
}}
</el-tag>
</div>
</li>
<li>
<span>
产品标签
</span>
<span
style=
"margin-left:10px"
>
<el-input
class=
"input-new-tag"
v-if=
"inputVisible2"
v-model=
"inputValue"
ref=
"saveTagInput2"
size=
"small"
@
keyup
.
enter
.
native=
"handleInputConfirm(2)"
>
</el-input>
<el-button
v-else
class=
"button-new-tag"
size=
"mini"
@
click=
"showInput(2)"
>
新增
</el-button>
</span>
<div>
<el-tag
v-if=
"tag.TagType==2"
size=
"small"
:key=
"tag.Id"
v-for=
"tag in CountryTagList"
closable
:disable-transitions=
"false"
@
click
.
native=
"EditTag(tag,2)"
@
close=
"handleClose(tag)"
>
{{
tag
.
TagTame
}}
</el-tag>
</div>
</li>
<li>
<span>
特色服务
</span>
<span
style=
"margin-left:10px"
>
<el-input
class=
"input-new-tag"
v-if=
"inputVisible3"
v-model=
"inputValue"
ref=
"saveTagInput3"
size=
"small"
@
keyup
.
enter
.
native=
"handleInputConfirm(3)"
>
</el-input>
<el-button
v-else
class=
"button-new-tag"
size=
"mini"
@
click=
"showInput(3)"
>
新增
</el-button>
</span>
<div>
<el-tag
v-if=
"tag.TagType==3"
size=
"small"
:key=
"tag.Id"
v-for=
"tag in CountryTagList"
closable
:disable-transitions=
"false"
@
click
.
native=
"EditTag(tag,3)"
@
close=
"handleClose(tag)"
>
{{
tag
.
TagTame
}}
</el-tag>
</div>
</li>
</ul>
</el-dialog>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
tagstate
:
13
,
tagloading
:
false
,
CPBQ
:
false
,
productlabel
:{},
country
:
{
CountryId
:
2
,
HotCountry
:
1
,
Icon
:
""
,
ImageFileList
:
[],
Sort
:
0
,
},
// fileList: [],
fileList
:
[],
fileList2
:
[],
DataList
:
[],
editData
:
[],
VisaSalesPlatformEnum
:
[],
CommuneInfoList
:
[],
addShow
:
false
,
countryList
:
{
pageIndex
:
1
,
pageSize
:
20
},
currentPage
:
1
,
total
:
0
,
allcountry
:
[],
CountryTagList
:[],
dynamicTags
:[],
inputVisible1
:
false
,
inputVisible2
:
false
,
inputVisible3
:
false
,
inputValue
:
""
,
};
},
methods
:
{
resetPageIndex
()
{
this
.
countryList
.
pageIndex
=
1
;
this
.
currentPage
=
1
},
handleCurrentChange
(
val
)
{
this
.
countryList
.
pageIndex
=
val
;
this
.
getVisaManagementList
();
},
dialogclose
(){
this
.
CountryTagList
=
[];
},
// 编辑标签
EditTag
(
tag
,
num
){
console
.
log
(
tag
);
this
.
showInput
(
num
);
this
.
inputValue
=
tag
.
TagTame
;
this
.
productlabel
.
Id
=
tag
.
Id
;
},
handleClose
(
tag
)
{
this
.
tagloading
=
true
;
this
.
apipost
(
"dmc_post_visa_DeleteVisaProductCountryTag"
,
{
Id
:
tag
.
Id
},
res
=>
{
this
.
tagloading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
GetProductLabel
(
tag
.
VisaCountryId
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
showInput
(
num
)
{
this
.
inputValue
=
""
;
this
.
productlabel
.
Id
=
0
;
this
.
inputVisible1
=
false
;
this
.
inputVisible2
=
false
;
this
.
inputVisible3
=
false
;
if
(
num
==
1
){
this
.
inputVisible1
=
true
;
}
if
(
num
==
2
){
this
.
inputVisible2
=
true
;
}
if
(
num
==
3
){
this
.
inputVisible3
=
true
;
}
// `${this.inputVisible}num` = true;
this
.
$nextTick
(
_
=>
{
this
.
$refs
[
`saveTagInput
${
num
}
`
].
$refs
.
input
.
focus
();
// this.$refs.saveTagInput.$refs.input.focus();
});
},
handleInputConfirm
(
num
)
{
// 标签类型
this
.
productlabel
.
TagType
=
num
;
this
.
productlabel
.
TagTame
=
this
.
inputValue
;
this
.
apipost
(
"dmc_post_visa_SetVisaProductCountryTag"
,
this
.
productlabel
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
inputValue
=
''
;
this
.
inputVisible1
=
false
;
this
.
inputVisible2
=
false
;
this
.
inputVisible3
=
false
;
this
.
GetProductLabel
(
this
.
productlabel
.
VisaCountryId
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
Product
(
item
){
this
.
inputVisible1
=
false
;
this
.
inputVisible2
=
false
;
this
.
inputVisible3
=
false
;
this
.
tagloading
=
true
;
this
.
productlabel
.
VisaCountryId
=
item
.
CountryId
;
this
.
GetProductLabel
(
item
.
CountryId
);
this
.
CPBQ
=
true
;
},
// 新增
AddForm
(){
this
.
addShow
=
true
;
this
.
country
=
{
CountryId
:
""
,
HotCountry
:
1
,
Icon
:
""
,
ImageFileList
:
[],
Sort
:
0
,
};
this
.
fileList2
=
[];
this
.
fileList
=
[];
},
// 获取签证国家产品标签列表
GetProductLabel
(
item
){
this
.
tagloading
=
true
;
this
.
apipost
(
"dmc_post_visa_GetVisaProductCountryTagList"
,
{
VisaCountryId
:
item
},
res
=>
{
this
.
tagloading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
CountryTagList
=
res
.
data
.
data
;
console
.
log
(
this
.
CountryTagList
,
'countrylist'
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
// 删除签证国家
Delete
(
item
)
{
this
.
$confirm
(
"是否删除?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
})
.
then
(()
=>
{
this
.
apipost
(
"dmc_post_visa_DeleteVisaProductCountry"
,
{
Id
:
item
.
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getVisaManagementList
();
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
})
.
catch
(()
=>
{
this
.
$message
.
info
(
"已取消停用"
);
});
},
Selectchange
(
val
)
{
let
obj
=
{};
obj
=
this
.
allcountry
.
find
(
item
=>
{
//这里的userList就是上面遍历的数据源
return
item
.
ID
===
val
;
//筛选出匹配数据
});
this
.
country
.
CountryName
=
obj
.
Name
;
},
uploadTest2
(
file
)
{
let
newArr
=
[];
this
.
country
.
ImageFileList
=
[];
newArr
.
push
(
file
.
file
);
let
path
=
"/Upload/DMC/Icon/"
;
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
let
url
=
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
;
this
.
country
.
ImageFileList
[
0
]
=
url
;
// this.fileList.push({url:url})
});
},
handleChange2
(
file
,
fileList
)
{
this
.
fileList2
=
fileList
.
slice
(
-
1
);
},
handleChange1
(
file
,
fileList
)
{
this
.
fileList
=
fileList
.
slice
(
-
1
);
},
uploadTest
(
file
)
{
let
newArr
=
[];
newArr
.
push
(
file
.
file
);
let
path
=
"/Upload/DMC/Icon/"
;
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
let
url
=
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
;
this
.
country
.
Icon
=
url
;
// this.fileList.push({url:url})
});
},
EditCountry
(
item
)
{
this
.
fileList2
=
[];
this
.
fileList
=
[];
this
.
addShow
=
true
;
this
.
country
=
Object
.
assign
({},
item
);
let
obj1
=
{
name
:
""
,
url
:
''
};
obj1
.
name
=
item
.
Icon
;
obj1
.
url
=
item
.
Icon
;
this
.
fileList
.
push
(
obj1
);
let
obj2
=
{
name
:
""
,
url
:
''
};
obj2
.
name
=
item
.
ImageFileList
[
0
];
obj2
.
url
=
item
.
ImageFileList
[
0
];
this
.
fileList2
.
push
(
obj2
);
},
editVisa
(
item
)
{
let
data
=
item
;
data
.
Status
=
data
.
Status
.
toString
();
this
.
addShow
=
true
;
this
.
addMsg
=
JSON
.
parse
(
JSON
.
stringify
(
data
));
},
// 获取签证列表
getVisaManagementList
()
{
this
.
apipost
(
"dmc_get_visa_GetVisaProductCountryPageList"
,
this
.
countryList
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
DataList
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
saveVisa
()
{
//修改保存
// console.log("this.country",this.country);
if
(
this
.
country
.
CountryId
==
""
)
{
this
.
$message
.
error
(
"请选择国家!"
);
return
;
}
if
(
this
.
country
.
Icon
==
""
)
{
this
.
$message
.
error
(
"请上传国家图片!"
);
return
;
}
if
(
this
.
country
.
ImageFileList
.
length
==
0
)
{
this
.
$message
.
error
(
"请上传背景图片!"
);
return
;
}
this
.
apipost
(
"dmc_post_visa_SetVisaProductCountry"
,
this
.
country
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
country
=
{
CountryId
:
""
,
HotCountry
:
1
,
Icon
:
""
,
ImageFileList
:
[],
Sort
:
0
,
};
this
.
fileList
=
[];
this
.
fileList2
=
[];
this
.
addShow
=
false
;
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getVisaManagementList
();
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
cancelEdit
()
{
this
.
addMsg
=
{
Id
:
0
,
Discription
:
""
,
Sort
:
1
,
Status
:
0
,
B2B_Price
:
""
,
B2C_Price
:
""
,
DaySet
:
""
,
Interior_Price
:
""
,
SalesPlatform
:
""
,
Unit_Price
:
""
};
this
.
addShow
=
false
;
},
// 获取国家列表
getcountryList
()
{
this
.
apipost
(
"dict_post_Destination_GetCountry"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
allcountry
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
}
},
mounted
()
{
this
.
getVisaManagementList
();
this
.
getcountryList
();
}
};
</
script
>
<
style
>
.page_visaMG
._vMG_edit
{
position
:
fixed
;
font-family
:
"PingFangSc-Fine"
;
bottom
:
0
;
left
:
50px
;
border-top
:
3px
solid
#38425d
;
background-color
:
#fff
;
padding
:
10px
;
width
:
calc
(
100%
-
50px
);
min-width
:
1146px
;
padding-right
:
10px
;
}
/* .page_visaMG .edHeight{display: block;height: 330px;} */
.page_visaMG
._vMG_conten
{
padding
:
30px
0
;
overflow-x
:
auto
;
}
.page_visaMG
._vMG_conten
.list
li
{
width
:
175px
;
height
:
auto
;
padding
:
20px
;
float
:
left
;
background-color
:
#ffffff
;
margin-right
:
26px
;
}
.page_visaMG
._vMG_conten
ul
li
._top
{
text-align
:
center
;
position
:
relative
;
}
.page_visaMG
._vMG_conten
ul
li
._top
p
{
font-size
:
14px
;
color
:
#333333
;
font-weight
:
bold
;
margin-top
:
8px
;
padding-bottom
:
10px
;
font-weight
:
bold
;
}
.page_visaMG
._vMG_conten
ul
li
._btm
{
border-top
:
1px
dashed
#b8b8b8
;
display
:
flex
;
text-align
:
center
;
padding-top
:
22px
;
}
.page_visaMG
._vMG_conten
ul
li
._btmt
{
border
:
none
;
}
.page_visaMG
._vMG_conten
ul
li
._btm
>
div
{
width
:
50%
;
}
.page_visaMG
._vMG_conten
ul
li
._btm
>
div
:nth-child
(
1
)
{
border-right
:
1px
solid
#b8b8b8
;
}
.page_visaMG
._vMG_conten
ul
li
._btm
>
div
._num
{
font-size
:
16px
;
color
:
#333333
;
font-weight
:
bold
;
}
.page_visaMG
._vMG_conten
ul
li
._btmt
>
div
._num
{
font-size
:
14px
;
}
.page_visaMG
._vMG_conten
ul
li
._btm
>
div
._text
{
font-size
:
12px
;
color
:
#666666
;
}
.page_visaMG
._vMG_conten
ul
li
.tcenter
{
margin-top
:
15px
;
}
.page_visaMG
._vMG_conten
li
:hover
{
box-shadow
:
0px
0px
20px
rgba
(
191
,
191
,
191
,
1
);
transition
:
all
linear
0.5s
;
}
.page_visaMG
._black
{
filter
:
gray
;
-webkit-filter
:
grayscale
(
100%
);
}
.page_visaMG
._noOpen
{
line-height
:
34px
;
color
:
#666666
;
font-size
:
12px
;
text-align
:
center
;
padding-top
:
22px
;
border-top
:
1px
dashed
#b8b8b8
;
}
.page_visaMG
._vMG_edit
._tit
{
padding-left
:
10px
;
border-left
:
3px
solid
#e95252
;
font-size
:
16px
;
color
:
#000000
;
}
.page_visaMG
._vMG_edit
._tit
span
{
color
:
#666666
;
font-size
:
14px
;
}
.page_visaMG
._info_box
{
padding
:
30px
15px
;
font-size
:
12px
!important
;
margin-bottom
:
20px
;
}
.page_visaMG
._info_box
>
div
{
float
:
left
;
}
.page_visaMG
.w400
{
width
:
450px
;
margin-right
:
20px
;
height
:
100px
;
}
.page_visaMG
.w225
{
width
:
225px
;
margin-right
:
20px
;
}
.page_visaMG
.wauto
label
{
width
:
98px
;
}
.page_visaMG
._info_box
{
/* padding-bottom: 0; */
}
.page_visaMG
._info_box
ul
{
margin-top
:
10px
;
}
.page_visaMG
._info_box
ul
li
{
}
.page_visaMG
._info_box
ul
li
.el-form-item
{
display
:
flex
;
height
:
30px
;
line-height
:
30px
;
}
.page_visaMG
._info_box
ul
li
.el-form-item
.el-input
{
display
:
flex
;
height
:
30px
;
line-height
:
30px
;
}
.page_visaMG
._info_box
ul
li
:nth-child
(
odd
)
{
margin-right
:
15px
;
}
.page_visaMG
._info_box
ul
li
.el-form-item__label
{
font-size
:
12px
!important
;
line-height
:
30px
;
}
.page_visaMG
._info_box
ul
li
.el-form-item
input
{
height
:
30px
;
line-height
:
30px
;
}
.page_visaMG
._info_box
ul
li
.el-form-item
textarea
{
height
:
80px
;
resize
:
none
;
width
:
280px
;
}
.page_visaMG
._edHeight
{
height
:
400px
;
}
.page_visaMG
._scrollbar
::-webkit-scrollbar
{
width
:
4px
;
height
:
8px
;
}
.page_visaMG
._scrollbar
::-webkit-scrollbar-thumb
{
border-radius
:
4px
;
-webkit-box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
background
:
#c9c9c9
;
}
.page_visaMG
._scrollbar
::-webkit-scrollbar-track
{
-webkit-box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
border-radius
:
4px
;
background
:
#ededed
;
}
.page_visaMG
._status
{
position
:
absolute
;
left
:
-20px
;
top
:
0px
;
}
.page_visaMG
._status
span
{
display
:
inline-block
;
padding
:
2px
5px
;
background-color
:
#4bca81
;
color
:
white
;
font-size
:
12px
;
border-top-right-radius
:
15px
;
border-bottom-right-radius
:
15px
;
}
.page_visaMG
._status
span
:nth-child
(
2
)
{
background-color
:
#e95252
;
}
.page_visaMG
._tips
{
display
:
inline-block
;
width
:
16px
;
height
:
16px
;
border-radius
:
50%
;
border
:
1px
solid
#e95252
;
color
:
#e95252
;
font-size
:
12px
;
line-height
:
15px
;
cursor
:
pointer
;
}
.page_visaMG_tips
{
text-align
:
center
;
}
.page_visaMG_tips
.hollowFixedBtn
{
margin-top
:
10px
;
}
.el-upload-list__item-status-label
{
}
._info_box
.el-form-item
{
display
:
inline-block
;
margin-left
:
10px
;
}
._top
img
{
width
:
71px
;
height
:
46px
;
}
.productlabel
.el-form-item__content
{
line-height
:
30px
;
}
.tag_ul
li
.input-new-tag
{
width
:
150px
;
}
.tag_ul
li
.el-tag
{
margin-right
:
15px
;
margin-bottom
:
15px
;
width
:
70px
;
padding
:
0
;
text-align
:
center
;
white-space
:
nowrap
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
cursor
:
pointer
;
position
:
relative
;
}
.tag_ul
li
>
div
{
margin-top
:
15px
;
}
.page_visaMG
.country
.el-upload-list--text
{
max-width
:
200px
;
}
.visa_pro_country
.el-tag
.el-icon-close
{
position
:
absolute
;
top
:
2px
;
right
:
0px
;
}
</
style
>
<
template
>
<div
class=
"page_visaMG visa_pro_country"
>
<p
style=
"padding-top:10px"
>
<span>
国家:
<el-input
style=
"width:200px;display:inline-block"
v-model=
"countryList.countryName"
placeholder=
"请输入国家"
/>
<button
type=
"button"
class=
"normalBtn"
@
click=
"getVisaManagementList(),resetPageIndex()"
>
查询
</button>
</span>
<button
style=
"float:right"
type=
"button"
class=
"normalBtn"
@
click=
"AddForm"
>
新增
</button>
</p>
<div
class=
"_vMG_conten _scrollbar"
>
<ul
class=
"clearfix list"
>
<li
v-for=
"(item,index) in DataList"
:key=
"index"
>
<div
class=
"_top"
>
<img
:src=
"item.Icon"
alt=
""
>
<p
class=
"PingFangSC"
>
{{
item
.
CountryName
}}
</p>
<div
class=
"_status"
>
<span
v-if=
"item.HotCountry==1"
>
热门
</span>
</div>
</div>
<div
class=
"tcenter"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"编辑"
placement=
"top-start"
>
<el-button
@
click=
"EditCountry(item)"
style=
"padding:6px"
type=
"primary"
icon=
"el-icon-edit"
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"产品标签"
placement=
"top-start"
>
<el-button
@
click=
"Product(item)"
style=
"padding:6px;background:#4bca81;color:#fff;border:none"
icon=
"el-icon-edit-outline"
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"删除"
placement=
"top-start"
>
<el-button
@
click=
"Delete(item)"
style=
"padding:6px;background:#E95252;color:#fff;border:none"
icon=
"el-icon-delete"
circle
></el-button>
</el-tooltip>
</div>
</li>
</ul>
<el-pagination
background
@
current-change=
"handleCurrentChange"
v-if=
"DataList.length>0"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"countryList.pageSize"
:total=
"total"
></el-pagination>
</div>
<div
class=
"_vMG_edit"
v-show=
"addShow"
>
<p
class=
"_tit"
>
签证国家
<span
style=
"float:right"
>
<button
class=
"hollowFixedBtn"
type=
"button"
@
click=
"cancelEdit()"
>
取消
</button>
<button
type=
"button"
class=
"normalBtn"
@
click=
"saveVisa"
>
保存
</button>
</span>
</p>
<el-form
class=
"country _info_box clearfix"
label-width=
"80px"
>
<el-form-item
label=
"国家"
>
<el-select
@
change=
"Selectchange"
filterable
v-model=
"country.CountryId"
placeholder=
"请选择"
>
<el-option
v-for=
"item in allcountry"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"是否热门"
>
<el-select
v-model=
"country.HotCountry"
placeholder=
"请选择"
>
<el-option
key=
"1"
label=
"是"
:value=
"1"
></el-option>
<el-option
key=
"0"
label=
"否"
:value=
"0"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"排序"
>
<el-input
v-model=
"country.Sort"
placeholder=
"排序"
/>
</el-form-item>
<el-form-item
label=
"国家图标"
>
<el-upload
:file-list=
"fileList"
:http-request=
"uploadTest"
:multiple=
"true"
:limit=
"2"
:on-change=
"handleChange1"
action=
""
>
<el-button
size=
"small"
type=
"primary"
>
点击上传
</el-button>
</el-upload>
</el-form-item>
<el-form-item
label=
"背景图片"
>
<el-upload
:file-list=
"fileList2"
:http-request=
"uploadTest2"
:multiple=
"true"
:limit=
"2"
:on-change=
"handleChange2"
action=
""
>
<el-button
size=
"small"
type=
"primary"
>
点击上传
</el-button>
</el-upload>
</el-form-item>
<!--
<el-form-item>
<button
class=
"hollowFixedBtn"
type=
"button"
@
click=
"cancelEdit()"
>
取消
</button>
<button
type=
"button"
class=
"normalBtn"
@
click=
"saveVisa"
>
保存
</button>
</el-form-item>
-->
</el-form>
</div>
<!-- 国家产品标签 -->
<el-dialog
@
close=
"dialogclose"
v-loading=
"tagloading"
title=
"提示"
:visible
.
sync=
"CPBQ"
width=
"550px"
>
<ul
class=
"tag_ul"
>
<li>
<span>
签证类型
</span>
<span
style=
"margin-left:10px"
>
<el-input
class=
"input-new-tag"
v-if=
"inputVisible1"
v-model=
"inputValue"
ref=
"saveTagInput1"
size=
"small"
@
keyup
.
enter
.
native=
"handleInputConfirm(1)"
>
</el-input>
<el-button
v-else
class=
"button-new-tag"
size=
"mini"
@
click=
"showInput(1)"
>
新增
</el-button>
</span>
<div>
<el-tag
size=
"small"
v-for=
"tag in CountryTagList"
v-if=
"tag.TagType==1"
:key=
"tag.Id"
closable
:disable-transitions=
"false"
@
click
.
native=
"EditTag(tag,1)"
@
close=
"handleClose(tag)"
>
<!--
<el-input
v-model=
"tag.TagTame"
:disabled=
"tagstate==tag.Id"
></el-input>
-->
{{
tag
.
TagTame
}}
</el-tag>
</div>
</li>
<li>
<span>
产品标签
</span>
<span
style=
"margin-left:10px"
>
<el-input
class=
"input-new-tag"
v-if=
"inputVisible2"
v-model=
"inputValue"
ref=
"saveTagInput2"
size=
"small"
@
keyup
.
enter
.
native=
"handleInputConfirm(2)"
>
</el-input>
<el-button
v-else
class=
"button-new-tag"
size=
"mini"
@
click=
"showInput(2)"
>
新增
</el-button>
</span>
<div>
<el-tag
v-if=
"tag.TagType==2"
size=
"small"
:key=
"tag.Id"
v-for=
"tag in CountryTagList"
closable
:disable-transitions=
"false"
@
click
.
native=
"EditTag(tag,2)"
@
close=
"handleClose(tag)"
>
{{
tag
.
TagTame
}}
</el-tag>
</div>
</li>
<li>
<span>
特色服务
</span>
<span
style=
"margin-left:10px"
>
<el-input
class=
"input-new-tag"
v-if=
"inputVisible3"
v-model=
"inputValue"
ref=
"saveTagInput3"
size=
"small"
@
keyup
.
enter
.
native=
"handleInputConfirm(3)"
>
</el-input>
<el-button
v-else
class=
"button-new-tag"
size=
"mini"
@
click=
"showInput(3)"
>
新增
</el-button>
</span>
<div>
<el-tag
v-if=
"tag.TagType==3"
size=
"small"
:key=
"tag.Id"
v-for=
"tag in CountryTagList"
closable
:disable-transitions=
"false"
@
click
.
native=
"EditTag(tag,3)"
@
close=
"handleClose(tag)"
>
{{
tag
.
TagTame
}}
</el-tag>
</div>
</li>
</ul>
</el-dialog>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
tagstate
:
13
,
tagloading
:
false
,
CPBQ
:
false
,
productlabel
:{},
country
:
{
CountryId
:
2
,
HotCountry
:
1
,
Icon
:
""
,
ImageFileList
:
[],
Sort
:
0
,
},
// fileList: [],
fileList
:
[],
fileList2
:
[],
DataList
:
[],
editData
:
[],
VisaSalesPlatformEnum
:
[],
CommuneInfoList
:
[],
addShow
:
false
,
countryList
:
{
pageIndex
:
1
,
pageSize
:
20
},
currentPage
:
1
,
total
:
0
,
allcountry
:
[],
CountryTagList
:[],
dynamicTags
:[],
inputVisible1
:
false
,
inputVisible2
:
false
,
inputVisible3
:
false
,
inputValue
:
""
,
};
},
methods
:
{
resetPageIndex
()
{
this
.
countryList
.
pageIndex
=
1
;
this
.
currentPage
=
1
},
handleCurrentChange
(
val
)
{
this
.
countryList
.
pageIndex
=
val
;
this
.
getVisaManagementList
();
},
dialogclose
(){
this
.
CountryTagList
=
[];
},
// 编辑标签
EditTag
(
tag
,
num
){
console
.
log
(
tag
);
this
.
showInput
(
num
);
this
.
inputValue
=
tag
.
TagTame
;
this
.
productlabel
.
Id
=
tag
.
Id
;
},
handleClose
(
tag
)
{
this
.
tagloading
=
true
;
this
.
apipost
(
"dmc_post_visa_DeleteVisaProductCountryTag"
,
{
Id
:
tag
.
Id
},
res
=>
{
this
.
tagloading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
GetProductLabel
(
tag
.
VisaCountryId
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
showInput
(
num
)
{
this
.
inputValue
=
""
;
this
.
productlabel
.
Id
=
0
;
this
.
inputVisible1
=
false
;
this
.
inputVisible2
=
false
;
this
.
inputVisible3
=
false
;
if
(
num
==
1
){
this
.
inputVisible1
=
true
;
}
if
(
num
==
2
){
this
.
inputVisible2
=
true
;
}
if
(
num
==
3
){
this
.
inputVisible3
=
true
;
}
// `${this.inputVisible}num` = true;
this
.
$nextTick
(
_
=>
{
this
.
$refs
[
`saveTagInput
${
num
}
`
].
$refs
.
input
.
focus
();
// this.$refs.saveTagInput.$refs.input.focus();
});
},
handleInputConfirm
(
num
)
{
// 标签类型
this
.
productlabel
.
TagType
=
num
;
this
.
productlabel
.
TagTame
=
this
.
inputValue
;
this
.
apipost
(
"dmc_post_visa_SetVisaProductCountryTag"
,
this
.
productlabel
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
inputValue
=
''
;
this
.
inputVisible1
=
false
;
this
.
inputVisible2
=
false
;
this
.
inputVisible3
=
false
;
this
.
GetProductLabel
(
this
.
productlabel
.
VisaCountryId
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
Product
(
item
){
this
.
inputVisible1
=
false
;
this
.
inputVisible2
=
false
;
this
.
inputVisible3
=
false
;
this
.
tagloading
=
true
;
this
.
productlabel
.
VisaCountryId
=
item
.
CountryId
;
this
.
GetProductLabel
(
item
.
CountryId
);
this
.
CPBQ
=
true
;
},
// 新增
AddForm
(){
this
.
addShow
=
true
;
this
.
country
=
{
CountryId
:
""
,
HotCountry
:
1
,
Icon
:
""
,
ImageFileList
:
[],
Sort
:
0
,
};
this
.
fileList2
=
[];
this
.
fileList
=
[];
},
// 获取签证国家产品标签列表
GetProductLabel
(
item
){
this
.
tagloading
=
true
;
this
.
apipost
(
"dmc_post_visa_GetVisaProductCountryTagList"
,
{
VisaCountryId
:
item
},
res
=>
{
this
.
tagloading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
CountryTagList
=
res
.
data
.
data
;
console
.
log
(
this
.
CountryTagList
,
'countrylist'
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
// 删除签证国家
Delete
(
item
)
{
this
.
$confirm
(
"是否删除?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
})
.
then
(()
=>
{
this
.
apipost
(
"dmc_post_visa_DeleteVisaProductCountry"
,
{
Id
:
item
.
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getVisaManagementList
();
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
})
.
catch
(()
=>
{
this
.
$message
.
info
(
"已取消停用"
);
});
},
Selectchange
(
val
)
{
let
obj
=
{};
obj
=
this
.
allcountry
.
find
(
item
=>
{
//这里的userList就是上面遍历的数据源
return
item
.
ID
===
val
;
//筛选出匹配数据
});
this
.
country
.
CountryName
=
obj
.
Name
;
},
uploadTest2
(
file
)
{
let
newArr
=
[];
this
.
country
.
ImageFileList
=
[];
newArr
.
push
(
file
.
file
);
let
path
=
"/Upload/DMC/Icon/"
;
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
let
url
=
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
;
this
.
country
.
ImageFileList
[
0
]
=
url
;
// this.fileList.push({url:url})
});
},
handleChange2
(
file
,
fileList
)
{
this
.
fileList2
=
fileList
.
slice
(
-
1
);
},
handleChange1
(
file
,
fileList
)
{
this
.
fileList
=
fileList
.
slice
(
-
1
);
},
uploadTest
(
file
)
{
let
newArr
=
[];
newArr
.
push
(
file
.
file
);
let
path
=
"/Upload/DMC/Icon/"
;
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
let
url
=
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
;
this
.
country
.
Icon
=
url
;
// this.fileList.push({url:url})
});
},
EditCountry
(
item
)
{
this
.
fileList2
=
[];
this
.
fileList
=
[];
this
.
addShow
=
true
;
this
.
country
=
Object
.
assign
({},
item
);
let
obj1
=
{
name
:
""
,
url
:
''
};
obj1
.
name
=
item
.
Icon
;
obj1
.
url
=
item
.
Icon
;
this
.
fileList
.
push
(
obj1
);
let
obj2
=
{
name
:
""
,
url
:
''
};
obj2
.
name
=
item
.
ImageFileList
[
0
];
obj2
.
url
=
item
.
ImageFileList
[
0
];
this
.
fileList2
.
push
(
obj2
);
},
editVisa
(
item
)
{
let
data
=
item
;
data
.
Status
=
data
.
Status
.
toString
();
this
.
addShow
=
true
;
this
.
addMsg
=
JSON
.
parse
(
JSON
.
stringify
(
data
));
},
// 获取签证列表
getVisaManagementList
()
{
this
.
apipost
(
"dmc_get_visa_GetVisaProductCountryPageList"
,
this
.
countryList
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
DataList
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
saveVisa
()
{
//修改保存
// console.log("this.country",this.country);
if
(
this
.
country
.
CountryId
==
""
)
{
this
.
$message
.
error
(
"请选择国家!"
);
return
;
}
if
(
this
.
country
.
Icon
==
""
)
{
this
.
$message
.
error
(
"请上传国家图片!"
);
return
;
}
if
(
this
.
country
.
ImageFileList
.
length
==
0
)
{
this
.
$message
.
error
(
"请上传背景图片!"
);
return
;
}
this
.
apipost
(
"dmc_post_visa_SetVisaProductCountry"
,
this
.
country
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
country
=
{
CountryId
:
""
,
HotCountry
:
1
,
Icon
:
""
,
ImageFileList
:
[],
Sort
:
0
,
};
this
.
fileList
=
[];
this
.
fileList2
=
[];
this
.
addShow
=
false
;
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getVisaManagementList
();
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
cancelEdit
()
{
this
.
addMsg
=
{
Id
:
0
,
Discription
:
""
,
Sort
:
1
,
Status
:
0
,
B2B_Price
:
""
,
B2C_Price
:
""
,
DaySet
:
""
,
Interior_Price
:
""
,
SalesPlatform
:
""
,
Unit_Price
:
""
};
this
.
addShow
=
false
;
},
// 获取国家列表
getcountryList
()
{
this
.
apipost
(
"dict_post_Destination_GetCountry"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
allcountry
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
}
},
mounted
()
{
this
.
getVisaManagementList
();
this
.
getcountryList
();
}
};
</
script
>
src/components/administrative/ExaminationStatistics.vue
View file @
fc1b186e
...
...
@@ -107,19 +107,20 @@ export default {
console
.
log
(
"filter"
,
filters
);
let
data
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
dataListTwo
))
let
dataListTwo
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
dataListTwo
))
if
(
filters
.
bName
!=
''
&&
filters
.
bName
!=
'__all__'
){
data
=
data
.
filter
(
item
=>
item
.
bName
.
indexOf
(
filters
.
bName
)
!=-
1
);
debugger
;
if
(
filters
.
bName
&&
filters
.
bName
!=
''
&&
filters
.
bName
!=
'__all__'
){
data
=
data
.
filter
(
item
=>
item
.
bName
&&
item
.
bName
.
indexOf
(
filters
.
bName
)
!=-
1
);
}
if
(
filters
.
departmentName
!=
''
){
if
(
filters
.
departmentName
&&
filters
.
departmentName
!=
''
){
data
=
data
.
filter
(
item
=>
item
.
departmentName
.
indexOf
(
filters
.
departmentName
)
!=-
1
);
}
if
(
filters
.
emName
!=
''
){
if
(
filters
.
emName
&&
filters
.
emName
!=
''
){
data
=
data
.
filter
(
item
=>
item
.
emName
.
indexOf
(
filters
.
emName
)
!=-
1
);
}
if
(
filters
.
periods
!=
''
){
if
(
filters
.
periods
&&
filters
.
periods
!=
''
){
data
=
data
.
filter
(
item
=>
item
.
periods
.
indexOf
(
filters
.
periods
)
!=-
1
);
}
if
((
filters
.
bName
===
''
||
filters
.
bName
===
'__all__'
)
&&
filters
.
departmentName
===
''
&&
filters
.
createByStr
===
''
){
if
((
filters
.
bName
===
''
||
filters
.
bName
===
'__all__'
)
&&
filters
.
departmentName
===
''
&&
filters
.
emName
===
''
&&
filters
.
periods
===
''
){
data
=
dataListTwo
}
this
.
dataList
=
data
...
...
src/router/config.js
View file @
fc1b186e
This source diff could not be displayed because it is too large. You can
view the blob
instead.
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