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
68414de4
Commit
68414de4
authored
May 15, 2023
by
youjie
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
32d8e7c0
c74ef0c4
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
113 additions
and
22 deletions
+113
-22
productOrderList.vue
src/components/SalesModule/Common/productOrderList.vue
+78
-18
productOrderList.vue
src/components/SalesModule/productOrderList.vue
+27
-4
config.js
src/router/config.js
+8
-0
No files found.
src/components/SalesModule/Common/productOrderList.vue
View file @
68414de4
...
@@ -459,15 +459,21 @@
...
@@ -459,15 +459,21 @@
.productQuerybottomLayer
.el-upload-list
{
.productQuerybottomLayer
.el-upload-list
{
width
:
200px
;
width
:
200px
;
}
}
.flex-center
{
display
:
flex
;
justify-content
:
center
;
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"productQueryList"
v-loading=
"loading"
>
<div
class=
"productQueryList"
v-loading=
"loading"
>
<el-checkbox
v-model=
"allCheck"
></el-checkbox>
<div
style=
"margin-bottom: 10px;"
>
<el-button
type=
"primary"
@
click=
"eidtItems"
>
批量操作
</el-button>
<el-checkbox
v-model=
"allCheck"
@
change=
"changeSelect"
>
全选
</el-checkbox>
<el-button
style=
"margin-left: 10px;"
type=
"primary"
size=
"small"
@
click=
"eidtItems"
>
批量操作
</el-button></div>
<ul
v-if=
"list.length != 0"
>
<ul
v-if=
"list.length != 0"
>
<li
v-for=
"(item, index) in list"
:key=
"index"
>
<li
v-for=
"(item, index) in list"
:key=
"index"
>
<div
class=
"dline"
>
<div
class=
"dline"
>
<div><el-checkbox
v-model=
"item.check"
></el-checkbox></div>
<div>
<div
class=
"flex-center"
><el-checkbox
v-model=
"item.check"
@
change=
"changeSelectItem(item,index)"
></el-checkbox></div></div>
<div
class=
"d1"
>
<div
class=
"d1"
>
<div
v-if=
"item.IsB2B === 0"
class=
"product_union1"
></div>
<div
v-if=
"item.IsB2B === 0"
class=
"product_union1"
></div>
<div
v-if=
"item.IsUnionTravel === 1"
class=
"product_union"
></div>
<div
v-if=
"item.IsUnionTravel === 1"
class=
"product_union"
></div>
...
@@ -516,8 +522,9 @@
...
@@ -516,8 +522,9 @@
<div>
联运人数
{{
item
.
IntermodalCount
}}
</div>
<div>
联运人数
{{
item
.
IntermodalCount
}}
</div>
<div>
出团公司:
{{
item
.
OutBranchName
}}
</div>
<div>
出团公司:
{{
item
.
OutBranchName
}}
</div>
<div>
<div>
<div
class=
"flex-center"
>
<el-button
type=
"primary"
size=
"small"
@
click=
"editItem(item)"
>
编辑
</el-button>
<el-button
type=
"primary"
size=
"small"
@
click=
"editItem(item)"
>
编辑
</el-button>
</div>
</div>
</div>
</div>
</div>
</li>
</li>
</ul>
</ul>
...
@@ -528,27 +535,30 @@
...
@@ -528,27 +535,30 @@
title=
"提示"
title=
"提示"
:visible
.
sync=
"showDialog"
:visible
.
sync=
"showDialog"
width=
"70%"
height=
"40%"
>
width=
"70%"
height=
"40%"
>
<div>
<div
v-if=
"!isVisa"
>
<span
style=
"width: 10%;display:inline-block;"
>
团OP
</span>
<span
style=
"width: 10%;display:inline-block;"
>
团OP
</span>
<el-select
style=
"width: 80%"
v-model=
"queryData.OPId"
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-select
style=
"width: 80%"
v-model=
"queryData.OPId"
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
v-for=
"item in EmployeeList"
:label=
'item.EmName'
:value=
'item.EmployeeId'
<el-option
v-for=
"item in EmployeeList"
:label=
'item.EmName'
:value=
'item.EmployeeId'
:key=
'item.EmployeeId'
>
:key=
'item.EmployeeId'
>
</el-option>
</el-option>
</el-select></div>
</el-select></div>
<div>
<div
style=
"margin-top:10px"
>
<span
style=
"width: 10%;display:inline-block;"
>
签证助手
</span>
<span
style=
"width: 10%;display:inline-block;"
>
签证助手
</span>
<el-select
style=
"width: 80%"
v-model=
"queryData.VisaAssistantId"
multiple
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-select
style=
"width: 80%"
v-model=
"queryData.VisaAssistantId"
multiple
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
v-for=
"item in EmployeeList"
:label=
'item.EmName'
:value=
'item.EmployeeId'
<el-option
v-for=
"item in EmployeeList"
:label=
'item.EmName'
:value=
'item.EmployeeId'
:key=
'item.EmployeeId'
>
:key=
'item.EmployeeId'
>
</el-option>
</el-option>
</el-select></div>
</el-select></div>
<div>
<div
v-if=
"!isVisa"
style=
"margin-top:10px"
>
<span
style=
"width: 10%;display:inline-block;"
>
助手
</span>
<span
style=
"width: 10%;display:inline-block;"
>
助手
</span>
<el-select
style=
"width: 80%"
v-model=
"queryData.AssistantId"
multiple
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-select
style=
"width: 80%"
v-model=
"queryData.AssistantId"
multiple
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
v-for=
"item in EmployeeList"
:label=
'item.EmName'
:value=
'item.EmployeeId'
<el-option
v-for=
"item in EmployeeList"
:label=
'item.EmName'
:value=
'item.EmployeeId'
:key=
'item.EmployeeId'
>
:key=
'item.EmployeeId'
>
</el-option>
</el-option>
</el-select></div>
</el-select></div>
<div
style=
"margin-top:10px"
v-if=
"editNum && !isVisa"
>
<span
style=
"width: 10%;display:inline-block;"
>
联运人数
</span><el-input
type=
"number"
style=
"width: 80%;margin-left:4px"
v-model=
"queryData.VisaNum"
/>
</div>
<span
slot=
"footer"
class=
"dialog-footer"
>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"showDialog = false"
>
取 消
</el-button>
<el-button
@
click=
"showDialog = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"submitOP"
>
确 定
</el-button>
<el-button
type=
"primary"
@
click=
"submitOP"
>
确 定
</el-button>
...
@@ -559,9 +569,10 @@
...
@@ -559,9 +569,10 @@
<
script
>
<
script
>
export
default
{
export
default
{
props
:
[
"loading"
,
"list"
,
"pagesTitle"
],
props
:
[
"loading"
,
"list"
,
"pagesTitle"
,
"isVisa"
],
data
()
{
data
()
{
return
{
return
{
editNum
:
false
,
editObj
:
{},
editObj
:
{},
showDialog
:
false
,
showDialog
:
false
,
queryData
:
{},
queryData
:
{},
...
@@ -633,9 +644,39 @@ export default {
...
@@ -633,9 +644,39 @@ export default {
},
},
},
},
methods
:
{
methods
:
{
changeSelect
()
{
console
.
log
(
'changeSelect'
)
this
.
list
.
forEach
(
element
=>
{
element
.
check
=
this
.
allCheck
});
},
changeSelectItem
(
item
,
index
)
{
// this.$set(this.list[index], 'check', !item.check)
// console.log('changeSelectItem', item, index, this.list)
const
listTmp
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
list
))
this
.
list
=
[]
this
.
$nextTick
(()
=>
{
this
.
list
=
listTmp
})
// this.list.forEach((element, idx) => {
// if(idx == index) {
// element.check = !element.check
// }
// });
},
submitOP
()
{
submitOP
()
{
let
params
=
{}
console
.
log
(
'this.queryData'
,
this
.
queryData
,
this
.
TCIDs
)
if
(
!
this
.
queryData
.
VisaAssistantId
)
{
let
params
=
{
TCIDs
:
this
.
TCIDs
}
if
(
this
.
isVisa
)
{
if
(
!
this
.
queryData
.
VisaAssistantId
||
!
this
.
queryData
.
VisaAssistantId
.
length
)
{
this
.
$message
.
error
(
'请选择签证助手'
)
return
}
else
if
(
this
.
queryData
.
VisaAssistantId
.
length
===
1
)
{
params
.
VisaOPId
=
this
.
queryData
.
VisaAssistantId
[
0
]
}
else
{
params
.
VisaAssistantId
=
this
.
queryData
.
VisaAssistantId
.
join
(
','
)
}}
else
{
if
(
!
this
.
queryData
.
VisaAssistantId
||
!
this
.
queryData
.
VisaAssistantId
.
length
)
{
this
.
$message
.
error
(
'请选择签证助手'
)
this
.
$message
.
error
(
'请选择签证助手'
)
return
return
}
else
if
(
this
.
queryData
.
VisaAssistantId
.
length
===
1
)
{
}
else
if
(
this
.
queryData
.
VisaAssistantId
.
length
===
1
)
{
...
@@ -646,38 +687,57 @@ export default {
...
@@ -646,38 +687,57 @@ export default {
if
(
!
this
.
queryData
.
OPId
)
{
if
(
!
this
.
queryData
.
OPId
)
{
this
.
$message
.
error
(
'请选择团op'
)
this
.
$message
.
error
(
'请选择团op'
)
return
return
// } else if (this.queryData.VisaAssistantId.length === 1) {
// params.VisaOPId = this.queryData.VisaAssistantId[0]
}
else
{
}
else
{
params
.
OPId
=
this
.
queryData
.
OPId
params
.
OPId
=
this
.
queryData
.
OPId
}
}
if
(
!
this
.
queryData
.
AssistantId
)
{
if
(
!
this
.
queryData
.
AssistantId
||
!
this
.
queryData
.
AssistantId
.
length
)
{
this
.
$message
.
error
(
'请选择助手'
)
this
.
$message
.
error
(
'请选择助手'
)
return
return
// } else if (this.queryData.VisaAssistantId.length === 1) {
// params.VisaOPId = this.queryData.VisaAssistantId[0]
}
else
{
}
else
{
params
.
AssistantId
=
this
.
queryData
.
AssistantId
.
join
(
','
)
params
.
AssistantId
=
this
.
queryData
.
AssistantId
.
join
(
','
)
}
}
if
(
this
.
editNum
)
{
if
(
!
this
.
queryData
.
VisaNum
)
{
this
.
$message
.
error
(
'请填写联运人数'
)
return
}
else
{
params
.
VisaNum
=
this
.
queryData
.
VisaNum
}
}
}
this
.
apipost
(
this
.
apipost
(
"
travel_post_BatchSetOpInfo"
,
params
,
"travel_post_BatchSetOpInfo"
,
params
,
res
=>
{
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
EmployeeList
=
res
.
data
.
data
;
this
.
$message
.
success
(
res
.
data
.
message
||
'操作成功'
)
this
.
showDialog
=
false
;
this
.
$emit
(
"success"
);
}
}
},
},
err
=>
{}
err
=>
{}
);
);
},
},
editItem
(
item
)
{
editItem
(
item
)
{
this
.
TCIDs
=
item
.
TCID
console
.
log
(
'editItem'
,
item
)
console
.
log
(
'editItem'
,
item
)
this
.
editObj
=
item
this
.
editObj
=
item
this
.
editNum
=
true
this
.
showDialog
=
true
this
.
showDialog
=
true
},
},
eidtItems
()
{
eidtItems
()
{
console
.
log
(
'eidtItems eidtItems'
)
this
.
TCIDs
=
this
.
getSelcetedIds
()
console
.
log
(
'eidtItems eidtItems'
,
this
.
TCIDs
)
if
(
!
this
.
TCIDs
)
{
this
.
$message
.
error
(
'请选择要编辑的内容'
)
return
}
this
.
editNum
=
false
this
.
editObj
=
{}
this
.
editObj
=
{}
this
.
showDialog
=
true
this
.
showDialog
=
true
},
getSelcetedIds
()
{
return
this
.
list
.
filter
(
item
=>
item
.
check
).
map
(
item
=>
item
.
TCID
).
join
(
','
)
},
},
//根据当前员工所在部门获取该部门及子部门员工信息
//根据当前员工所在部门获取该部门及子部门员工信息
getEmployeeList
()
{
getEmployeeList
()
{
...
...
src/components/SalesModule/productOrderList.vue
View file @
68414de4
...
@@ -287,9 +287,21 @@
...
@@ -287,9 +287,21 @@
</span>
</span>
</li>
</li>
<li>
<li>
<div
style=
"margin: 8px 0 0 24px"
>
<span><em>
只查询有签证的团
</em>
<span><em>
只查询有签证的团
</em>
<!--
<el-switch
v-model=
"msg.visaNum"
></el-switch>
-->
<el-switch
v-model=
"msg.visaNum"
:active-value=
"1"
:inactive-value=
"0"
></el-switch>
</span>
</span></div>
</li>
<li>
<input
type=
"button"
class=
"hollowFixedBtn"
:value=
"$t('pub.searchBtn')"
@
click=
"
getList();
resetPageIndex();
"
/>
</li>
</li>
</ul>
</ul>
</div>
</div>
...
@@ -297,7 +309,7 @@
...
@@ -297,7 +309,7 @@
layout=
"total,prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:total=
"total"
>
layout=
"total,prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:total=
"total"
>
</el-pagination>
</el-pagination>
<!-- 产品列表 -->
<!-- 产品列表 -->
<productOrderList
:loading=
"loading"
:list=
"list"
@
success=
"reSearchPage"
:pagesTitle=
"pagesTitle"
></productOrderList>
<productOrderList
:loading=
"loading"
:list=
"list"
:isVisa=
"isVisa"
@
success=
"reSearchPage"
:pagesTitle=
"pagesTitle"
></productOrderList>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:total=
"total"
>
layout=
"total,prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:total=
"total"
>
</el-pagination>
</el-pagination>
...
@@ -311,6 +323,7 @@
...
@@ -311,6 +323,7 @@
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
isVisa
:
false
,
// 是否是签证下面的菜单
pagesTitle
:
'跟团游产品'
,
pagesTitle
:
'跟团游产品'
,
//当前登录用户信息
//当前登录用户信息
CurrentUserInfo
:
{},
CurrentUserInfo
:
{},
...
@@ -372,6 +385,9 @@
...
@@ -372,6 +385,9 @@
res
.
data
.
data
.
pageData
[
i
][
"wxImage"
]
=
""
;
res
.
data
.
data
.
pageData
[
i
][
"wxImage"
]
=
""
;
}
}
this
.
list
=
res
.
data
.
data
.
pageData
;
this
.
list
=
res
.
data
.
data
.
pageData
;
this
.
list
.
forEach
(
element
=>
{
element
.
check
=
false
});
}
else
{
}
else
{
this
.
Error
(
res
.
data
.
message
);
this
.
Error
(
res
.
data
.
message
);
}
}
...
@@ -498,6 +514,13 @@
...
@@ -498,6 +514,13 @@
},
},
},
},
mounted
()
{
mounted
()
{
console
.
log
(
'this.router'
,
this
.
$route
,
this
.
$router
)
if
(
this
.
$route
.
path
===
'/productOrderList'
)
{
this
.
isVisa
=
false
}
else
{
this
.
isVisa
=
true
this
.
msg
.
visaNum
=
1
}
this
.
userInfo
=
this
.
getLocalStorage
();
this
.
userInfo
=
this
.
getLocalStorage
();
this
.
CurrentUserInfo
=
this
.
userInfo
;
this
.
CurrentUserInfo
=
this
.
userInfo
;
this
.
userId
=
this
.
userInfo
.
EmployeeId
;
this
.
userId
=
this
.
userInfo
.
EmployeeId
;
...
...
src/router/config.js
View file @
68414de4
...
@@ -3251,6 +3251,14 @@ export default {
...
@@ -3251,6 +3251,14 @@ export default {
title
:
'产品查询'
title
:
'产品查询'
},
},
},
},
{
// 签证信息列表
path
:
'/VisaOrderList'
,
name
:
'VisaOrderList'
,
component
:
resolve
=>
require
([
'@/components/SalesModule/productOrderList'
],
resolve
),
meta
:
{
title
:
'产品查询'
},
},
{
// 销售 一日游产品查询
{
// 销售 一日游产品查询
path
:
'/productQueryOne'
,
path
:
'/productQueryOne'
,
name
:
'productQueryOne'
,
name
:
'productQueryOne'
,
...
...
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