Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jiedao-app-operator-master
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
lanbaoming
jiedao-app-operator-master
Commits
4a09c476
Commit
4a09c476
authored
Mar 04, 2025
by
zs嵩
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
批量费用申请
parent
4711720c
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
228 additions
and
181 deletions
+228
-181
order.js
src/api/ecw/order.js
+19
-1
index.vue
src/views/ecw/order/feeApplicationBatch/index.vue
+207
-174
index.vue
src/views/ecw/order/index.vue
+2
-6
No files found.
src/api/ecw/order.js
View file @
4a09c476
...
...
@@ -107,6 +107,24 @@ export function feeApplicationCreate(data) {
})
}
// 批量申请费用
export
function
feeApplicationBatch
(
data
)
{
return
request
({
url
:
"
ecw/batch-order-fee-apply/create
"
,
method
:
"
post
"
,
data
:
data
})
}
// 批量获取需要申请费用的订单详情
export
function
feeApplicationBatchGetOrderListByIds
(
data
)
{
return
request
({
url
:
"
ecw/batch-order-fee-apply/getOrderListByIds
"
,
method
:
"
get
"
,
params
:
data
})
}
// 批量申请费用
export
function
feeApplicationCreateBatch
(
data
)
{
return
request
({
...
...
@@ -165,6 +183,7 @@ export function ApplicationListByOrderId(params) {
params
:
params
})
}
// 批量更新特需
export
function
specialNeedCreate
(
data
)
{
return
request
({
...
...
@@ -932,7 +951,6 @@ export function noNeedPacks(data) {
})
}
// 完成打包
export
function
finishPacked
(
data
)
{
return
request
({
...
...
src/views/ecw/order/feeApplicationBatch/index.vue
View file @
4a09c476
<
template
>
<el-dialog
:visible.sync=
"dialogVisible"
width=
"80%"
:before-close=
"
() =>
{
$emit('update:dialogVisible', false)
}
"
>
<div
class=
"fee-application"
>
<h1>
{{
$t
(
"
费用申请
"
)
}}
-
{{
orderDetails
.
orderNo
}}
</h1>
<h1>
{{
$t
(
"
批量费用申请
"
)
}}
</h1>
<el-divider></el-divider>
<el-form
label-width=
"100px"
inline
>
<el-form-item
:label=
"$t('订单号') + ':'"
>
<div
class=
"content"
>
{{
orderDetails
.
orderNo
}}
</div>
</el-form-item>
<el-form-item
:label=
"$t('发货人') + ':'"
>
<div
class=
"content"
>
{{
orderDetails
.
consignorVO
?
orderDetails
.
consignorVO
.
name
:
""
}}
</div>
</el-form-item>
<el-form-item
:label=
"$t('唛头')"
>
<div
class=
"content"
>
{{
orderDetails
.
marks
}}
</div>
</el-form-item>
<el-form-item>
<div
class=
"flex-c-c"
>
<div
class=
"fills"
></div>
<el-button
:disabled=
"!!processInstanceId"
@
click=
"addCost"
>
{{
$t
(
"
添加申请
"
)
}}
</el-button>
</el-form-item>
</el-form>
<el-table
:data=
"list"
>
</div>
<el-table
:data=
"batchApplyDetailsInfoVO.feeDetailsVOList"
class=
"mt-20"
>
<el-table-column
:label=
"$t('序号')"
type=
"index"
></el-table-column>
<el-table-column
:label=
"$t('费用类型')"
>
<template
v-slot:default=
"scope"
>
...
...
@@ -84,7 +61,7 @@
</el-table-column>
</el-table>
<el-table
ref=
"orderTable"
border
:data=
"orderList"
@
selection-change=
"handleSelectionChange"
:row-style=
"rowStyl
e"
class=
"mt-10"
>
<el-table
ref=
"orderTable"
border
default-expand-all
:data=
"batchApplyDetailsInfoVO.orderFeeDetailsVOList"
@
selection-change=
"handleSelectionChang
e"
class=
"mt-10"
>
<el-table-column
type=
"selection"
width=
"50"
></el-table-column>
<el-table-column
:label=
"$t('序号')"
width=
"50"
type=
"index"
align=
"center"
/>
<el-table-column
prop=
"orderNo"
:label=
"$t('订单号')"
align=
"center"
width=
"150"
>
...
...
@@ -113,10 +90,7 @@
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('加价单价')"
width=
"200"
>
<
template
slot-scope=
"scope"
>
<div>
{{
$t
(
"
运费
"
)
}}
:
{{
form
.
freightFee
||
0
}}{{
currencyMap
[
form
.
freightCurrencyId
]
}}
/
{{
unitMap
[
form
.
freightUnitId
]
}}
</div>
<div>
{{
$t
(
"
清关费
"
)
}}
:
{{
form
.
clearanceFee
||
0
}}{{
currencyMap
[
form
.
clearanceCurrencyId
]
}}
/
{{
unitMap
[
form
.
clearanceUnitId
]
}}
</div>
</
template
>
<
template
slot-scope=
"scope"
>
</
template
>
</el-table-column>
<el-table-column
prop=
"salesmanName"
:label=
"$t('客户经理')"
align=
"center"
></el-table-column>
<el-table-column
prop=
"firstInTime"
:label=
"$t('首次入仓时间')"
align=
"center"
width=
"150"
></el-table-column>
...
...
@@ -126,27 +100,82 @@
<
template
v-slot=
"scope"
>
{{
scope
.
row
.
specialPriceType
?
"
是
"
:
"
否
"
}}
</
template
>
</el-table-column>
<el-table-column
type=
"expand"
:label=
"$t('更多')"
>
<
template
v-slot=
"scope"
>
<batchMarkupComList
:list=
"scope.row.orderItemBackVOList"
:prodTypeList=
"prodTypeList"
:attrList=
"attrList"
:unitMap=
"unitMap"
:currencyMap=
"currencyMap"
/>
<
template
slot-scope=
"{ row }"
>
<el-table
:data=
"row.orderFeeApplicationBaseVOList || []"
>
<el-table-column
:label=
"$t('序号')"
type=
"index"
></el-table-column>
<el-table-column
:label=
"$t('费用类型')"
>
<template
v-slot:default=
"scope"
>
<dict-selector
:disabled=
"!scope.row.editMode && !!scope.row.status"
:type=
"DICT_TYPE.FEE_TYPE"
v-model=
"scope.row.feeType"
@
change=
"updatePayer(scope.row)"
/>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('金额')"
>
<
template
v-slot:default=
"scope"
>
<el-input
:disabled=
"!scope.row.editMode && !!scope.row.status"
v-model=
"scope.row.applicationFee"
type=
"number"
@
input=
"formatAmount(scope.row)"
></el-input>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('货币类型')"
>
<
template
v-slot:default=
"scope"
>
<el-select
:disabled=
"!scope.row.editMode && !!scope.row.status"
v-model=
"scope.row.applicationFeeCurrency"
>
<el-option
v-for=
"item in JSON.parse(currencys)"
:key=
"item.id"
:label=
"isChinese ? item.titleZh : item.titleEn"
:value=
"item.id"
/>
</el-select>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('付款类型')"
>
<
template
v-slot=
"{ row }"
>
<dict-selector
:disabled=
"!row.editMode && !!row.status"
:type=
"DICT_TYPE.PAYMENT_TYPE"
v-model=
"row.payType"
/>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('付款人')"
>
<
template
v-slot=
"{ row }"
>
<dict-selector
:disabled=
"!row.editMode && !!row.status"
:type=
"DICT_TYPE.DRAWEE"
:filter=
"payerDictFilter"
v-model=
"row.payer"
/>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('备注')"
>
<
template
v-slot:default=
"scope"
>
<el-input
:disabled=
"!scope.row.editMode && !!scope.row.status"
v-model=
"scope.row.remarks"
type=
"textarea"
></el-input>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('确认收款')"
>
<
template
v-slot:default=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.ECW_RECEIVABLE_STATE"
:value=
"scope.row.receiveFlag"
/>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('申请人')"
>
<
template
v-slot:default=
"scope"
>
{{
scope
.
row
.
status
===
0
?
$t
(
"
未提交
"
)
:
scope
.
row
.
applicationAuthor
}}
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('操作')"
>
<
template
v-slot:default=
"scope"
>
<el-tag
v-if=
"scope.row.status !== 0 && !scope.row.editMode"
>
{{
STATUS
[
scope
.
row
.
status
]
}}
</el-tag>
<el-button
type=
"text"
v-if=
"scope.row.id && modifable(scope.row)"
@
click=
"modify(scope.row)"
>
{{
$t
(
"
修改
"
)
}}
</el-button>
<el-button
type=
"text"
v-if=
"scope.row.status === 0"
@
click=
"del(scope.$index)"
>
删除
</el-button>
<el-button
type=
"text"
v-if=
"scope.row.id && scope.row.applicationFee === 0 && scope.row.status === 2 && !scope.row.editMode"
@
click=
"deleteByFeeIsZero(scope.row.id)"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
</template>
</el-table-column>
</el-table>
<div
style=
"padding: 20px"
>
<work-flow
xmlkey=
"
free_apply"
v-model=
"selectedUsers"
/>
<work-flow
xmlkey=
"batch_order_
free_apply"
v-model=
"selectedUsers"
/>
</div>
<div
style=
"text-align: center; margin-top: 20px"
>
<el-button
type=
"primary"
v-if=
"!processInstanceId"
style=
"margin-right: 30px"
:disabled=
"!feeList.length &&
!editMode"
@
click=
"submit"
>
{{ $t("提交") }}
</el-button>
<el-button
type=
"primary"
v-if=
"!processInstanceId"
style=
"margin-right: 30px"
:disabled=
"
!editMode"
@
click=
"submit"
>
{{ $t("提交") }}
</el-button>
<el-button
type=
"primary"
v-if=
"processInstanceId"
style=
"margin-right: 30px"
@
click=
"goProcessDetail"
>
{{ $t("审核中") }}
</el-button>
<el-button
type=
"primary"
v-if=
"processInstanceId"
style=
"margin-right: 30px"
@
click=
"cancel"
>
{{ $t("取消审核") }}
</el-button>
<el-button
@
click=
"$emit('update:dialogVisible', false)"
>
{{ $t("返回") }}
</el-button>
</div>
</div>
</el-dialog>
</template>
<
script
>
import
{
getOrder
,
feeApplicationCreateBatch
,
ApplicationListByOrderId
,
applicationUpdate
,
feeApplicationListByOrderId
,
feeApplicationCancel
,
getFeeApplicationApproveByOrderId
,
getBatchFeeByProcessId
,
qetBatchFeeByBusinessId
,
getBatchFeeByBusinessId
,
feeApplicationDelete
,
getFeeDraweeByFeeType
}
from
"
@/api/ecw/order
"
import
{
getCurrencyList
}
from
"
@/api/ecw/currency
"
import
{
getUnitList
}
from
"
@/api/ecw/unit
"
import
{
getProductAttrList
}
from
"
@/api/ecw/productAttr
"
import
{
getProductTypeList
}
from
"
@/api/ecw/productType
"
import
{
getOrder
,
feeApplicationBatch
,
feeApplicationBatchGetOrderListByIds
,
applicationUpdate
,
feeApplicationCancel
,
getFeeApplicationApproveByOrderId
,
getBatchFeeByProcessId
,
qetBatchFeeByBusinessId
,
getBatchFeeByBusinessId
,
feeApplicationDelete
,
getFeeDraweeByFeeType
}
from
"
@/api/ecw/order
"
import
{
getDictDatas
,
DICT_TYPE
}
from
"
@/utils/dict
"
import
workFlow
from
"
@/components/WorkFlow
"
import
batchMarkupComList
from
"
./batchMarkupComList
"
...
...
@@ -168,19 +197,22 @@ export default {
attrList
:
[],
unitList
:
[],
currencyList
:
[],
orderDetails
:
{},
// 费用列表
list
:
[],
// 审核ID,没有则表示不在审核中
processInstanceId
:
null
,
DICT_TYPE
,
getDictDatas
,
STATUS
:
{},
selectedUsers
:
[]
selectedUsers
:
[],
batchApplyDetailsInfoVO
:
{
feeDetailsVOList
:
[],
orderFeeDetailsVOList
:
[]
}
}
},
computed
:
{
orderIds
()
{
return
this
.
$route
.
query
.
orderIds
||
""
},
currencyMap
()
{
let
map
=
{}
this
.
currencyList
.
forEach
((
item
)
=>
{
...
...
@@ -205,14 +237,14 @@ export default {
isChinese
()
{
return
this
.
$i18n
.
locale
===
"
zh_CN
"
},
feeList
()
{
// return this.list.filter((item) => item.status === 0);
return
this
.
list
},
// 正在编辑的费用申请
currentItem
()
{
return
this
.
list
.
find
((
item
)
=>
item
.
editMode
)
},
//
feeList() {
//
// return this.list.filter((item) => item.status === 0);
//
return this.list
//
},
//
//
正在编辑的费用申请
//
currentItem() {
//
return this.list.find((item) => item.editMode)
//
},
// 是否修改模式
editMode
()
{
return
!!
this
.
currentItem
...
...
@@ -234,24 +266,19 @@ export default {
this
.
STATUS
[
e
.
value
]
=
e
.
label
})
getOrder
(
this
.
orderId
).
then
((
res
)
=>
{
this
.
orderDetails
=
res
.
data
})
// 查询历史申请
feeApplicationListByOrderId
({
orderId
:
this
.
orderId
}).
then
((
res
)
=>
{
this
.
list
=
res
.
data
feeApplicationBatchGetOrderListByIds
({
orderIds
:
this
.
orderIds
}).
then
((
res
)
=>
{
this
.
batchApplyDetailsInfoVO
.
orderFeeDetailsVOList
=
res
.
data
})
// 查询是否有审核中的费用申请
getFeeApplicationApproveByOrderId
(
this
.
orderId
).
then
((
res
)
=>
{
if
(
res
.
data
)
{
this
.
processInstanceId
=
res
.
data
.
formId
/*getBatchFeeByBusinessId(res.data.orderApprovalId).then(res => {
this.list = res.data
})*/
}
})
//
getFeeApplicationApproveByOrderId(this.orderId).then((res) => {
//
if (res.data) {
//
this.processInstanceId = res.data.formId
//
/*getBatchFeeByBusinessId(res.data.orderApprovalId).then(res => {
//
this.list = res.data
//
})*/
//
}
//
})
getUnitList
().
then
((
res
)
=>
(
this
.
unitList
=
res
.
data
))
getCurrencyList
().
then
((
res
)
=>
(
this
.
currencyList
=
res
.
data
))
getProductAttrList
().
then
((
response
)
=>
{
...
...
@@ -324,16 +351,22 @@ export default {
},
addCost
()
{
this
.
list
.
push
({
orderId
:
this
.
orderId
,
let
obj
=
{
feeType
:
undefined
,
//费用申请类型
applicationFee
:
undefined
,
//金额
applicationFeeCurrency
:
undefined
,
// 费用申请货币类型
payer
:
this
.
orderDetails
.
drawee
&&
this
.
orderDetails
.
drawee
!=
3
?
this
.
orderDetails
.
drawee
:
undefined
,
// 费用申请付款人
payer
:
undefined
,
// 费用申请付款人
remarks
:
undefined
,
receiveFlag
:
0
,
applicationAuthor
:
undefined
,
status
:
0
}
this
.
batchApplyDetailsInfoVO
.
feeDetailsVOList
.
push
(
obj
)
this
.
batchApplyDetailsInfoVO
.
orderFeeDetailsVOList
.
forEach
((
item
)
=>
{
if
(
!
item
.
orderFeeApplicationBaseVOList
)
{
this
.
$set
(
item
,
"
orderFeeApplicationBaseVOList
"
,
[])
}
item
.
orderFeeApplicationBaseVOList
.
push
(
obj
)
})
},
deleteByFeeIsZero
(
id
)
{
...
...
@@ -369,7 +402,7 @@ export default {
// });
// }
feeApplication
Create
Batch
({
feeApplicationBatch
({
orderFeeApplicationCreateReqVOList
:
this
.
feeList
,
copyUserId
:
this
.
selectedUsers
,
orderId
:
this
.
orderId
...
...
src/views/ecw/order/index.vue
View file @
4a09c476
...
...
@@ -589,7 +589,6 @@
<withdrawal
v-if=
"show"
:dialog-visible=
"show"
:orderId=
"orderId"
></withdrawal>
<batch-single-application
@
getList=
"getList"
:order-list=
"orderId"
:dialog-visible.sync=
"warehouseBol"
></batch-single-application>
<fee-application
v-if=
"feeApplicationBol"
:order-id=
"orderId"
:currencys=
"JSON.stringify(currencyList)"
:dialog-visible.sync=
"feeApplicationBol"
@
refresh=
"getList"
></fee-application>
<feeApplicationBatch
v-if=
"feeApplicationBatch"
:order-list=
"multipleSelection"
:currencys=
"JSON.stringify(currencyList)"
:dialog-visible.sync=
"feeApplicationBatch"
@
refresh=
"getList"
/>
<merge-log
:order-no=
"showMergedLogOrderNo"
v-if=
"showMergedLogOrderNo !== null"
@
close=
"showMergedLogOrderNo = null"
/>
<pickup-log
v-if=
"showPickupLogOrderNo"
:order-no=
"showPickupLogOrderNo"
@
close=
"showPickupLogOrderNo = null"
@
delete=
"getList"
/>
<SplitRevoke
...
...
@@ -622,7 +621,6 @@ import withdrawal from "@/views/ecw/order/withdrawal"
import
UserSelector
from
"
@/components/UserSelector
"
import
BatchSingleApplication
from
"
@/views/ecw/order/batchSingleApplication
"
import
FeeApplication
from
"
@/views/ecw/order/feeApplication
"
import
feeApplicationBatch
from
"
@/views/ecw/order/feeApplicationBatch
"
import
MergeLog
from
"
@/views/ecw/order/components/MergeLog
"
import
PickupLog
from
"
./components/PickupLog
"
import
{
getWarehouseList
}
from
"
@/api/ecw/warehouse
"
...
...
@@ -639,7 +637,6 @@ export default {
Template
,
UserSelector
,
FeeApplication
,
feeApplicationBatch
,
BatchSingleApplication
,
MergeLog
,
PickupLog
,
...
...
@@ -754,8 +751,7 @@ export default {
key
:
"
eqPickRatio
"
,
value
:
""
},
autoHeight
:
null
,
feeApplicationBatch
:
false
autoHeight
:
null
}
},
watch
:
{
...
...
@@ -1447,7 +1443,7 @@ export default {
this
.
$message
(
this
.
$t
(
"
请先勾选订单
"
))
return
}
this
.
feeApplicationBatch
=
true
this
.
$router
.
push
(
`/order/feeApplicationBatch?orderIds=
${
this
.
ids
.
join
(
"
,
"
)}
`
)
}
}
}
...
...
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