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
adaf7141
Commit
adaf7141
authored
Sep 28, 2022
by
wanglianghe
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
http://gitlab.jdshangmen.com/jiedao-app/jiedao-app-operator
into dev
parents
1bd6a686
4b913bac
Changes
34
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
34 changed files
with
998 additions
and
343 deletions
+998
-343
box.js
src/api/ecw/box.js
+10
-0
order.js
src/api/ecw/order.js
+2
-2
index.js
src/router/index.js
+13
-1
dict.js
src/utils/dict.js
+2
-0
index.vue
src/views/ecw/box/ladingBill/index.vue
+2
-1
index.vue
src/views/ecw/channel/index.vue
+8
-51
edit.vue
src/views/ecw/customer/edit.vue
+1
-0
index.vue
src/views/ecw/customerToBeAssigned/index.vue
+75
-22
empAchievement.vue
src/views/ecw/deptTarget/empAchievement.vue
+345
-0
index.vue
src/views/ecw/deptTarget/index.vue
+19
-49
creatCollection.vue
src/views/ecw/financial/creatCollection.vue
+20
-12
payable.vue
src/views/ecw/financial/payable.vue
+5
-2
receivable.vue
src/views/ecw/financial/receivable.vue
+10
-1
index.vue
src/views/ecw/oceanCustomer/index.vue
+46
-20
Commossion.vue
src/views/ecw/offer/components/Commossion.vue
+13
-12
SpecialDetail.vue
src/views/ecw/offer/components/SpecialDetail.vue
+25
-20
SpecialDiscount.vue
src/views/ecw/offer/components/SpecialDiscount.vue
+1
-1
detail.vue
src/views/ecw/offer/detail.vue
+14
-6
edit.vue
src/views/ecw/offer/edit.vue
+11
-0
special.vue
src/views/ecw/offer/special.vue
+28
-10
cargoControlDetail.vue
src/views/ecw/order/cargoControlDetail.vue
+18
-7
CancelCargo.vue
src/views/ecw/order/components/CancelCargo.vue
+13
-27
CargoControlDetail.vue
src/views/ecw/order/components/CargoControlDetail.vue
+1
-1
PrintLadingBill.vue
src/views/ecw/order/components/PrintLadingBill.vue
+4
-5
SpecialDiscount.vue
src/views/ecw/order/components/SpecialDiscount.vue
+174
-0
edit.vue
src/views/ecw/order/edit.vue
+18
-3
index.vue
src/views/ecw/order/exception/index.vue
+2
-1
index.vue
src/views/ecw/order/index.vue
+8
-8
mutexOrder.vue
src/views/ecw/order/mutexOrder.vue
+1
-1
notMutexOrder.vue
src/views/ecw/order/notMutexOrder.vue
+1
-1
discount.vue
src/views/ecw/order/special/discount.vue
+6
-20
index.vue
src/views/ecw/order/special/index.vue
+65
-44
editDialog.vue
src/views/ecw/order/warehousing/components/editDialog.vue
+9
-4
index.vue
src/views/ecw/order/warehousing/index.vue
+28
-11
No files found.
src/api/ecw/box.js
View file @
adaf7141
...
@@ -209,3 +209,13 @@ function jsonToFormData(params) {
...
@@ -209,3 +209,13 @@ function jsonToFormData(params) {
}
}
return
formData
;
return
formData
;
}
}
// 根据订单ID下载提货单
export
function
downloadByOrderId
(
orderId
)
{
return
request
({
url
:
"
/shipment/make-bill-of-lading/downloadByOrderId
"
,
method
:
"
get
"
,
params
:
{
orderId
},
responseType
:
'
arraybuffer
'
});
}
\ No newline at end of file
src/api/ecw/order.js
View file @
adaf7141
...
@@ -346,9 +346,9 @@ export function cancelOrderSpecial(orderApprovalId,data) {
...
@@ -346,9 +346,9 @@ export function cancelOrderSpecial(orderApprovalId,data) {
}
}
// 获得订单特价申请详情
// 获得订单特价申请详情
export
function
getOrderSpecial
(
o
fferProd
Id
,
type
=
1
)
{
export
function
getOrderSpecial
(
o
rderItem
Id
,
type
=
1
)
{
return
request
({
return
request
({
url
:
'
/ecw/order/special/info/
'
+
o
fferProd
Id
+
'
/
'
+
type
,
url
:
'
/ecw/order/special/info/
'
+
o
rderItem
Id
+
'
/
'
+
type
,
method
:
'
get
'
method
:
'
get
'
})
})
}
}
...
...
src/router/index.js
View file @
adaf7141
...
@@ -2,7 +2,6 @@ import Vue from 'vue'
...
@@ -2,7 +2,6 @@ import Vue from 'vue'
import
Router
from
'
vue-router
'
import
Router
from
'
vue-router
'
/* Layout */
/* Layout */
import
Layout
from
'
@/layout
'
import
Layout
from
'
@/layout
'
import
query
from
'
@/views/ecw/customer/query
'
Vue
.
use
(
Router
)
Vue
.
use
(
Router
)
...
@@ -163,6 +162,19 @@ export const constantRoutes = [
...
@@ -163,6 +162,19 @@ export const constantRoutes = [
}
}
]
]
},
},
{
path
:
'
/deptTarget
'
,
component
:
Layout
,
hidden
:
true
,
redirect
:
'
noredirect
'
,
children
:
[
{
path
:
'
empAchievement
'
,
component
:
(
resolve
)
=>
require
([
'
@/views/ecw/deptTarget/empAchievement
'
],
resolve
),
name
:
'
员工业绩
'
,
meta
:
{
title
:
'
员工业绩
'
,
activeMenu
:
'
/deptTarget/index
'
}
}
]
},
{
{
path
:
'
/node
'
,
path
:
'
/node
'
,
component
:
Layout
,
component
:
Layout
,
...
...
src/utils/dict.js
View file @
adaf7141
...
@@ -112,6 +112,8 @@ export const DICT_TYPE = {
...
@@ -112,6 +112,8 @@ export const DICT_TYPE = {
ECW_PICK_RECURRENT_NUCLEAR_TYPE
:
'
PICK_RECURRENT_NUCLEAR_TYPE
'
,
// 放货反复核类型
ECW_PICK_RECURRENT_NUCLEAR_TYPE
:
'
PICK_RECURRENT_NUCLEAR_TYPE
'
,
// 放货反复核类型
ECW_COST_FEE_TYPE
:
'
cost_fee_type
'
,
// 清单费用类型
ECW_COST_FEE_TYPE
:
'
cost_fee_type
'
,
// 清单费用类型
ECW_PRICE_AUDIT_STATUS
:
'
price_audit_status
'
,
// 路线价格审核状态
ECW_PRICE_AUDIT_STATUS
:
'
price_audit_status
'
,
// 路线价格审核状态
ECW_CANCEL_PICK_TYPE
:
'
cancel_pick_type
'
,
// 取消放货类型
//--------ecw---------
//--------ecw---------
CUSTOMER_STATUS
:
'
customer_status
'
,
CUSTOMER_STATUS
:
'
customer_status
'
,
CUSTOMER_SOURCE
:
'
customer_source
'
,
CUSTOMER_SOURCE
:
'
customer_source
'
,
...
...
src/views/ecw/box/ladingBill/index.vue
View file @
adaf7141
...
@@ -178,7 +178,8 @@ export default {
...
@@ -178,7 +178,8 @@ export default {
const { bookSeaInfo } = this.shipmentObj;
const { bookSeaInfo } = this.shipmentObj;
makeBillService({
makeBillService({
orderId: row.orderId,
orderId: row.orderId,
zgDate: bookSeaInfo.sailTime,
zgDate: '2022-09-27',
// zgDate: bookSeaInfo.sailTime,
}).then((res) => {
}).then((res) => {
const { data } = res;
const { data } = res;
const { titleZh = "", contentZh = "" } = data?.ladingTemplate ?? {};
const { titleZh = "", contentZh = "" } = data?.ladingTemplate ?? {};
...
...
src/views/ecw/channel/index.vue
View file @
adaf7141
...
@@ -27,8 +27,8 @@
...
@@ -27,8 +27,8 @@
<el-form-item
label=
"快递ID"
prop=
"expressId"
>
<el-form-item
label=
"快递ID"
prop=
"expressId"
>
<el-input
v-model=
"queryParams.expressId"
placeholder=
"请输入快递ID"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.expressId"
placeholder=
"请输入快递ID"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"
到达
时间"
>
<el-form-item
label=
"
预计
时间"
>
<el-input
v-model=
"queryParams.
dateRangeE
taTime"
placeholder=
"预计到达天数"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.
e
taTime"
placeholder=
"预计到达天数"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"渠道代理"
prop=
"channelAgent"
>
<el-form-item
label=
"渠道代理"
prop=
"channelAgent"
>
<el-input
v-model=
"queryParams.channelAgent"
placeholder=
"请输入渠道代理"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.channelAgent"
placeholder=
"请输入渠道代理"
clearable
@
keyup.enter.native=
"handleQuery"
/>
...
@@ -114,10 +114,6 @@
...
@@ -114,10 +114,6 @@
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.pageNo"
:limit.sync=
"queryParams.pageSize"
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.pageNo"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
@
pagination=
"getList"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"500px"
append-to-body
>
</el-dialog>
</div>
</div>
</template>
</template>
...
@@ -149,19 +145,7 @@ export default {
...
@@ -149,19 +145,7 @@ export default {
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
pageNo
:
1
,
pageNo
:
1
,
pageSize
:
10
,
pageSize
:
10
nameZh
:
null
,
nameEn
:
null
,
internalNameZh
:
null
,
internalNameEn
:
null
,
typeNumber
:
null
,
warehouseIds
:
null
,
sort
:
null
,
expressId
:
null
,
channelAgent
:
null
,
remarksZh
:
null
,
remarksEn
:
null
,
status
:
null
,
},
},
// 表单参数
// 表单参数
form
:
{},
form
:
{},
...
@@ -180,8 +164,6 @@ export default {
...
@@ -180,8 +164,6 @@ export default {
this
.
loading
=
true
;
this
.
loading
=
true
;
// 处理查询参数
// 处理查询参数
let
params
=
{...
this
.
queryParams
};
let
params
=
{...
this
.
queryParams
};
this
.
addBeginAndEndTime
(
params
,
this
.
dateRangeEtaTime
,
'
etaTime
'
);
this
.
addBeginAndEndTime
(
params
,
this
.
dateRangeCreateTime
,
'
createTime
'
);
// 执行查询
// 执行查询
getChannelPage
(
params
).
then
(
response
=>
{
getChannelPage
(
params
).
then
(
response
=>
{
this
.
list
=
response
.
data
.
list
;
this
.
list
=
response
.
data
.
list
;
...
@@ -189,32 +171,6 @@ export default {
...
@@ -189,32 +171,6 @@ export default {
this
.
loading
=
false
;
this
.
loading
=
false
;
});
});
},
},
/** 取消按钮 */
cancel
()
{
this
.
open
=
false
;
this
.
reset
();
},
/** 表单重置 */
reset
()
{
this
.
form
=
{
channelId
:
undefined
,
nameZh
:
undefined
,
nameEn
:
undefined
,
internalNameZh
:
undefined
,
internalNameEn
:
undefined
,
typeNumber
:
undefined
,
code
:
undefined
,
warehouseIds
:
undefined
,
sort
:
undefined
,
expressId
:
undefined
,
etaTime
:
undefined
,
channelAgent
:
undefined
,
remarksZh
:
undefined
,
remarksEn
:
undefined
,
status
:
undefined
,
};
this
.
resetForm
(
"
form
"
);
},
/** 搜索按钮操作 */
/** 搜索按钮操作 */
handleQuery
()
{
handleQuery
()
{
this
.
queryParams
.
pageNo
=
1
;
this
.
queryParams
.
pageNo
=
1
;
...
@@ -222,9 +178,10 @@ export default {
...
@@ -222,9 +178,10 @@ export default {
},
},
/** 重置按钮操作 */
/** 重置按钮操作 */
resetQuery
()
{
resetQuery
()
{
this
.
dateRangeEtaTime
=
[];
this
.
queryParams
=
{
this
.
dateRangeCreateTime
=
[];
pageNo
:
1
,
this
.
resetForm
(
"
queryForm
"
);
pageSize
:
10
}
this
.
handleQuery
();
this
.
handleQuery
();
},
},
/** 新增按钮操作 */
/** 新增按钮操作 */
...
@@ -259,7 +216,7 @@ export default {
...
@@ -259,7 +216,7 @@ export default {
this
.
exportLoading
=
true
;
this
.
exportLoading
=
true
;
return
exportChannelExcel
(
params
);
return
exportChannelExcel
(
params
);
}).
then
(
response
=>
{
}).
then
(
response
=>
{
this
.
$download
.
excel
(
response
,
'
${table.classComment}
.xls
'
);
this
.
$download
.
excel
(
response
,
'
渠道列表
.xls
'
);
this
.
exportLoading
=
false
;
this
.
exportLoading
=
false
;
}).
catch
(()
=>
{});
}).
catch
(()
=>
{});
}
}
...
...
src/views/ecw/customer/edit.vue
View file @
adaf7141
...
@@ -543,6 +543,7 @@ export default {
...
@@ -543,6 +543,7 @@ export default {
},
},
/** 取消按钮 */
/** 取消按钮 */
cancel
()
{
cancel
()
{
this
.
$tab
.
closePage
()
this
.
open
=
false
;
this
.
open
=
false
;
this
.
reset
();
this
.
reset
();
},
},
...
...
src/views/ecw/customerToBeAssigned/index.vue
View file @
adaf7141
...
@@ -11,36 +11,50 @@
...
@@ -11,36 +11,50 @@
<el-input
v-model=
"queryParams.name"
placeholder=
"请输入客户名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.name"
placeholder=
"请输入客户名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"客户等级"
prop=
"level"
>
<el-form-item
label=
"客户等级"
prop=
"level"
>
<el-select
v-model=
"queryParams.level"
placeholder=
"请选择客户等级"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.level"
placeholder=
"请选择客户等级"
clearable
size=
"small"
>
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_LEVEL)"
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_LEVEL)"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"联系方式"
>
<el-input
placeholder=
"请输入联系方式"
v-model=
"queryParams.defaultContactPhone"
></el-input>
</el-form-item>
<el-form-item
label=
"客户类别"
prop=
"level"
>
<dict-selector
:type=
"DICT_TYPE.CUSTOMER_TYPE"
multiple
v-model=
"queryParams.type"
></dict-selector>
</el-form-item>
<el-form-item
label=
"客户经理"
prop=
"customerService"
>
<el-select
clearable
v-model=
"queryParams.customerService"
placeholder=
"请选择客户经理"
clearable
size=
"small"
>
<el-option
v-for=
"dict in customerServiceList"
:key=
"dict.id"
:label=
"dict.nickname"
:value=
"dict.id"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"客户来源"
prop=
"source"
>
<el-form-item
label=
"客户来源"
prop=
"source"
>
<el-select
v-model=
"queryParams.source"
placeholder=
"请选择客户来源"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.source"
placeholder=
"请选择客户来源"
clearable
size=
"small"
>
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"
客户经理"
prop=
"customerServi
ce"
>
<el-form-item
label=
"
国家"
prop=
"sour
ce"
>
<el-select
v-model=
"queryParams.customerService"
placeholder=
"请选择客户经理"
clearable
size=
"small
"
>
<el-select
clearable
v-model=
"form.country"
placeholder=
"请选择国家
"
>
<el-option
v-for=
"dict in c
ustomerService
List"
<el-option
v-for=
"dict in c
ountry
List"
:key=
"dict.id"
:label=
"dict.n
ickname"
:value=
"dict.id"
/>
:key=
"dict.id"
:label=
"dict.n
ameZh"
:value=
"parseInt(dict.id)"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"客户状态"
prop=
"status"
>
<el-form-item
label=
"客户状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择客户状态"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.status"
placeholder=
"请选择客户状态"
clearable
size=
"small"
>
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_STATUS)"
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_STATUS)"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"部门"
prop=
"department"
>
<el-input
v-model=
"queryParams.department"
placeholder=
"请输入部门"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"创建时间"
>
<el-form-item
label=
"创建时间"
>
<el-date-picker
v-model=
"dateRangeCreateTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
<el-date-picker
clearable
v-model=
"dateRangeCreateTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
/>
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"信用等级"
prop=
"department"
>
<el-select
clearable
v-model=
"form.level"
>
<el-option
v-for=
"(item,index) in creditList"
:label=
"item.nameZh"
:key=
"index"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
type=
"primary"
icon=
"el-icon-search"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
@
click=
"resetQuery"
>
重置
</el-button>
<el-button
icon=
"el-icon-refresh"
@
click=
"resetQuery"
>
重置
</el-button>
...
@@ -57,36 +71,44 @@
...
@@ -57,36 +71,44 @@
<el-button
type=
"warning"
plain
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
:loading=
"exportLoading"
<el-button
type=
"warning"
plain
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
:loading=
"exportLoading"
v-hasPermi=
"['ecw:customer:export']"
>
导出
</el-button>
v-hasPermi=
"['ecw:customer:export']"
>
导出
</el-button>
</el-col>
</el-col>
<el-col
:span=
"1.5"
>
<el-col
:span=
"1.5"
>
<el-button
:disabled=
"selectCustomerList.length === 0"
type=
"warning"
size=
"mini"
@
click=
"batchTransferShow = true;"
:loading=
"exportLoading"
v-hasPermi=
"['ecw:customer:export']"
>
批量移交
</el-button>
</el-col>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
</el-row>
<!-- 列表 -->
<!-- 列表 -->
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table
ref=
"multipleTable"
v-loading=
"loading"
:data=
"list"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
>
</el-table-column>
<el-table-column
label=
"客户编号"
align=
"center"
prop=
"number"
/>
<el-table-column
label=
"客户编号"
align=
"center"
prop=
"number"
/>
<el-table-column
label=
"客户名称"
align=
"center"
prop=
"name"
/>
<el-table-column
label=
"客户名称"
align=
"center"
prop=
"name"
/>
<el-table-column
label=
"客户等级"
align=
"center"
prop=
"
level
"
>
<el-table-column
label=
"客户等级"
align=
"center"
prop=
"
vipLevelNameZh
"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.CUSTOMER_LEVEL"
:value=
"scope.row.level"
/>
<dict-tag
:type=
"DICT_TYPE.CUSTOMER_LEVEL"
:value=
"scope.row.level"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"国家"
align=
"center"
prop=
"country"
>
<el-table-column
label=
"信用等级"
prop=
"creditLevelNameZh"
></el-table-column>
<
template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.COUNTRY"
:value=
"scope.row.country"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"客户经理"
align=
"center"
prop=
"customerService"
:formatter=
"customerServiceFn"
>
</el-table-column>
<el-table-column
label=
"客户状态"
align=
"center"
prop=
"status"
>
<el-table-column
label=
"客户状态"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.CUSTOMER_STATUS"
:value=
"scope.row.status"
/>
<dict-tag
:type=
"DICT_TYPE.CUSTOMER_STATUS"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"部门"
align=
"center"
prop=
"department"
/>
<el-table-column
label=
"主联系人"
prop=
"defaultContactName"
></el-table-column>
<el-table-column
label=
"主联系方式"
prop=
"defaultContactPhone"
></el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"客户经理"
align=
"center"
prop=
"customerService"
:formatter=
"customerServiceFn"
>
</el-table-column>
<el-table-column
label=
"国家"
align=
"center"
prop=
"country"
:formatter=
"countryFormatter"
></el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
...
@@ -120,6 +142,7 @@
...
@@ -120,6 +142,7 @@
<!-- 分页组件 -->
<!-- 分页组件 -->
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.pageNo"
:limit.sync=
"queryParams.pageSize"
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.pageNo"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
@
pagination=
"getList"
/>
<transfer-customer
:show.sync=
"batchTransferShow"
:customer-ids.sync=
"selectCustomerList"
></transfer-customer>
</div>
</div>
</template>
</template>
...
@@ -129,13 +152,18 @@ import { createCustomer, updateCustomer, deleteCustomer, getCustomer,handOverCus
...
@@ -129,13 +152,18 @@ import { createCustomer, updateCustomer, deleteCustomer, getCustomer,handOverCus
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
upload
from
'
@/components/ImageUpload
'
import
upload
from
'
@/components/ImageUpload
'
import
{
listServiceUser
}
from
"
@/api/system/user
"
;
import
{
listServiceUser
}
from
"
@/api/system/user
"
;
import
{
getCountryListAll
}
from
"
@/api/ecw/country
"
;
import
{
getCreditPage
}
from
"
@/api/customer/credit
"
;
import
transferCustomer
from
"
@/views/ecw/customer/transferCustomer
"
;
export
default
{
export
default
{
name
:
"
customerToBeAssigned
"
,
name
:
"
customerToBeAssigned
"
,
components
:
{
components
:
{
upload
upload
,
transferCustomer
},
},
data
()
{
data
()
{
return
{
return
{
batchTransferShow
:
false
,
getDictDatas
,
getDictDatas
,
DICT_TYPE
,
DICT_TYPE
,
// 遮罩层
// 遮罩层
...
@@ -186,9 +214,19 @@ export default {
...
@@ -186,9 +214,19 @@ export default {
service
:
undefined
,
//客服
service
:
undefined
,
//客服
transferData
:
undefined
,
//移交数据
transferData
:
undefined
,
//移交数据
transferShow
:
false
,
transferShow
:
false
,
creditList
:[],
selectCustomerList
:[],
countryList
:[]
};
};
},
},
created
()
{
created
()
{
getCountryListAll
().
then
(
r
=>
{
console
.
log
(
r
,
'
国家
'
)
this
.
countryList
=
r
.
data
})
getCreditPage
({
page
:
1
,
rows
:
999
}).
then
(
r
=>
{
this
.
creditList
=
r
.
data
.
list
})
this
.
getList
();
this
.
getList
();
listServiceUser
().
then
(
r
=>
{
listServiceUser
().
then
(
r
=>
{
console
.
log
(
r
,
'
客服
'
);
console
.
log
(
r
,
'
客服
'
);
...
@@ -199,6 +237,13 @@ export default {
...
@@ -199,6 +237,13 @@ export default {
// })
// })
},
},
methods
:
{
methods
:
{
countryFormatter
(
row
,
column
,
cellValue
)
{
const
country
=
this
.
countryList
.
find
((
e
)
=>
e
.
id
===
cellValue
)
return
country
?.
nameZh
},
handleSelectionChange
(
val
){
this
.
selectCustomerList
=
val
.
map
(
i
=>
i
.
id
);
},
/** 查询列表 */
/** 查询列表 */
getList
()
{
getList
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
...
@@ -370,6 +415,14 @@ export default {
...
@@ -370,6 +415,14 @@ export default {
return
''
return
''
}
}
}
}
},
watch
:{
selectCustomerList
(
val
){
if
(
val
.
length
===
0
){
this
.
getList
()
this
.
$refs
.
multipleTable
.
clearSelection
();
}
},
}
}
};
};
</
script
>
</
script
>
src/views/ecw/deptTarget/empAchievement.vue
0 → 100644
View file @
adaf7141
This diff is collapsed.
Click to expand it.
src/views/ecw/deptTarget/index.vue
View file @
adaf7141
...
@@ -40,7 +40,9 @@
...
@@ -40,7 +40,9 @@
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table-column
label=
"目标名称"
align=
"center"
width=
"180"
>
<el-table-column
label=
"目标名称"
align=
"center"
width=
"180"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
deptName
}}{{
scope
.
row
.
targetPeriodName
}}
目标
</span>
<router-link
:to=
"
{path: '/deptTarget/empAchievement',query: {row: scope.row}}" class="link-type">
<span>
{{
scope
.
row
.
deptName
}}{{
scope
.
row
.
targetPeriodName
}}
目标
</span>
</router-link>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"部门"
align=
"center"
prop=
"deptName"
/>
<el-table-column
label=
"部门"
align=
"center"
prop=
"deptName"
/>
...
@@ -80,8 +82,8 @@
...
@@ -80,8 +82,8 @@
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['ecw:dept-target:delete']"
>
删除
v-hasPermi=
"['ecw:dept-target:delete']"
>
删除
</el-button>
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-search"
@
click=
"handleView(scope.row)"
<!--
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-search"
@
click=
"handleView(scope.row)"
--
>
v-hasPermi=
"['ecw:dept-target:create']"
></el-button
>
<!-- v-hasPermi="['ecw:dept-target:create']">
</el-button>
--
>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
@@ -109,9 +111,9 @@
...
@@ -109,9 +111,9 @@
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"运输方式"
prop=
"transportType"
>
<el-form-item
label=
"运输方式"
prop=
"transportType"
>
<dict-selector
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
v-model=
"form.transportType"
formatter=
"number"
/>
<dict-selector
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
v-model=
"form.transportType"
formatter=
"number"
@
change=
"showChannel"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"出货渠道"
prop=
"shippingChannel"
>
<el-form-item
label=
"出货渠道"
prop=
"shippingChannel"
v-if=
"this.showFlag"
>
<el-select
v-model=
"form.shippingChannel"
placeholder=
"请选择出货渠道"
>
<el-select
v-model=
"form.shippingChannel"
placeholder=
"请选择出货渠道"
>
<el-option
v-for=
"item in channelList"
:label=
"item.nameZh"
:value=
"item.channelId"
<el-option
v-for=
"item in channelList"
:label=
"item.nameZh"
:value=
"item.channelId"
:key=
"item.channelId"
></el-option>
:key=
"item.channelId"
></el-option>
...
@@ -127,49 +129,6 @@
...
@@ -127,49 +129,6 @@
</div>
</div>
</el-dialog>
</el-dialog>
<!--人员目标进度-->
<el-dialog
title=
"人员目标进度"
:visible.sync=
"tableOpen"
width=
"1000px"
append-to-body
>
<div><span><b>
{{detail.deptName}}-{{getDictDataLabel(DICT_TYPE.TARGET_TYPE,detail.targetType)}}
</b></span></div>
<div>
<span>
运输方式:
</span><span>
{{getDictDataLabel(DICT_TYPE.TRANSPORT_TYPE,detail.transportType)}}
</span>
<span>
出货渠道:
</span><span>
{{ getShipChannelName(detail.shippingChannel) }}
</span>
<span>
部门目标:
</span><span>
{{detail.cubeNum}}
</span>
</div>
<el-table
v-loading=
"loading"
:data=
"tableList"
>
<el-table-column
label=
"员工名称"
align=
"center"
width=
"180"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
userName
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"部门"
align=
"center"
>
<
template
>
<span>
{{
detail
.
deptName
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"目标类型"
align=
"center"
prop=
"targetType"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.TARGET_TYPE"
:value=
"scope.row.targetType"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"时间范围"
align=
"center"
prop=
"targetPeriodName"
>
<
template
slot-scope=
"scope"
>
<span>
{{
dateFormat
(
scope
.
row
.
startTime
)
}}
~
{{
dateFormat
(
scope
.
row
.
endTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"个人目标方数"
align=
"center"
prop=
"personalCubeNum"
/>
<el-table-column
label=
"已完成方数"
align=
"center"
prop=
"personalCompleteCubeNum"
/>
<el-table-column
label=
"完成比例"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<span>
{{
(
scope
.
row
.
personalCompleteCubeNum
/
scope
.
row
.
personalCubeNum
*
100
).
toFixed
(
2
)
+
'
%
'
}}
</span>
</
template
>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination
v-show=
"tableTotal > 0"
:total=
"tableTotal"
:page.sync=
"tableQueryParams.pageNo"
:limit.sync=
"tableQueryParams.pageSize"
@
pagination=
"getTableList"
/>
</el-dialog>
</div>
</div>
</template>
</template>
...
@@ -195,6 +154,7 @@
...
@@ -195,6 +154,7 @@
return
{
return
{
// 遮罩层
// 遮罩层
loading
:
true
,
loading
:
true
,
showFlag
:
false
,
// 导出遮罩层
// 导出遮罩层
exportLoading
:
false
,
exportLoading
:
false
,
// 显示搜索条件
// 显示搜索条件
...
@@ -247,8 +207,10 @@
...
@@ -247,8 +207,10 @@
form
:
{},
form
:
{},
// 表单校验
// 表单校验
rules
:
{
rules
:
{
deptId
:
[{
required
:
true
,
message
:
"
部门
ID
不能为空
"
,
trigger
:
"
blur
"
}],
deptId
:
[{
required
:
true
,
message
:
"
部门不能为空
"
,
trigger
:
"
blur
"
}],
targetType
:
[{
required
:
true
,
message
:
"
目标类型不能为空
"
,
trigger
:
"
change
"
}],
targetType
:
[{
required
:
true
,
message
:
"
目标类型不能为空
"
,
trigger
:
"
change
"
}],
targetPeriodName
:
[{
required
:
true
,
message
:
"
计算周期不能为空
"
,
trigger
:
"
change
"
}],
transportType
:
[{
required
:
true
,
message
:
"
运输方式不能为空
"
,
trigger
:
"
change
"
}],
cubeNum
:
[{
required
:
true
,
message
:
"
立方数不能为空
"
,
trigger
:
"
blur
"
}],
cubeNum
:
[{
required
:
true
,
message
:
"
立方数不能为空
"
,
trigger
:
"
blur
"
}],
}
}
};
};
...
@@ -320,6 +282,14 @@
...
@@ -320,6 +282,14 @@
}
}
})
})
},
},
showChannel
(
val
){
console
.
log
(
val
);
if
(
val
===
3
||
val
===
4
){
this
.
showFlag
=
true
;
}
else
{
this
.
showFlag
=
false
;
}
},
/** 查询列表 */
/** 查询列表 */
getList
()
{
getList
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
...
...
src/views/ecw/financial/creatCollection.vue
View file @
adaf7141
...
@@ -159,8 +159,8 @@
...
@@ -159,8 +159,8 @@
v
-
model
=
"
form.openInvoice
"
v
-
model
=
"
form.openInvoice
"
placeholder
=
"
请选择是否需要开票
"
placeholder
=
"
请选择是否需要开票
"
>
>
<
el
-
option
:
value
=
"
1
"
label
=
"
需要
"
><
/el-option
>
<
el
-
option
:
value
=
"
1
"
label
=
"
是
"
><
/el-option
>
<
el
-
option
:
value
=
"
0
"
label
=
"
不需要
"
><
/el-option
>
<
el
-
option
:
value
=
"
0
"
label
=
"
否
"
><
/el-option
>
<
/el-select
>
<
/el-select
>
<
/el-form-item
>
<
/el-form-item
>
<
/el-descriptions-item
>
<
/el-descriptions-item
>
...
@@ -377,7 +377,8 @@
...
@@ -377,7 +377,8 @@
<
/el-card
>
<
/el-card
>
<
/el-form
>
<
/el-form
>
<
div
slot
=
"
footer
"
style
=
"
margin: 20px 0
"
>
<
div
slot
=
"
footer
"
style
=
"
margin: 20px 0
"
>
<
el
-
button
type
=
"
primary
"
:
loading
=
"
saveBtnLoading
"
@
click
=
"
submitForm(1)
"
>
保
存
<
/el-button
>
<
el
-
button
v
-
if
=
"
id==0
"
type
=
"
primary
"
:
loading
=
"
saveBtnLoading
"
@
click
=
"
submitForm(1)
"
>
保
存
<
/el-button
>
<
el
-
button
v
-
else
type
=
"
primary
"
:
loading
=
"
saveBtnLoading
"
@
click
=
"
$store.dispatch('tagsView/delCurrentView')
"
>
返
回
<
/el-button
>
<
el
-
button
type
=
"
primary
"
:
loading
=
"
saveBtnLoading
"
@
click
=
"
submitForm(0)
"
>
{{
id
?
'
修 改
'
:
'
新 增
'
}}
<
/el-button
>
<
el
-
button
type
=
"
primary
"
:
loading
=
"
saveBtnLoading
"
@
click
=
"
submitForm(0)
"
>
{{
id
?
'
修 改
'
:
'
新 增
'
}}
<
/el-button
>
<
/div
>
<
/div
>
<
el
-
dialog
<
el
-
dialog
...
@@ -596,7 +597,7 @@
...
@@ -596,7 +597,7 @@
<
dict
-
tag
:
type
=
"
DICT_TYPE.BOX_SHIPPING_PRICE_UNIT
"
:
value
=
"
selectListRow.currencyId
"
/>
<
dict
-
tag
:
type
=
"
DICT_TYPE.BOX_SHIPPING_PRICE_UNIT
"
:
value
=
"
selectListRow.currencyId
"
/>
<
/el-form-item
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
优惠金额
"
>
<
el
-
form
-
item
label
=
"
优惠金额
"
>
<
el
-
input
v
-
model
=
"
discountForm.discountTotal
"
style
=
"
width: 300px
"
><
/el-input
>
<
el
-
input
v
-
model
=
"
discountForm.discountTotal
"
type
=
"
number
"
min
=
"
0
"
:
max
=
"
selectListRow.totalAmount
"
@
input
=
"
checkDiscount
"
style
=
"
width: 300px
"
><
/el-input
>
&
nbsp
;
&
nbsp
;
&
nbsp
;
&
nbsp
;
<
dict
-
tag
:
type
=
"
DICT_TYPE.BOX_SHIPPING_PRICE_UNIT
"
:
value
=
"
selectListRow.currencyId
"
/>
<
dict
-
tag
:
type
=
"
DICT_TYPE.BOX_SHIPPING_PRICE_UNIT
"
:
value
=
"
selectListRow.currencyId
"
/>
<
/el-form-item
>
<
/el-form-item
>
...
@@ -698,6 +699,7 @@ export default {
...
@@ -698,6 +699,7 @@ export default {
let
that
=
this
;
let
that
=
this
;
if
(
that
.
$route
.
query
.
id
)
{
if
(
that
.
$route
.
query
.
id
)
{
this
.
id
=
this
.
$route
.
query
.
id
;
this
.
id
=
this
.
$route
.
query
.
id
;
console
.
log
(
this
.
id
)
getReceiptInfoByIds
({
id
:
this
.
id
}
).
then
(
res
=>
{
getReceiptInfoByIds
({
id
:
this
.
id
}
).
then
(
res
=>
{
res
.
data
.
rateValidateDate
=
dayjs
(
res
.
data
.
rateValidateDate
).
format
(
'
YYYY-MM-DD HH:mm:ss
'
)
res
.
data
.
rateValidateDate
=
dayjs
(
res
.
data
.
rateValidateDate
).
format
(
'
YYYY-MM-DD HH:mm:ss
'
)
this
.
form
=
Object
.
assign
({
}
,
this
.
form
,
res
.
data
)
this
.
form
=
Object
.
assign
({
}
,
this
.
form
,
res
.
data
)
...
@@ -808,6 +810,12 @@ export default {
...
@@ -808,6 +810,12 @@ export default {
}
}
}
,
}
,
methods
:
{
methods
:
{
checkDiscount
(
e
){
console
.
log
(
e
)
if
(
e
>
this
.
selectListRow
.
totalAmount
){
this
.
discountForm
.
discountTotal
=
this
.
selectListRow
.
totalAmount
}
}
,
currencyIdChange
(
val
,
row
,
index
)
{
currencyIdChange
(
val
,
row
,
index
)
{
row
.
collectionCurrencyId
=
val
row
.
collectionCurrencyId
=
val
if
(
val
==
row
.
currencyId
)
row
.
collectionRate
=
1
if
(
val
==
row
.
currencyId
)
row
.
collectionRate
=
1
...
@@ -819,7 +827,7 @@ export default {
...
@@ -819,7 +827,7 @@ export default {
if
(
row
.
currencyId
==
3
&&
val
==
1
)
row
.
collectionRate
=
this
.
NANtoUS
()
if
(
row
.
currencyId
==
3
&&
val
==
1
)
row
.
collectionRate
=
this
.
NANtoUS
()
if
(
row
.
currencyId
==
3
&&
val
==
2
)
row
.
collectionRate
=
this
.
NANtoRMB
()
if
(
row
.
currencyId
==
3
&&
val
==
2
)
row
.
collectionRate
=
this
.
NANtoRMB
()
}
}
this
.
rateChange
(
row
,
index
)
this
.
rateChange
(
row
,
index
)
}
,
}
,
writeOffRateChange
(
row
,
index
)
{
writeOffRateChange
(
row
,
index
)
{
...
@@ -835,13 +843,13 @@ export default {
...
@@ -835,13 +843,13 @@ export default {
setTimeout
(()
=>
{
setTimeout
(()
=>
{
// 收款总计
// 收款总计
const
dollarList
=
this
.
form
.
receiptAccountList
.
filter
(
v
=>
v
.
collectionCurrencyId
==
1
)
const
dollarList
=
this
.
form
.
receiptAccountList
.
filter
(
v
=>
v
.
collectionCurrencyId
==
1
)
const
dollar
=
dollarList
.
reduce
((
total
,
currentValue
)
=>
NP
.
plus
(
total
,
NP
.
minus
(
currentValue
.
receivableAmount
,
currentValue
.
discountTotal
||
0
)
||
0
),
0
)
const
dollar
=
dollarList
.
reduce
((
total
,
currentValue
)
=>
NP
.
plus
(
total
,
currentValue
.
collectionAmount
),
0
)
const
rmbList
=
this
.
form
.
receiptAccountList
.
filter
(
v
=>
v
.
collectionCurrencyId
==
2
)
const
rmbList
=
this
.
form
.
receiptAccountList
.
filter
(
v
=>
v
.
collectionCurrencyId
==
2
)
const
rmb
=
rmbList
.
reduce
((
total
,
currentValue
)
=>
NP
.
plus
(
total
,
NP
.
minus
(
currentValue
.
receivableAmount
,
currentValue
.
discountTotal
||
0
)
||
0
),
0
)
const
rmb
=
rmbList
.
reduce
((
total
,
currentValue
)
=>
NP
.
plus
(
total
,
currentValue
.
collectionAmount
),
0
)
const
nairaList
=
this
.
form
.
receiptAccountList
.
filter
(
v
=>
v
.
collectionCurrencyId
==
3
)
const
nairaList
=
this
.
form
.
receiptAccountList
.
filter
(
v
=>
v
.
collectionCurrencyId
==
3
)
const
naira
=
nairaList
.
reduce
((
total
,
currentValue
)
=>
NP
.
plus
(
total
,
NP
.
minus
(
currentValue
.
receivableAmount
,
currentValue
.
discountTotal
||
0
)
||
0
),
0
)
const
naira
=
nairaList
.
reduce
((
total
,
currentValue
)
=>
NP
.
plus
(
total
,
currentValue
.
collectionAmount
),
0
)
this
.
form
.
receiptAccountList
[
this
.
form
.
receiptAccountList
.
length
-
1
].
collectionAmount
=
[
dollar
,
rmb
,
naira
]
this
.
form
.
receiptAccountList
[
this
.
form
.
receiptAccountList
.
length
-
1
].
collectionAmount
=
[
dollar
,
rmb
,
naira
]
this
.
$set
(
this
.
form
,
'
receiptAccountList
'
,
[...
this
.
form
.
receiptAccountList
])
this
.
$set
(
this
.
form
,
'
receiptAccountList
'
,
[...
this
.
form
.
receiptAccountList
])
...
@@ -857,7 +865,7 @@ export default {
...
@@ -857,7 +865,7 @@ export default {
discountDollar
=
dollarList
.
reduce
((
total
,
currentValue
)
=>
NP
.
plus
(
total
,
currentValue
.
discountTotal
||
0
),
0
)
discountDollar
=
dollarList
.
reduce
((
total
,
currentValue
)
=>
NP
.
plus
(
total
,
currentValue
.
discountTotal
||
0
),
0
)
const
t
=
copyList
.
find
(
v
=>
v
.
currencyId
==
1
)
const
t
=
copyList
.
find
(
v
=>
v
.
currencyId
==
1
)
this
.
form
.
receiptAccountList
=
[
this
.
form
.
receiptAccountList
=
[
{
{
discountTotal
:
discountDollar
,
discountTotal
:
discountDollar
,
currencyId
:
1
,
currencyId
:
1
,
receivableAmount
:
dollar
,
receivableAmount
:
dollar
,
...
@@ -877,7 +885,7 @@ export default {
...
@@ -877,7 +885,7 @@ export default {
const
t
=
copyList
.
find
(
v
=>
v
.
currencyId
==
2
)
const
t
=
copyList
.
find
(
v
=>
v
.
currencyId
==
2
)
this
.
form
.
receiptAccountList
=
[
this
.
form
.
receiptAccountList
=
[
...
this
.
form
.
receiptAccountList
,
...
this
.
form
.
receiptAccountList
,
{
{
discountTotal
:
discountRmb
,
discountTotal
:
discountRmb
,
currencyId
:
2
,
currencyId
:
2
,
receivableAmount
:
rmb
,
receivableAmount
:
rmb
,
...
@@ -897,7 +905,7 @@ export default {
...
@@ -897,7 +905,7 @@ export default {
const
t
=
copyList
.
find
(
v
=>
v
.
currencyId
==
3
)
const
t
=
copyList
.
find
(
v
=>
v
.
currencyId
==
3
)
this
.
form
.
receiptAccountList
=
[
this
.
form
.
receiptAccountList
=
[
...
this
.
form
.
receiptAccountList
,
...
this
.
form
.
receiptAccountList
,
{
{
discountTotal
:
discountNaira
,
discountTotal
:
discountNaira
,
currencyId
:
3
,
currencyId
:
3
,
receivableAmount
:
naira
,
receivableAmount
:
naira
,
...
@@ -996,7 +1004,7 @@ export default {
...
@@ -996,7 +1004,7 @@ export default {
}
)
}
)
}
,
}
,
getReceivableListByIds
()
{
getReceivableListByIds
()
{
}
,
}
,
cancelDiscount
()
{
cancelDiscount
()
{
this
.
discountVisible
=
false
this
.
discountVisible
=
false
...
...
src/views/ecw/financial/payable.vue
View file @
adaf7141
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
<el-form-item
label=
"柜号:"
>
<el-form-item
label=
"柜号:"
>
<el-input
<el-input
style=
"max-width: 188px"
style=
"max-width: 188px"
v-model=
"queryParams.
ord
erNo"
v-model=
"queryParams.
contain
erNo"
placeholder=
"请输入柜号"
placeholder=
"请输入柜号"
clearable
clearable
@
keyup.enter.native=
"handleQuery"
@
keyup.enter.native=
"handleQuery"
...
@@ -24,7 +24,7 @@
...
@@ -24,7 +24,7 @@
<el-form-item
label=
"自编号:"
>
<el-form-item
label=
"自编号:"
>
<el-input
<el-input
style=
"max-width: 188px"
style=
"max-width: 188px"
v-model=
"queryParams.
order
No"
v-model=
"queryParams.
payable
No"
placeholder=
"请输入自编号"
placeholder=
"请输入自编号"
clearable
clearable
@
keyup.enter.native=
"handleQuery"
@
keyup.enter.native=
"handleQuery"
...
@@ -37,6 +37,7 @@
...
@@ -37,6 +37,7 @@
<el-select
<el-select
v-model=
"queryParams.departureId"
v-model=
"queryParams.departureId"
placeholder=
"请选择始发城市"
placeholder=
"请选择始发城市"
clearable
>
>
<el-option
<el-option
v-for=
"item in expoerCityList"
v-for=
"item in expoerCityList"
...
@@ -50,6 +51,7 @@
...
@@ -50,6 +51,7 @@
<el-select
<el-select
v-model=
"queryParams.objectiveId"
v-model=
"queryParams.objectiveId"
placeholder=
"请选择目的城市"
placeholder=
"请选择目的城市"
clearable
>
>
<el-option
<el-option
v-for=
"item in importCityList"
v-for=
"item in importCityList"
...
@@ -64,6 +66,7 @@
...
@@ -64,6 +66,7 @@
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
v-model=
"queryParams.transportId"
v-model=
"queryParams.transportId"
formatter=
"number"
formatter=
"number"
clearable
/>
/>
</el-form-item>
</el-form-item>
</el-row>
</el-row>
...
...
src/views/ecw/financial/receivable.vue
View file @
adaf7141
...
@@ -42,6 +42,7 @@
...
@@ -42,6 +42,7 @@
<el-select
<el-select
v-model=
"queryParams.departureId"
v-model=
"queryParams.departureId"
placeholder=
"请选择始发城市"
placeholder=
"请选择始发城市"
clearable
>
>
<el-option
<el-option
v-for=
"item in expoerCityList"
v-for=
"item in expoerCityList"
...
@@ -55,6 +56,7 @@
...
@@ -55,6 +56,7 @@
<el-select
<el-select
v-model=
"queryParams.objectiveId"
v-model=
"queryParams.objectiveId"
placeholder=
"请选择目的城市"
placeholder=
"请选择目的城市"
clearable
>
>
<el-option
<el-option
v-for=
"item in importCityList"
v-for=
"item in importCityList"
...
@@ -69,12 +71,14 @@
...
@@ -69,12 +71,14 @@
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
v-model=
"queryParams.transportId"
v-model=
"queryParams.transportId"
formatter=
"number"
formatter=
"number"
clearable
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"控货:"
>
<el-form-item
label=
"控货:"
>
<dict-selector
<dict-selector
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
v-model=
"queryParams.isCargoControl"
v-model=
"queryParams.isCargoControl"
clearable
/>
/>
</el-form-item>
</el-form-item>
</el-row>
</el-row>
...
@@ -83,12 +87,14 @@
...
@@ -83,12 +87,14 @@
<dict-selector
<dict-selector
:type=
"DICT_TYPE.ORDER_STATUS"
:type=
"DICT_TYPE.ORDER_STATUS"
v-model=
"queryParams.status"
v-model=
"queryParams.status"
clearable
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"报关方式:"
>
<el-form-item
label=
"报关方式:"
>
<dict-selector
<dict-selector
:type=
"DICT_TYPE.ECW_CUSTOMS_TYPE"
:type=
"DICT_TYPE.ECW_CUSTOMS_TYPE"
v-model=
"queryParams.customsType"
v-model=
"queryParams.customsType"
clearable
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"订单号:"
>
<el-form-item
label=
"订单号:"
>
...
@@ -133,12 +139,14 @@
...
@@ -133,12 +139,14 @@
<dict-selector
<dict-selector
:type=
"DICT_TYPE.FEE_TYPE"
:type=
"DICT_TYPE.FEE_TYPE"
v-model=
"queryParams.feeType"
v-model=
"queryParams.feeType"
clearable
></dict-selector>
></dict-selector>
</el-form-item>
</el-form-item>
<el-form-item
label=
"发货人:"
>
<el-form-item
label=
"发货人:"
>
<customer-selector
<customer-selector
v-model=
"queryParams.consignorNameOrPhone"
v-model=
"queryParams.consignorNameOrPhone"
@
change=
"consignor = $event"
@
change=
"consignor = $event"
clearable
/>
/>
</el-form-item>
</el-form-item>
<!--
<el-form-item
label=
"发货人:"
>
<!--
<el-form-item
label=
"发货人:"
>
...
@@ -151,6 +159,7 @@
...
@@ -151,6 +159,7 @@
<customer-selector
<customer-selector
v-model=
"queryParams.consigneeNameOrPhone"
v-model=
"queryParams.consigneeNameOrPhone"
@
change=
"consignor = $event"
@
change=
"consignor = $event"
clearable
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"自编号:"
>
<el-form-item
label=
"自编号:"
>
...
@@ -189,7 +198,7 @@
...
@@ -189,7 +198,7 @@
<el-table-column
label=
"唛头"
align=
"center"
prop=
"marks"
/>
<el-table-column
label=
"唛头"
align=
"center"
prop=
"marks"
/>
<el-table-column
label=
"品名"
align=
"center"
prop=
"title"
>
<el-table-column
label=
"品名"
align=
"center"
prop=
"title"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
titleZh
+
"
(
"
+
scope
.
row
.
titleEn
+
"
)
"
}}
{{
scope
.
row
.
titleZh
?
(
scope
.
row
.
titleZh
+
"
(
"
+
scope
.
row
.
titleEn
+
"
)
"
):
''
}}
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"箱数"
align=
"center"
prop=
"num"
/>
<el-table-column
label=
"箱数"
align=
"center"
prop=
"num"
/>
...
...
src/views/ecw/oceanCustomer/index.vue
View file @
adaf7141
...
@@ -11,36 +11,50 @@
...
@@ -11,36 +11,50 @@
<el-input
v-model=
"queryParams.name"
placeholder=
"请输入客户名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.name"
placeholder=
"请输入客户名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"客户等级"
prop=
"level"
>
<el-form-item
label=
"客户等级"
prop=
"level"
>
<el-select
v-model=
"queryParams.level"
placeholder=
"请选择客户等级"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.level"
placeholder=
"请选择客户等级"
clearable
size=
"small"
>
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_LEVEL)"
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_LEVEL)"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"联系方式"
>
<el-input
placeholder=
"请输入联系方式"
v-model=
"queryParams.defaultContactPhone"
></el-input>
</el-form-item>
<el-form-item
label=
"客户类别"
prop=
"level"
>
<dict-selector
:type=
"DICT_TYPE.CUSTOMER_TYPE"
multiple
v-model=
"queryParams.type"
></dict-selector>
</el-form-item>
<el-form-item
label=
"客户经理"
prop=
"customerService"
>
<el-select
clearable
v-model=
"queryParams.customerService"
placeholder=
"请选择客户经理"
clearable
size=
"small"
>
<el-option
v-for=
"dict in customerServiceList"
:key=
"dict.id"
:label=
"dict.nickname"
:value=
"dict.id"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"客户来源"
prop=
"source"
>
<el-form-item
label=
"客户来源"
prop=
"source"
>
<el-select
v-model=
"queryParams.source"
placeholder=
"请选择客户来源"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.source"
placeholder=
"请选择客户来源"
clearable
size=
"small"
>
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"
客户经理"
prop=
"customerServi
ce"
>
<el-form-item
label=
"
国家"
prop=
"sour
ce"
>
<el-select
v-model=
"queryParams.customerService"
placeholder=
"请选择客户经理"
clearable
size=
"small
"
>
<el-select
clearable
v-model=
"form.country"
placeholder=
"请选择国家
"
>
<el-option
v-for=
"dict in c
ustomerService
List"
<el-option
v-for=
"dict in c
ountry
List"
:key=
"dict.id"
:label=
"dict.n
ickname"
:value=
"dict.id"
/>
:key=
"dict.id"
:label=
"dict.n
ameZh"
:value=
"parseInt(dict.id)"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"客户状态"
prop=
"status"
>
<el-form-item
label=
"客户状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择客户状态"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.status"
placeholder=
"请选择客户状态"
clearable
size=
"small"
>
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_STATUS)"
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_STATUS)"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"部门"
prop=
"department"
>
<el-input
v-model=
"queryParams.department"
placeholder=
"请输入部门"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"创建时间"
>
<el-form-item
label=
"创建时间"
>
<el-date-picker
v-model=
"dateRangeCreateTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
<el-date-picker
clearable
v-model=
"dateRangeCreateTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
/>
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"信用等级"
prop=
"department"
>
<el-select
clearable
v-model=
"form.level"
>
<el-option
v-for=
"(item,index) in creditList"
:label=
"item.nameZh"
:key=
"index"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
type=
"primary"
icon=
"el-icon-search"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
@
click=
"resetQuery"
>
重置
</el-button>
<el-button
icon=
"el-icon-refresh"
@
click=
"resetQuery"
>
重置
</el-button>
...
@@ -73,29 +87,27 @@
...
@@ -73,29 +87,27 @@
</el-table-column>
</el-table-column>
<el-table-column
label=
"客户编号"
align=
"center"
prop=
"number"
/>
<el-table-column
label=
"客户编号"
align=
"center"
prop=
"number"
/>
<el-table-column
label=
"客户名称"
align=
"center"
prop=
"name"
/>
<el-table-column
label=
"客户名称"
align=
"center"
prop=
"name"
/>
<el-table-column
label=
"客户等级"
align=
"center"
prop=
"
level
"
>
<el-table-column
label=
"客户等级"
align=
"center"
prop=
"
vipLevelNameZh
"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.CUSTOMER_LEVEL"
:value=
"scope.row.level"
/>
<dict-tag
:type=
"DICT_TYPE.CUSTOMER_LEVEL"
:value=
"scope.row.level"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"国家"
align=
"center"
prop=
"country"
>
<el-table-column
label=
"信用等级"
prop=
"creditLevelNameZh"
></el-table-column>
<
template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.COUNTRY"
:value=
"scope.row.country"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"客户经理"
align=
"center"
prop=
"customerService"
:formatter=
"customerServiceFn"
>
</el-table-column>
<el-table-column
label=
"客户状态"
align=
"center"
prop=
"status"
>
<el-table-column
label=
"客户状态"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.CUSTOMER_STATUS"
:value=
"scope.row.status"
/>
<dict-tag
:type=
"DICT_TYPE.CUSTOMER_STATUS"
:value=
"scope.row.status"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"部门"
align=
"center"
prop=
"department"
/>
<el-table-column
label=
"主联系人"
prop=
"defaultContactName"
></el-table-column>
<el-table-column
label=
"主联系方式"
prop=
"defaultContactPhone"
></el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"客户经理"
align=
"center"
prop=
"customerService"
:formatter=
"customerServiceFn"
>
</el-table-column>
<el-table-column
label=
"国家"
align=
"center"
prop=
"country"
:formatter=
"countryFormatter"
></el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-folder-add"
@
click=
"distribution(scope.row)"
>
移交
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-folder-add"
@
click=
"distribution(scope.row)"
>
移交
</el-button>
...
@@ -134,6 +146,8 @@ import { createCustomer, updateCustomer, deleteCustomer,handOverCustomer,getPubl
...
@@ -134,6 +146,8 @@ import { createCustomer, updateCustomer, deleteCustomer,handOverCustomer,getPubl
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
import
upload
from
'
@/components/ImageUpload
'
import
upload
from
'
@/components/ImageUpload
'
import
{
listServiceUser
}
from
"
@/api/system/user
"
;
import
{
listServiceUser
}
from
"
@/api/system/user
"
;
import
{
getCountryListAll
}
from
"
@/api/ecw/country
"
;
import
{
getCreditPage
}
from
"
@/api/customer/credit
"
;
export
default
{
export
default
{
name
:
"
customerToBeAssigned
"
,
name
:
"
customerToBeAssigned
"
,
components
:
{
components
:
{
...
@@ -193,6 +207,8 @@ export default {
...
@@ -193,6 +207,8 @@ export default {
transferShow
:
false
,
transferShow
:
false
,
multipleSelection
:[],
multipleSelection
:[],
isBatch
:
false
,
isBatch
:
false
,
countryList
:[],
creditList
:[]
};
};
},
},
created
()
{
created
()
{
...
@@ -201,11 +217,21 @@ export default {
...
@@ -201,11 +217,21 @@ export default {
console
.
log
(
r
,
'
客服
'
);
console
.
log
(
r
,
'
客服
'
);
this
.
customerServiceList
=
r
.
data
;
this
.
customerServiceList
=
r
.
data
;
})
})
getCountryListAll
().
then
(
r
=>
{
this
.
countryList
=
r
.
data
})
getCreditPage
({
page
:
1
,
rows
:
999
}).
then
(
r
=>
{
this
.
creditList
=
r
.
data
.
list
})
// getNodeList().then(r => {
// getNodeList().then(r => {
// this.nodeList = r.data
// this.nodeList = r.data
// })
// })
},
},
methods
:
{
methods
:
{
countryFormatter
(
row
,
column
,
cellValue
)
{
const
country
=
this
.
countryList
.
find
((
e
)
=>
e
.
id
===
cellValue
)
return
country
?.
nameZh
},
/** 查询列表 */
/** 查询列表 */
getList
()
{
getList
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
...
...
src/views/ecw/offer/components/Commossion.vue
View file @
adaf7141
...
@@ -18,17 +18,17 @@
...
@@ -18,17 +18,17 @@
<
el
-
row
v
-
if
=
"
!form.charging
"
>
<
el
-
row
v
-
if
=
"
!form.charging
"
>
<
el
-
col
:
span
=
"
12
"
>
<
el
-
col
:
span
=
"
12
"
>
<
el
-
form
-
item
:
label
=
"
$t('运费')
"
>
<
el
-
form
-
item
:
label
=
"
$t('运费')
"
>
{{
form
.
orgSeaFreight
}}
{{
curren
tMap
[
form
.
orgSeaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgS
eaFreightVolume
]
}}
{{
form
.
orgSeaFreight
}}
{{
curren
cyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
s
eaFreightVolume
]
}}
<
/el-form-item
>
<
/el-form-item
>
<
/el-col
>
<
/el-col
>
<
el
-
col
:
span
=
"
12
"
>
<
el
-
col
:
span
=
"
12
"
>
<
el
-
form
-
item
:
label
=
"
$t('清关费')
"
>
<
el
-
form
-
item
:
label
=
"
$t('清关费')
"
>
{{
form
.
orgClearanceFreight
}}
{{
curren
tMap
[
form
.
orgClearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgC
learanceFreightVolume
]
}}
{{
form
.
orgClearanceFreight
}}
{{
curren
cyMap
[
form
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
c
learanceFreightVolume
]
}}
<
/el-form-item
>
<
/el-form-item
>
<
/el-col
>
<
/el-col
>
<
/el-row
>
<
/el-row
>
<
el
-
form
-
item
:
label
=
"
$t('全包价')
"
v
-
if
=
"
form.charging
"
>
<
el
-
form
-
item
:
label
=
"
$t('全包价')
"
v
-
if
=
"
form.charging
"
>
{{
form
.
orgSeaFreight
}}
{{
curren
tMap
[
form
.
orgSeaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgS
eaFreightVolume
]
}}
{{
form
.
orgSeaFreight
}}
{{
curren
cyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
s
eaFreightVolume
]
}}
<
/el-form-item
>
<
/el-form-item
>
<
el
-
form
-
item
:
label
=
"
$t('佣金类型')
"
prop
=
"
commissionType
"
>
<
el
-
form
-
item
:
label
=
"
$t('佣金类型')
"
prop
=
"
commissionType
"
>
<
dict
-
selector
:
type
=
"
DICT_TYPE.COMMISSION_TYPE
"
v
-
model
=
"
form.commissionType
"
form
-
type
=
"
radio
"
/>
<
dict
-
selector
:
type
=
"
DICT_TYPE.COMMISSION_TYPE
"
v
-
model
=
"
form.commissionType
"
form
-
type
=
"
radio
"
/>
...
@@ -37,36 +37,37 @@
...
@@ -37,36 +37,37 @@
<!--
明佣或者明佣
+
暗佣才显示
-->
<!--
明佣或者明佣
+
暗佣才显示
-->
<
el
-
form
-
item
label
=
"
明佣佣金
"
v
-
if
=
"
form.commissionType == 1 || form.commissionType == 3
"
>
<
el
-
form
-
item
label
=
"
明佣佣金
"
v
-
if
=
"
form.commissionType == 1 || form.commissionType == 3
"
>
<
el
-
input
v
-
model
.
number
=
"
form.lightCommissionAmount
"
placeholder
=
""
class
=
"
w-100
"
><
/el-input
>
<
el
-
input
v
-
model
.
number
=
"
form.lightCommissionAmount
"
placeholder
=
""
class
=
"
w-100
"
><
/el-input
>
{{
curren
tMap
[
form
.
orgSeaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgS
eaFreightVolume
]
}}
{{
curren
cyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
s
eaFreightVolume
]
}}
<
/el-form-item
>
<
/el-form-item
>
<!--
明佣
+
暗佣才显示
-->
<!--
明佣
+
暗佣才显示
-->
<
el
-
form
-
item
label
=
"
暗佣佣金
"
v
-
if
=
"
form.commissionType == 3
"
>
<
el
-
form
-
item
label
=
"
暗佣佣金
"
v
-
if
=
"
form.commissionType == 3
"
>
<
el
-
input
v
-
model
.
number
=
"
form.shadeCommissionAmount
"
placeholder
=
""
class
=
"
w-100
"
><
/el-input
>
<
el
-
input
v
-
model
.
number
=
"
form.shadeCommissionAmount
"
placeholder
=
""
class
=
"
w-100
"
><
/el-input
>
{{
curren
tMap
[
form
.
orgSeaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgS
eaFreightVolume
]
}}
{{
curren
cyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
s
eaFreightVolume
]
}}
<
/el-form-item
>
<
/el-form-item
>
<!--
无佣金不显示
-->
<!--
无佣金不显示
-->
<
div
class
=
"
pl-50
"
v
-
if
=
"
form.commissionType != 0
"
>
<
div
class
=
"
pl-50
"
v
-
if
=
"
form.commissionType != 0
"
>
<
div
>
{{
$l
(
form
,
'
prodTitle
'
)
}}
<
/div
>
<
div
v
-
if
=
"
form.commissionType != 2
"
>
{{
$l
(
form
,
'
prodTitle
'
)
}}
<
/div
>
<!--
明佣
+
暗佣显示
-->
<!--
明佣
+
暗佣显示
-->
<
div
v
-
if
=
"
form.commissionType == 3
"
>
<
div
v
-
if
=
"
form.commissionType == 3
"
>
成本价:
{{
form
.
orgSeaFreight
}}
{{
currentMap
[
form
.
orgSeaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgS
eaFreightVolume
]
}}
{{
$t
(
'
成本价
'
)
}}
:
{{
form
.
orgSeaFreight
}}
{{
currencyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
s
eaFreightVolume
]
}}
<
/div
>
<
/div
>
<!--
暗佣显示
-->
<!--
暗佣显示
-->
<
div
v
-
if
=
"
form.commissionType == 2
"
>
<
div
v
-
if
=
"
form.commissionType == 2
"
>
{{
$l
(
form
,
'
prodTitle
'
)
}}
{{
$l
(
form
,
'
prodTitle
'
)
}}
<
template
v
-
if
=
"
darkCommission
"
>
<
template
v
-
if
=
"
darkCommission
"
>
{{
$t
(
'
暗佣
'
)
}}
:
{{
darkCommission
}}
{{
curren
tMap
[
form
.
orgSeaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgS
eaFreightVolume
]
}}
{{
$t
(
'
暗佣
'
)
}}
:
{{
darkCommission
}}
{{
curren
cyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
s
eaFreightVolume
]
}}
<
/template
>
<
/template
>
<
el
-
link
type
=
"
primary
"
@
click
.
native
=
"
$router.push('/customer/customerCommission?customerId=' + customerId)
"
>
去设置
<
/el-link
>
<
el
-
link
type
=
"
primary
"
@
click
.
native
=
"
$router.push('/customer/customerCommission?customerId=' + customerId)
"
>
去设置
<
/el-link
>
<
/div
>
<
/div
>
<
div
v
-
if
=
"
form.commissionType == 1 || form.commissionType == 3
"
>
销售价:
{{
form
.
orgSeaFreight
+
form
.
shadeCommissionAmount
+
form
.
lightCommissionAmount
}}
{{
currentMap
[
form
.
orgSeaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgS
eaFreightVolume
]
}}
<
/div
>
<
div
v
-
if
=
"
form.commissionType == 1 || form.commissionType == 3
"
>
{{
$t
(
'
销售价
'
)
}}
:
{{
form
.
orgSeaFreight
+
form
.
shadeCommissionAmount
+
form
.
lightCommissionAmount
}}
{{
currencyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
s
eaFreightVolume
]
}}
<
/div
>
<
div
v
-
if
=
"
form.commissionType == 3
"
>
实际佣金返点:
{{
form
.
shadeCommissionAmount
+
form
.
lightCommissionAmount
}}
{{
currentMap
[
form
.
orgSeaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgS
eaFreightVolume
]
}}
<
/div
>
<
div
v
-
if
=
"
form.commissionType == 3
"
>
{{
$t
(
'
实际佣金返点
'
)
}}
:
{{
form
.
shadeCommissionAmount
+
form
.
lightCommissionAmount
}}
{{
currencyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
s
eaFreightVolume
]
}}
<
/div
>
<
/div
>
<
/div
>
<
div
class
=
"
page-title
"
>
审批流程
<
/div
>
<
div
class
=
"
page-title
"
>
{{
$t
(
'
审批流程
'
)
}}
<
/div
>
<
work
-
flow
xmlkey
=
"
sheet_sale
"
v
-
model
=
"
ccIdArr
"
/>
<
work
-
flow
xmlkey
=
"
sheet_sale
"
v
-
model
=
"
ccIdArr
"
/>
<
/el-form
>
<
/el-form
>
...
@@ -139,7 +140,7 @@ export default {
...
@@ -139,7 +140,7 @@ export default {
return
s
?
'
【
'
+
s
+
'
】
'
:
''
return
s
?
'
【
'
+
s
+
'
】
'
:
''
}
}
}
,
}
,
curren
t
Map
(){
curren
cy
Map
(){
let
map
=
{
}
let
map
=
{
}
this
.
currencyList
.
forEach
(
item
=>
{
this
.
currencyList
.
forEach
(
item
=>
{
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
...
...
src/views/ecw/offer/components/SpecialDetail.vue
View file @
adaf7141
...
@@ -25,35 +25,40 @@
...
@@ -25,35 +25,40 @@
<
/div
>
<
/div
>
<
div
>
<
div
>
原运费:
{{
form
.
seaFreight
+
curren
t
Map
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
原运费:
{{
form
.
seaFreight
+
curren
cy
Map
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
<
/div
>
<
/div
>
<
div
>
<
div
>
新运费:
{{
newSeaFreight
+
curren
t
Map
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
新运费:
{{
newSeaFreight
+
curren
cy
Map
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
<
/div
>
<
/div
>
<
div
>
<
div
>
成本价:
{{
form
.
orgSeaFreight
+
curren
t
Map
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
成本价:
{{
form
.
orgSeaFreight
+
curren
cy
Map
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
<
/div
>
<
/div
>
<
div
>
<
div
>
明佣:
{{
form
.
lightCommissionAmount
+
curren
t
Map
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
明佣:
{{
form
.
lightCommissionAmount
+
curren
cy
Map
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
<
/div
>
<
/div
>
<
div
>
<
div
>
暗佣:
{{
form
.
shadeCommissionAmount
+
curren
t
Map
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
暗佣:
{{
form
.
shadeCommissionAmount
+
curren
cy
Map
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
<
/div
>
<
/div
>
<
/el-descriptions-item
>
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
申请原因
"
:
span
=
"
3
"
v
-
if
=
"
type == 1
"
>
<
el
-
descriptions
-
item
label
=
"
申请原因
"
:
span
=
"
3
"
v
-
if
=
"
type == 1
"
>
<
div
class
=
"
item
"
>
<
div
class
=
"
item
"
>
商品:
{{
$l
(
form
,
'
prodTitle
'
)
}}
商品:
{{
$l
(
form
,
'
prodTitle
'
)
}}
<
/div
>
<
/div
>
<
template
v
-
if
=
"
form.charging
"
>
<
div
>
原全包价:
{{
form
.
orgSeaFreight
}}
{{
currencyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
,
原运费:
{{
form
.
orgSeaFreight
+
currentMap
[
form
.
seaFreight
]
+
'
/
'
+
unitMap
[
form
.
seaFreight
]
}}
,
新全包价:
{{
form
.
seaFreight
}}
{{
currencyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
原清关费:
{{
form
.
orgClearanceFreight
+
currentMap
[
form
.
clearanceFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
clearanceFreightVolume
]
}}
<
/template
>
<
/div
>
<
template
v
-
else
>
<
div
>
<
div
>
新运费:
{{
seaFreight
+
currentMap
[
form
.
orgSeaFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
orgSeaFreightVolume
]
}}
,
原运费:
{{
form
.
orgSeaFreight
}}
{{
currencyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
,
新清关费:
{{
form
.
clearanceFreight
+
currentMap
[
form
.
clearanceFreightCurrency
]
+
'
/
'
+
unitMap
[
form
.
clearanceFreightVolume
]
}}
原清关费:
{{
form
.
orgClearanceFreight
}}
{{
currencyMap
[
form
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
clearanceFreightVolume
]
}}
<
/div
>
<
/div
>
<
div
>
新运费:
{{
form
.
seaFreight
}}
{{
currencyMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
,
新清关费:
{{
form
.
clearanceFreight
}}
{{
currencyMap
[
form
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
clearanceFreightVolume
]
}}
<
/div
>
<
/template
>
<
/el-descriptions-item
>
<
/el-descriptions-item
>
<!--
<!--
...
@@ -71,10 +76,10 @@
...
@@ -71,10 +76,10 @@
<
el
-
descriptions
-
item
label
=
"
是否预付
"
>
<
el
-
descriptions
-
item
label
=
"
是否预付
"
>
<
dict
-
tag
:
type
=
"
DICT_TYPE.ECW_PAY_ADVANCE
"
:
value
=
"
form.isPayAdvance
"
/>
<
dict
-
tag
:
type
=
"
DICT_TYPE.ECW_PAY_ADVANCE
"
:
value
=
"
form.isPayAdvance
"
/>
<
/el-descriptions-item> --
>
<
/el-descriptions-item> --
>
<!--
<
el
-
descriptions
-
item
label
=
"
旧运费
"
>
{{
form
.
orgSeaFreight
}}
{{
curren
t
Map
[
form
.
orgSeaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgSeaFreightVolume
]
}}
<
/el-descriptions-item
>
<!--
<
el
-
descriptions
-
item
label
=
"
旧运费
"
>
{{
form
.
orgSeaFreight
}}
{{
curren
cy
Map
[
form
.
orgSeaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgSeaFreightVolume
]
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
旧清关费
"
>
{{
form
.
orgClearanceFreight
}}
{{
curren
t
Map
[
form
.
orgClearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgClearanceFreightVolume
]
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
旧清关费
"
>
{{
form
.
orgClearanceFreight
}}
{{
curren
cy
Map
[
form
.
orgClearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgClearanceFreightVolume
]
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
新运费
"
>
{{
form
.
seaFreight
}}
{{
curren
t
Map
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
新运费
"
>
{{
form
.
seaFreight
}}
{{
curren
cy
Map
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
新清关费
"
>
{{
form
.
clearanceFreight
}}
{{
curren
t
Map
[
form
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
clearanceFreightVolume
]
}}
<
/el-descriptions-item> --
>
<
el
-
descriptions
-
item
label
=
"
新清关费
"
>
{{
form
.
clearanceFreight
}}
{{
curren
cy
Map
[
form
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
clearanceFreightVolume
]
}}
<
/el-descriptions-item> --
>
<
/el-descriptions
>
<
/el-descriptions
>
<
/template
>
<
/template
>
...
@@ -112,7 +117,7 @@ export default {
...
@@ -112,7 +117,7 @@ export default {
}
}
}
,
}
,
computed
:
{
computed
:
{
curren
t
Map
(){
curren
cy
Map
(){
let
map
=
{
}
let
map
=
{
}
this
.
currencyList
.
forEach
(
item
=>
{
this
.
currencyList
.
forEach
(
item
=>
{
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
...
...
src/views/ecw/offer/components/SpecialDiscount.vue
View file @
adaf7141
...
@@ -49,7 +49,7 @@
...
@@ -49,7 +49,7 @@
<
/el-form-item
>
<
/el-form-item
>
<
el
-
form
-
item
:
label
=
"
$t('新全包价')
"
style
=
"
width: 400px
"
prop
=
"
clearanceFreight
"
v
-
if
=
"
form.charging
"
>
<
el
-
form
-
item
:
label
=
"
$t('新全包价')
"
style
=
"
width: 400px
"
prop
=
"
clearanceFreight
"
v
-
if
=
"
form.charging
"
>
<
el
-
input
v
-
model
=
"
form.seaFreight
"
type
=
"
number
"
class
=
"
w-100
"
/>
<
el
-
input
v
-
model
=
"
form.seaFreight
"
type
=
"
number
"
class
=
"
w-100
"
/>
{{
currentMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
s
orgS
eaFreightVolume
]
}}
{{
currentMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
<
/el-form-item
>
<
/el-form-item
>
<
/el-form
>
<
/el-form
>
...
...
src/views/ecw/offer/detail.vue
View file @
adaf7141
...
@@ -120,12 +120,20 @@
...
@@ -120,12 +120,20 @@
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('运费')"
width=
"200px"
>
<el-table-column
:label=
"$t('运费')"
width=
"200px"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"{row}"
>
<div
v-if=
"scope.row.seaFreight"
>
<template
v-if=
"row.charging ==1"
>
<div>
{{
$t
(
'
运费
'
)
+
"
:
"
+
scope
.
row
.
seaFreight
}}{{
currentcyMap
[
scope
.
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
scope
.
row
.
seaFreightVolume
]
}}
</div>
<template
v-if=
"!row.seaFreight"
>
未报价
</
template
>
<div>
{{
$t
(
'
清关费
'
)
+
'
:
'
+
scope
.
row
.
clearanceFreight
}}{{
currentcyMap
[
scope
.
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
scope
.
row
.
clearanceFreightVolume
]
}}
</div>
<
template
>
{{
$t
(
'
全包价
'
)
}}
{{
row
.
oneSeaFreight
}}
{{
currentcyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
</
template
>
</div>
</template>
<div
v-else
>
未报价
</div>
<
template
v-else-if=
"!row.seaFreight && !row.clearanceFreight"
>
未报价
</
template
>
<
template
v-else
>
<div>
{{
$t
(
'
运费
'
)
}}
:
{{
row
.
oneSeaFreight
}}
{{
currentcyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
</div>
<div>
{{
$t
(
'
清关费
'
)
}}
:
{{
row
.
oneClearanceFreight
}}
{{
currentcyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
</div>
</
template
>
</template>
</template>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
...
src/views/ecw/offer/edit.vue
View file @
adaf7141
...
@@ -532,6 +532,17 @@ export default {
...
@@ -532,6 +532,17 @@ export default {
},
},
// 表单校验
// 表单校验
rules
:
{
rules
:
{
marks
:
[
{
validator
:
(
rule
,
value
,
callback
)
=>
{
if
(
value
&&
!
/
[
a-zA-Z
]
/
.
test
(
value
.
charAt
(
0
))){
return
callback
(
new
Error
(
this
.
$t
(
'
唛头必须以字母开头
'
)))
}
callback
()
},
trigger
:
'
blur
'
}
],
lineId
:
[{
required
:
true
,
message
:
"
请选择线路
"
}],
lineId
:
[{
required
:
true
,
message
:
"
请选择线路
"
}],
consignorId
:
[{
required
:
true
,
message
:
"
发货人不能为空
"
,}],
consignorId
:
[{
required
:
true
,
message
:
"
发货人不能为空
"
,}],
consigneeId
:
[{
required
:
true
,
message
:
"
收货人不能为空
"
}],
consigneeId
:
[{
required
:
true
,
message
:
"
收货人不能为空
"
}],
...
...
src/views/ecw/offer/special.vue
View file @
adaf7141
...
@@ -47,25 +47,43 @@
...
@@ -47,25 +47,43 @@
<el-table-column
<el-table-column
:label=
"$t('原价')"
>
:label=
"$t('原价')"
>
<
template
v-slot=
"{row}"
>
<
template
v-slot=
"{row}"
>
{{
$t
(
'
运费
'
)
}}
:
{{
row
.
originalSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<template
v-if=
"!row.originalSeaFreight"
>
未报价
</
template
>
<br>
<
template
v-else-if=
"row.charging ==1"
>
{{
$t
(
'
清关费
'
)
}}
:
{{
row
.
oneClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
{{
$t
(
'
全包价
'
)
}}
:
{{
row
.
originalSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
</
template
>
<
template
v-else
>
{{
$t
(
'
运费
'
)
}}
:
{{
row
.
originalSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<br>
{{
$t
(
'
清关费
'
)
}}
:
{{
row
.
originalClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
</
template
>
</template>
</template>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
label=
"成本价"
>
label=
"成本价"
>
<
template
v-slot=
"{row}"
>
<
template
v-slot=
"{row}"
>
{{
$t
(
'
运费
'
)
}}
:
{{
row
.
seaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<template
v-if=
"!row.costSeaFreight"
>
未报价
</
template
>
<br>
<
template
v-else-if=
"row.charging"
>
{{
$t
(
'
清关费
'
)
}}
:
{{
row
.
oneClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
{{
$t
(
'
全包价
'
)
}}
:
{{
row
.
costSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
</
template
>
<
template
v-else
>
{{
$t
(
'
运费
'
)
}}
:
{{
row
.
costSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<br>
{{
$t
(
'
清关费
'
)
}}
:
{{
row
.
oneClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
</
template
>
</template>
</template>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
:label=
"$t('销售价')"
>
:label=
"$t('销售价')"
>
<
template
v-slot=
"{row}"
>
<
template
v-slot=
"{row}"
>
{{
$t
(
'
运费
'
)
}}
:
{{
row
.
saleSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<template
v-if=
"!row.oneSeaFreight"
>
未报价
</
template
>
<br>
<
template
v-else-if=
"row.charging"
>
{{
$t
(
'
清关费
'
)
}}
:
{{
row
.
oneClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
{{
$t
(
'
全包价
'
)
}}
:
{{
row
.
oneSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
</
template
>
<
template
v-else
>
{{
$t
(
'
运费
'
)
}}
:
{{
row
.
oneSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<br>
{{
$t
(
'
清关费
'
)
}}
:
{{
row
.
oneClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
</
template
>
</template>
</template>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
...
@@ -77,7 +95,7 @@
...
@@ -77,7 +95,7 @@
</el-table-column>
</el-table-column>
</el-table>
</el-table>
<!-- <div style="text-align: center;margin-top: 80px">
<!-- <div style="text-align: center;margin-top: 80px">
<el-button type="primary">申请重货优惠</el-button>
<el-button type="primary">申请重货优惠</el-button>
<el-button type="primary">申请泡货优惠</el-button>
<el-button type="primary">申请泡货优惠</el-button>
...
...
src/views/ecw/order/cargoControlDetail.vue
View file @
adaf7141
...
@@ -62,7 +62,7 @@
...
@@ -62,7 +62,7 @@
<el-table-column
:label=
"$t('操作')"
width=
"300px"
>
<el-table-column
:label=
"$t('操作')"
width=
"300px"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
v-if=
"scope.row.status == 1"
type=
"primary"
size=
"mini"
@
click=
"editIndex=scope.$index"
>
{{
$t
(
'
修改
'
)
}}
</el-button>
<el-button
v-if=
"scope.row.status == 1"
type=
"primary"
size=
"mini"
@
click=
"editIndex=scope.$index"
>
{{
$t
(
'
修改
'
)
}}
</el-button>
<el-button
v-if=
"scope.row.status == 1"
type=
"danger"
size=
"mini"
@
click=
"cancel
(scope.row.id)
"
>
{{
$t
(
'
取消
'
)
}}
</el-button>
<el-button
v-if=
"scope.row.status == 1"
type=
"danger"
size=
"mini"
@
click=
"cancel
CargoPickId = scope.row.id
"
>
{{
$t
(
'
取消
'
)
}}
</el-button>
<el-button
v-if=
"scope.row.status == 1"
type=
"success"
size=
"mini"
@
click=
"review(scope.row.id)"
>
{{
$t
(
'
放货复核
'
)
}}
</el-button>
<el-button
v-if=
"scope.row.status == 1"
type=
"success"
size=
"mini"
@
click=
"review(scope.row.id)"
>
{{
$t
(
'
放货复核
'
)
}}
</el-button>
<el-button
v-if=
"scope.row.status == 3"
type=
"danger"
size=
"mini"
@
click=
"fallbackIndex=scope.$index"
>
{{
$t
(
'
反复核
'
)
}}
</el-button>
<el-button
v-if=
"scope.row.status == 3"
type=
"danger"
size=
"mini"
@
click=
"fallbackIndex=scope.$index"
>
{{
$t
(
'
反复核
'
)
}}
</el-button>
<el-button
v-if=
"scope.row.status == 3"
type=
"success"
size=
"mini"
@
click=
"cargoControlPickId=scope.row.id"
>
{{
$t
(
'
调货
'
)
}}
</el-button>
<el-button
v-if=
"scope.row.status == 3"
type=
"success"
size=
"mini"
@
click=
"cargoControlPickId=scope.row.id"
>
{{
$t
(
'
调货
'
)
}}
</el-button>
...
@@ -106,11 +106,16 @@
...
@@ -106,11 +106,16 @@
<fallback
v-if=
"fallbackIndex !== null"
:order=
"detail"
:index=
"fallbackIndex"
@
close=
"fallbackIndex=null"
@
success=
"onFallbackSuccess"
/>
<fallback
v-if=
"fallbackIndex !== null"
:order=
"detail"
:index=
"fallbackIndex"
@
close=
"fallbackIndex=null"
@
success=
"onFallbackSuccess"
/>
<edit
v-if=
"editIndex !== null"
@
close=
"editIndex=null"
:order=
"detail"
:index=
"editIndex"
@
success=
"onEditSuccess"
/>
<edit
v-if=
"editIndex !== null"
@
close=
"editIndex=null"
:order=
"detail"
:index=
"editIndex"
@
success=
"onEditSuccess"
/>
<transfer-cargo
<transfer-cargo
v-if=
"cargoControlPickId !== null"
v-if=
"cargoControlPickId !== null"
:order-id=
"detail.orderId"
:order-id=
"detail.orderId"
:cargo-control-pick-id=
"cargoControlPickId"
:cargo-control-pick-id=
"cargoControlPickId"
@
close=
"cargoControlPickId=null"
@
close=
"cargoControlPickId=null"
@
success=
"onTransferCargoSuccess"
/>
@
success=
"onTransferCargoSuccess"
/>
<cancel-cargo
v-if=
"!!cancelCargoPickId"
:order=
"detail"
:cargo-control-pick-id=
"cancelCargoPickId"
@
close=
"cancelCargoPickId=null"
@
success=
"onCancelCargoSuccess"
/>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
...
@@ -119,10 +124,11 @@ import {createPick, getPickRleaseInfo, review, cancel, cancelApproval} from '@/a
...
@@ -119,10 +124,11 @@ import {createPick, getPickRleaseInfo, review, cancel, cancelApproval} from '@/a
import
{
parseTime
}
from
'
@/utils/ruoyi
'
import
{
parseTime
}
from
'
@/utils/ruoyi
'
import
Fallback
from
'
./components/Fallback
'
import
Fallback
from
'
./components/Fallback
'
import
TransferCargo
from
'
@/views/ecw/order/components/TransferCargo
'
import
TransferCargo
from
'
@/views/ecw/order/components/TransferCargo
'
import
CancelCargo
from
'
./components/CancelCargo.vue
'
export
default
{
export
default
{
filters
:
{
parseTime
},
filters
:
{
parseTime
},
components
:
{
edit
,
Fallback
,
TransferCargo
},
components
:
{
edit
,
Fallback
,
TransferCargo
,
CancelCargo
,
CancelCargo
},
data
(){
data
(){
return
{
return
{
detail
:
null
,
detail
:
null
,
...
@@ -131,6 +137,7 @@ export default {
...
@@ -131,6 +137,7 @@ export default {
editIndex
:
null
,
// 修改索引
editIndex
:
null
,
// 修改索引
fallbackIndex
:
null
,
// 反复核索引
fallbackIndex
:
null
,
// 反复核索引
cargoControlPickId
:
null
,
// 调货ID
cargoControlPickId
:
null
,
// 调货ID
cancelCargoPickId
:
null
,
// 取消返货ID
}
}
},
},
created
(){
created
(){
...
@@ -205,6 +212,10 @@ export default {
...
@@ -205,6 +212,10 @@ export default {
onTransferCargoSuccess
(){
onTransferCargoSuccess
(){
this
.
cargoControlPickId
=
null
this
.
cargoControlPickId
=
null
this
.
loadData
()
this
.
loadData
()
},
onCancelCargoSuccess
(){
this
.
cancelCargoPickId
=
null
this
.
loadData
()
}
}
}
}
}
}
...
...
src/views/ecw/order/components/CancelCargo.vue
View file @
adaf7141
...
@@ -8,12 +8,12 @@
...
@@ -8,12 +8,12 @@
<el-row>
<el-row>
<el-col
:span=
"12"
>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('收货人')"
>
<el-form-item
:label=
"$t('收货人')"
>
{{
info
.
consigneeName
}}
{{
detail
.
consigneeName
}}
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"12"
>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('收货人电话')"
>
<el-form-item
:label=
"$t('收货人电话')"
>
+
{{
info
.
consigneeCountryCode
}}
{{
info
.
consigneePhone
}}
+
{{
detail
.
consigneeCountryCode
}}
{{
detail
.
consigneePhone
}}
</el-form-item>
</el-form-item>
</el-col>
</el-col>
</el-row>
</el-row>
...
@@ -21,16 +21,16 @@
...
@@ -21,16 +21,16 @@
{{
order
.
sumNum
}}
{{
order
.
sumNum
}}
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('取消放货原因')"
>
<el-form-item
:label=
"$t('取消放货原因')"
prop=
"cancelPickType"
>
<dict-selector
:type=
"DICT_TYPE.ECW_CANCEL_PICK_TYPE"
v-model=
"formData.cancelPickType"
form-type=
"radio"
/>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('上传凭证')"
>
<el-form-item
:label=
"$t('上传凭证')"
>
<image-upload
v-model=
"formData.voucher"
/>
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('控货手机号')"
>
<el-form-item
:label=
"$t('控货手机号')"
>
+
{{
info
.
countryCode
}}
{{
info
.
phone
}}
+
{{
detail
.
countryCode
}}
{{
detail
.
phone
}}
</el-form-item>
</el-form-item>
<el-form-item
:label=
"$t('手机验证码')"
>
<el-form-item
:label=
"$t('手机验证码')"
>
<el-input
v-model=
"formData.code"
placeholder=
""
style=
"width: 100px; margin-right:10px"
></el-input>
<el-input
v-model=
"formData.code"
placeholder=
""
style=
"width: 100px; margin-right:10px"
></el-input>
...
@@ -44,11 +44,6 @@
...
@@ -44,11 +44,6 @@
<el-button
type=
"primary"
@
click=
"submit"
>
{{
$t
(
'
提交申请
'
)
}}
</el-button>
<el-button
type=
"primary"
@
click=
"submit"
>
{{
$t
(
'
提交申请
'
)
}}
</el-button>
<el-button
@
click=
"closeDialog"
>
{{
$t
(
'
关闭
'
)
}}
</el-button>
<el-button
@
click=
"closeDialog"
>
{{
$t
(
'
关闭
'
)
}}
</el-button>
</el-form-item>
</el-form-item>
<el-form-item
label=
""
style=
"margin-top:20px"
>
<el-button
type=
"success"
@
click=
"submit"
>
{{
$t
(
'
提交申请
'
)
}}
</el-button>
<el-button
type=
"default"
@
click=
"closeDialog"
>
{{
$t
(
'
关闭
'
)
}}
</el-button>
</el-form-item>
</el-form>
</el-form>
</el-dialog>
</el-dialog>
</
template
>
</
template
>
...
@@ -57,33 +52,29 @@ import {createPick, getRleaseInfo, seasoningCondimentsSelect, updateApply} from
...
@@ -57,33 +52,29 @@ import {createPick, getRleaseInfo, seasoningCondimentsSelect, updateApply} from
import
AreaCodeSelector
from
'
@/components/AreaCodeSelector
'
import
AreaCodeSelector
from
'
@/components/AreaCodeSelector
'
import
SendSmsCode
from
'
@/views/ecw/order/components/SendSmsCode
'
import
SendSmsCode
from
'
@/views/ecw/order/components/SendSmsCode
'
import
WorkFlow
from
'
@/components/WorkFlow
'
import
WorkFlow
from
'
@/components/WorkFlow
'
import
ImageUpload
from
'
@/components/ImageUpload
'
export
default
{
export
default
{
props
:{
props
:{
order
Id
:
[
String
,
Number
]
,
order
:
Object
,
cargoControlPickId
:
Number
cargoControlPickId
:
Number
},
},
components
:
{
AreaCodeSelector
,
SendSmsCode
,
WorkFlow
},
components
:
{
AreaCodeSelector
,
SendSmsCode
,
WorkFlow
,
ImageUpload
},
data
(){
data
(){
return
{
return
{
show
:
false
,
show
:
false
,
detail
:
null
,
detail
:
null
,
ccIdArr
:
[],
ccIdArr
:
[],
formData
:{
formData
:{
applyType
:
10
,
//
调货
审核
applyType
:
10
,
//
取消
审核
ccIds
:
''
ccIds
:
''
},
},
rules
:{
rules
:{
cancelPickType
:
{
required
:
true
,
message
:
this
.
$t
(
'
请选择取消放货类型
'
)},
code
:
{
required
:
true
,
message
:
this
.
$t
(
'
请填写验证码
'
)}
code
:
{
required
:
true
,
message
:
this
.
$t
(
'
请填写验证码
'
)}
},
},
orders
:
[],
selectedOrders
:[]
}
}
},
},
watch
:{
watch
:{
'
formData.orderIds
'
(
val
){
this
.
selectedOrders
=
this
.
orders
.
filter
(
item
=>
val
.
indexOf
(
item
.
orderId
)
>
-
1
)
},
ccIdArr
(
val
){
ccIdArr
(
val
){
this
.
formData
.
ccIds
=
val
.
join
(
'
,
'
)
this
.
formData
.
ccIds
=
val
.
join
(
'
,
'
)
}
}
...
@@ -94,10 +85,7 @@ export default {
...
@@ -94,10 +85,7 @@ export default {
},
},
methods
:{
methods
:{
loadData
(){
loadData
(){
getRleaseInfo
(
this
.
orderId
).
then
(
res
=>
this
.
detail
=
res
.
data
)
getRleaseInfo
(
this
.
order
.
orderId
).
then
(
res
=>
this
.
detail
=
res
.
data
)
seasoningCondimentsSelect
({
orderId
:
this
.
orderId
}).
then
(
res
=>
{
this
.
orders
=
res
.
data
})
},
},
closeDialog
(){
closeDialog
(){
this
.
show
=
false
this
.
show
=
false
...
@@ -112,15 +100,13 @@ export default {
...
@@ -112,15 +100,13 @@ export default {
updateApply
(
Object
.
assign
({
updateApply
(
Object
.
assign
({
cargoControlPickId
:
this
.
cargoControlPickId
,
cargoControlPickId
:
this
.
cargoControlPickId
,
orderBackPageVOList
:
this
.
selectedOrders
,
orderBackPageVOList
:
this
.
selectedOrders
,
orderId
:
this
.
orderId
orderId
:
this
.
order
.
order
Id
},
this
.
formData
)).
then
(
res
=>
{
},
this
.
formData
)).
then
(
res
=>
{
this
.
$message
.
success
(
this
.
$t
(
'
操作成功
'
))
this
.
$message
.
success
(
this
.
$t
(
'
操作成功
'
))
this
.
show
=
false
this
.
show
=
false
this
.
$emit
(
'
success
'
)
this
.
$emit
(
'
success
'
)
})
})
})
})
}
}
}
}
}
}
...
...
src/views/ecw/order/components/CargoControlDetail.vue
View file @
adaf7141
...
@@ -33,7 +33,7 @@
...
@@ -33,7 +33,7 @@
<!-- 取消放货 -->
<!-- 取消放货 -->
<el-descriptions-item
label=
"申请原因"
v-if=
"applyType == 10"
>
<el-descriptions-item
label=
"申请原因"
v-if=
"applyType == 10"
>
{{
detail
.
reason
}}
<dict-tag
:type=
"DICT_TYPE.ECW_CANCEL_PICK_TYPE"
:value=
"detail.cancelPickType"
/>
</el-descriptions-item>
</el-descriptions-item>
</el-descriptions>
</el-descriptions>
...
...
src/views/ecw/order/components/PrintLadingBill.vue
View file @
adaf7141
...
@@ -16,13 +16,15 @@ import {getLadingBill} from '@/api/ecw/order'
...
@@ -16,13 +16,15 @@ import {getLadingBill} from '@/api/ecw/order'
import
lodop
from
'
@/utils/lodop
'
import
lodop
from
'
@/utils/lodop
'
import
PdfViewer
from
'
@/components/PdfViewer
'
import
PdfViewer
from
'
@/components/PdfViewer
'
import
FileSaver
from
'
file-saver
'
import
FileSaver
from
'
file-saver
'
import
{
downloadByOrderId
}
from
'
@/api/ecw/box
'
export
default
{
export
default
{
components
:
{
PdfViewer
},
components
:
{
PdfViewer
},
filters
:
{
parseTime
},
filters
:
{
parseTime
},
props
:{
props
:{
transportType
:
Number
,
transportType
:
Number
,
tidanNO
:
[
String
,
Number
]
// tidanNO: [String, Number],
orderId
:
String
},
},
data
(){
data
(){
return
{
return
{
...
@@ -56,10 +58,7 @@ export default {
...
@@ -56,10 +58,7 @@ export default {
methods
:{
methods
:{
loadData
(){
loadData
(){
this
.
loading
=
true
this
.
loading
=
true
getLadingBill
({
downloadByOrderId
(
this
.
orderId
)
billLadingNo
:
this
.
tidanNo
,
type
:
this
.
type
})
.
then
(
arrayBuffer
=>
{
.
then
(
arrayBuffer
=>
{
this
.
pdfData
=
arrayBuffer
this
.
pdfData
=
arrayBuffer
})
})
...
...
src/views/ecw/order/components/SpecialDiscount.vue
0 → 100644
View file @
adaf7141
<
template
>
<el-dialog
visible
:close-on-click-modal=
"false"
:before-close=
"closeDialog"
:title=
"$t('优惠申请')"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"80px"
:rules=
"rules"
>
<el-form-item
:label=
"$t('商品类型')"
>
<span>
{{
$l
(
productType
,
'
title
'
)
}}
</span>
</el-form-item>
<el-form-item
:label=
"$t('商品名称')"
>
<span>
{{
form
.
prodTitleZh
}}
</span>
</el-form-item>
<el-form-item
:label=
"$t('英文名称')"
>
<span>
{{
form
.
prodTitleEn
}}
</span>
</el-form-item>
<el-form-item
:label=
"$t('线路')"
>
【
<dict-tag
:type=
"DICT_TYPE.TRANSPORT_TYPE"
:value=
"form.transportId"
/>
】
{{
channel
?
$l
(
channel
,
'
title
'
)
:
''
}}
{{
$t
(
"
从【{departureName
}
】发往【{objectiveName
}
】
"
,
{
departureName
:
form
.
departureName
,
objectiveName
:
form
.
objectiveName
}
)
}}
<
/el-form-item
>
<
el
-
form
-
item
:
label
=
"
$t('是否预付')
"
>
<
dict
-
tag
:
type
=
"
DICT_TYPE.ECW_YESNO
"
:
value
=
"
form.isPayAdvance
"
/>
<
/el-form-item
>
<
el
-
row
v
-
if
=
"
!form.charging
"
>
<
el
-
col
:
span
=
"
12
"
>
<
el
-
form
-
item
:
label
=
"
$t('旧运费')
"
>
{{
form
.
orgSeaFreight
}}
{{
currentMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
<
/el-form-item
>
<
/el-col
>
<
el
-
col
:
span
=
"
12
"
>
<
el
-
form
-
item
:
label
=
"
$t('旧清关费')
"
>
{{
form
.
orgClearanceFreight
}}
{{
currentMap
[
form
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
clearanceFreightVolume
]
}}
<
/el-form-item
>
<
/el-col
>
<
/el-row
>
<
el
-
row
v
-
if
=
"
!form.charging
"
>
<
el
-
col
:
span
=
"
12
"
>
<
el
-
form
-
item
:
label
=
"
$t('新运费')
"
style
=
"
width: 400px
"
prop
=
"
seaFreight
"
>
<
el
-
input
v
-
model
=
"
form.seaFreight
"
type
=
"
number
"
class
=
"
w-100
"
/>
{{
currentMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
<
/el-form-item
>
<
/el-col
>
<
el
-
col
:
span
=
"
12
"
>
<
el
-
form
-
item
:
label
=
"
$t('新清关费')
"
style
=
"
width: 400px
"
prop
=
"
clearanceFreight
"
>
<
el
-
input
v
-
model
=
"
form.clearanceFreight
"
type
=
"
number
"
class
=
"
w-100
"
/>
{{
currentMap
[
form
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
clearanceFreightVolume
]
}}
<
/el-form-item
>
<
/el-col
>
<
/el-row
>
<
el
-
form
-
item
:
label
=
"
$t('旧全包价')
"
v
-
if
=
"
form.charging
"
>
{{
form
.
orgSeaFreight
}}
{{
currentMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
<
/el-form-item
>
<
el
-
form
-
item
:
label
=
"
$t('新全包价')
"
style
=
"
width: 400px
"
prop
=
"
clearanceFreight
"
v
-
if
=
"
form.charging
"
>
<
el
-
input
v
-
model
=
"
form.seaFreight
"
type
=
"
number
"
class
=
"
w-100
"
/>
{{
currentMap
[
form
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
form
.
seaFreightVolume
]
}}
<
/el-form-item
>
<
/el-form
>
<
div
class
=
"
page-title
"
>
审批流程
<
/div
>
<
work
-
flow
xmlkey
=
"
sheet_sale
"
v
-
model
=
"
ccIdArr
"
/>
<
div
v
-
if
=
"
!form.applyStatus
"
>
<
el
-
button
type
=
"
primary
"
@
click
=
"
handleSubmit
"
>
提交
<
/el-button
>
<
/div
>
<
div
v
-
else
>
<
el
-
button
type
=
"
primary
"
@
click
=
"
$router.push('/bpm/process-instance/detail?id=' + form.formId)
"
>
<
dict
-
tag
:
type
=
"
DICT_TYPE.APPLY_STATUS
"
:
value
=
"
form.applyStatus
"
/>
<
/el-button
>
<
/div
>
<
/el-dialog
>
<
/template
>
<
script
>
import
{
createOrderSpecial
,
getOrderSpecial
}
from
"
@/api/ecw/order
"
import
{
getUnitList
}
from
"
@/api/ecw/unit
"
import
{
getChannel
,
getChannelList
}
from
"
@/api/ecw/channel
"
import
{
getCurrencyList
}
from
'
@/api/ecw/currency
'
import
{
getProductTypeList
,
getProductType
}
from
'
@/api/ecw/productType
'
import
WorkFlow
from
'
@/components/WorkFlow
'
export
default
{
name
:
"
specialDiscount
"
,
props
:
{
orderItemId
:
Number
,
}
,
components
:
{
WorkFlow
}
,
created
()
{
// 查看详情,列表进来的
if
(
this
.
orderItemId
){
this
.
getOrderSpecial
()
}
getUnitList
().
then
(
res
=>
this
.
unitList
=
res
.
data
)
// getChannelList().then(res => this.channelList = res.data)
getCurrencyList
().
then
(
res
=>
this
.
currencyList
=
res
.
data
)
// getProductTypeList().then(res => this.productTypeList = res.data)
}
,
data
()
{
return
{
unitList
:[],
// channelList:[],
currencyList
:[],
// productTypeList:[],
ccIdArr
:
[],
form
:
{
type
:
1
}
,
rules
:{
seaFreight
:
{
required
:
true
,
message
:
'
运费不能为空
'
}
,
clearanceFreight
:
{
required
:
true
,
message
:
'
清关费不能为空
'
}
}
,
productType
:
null
,
channel
:
null
}
}
,
watch
:{
ccIdArr
(){
this
.
$set
(
this
.
form
,
'
ccIds
'
,
this
.
ccIdArr
.
join
(
'
,
'
))
}
}
,
methods
:
{
handleSubmit
(){
this
.
$refs
.
form
.
validate
().
then
(
res
=>
{
createOrderSpecial
(
Object
.
assign
({
}
,
this
.
form
,
{
type
:
1
}
)).
then
(
res
=>
{
this
.
$message
.
success
(
this
.
$t
(
'
提交成功
'
))
this
.
$emit
(
'
success
'
)
}
)
}
)
}
,
getOrderSpecial
(){
getOrderSpecial
(
this
.
orderItemId
).
then
(
r
=>
{
this
.
form
=
r
.
data
getProductType
(
this
.
form
.
productType
).
then
(
res
=>
{
this
.
productType
=
res
.
data
}
)
if
(
this
.
form
.
channelId
){
getChannel
(
this
.
form
.
channelId
).
then
(
res
=>
{
this
.
channel
=
res
.
data
}
)
}
}
)
}
,
/* getProductTypeNameById(id){
return this.$l(this.productTypeList.find(e => e.id === id), 'title')
}
, */
closeDialog
(){
this
.
$emit
(
'
close
'
)
}
}
,
computed
:
{
// 根据渠道id显示渠道名
getChannelNameById
(){
return
channelId
=>
{
const
s
=
this
.
channelList
.
find
(
item
=>
item
.
channelId
==
channelId
)
?.
nameZh
return
s
?
'
【
'
+
s
+
'
】
'
:
''
}
}
,
currentMap
(){
let
map
=
{
}
this
.
currencyList
.
forEach
(
item
=>
{
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
}
)
return
map
}
,
unitMap
(){
let
map
=
{
}
this
.
unitList
.
forEach
(
item
=>
{
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
}
)
return
map
}
}
}
<
/script
>
src/views/ecw/order/edit.vue
View file @
adaf7141
...
@@ -478,7 +478,11 @@
...
@@ -478,7 +478,11 @@
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('中文品名')"
prop=
"prodTitleZh"
></el-table-column>
<el-table-column
:label=
"$t('中文品名')"
prop=
"prodTitleZh"
></el-table-column>
<el-table-column
:label=
"$t('英文品名')"
prop=
"prodTitleEn"
></el-table-column>
<el-table-column
:label=
"$t('英文品名')"
prop=
"prodTitleEn"
></el-table-column>
<el-table-column
:label=
"$t('品牌')"
prop=
"brand"
></el-table-column>
<el-table-column
:label=
"$t('品牌')"
prop=
"brand"
>
<
template
slot-scope=
"{row}"
>
<dict-tag
:type=
"DICT_TYPE.ECW_IS_BRAND"
:value=
"row.brandType"
/>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('件数')"
prop=
"num"
></el-table-column>
<el-table-column
:label=
"$t('件数')"
prop=
"num"
></el-table-column>
<el-table-column
:label=
"$t('重量') + '(kg)'"
prop=
"weight"
></el-table-column>
<el-table-column
:label=
"$t('重量') + '(kg)'"
prop=
"weight"
></el-table-column>
<el-table-column
:label=
"$t('体积') + '(m³)'"
prop=
"volume"
></el-table-column>
<el-table-column
:label=
"$t('体积') + '(m³)'"
prop=
"volume"
></el-table-column>
...
@@ -563,7 +567,18 @@ export default {
...
@@ -563,7 +567,18 @@ export default {
},
},
// 表单校验
// 表单校验
rules
:
{
rules
:
{
marks
:
[{
required
:
true
,
message
:
this
.
$t
(
'
请填写唛头
'
)}],
marks
:
[
{
required
:
true
,
message
:
this
.
$t
(
'
请填写唛头
'
)},
{
validator
:
(
rule
,
value
,
callback
)
=>
{
if
(
!
/
[
a-zA-Z
]
/
.
test
(
value
.
charAt
(
0
))){
return
callback
(
new
Error
(
this
.
$t
(
'
唛头必须以字母开头
'
)))
}
callback
()
},
trigger
:
'
blur
'
}
],
consignorContactsId
:
[{
required
:
true
,
message
:
this
.
$t
(
'
发货人不能为空
'
)}],
consignorContactsId
:
[{
required
:
true
,
message
:
this
.
$t
(
'
发货人不能为空
'
)}],
consigneeContactsId
:
[{
required
:
true
,
message
:
this
.
$t
(
'
收货人不能为空
'
)}],
consigneeContactsId
:
[{
required
:
true
,
message
:
this
.
$t
(
'
收货人不能为空
'
)}],
transportId
:
[{
required
:
true
,
message
:
this
.
$t
(
'
请选择运输方式
'
)}],
transportId
:
[{
required
:
true
,
message
:
this
.
$t
(
'
请选择运输方式
'
)}],
...
@@ -820,7 +835,7 @@ export default {
...
@@ -820,7 +835,7 @@ export default {
let
form
=
new
FormData
()
let
form
=
new
FormData
()
form
.
append
(
'
file
'
,
e
.
file
)
form
.
append
(
'
file
'
,
e
.
file
)
orderImport
(
form
).
then
(
res
=>
{
orderImport
(
form
).
then
(
res
=>
{
if
(
!
this
.
importL
ist
.
length
){
if
(
!
res
.
data
.
l
ist
.
length
){
return
this
.
$message
.
error
(
'
无有效数据
'
)
return
this
.
$message
.
error
(
'
无有效数据
'
)
}
}
...
...
src/views/ecw/order/exception/index.vue
View file @
adaf7141
...
@@ -196,6 +196,7 @@ export default {
...
@@ -196,6 +196,7 @@ export default {
/** 查询列表 */
/** 查询列表 */
getList
()
{
getList
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
this
.
list
=
[]
// 处理查询参数
// 处理查询参数
let
params
=
{...
this
.
queryParams
}
let
params
=
{...
this
.
queryParams
}
// 执行查询
// 执行查询
...
@@ -203,7 +204,7 @@ export default {
...
@@ -203,7 +204,7 @@ export default {
this
.
list
=
response
.
data
.
list
;
this
.
list
=
response
.
data
.
list
;
this
.
total
=
response
.
data
.
total
;
this
.
total
=
response
.
data
.
total
;
this
.
loading
=
false
;
this
.
loading
=
false
;
this
.
reset
()
//
this.reset()
});
});
},
},
/** 表单重置 */
/** 表单重置 */
...
...
src/views/ecw/order/index.vue
View file @
adaf7141
...
@@ -214,13 +214,13 @@
...
@@ -214,13 +214,13 @@
<el-dropdown-item
@
click.native=
"$router.push('/order/special/' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
特价
'
)
}}
</el-dropdown-item>
<el-dropdown-item
@
click.native=
"$router.push('/order/special/' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
特价
'
)
}}
</el-dropdown-item>
</
template
>
</
template
>
<!-- 确认
放
货 -->
<!-- 确认
提
货 -->
<
template
v-if=
"
<
template
v-if=
"
exclude(scope.row.status, [0,2]) &&
exclude(scope.row.status, [0,2]) &&
exclude(scope.row.abnormalState, [1 ,99 ,2 ,3 ,4 ,9 ,10 ,11 ,12 ,14]) &&
exclude(scope.row.abnormalState, [1 ,99 ,2 ,3 ,4 ,9 ,10 ,11 ,12 ,14]) &&
exclude(scope.row.shipmentState, [320,322,323])
exclude(scope.row.shipmentState, [320,322,323])
"
>
"
>
<el-dropdown-item
@
click.native=
"$router.push(`/order/release?orderId=$
{scope.row.orderId}`)" >
{{
$t
(
'
确认
放
货
'
)
}}
</el-dropdown-item>
<el-dropdown-item
@
click.native=
"$router.push(`/order/release?orderId=$
{scope.row.orderId}`)" >
{{
$t
(
'
确认
提
货
'
)
}}
</el-dropdown-item>
</
template
>
</
template
>
<!-- 合单,拆单 -->
<!-- 合单,拆单 -->
...
@@ -254,13 +254,13 @@
...
@@ -254,13 +254,13 @@
include(scope.row.inWarehouseState, [201,202, 208, 202, 210, 202, 211, 202, 213, 214, 215, 216]) ||
include(scope.row.inWarehouseState, [201,202, 208, 202, 210, 202, 211, 202, 213, 214, 215, 216]) ||
include(scope.row.abnormalState, [99 ,2 ,3 ,4 ,9 ,10 ,11 ,12 ,14])
include(scope.row.abnormalState, [99 ,2 ,3 ,4 ,9 ,10 ,11 ,12 ,14])
"
>
"
>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
入仓补充
'
)
}}
</el-dropdown-item>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing
-add
?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
入仓补充
'
)
}}
</el-dropdown-item>
</
template
>
</
template
>
<!-- 入仓修改 -->
<!-- 入仓修改 -->
<
template
v-if=
"
<
template
v-if=
"
include(scope.row.inWarehouseState, [202, 207, 208, 202, 209, 210, 202, 211, 212, 202, 213, 214, 215, 216, 204, 205, 206])
include(scope.row.inWarehouseState, [202, 207, 208, 202, 209, 210, 202, 211, 212, 202, 213, 214, 215, 216, 204, 205, 206])
"
>
"
>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
入仓修改
'
)
}}
</el-dropdown-item>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing
-update
?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
入仓修改
'
)
}}
</el-dropdown-item>
</
template
>
</
template
>
<!-- 退仓 -->
<!-- 退仓 -->
...
@@ -307,7 +307,7 @@
...
@@ -307,7 +307,7 @@
<!--打印相关的-->
<!--打印相关的-->
<el-dropdown>
<el-dropdown>
<el-button
type=
"text"
>
{{$t('
操作
')}}
</el-button>
<el-button
type=
"text"
>
{{$t('
打印
')}}
</el-button>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-menu
slot=
"dropdown"
>
<!-- 打印标签 -->
<!-- 打印标签 -->
<
template
v-if=
"
<
template
v-if=
"
...
@@ -328,7 +328,7 @@
...
@@ -328,7 +328,7 @@
</
template
>
</
template
>
<!-- 打印提单 -->
<!-- 打印提单 -->
<el-dropdown-item
@
click.native=
"printLadingBill
Info={tidanNO: scope.row.tidanNo, transportType: scope.row.transportId}
"
:disabled=
"!scope.row.tidanNo"
>
{{$t('打印提单')}}
</el-dropdown-item>
<el-dropdown-item
@
click.native=
"printLadingBill
OrderId=scope.row.orderId
"
:disabled=
"!scope.row.tidanNo"
>
{{$t('打印提单')}}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown-menu>
</el-dropdown>
</el-dropdown>
</template>
</template>
...
@@ -341,7 +341,7 @@
...
@@ -341,7 +341,7 @@
<special-needs
:show.sync=
"isShow"
:order-id=
"orderId"
@
determine=
"getList"
></special-needs>
<special-needs
:show.sync=
"isShow"
:order-id=
"orderId"
@
determine=
"getList"
></special-needs>
<print-tag
v-if=
"printTagOrderId !== null"
:order-id=
"printTagOrderId"
@
close=
"printTagOrderId=null"
/>
<print-tag
v-if=
"printTagOrderId !== null"
:order-id=
"printTagOrderId"
@
close=
"printTagOrderId=null"
/>
<print-warehouse-receipt
v-if=
"printWarehouseReceiptOrderId !== null"
:order-id=
"printWarehouseReceiptOrderId"
@
close=
"printWarehouseReceiptOrderId=null"
/>
<print-warehouse-receipt
v-if=
"printWarehouseReceiptOrderId !== null"
:order-id=
"printWarehouseReceiptOrderId"
@
close=
"printWarehouseReceiptOrderId=null"
/>
<print-lading-bill
v-if=
"printLadingBill
Info !== null"
v-bind=
"printLadingBillInfo"
@
close=
"printLadingBillInfo
=null"
/>
<print-lading-bill
v-if=
"printLadingBill
OrderId !== null"
:order-id=
"printLadingBillOrderId"
@
close=
"printLadingBillOrderId
=null"
/>
<batch-pickup
v-if=
"showBatchPickup"
@
close=
"onBatchClose"
@
success=
"onBatchClose"
/>
<batch-pickup
v-if=
"showBatchPickup"
@
close=
"onBatchClose"
@
success=
"onBatchClose"
/>
<withdrawal
v-if=
"show"
:dialog-visible=
"show"
:orderId=
"orderId"
></withdrawal>
<withdrawal
v-if=
"show"
:dialog-visible=
"show"
:orderId=
"orderId"
></withdrawal>
<batch-single-application
:order-list=
"orderId"
:dialog-visible.sync=
"warehouseBol"
></batch-single-application>
<batch-single-application
:order-list=
"orderId"
:dialog-visible.sync=
"warehouseBol"
></batch-single-application>
...
@@ -430,7 +430,7 @@ export default {
...
@@ -430,7 +430,7 @@ export default {
printTagOrderId
:
null
,
// 显示打印标签的订单ID
printTagOrderId
:
null
,
// 显示打印标签的订单ID
printWarehouseReceiptOrderId
:
null
,
// 打印入仓单的订单ID
printWarehouseReceiptOrderId
:
null
,
// 打印入仓单的订单ID
printLadingBill
Info
:
null
,
// 打印提单
printLadingBill
OrderId
:
null
,
// 打印提单的订单ID
showBatchPickup
:
false
,
// 是否显示批量提货弹窗
showBatchPickup
:
false
,
// 是否显示批量提货弹窗
showMergedLogOrderNo
:
null
,
// 显示合单日志订单号
showMergedLogOrderNo
:
null
,
// 显示合单日志订单号
showPickupLogOrderNo
:
null
,
// 显示提货日志的订单号
showPickupLogOrderNo
:
null
,
// 显示提货日志的订单号
...
...
src/views/ecw/order/mutexOrder.vue
View file @
adaf7141
...
@@ -8,7 +8,7 @@
...
@@ -8,7 +8,7 @@
<el-divider></el-divider>
<el-divider></el-divider>
<el-form
inline
label-width=
"100px"
>
<el-form
inline
label-width=
"100px"
>
<el-form-item
label=
"订单号"
><div
class=
"content"
>
<el-form-item
label=
"订单号"
><div
class=
"content"
>
<el-input
v-model.trim=
"params.
relate
OrderNo"
></el-input>
<el-input
v-model.trim=
"params.
mutual
OrderNo"
></el-input>
</div></el-form-item>
</div></el-form-item>
<el-form-item><div
class=
"content"
>
<el-form-item><div
class=
"content"
>
<el-button
@
click=
"getList"
>
查询
</el-button>
<el-button
@
click=
"getList"
>
查询
</el-button>
...
...
src/views/ecw/order/notMutexOrder.vue
View file @
adaf7141
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
<el-form
inline
label-width=
"85px"
label-position=
"left"
>
<el-form
inline
label-width=
"85px"
label-position=
"left"
>
<el-form-item
label=
"订单号"
>
<el-form-item
label=
"订单号"
>
<div
class=
"content"
>
<div
class=
"content"
>
<el-input
v-model.trim=
"params.
relate
OrderNo"
></el-input>
<el-input
v-model.trim=
"params.
mutual
OrderNo"
></el-input>
</div>
</div>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
...
...
src/views/ecw/order/special/discount.vue
View file @
adaf7141
...
@@ -3,10 +3,10 @@
...
@@ -3,10 +3,10 @@
<el-row
type=
"flex"
justify=
"center"
>
<el-row
type=
"flex"
justify=
"center"
>
<el-col
:xs=
"24"
:sm=
"24"
:md=
"24"
:lg=
"20"
:xl=
"16"
>
<el-col
:xs=
"24"
:sm=
"24"
:md=
"24"
:lg=
"20"
:xl=
"16"
>
<el-card
class=
"box-card"
>
<el-card
class=
"box-card"
>
<div
slot=
"header"
class=
"clearfix"
v-if=
"!readonly"
>
<div
slot=
"header"
class=
"clearfix"
>
<span
style=
"font-size: 18px;font-weight: bold"
>
{{
isDiscount
?
'
折扣管理
'
:
'
优惠申请
'
}}
</span>
<span
style=
"font-size: 18px;font-weight: bold"
>
{{
$t
(
'
优惠申请
'
)
}}
</span>
</div>
</div>
<el-form
v-if=
"!readonly"
ref=
"form"
:model=
"form"
label-width=
"80px"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"80px"
>
<el-form-item
label=
"商品类型"
>
<el-form-item
label=
"商品类型"
>
<span>
{{
getProductAttrNameById
(
form
.
prodType
)
}}
</span>
<span>
{{
getProductAttrNameById
(
form
.
prodType
)
}}
</span>
</el-form-item>
</el-form-item>
...
@@ -18,6 +18,7 @@
...
@@ -18,6 +18,7 @@
</el-form-item>
</el-form-item>
<el-form-item
label=
"线路"
>
<el-form-item
label=
"线路"
>
{{
`【${getDictDataLabel(DICT_TYPE.TRANSPORT_TYPE, form.transportId)
}
】${ getChannelNameById(form.channelId)
}
从【${startTitleZh
}
】发往【${destTitleZh
}
】`
}}
{{
`【${getDictDataLabel(DICT_TYPE.TRANSPORT_TYPE, form.transportId)
}
】${ getChannelNameById(form.channelId)
}
从【${startTitleZh
}
】发往【${destTitleZh
}
】`
}}
<
/el-form-item
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
是否预付
"
>
<
el
-
form
-
item
label
=
"
是否预付
"
>
{{
form
.
isPayAdvance
===
0
?
'
是
'
:
'
否
'
}}
{{
form
.
isPayAdvance
===
0
?
'
是
'
:
'
否
'
}}
...
@@ -48,29 +49,14 @@
...
@@ -48,29 +49,14 @@
<
/el-form-item
>
<
/el-form-item
>
<
/el-form
>
<
/el-form
>
<
div
>
<
div
>
<
h2
>
审批流程
<
/h2
>
<
h2
>
审批流程
<
/h2
>
<
work
-
flow
xmlkey
=
"
free_apply
"
v
-
model
=
"
form.channelId
"
/>
<
work
-
flow
xmlkey
=
"
free_apply
"
v
-
model
=
"
form.channelId
"
/>
<!--
<
div
>
选择的用户:
{{
selectedUsers
}}
<
/div>--
>
<
/div
>
<
/div
>
<
div
v
-
if
=
"
!readonly
"
>
<
div
>
<
el
-
button
type
=
"
primary
"
@
click
=
"
handleSubmit
"
>
提交
<
/el-button
>
<
el
-
button
type
=
"
primary
"
@
click
=
"
handleSubmit
"
>
提交
<
/el-button
>
<
/div
>
<
/div
>
<
el
-
descriptions
border
v
-
if
=
"
readonly
"
:
column
=
"
1
"
>
<
el
-
descriptions
-
item
label
=
"
商品类型
"
>
{{
form
.
productType
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
商品名称
"
>
{{
form
.
prodTitleZh
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
英文名称
"
>
{{
form
.
prodTitleEn
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
线路
"
>
{{
`【${getDictDataLabel(DICT_TYPE.TRANSPORT_TYPE, form.transportId)
}
】${ getChannelNameById(form.channelId)
}
从【${startTitleZh
}
】发往【${destTitleZh
}
】`
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
是否预付
"
>
{{
form
.
isPayAdvance
===
0
?
'
是
'
:
'
否
'
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
旧运费
"
>
{{
form
.
orgFreight
}}
{{
currentMap
[
form
.
orgFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgFreightVolume
]
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
旧清关费
"
>
{{
form
.
orgClearanceFreight
}}
{{
currentMap
[
form
.
orgClearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
orgClearanceFreightVolume
]
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
新运费
"
>
{{
form
.
freight
}}
{{
currentMap
[
form
.
freightCurrency
]
}}
/
{{
unitMap
[
form
.
freightVolume
]
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"
新清关费
"
>
{{
form
.
clearanceFreight
}}
{{
currentMap
[
form
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
form
.
clearanceFreightVolume
]
}}
<
/el-descriptions-item
>
<
/el-descriptions
>
<
/el-card
>
<
/el-card
>
<
/el-col
>
<
/el-col
>
<
/el-row
>
<
/el-row
>
...
...
src/views/ecw/order/special/index.vue
View file @
adaf7141
<
template
>
<
template
>
<div
class=
"app-container"
>
<div
class=
"app-container"
>
<el-card>
<el-card>
<div
slot=
"header"
class=
"card-title"
>
申请特价
</div>
<div
slot=
"header"
class=
"card-title"
>
{{
$t
(
'
申请特价
'
)
}}
</div>
<!-- 列表 -->
<!-- 列表 -->
<div
class=
"order-header"
>
<div
class=
"order-header"
>
<span
style=
"font-size: 15px;"
>
订单号
:
{{
order
.
orderNo
}}
</span>
<span
style=
"font-size: 15px;"
>
{{
$t
(
'
订单号
'
)
}}
:
{{
order
.
orderNo
}}
</span>
</div>
</div>
<el-table
v-loading=
"loading"
:data=
"order.orderItemVOList"
>
<el-table
v-loading=
"loading"
:data=
"order.orderItemVOList"
>
<el-table-column
label=
"序号
"
align=
"center"
prop=
"id"
type=
"index"
></el-table-column>
<el-table-column
:label=
"$t('序号')
"
align=
"center"
prop=
"id"
type=
"index"
></el-table-column>
<el-table-column
<el-table-column
prop=
"prodTitleZh"
prop=
"prodTitleZh"
label=
"品名
"
>
:label=
"$t('品名')
"
>
<template
v-slot=
"
{row}">
<template
v-slot=
"
{row}">
{{
row
.
prodTitleZh
}}
/
{{
row
.
prodTitleEn
}}
{{
row
.
prodTitleZh
}}
/
{{
row
.
prodTitleEn
}}
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"prodAttrIds"
prop=
"prodAttrIds"
label=
"填单货物属性
"
>
:label=
"$t('填单货物属性')
"
>
<
template
v-slot=
"{row}"
>
<
template
v-slot=
"{row}"
>
品牌:
{{
[
'
无牌
'
,
'
有牌
'
,
'
中性
'
][
row
.
brandType
]
}}
<br>
{{
$t
(
'
品牌
'
)
}}
:
<dict-tag
:type=
"DICT_TYPE.ECW_IS_BRAND"
:value=
"row.brandType"
/>
<br>
箱数
:
{{
row
.
num
}}
<br>
{{
$t
(
'
箱数
'
)
}}
:
{{
row
.
num
}}
<br>
体积
:
{{
row
.
volume
}}
m³
<br>
{{
$t
(
'
体积
'
)
}}
:
{{
row
.
volume
}}
m³
<br>
重量
:
{{
row
.
weight
}}
Kg
{{
$t
(
'
重量
'
)
}}
:
{{
row
.
weight
}}
Kg
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"address"
prop=
"address"
label=
"入库货物属性
"
>
:label=
"$t('入库货物属性')
"
>
<
template
v-slot=
"{row}"
>
<
template
v-slot=
"{row}"
>
<!-- // TODO 待测试完善 -->
<template
v-if=
"row.warehouseInInfoVO"
>
<template
v-if=
"row.warehouseInInfoVO"
>
品牌:
{{
[
'
无牌
'
,
'
有牌
'
,
'
中性
'
][
row
.
brandType
]
}}
<br>
{{
$t
(
'
品牌
'
)
}}
:
<dict-tag
:type=
"DICT_TYPE.ECW_IS_BRAND"
:value=
"row.brandType"
/>
<br>
箱数
:
{{
row
.
warehouseInInfoVO
.
cartonsNum
}}
<br>
{{
$t
(
'
箱数
'
)
}}
:
{{
row
.
warehouseInInfoVO
.
cartonsNum
}}
<br>
体积
:
{{
row
.
warehouseInInfoVO
.
volume
}}
m³
<br>
{{
$t
(
'
体积
'
)
}}
:
{{
row
.
warehouseInInfoVO
.
volume
}}
m³
<br>
重量
:
{{
row
.
warehouseInInfoVO
.
weight
}}
Kg
{{
$t
(
'
重量
'
)
}}
:
{{
row
.
warehouseInInfoVO
.
weight
}}
Kg
</
template
>
</
template
>
<span
v-else
>
暂时没有入库信息
</span>
<span
v-else
>
{{$t('暂时没有入库信息')}}
</span>
</template>
</template>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"updateTime"
prop=
"updateTime"
:formatter=
"(_, __, v) => parseTime(v)"
:formatter=
"(_, __, v) => parseTime(v)"
label=
"最后操作时间
"
>
:label=
"$t('最后操作时间')
"
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
label=
"原价
"
>
:label=
"$t('原价')
"
>
<
template
v-slot=
"{row}"
>
<
template
v-slot=
"{row}"
>
运费:
{{
row
.
originalSeaFreight
}}
{{
currentMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<template
v-if=
"!row.originalSeaFreight"
>
未报价
</
template
>
<br>
<
template
v-else-if=
"row.charging ==1"
>
清关费:
{{
row
.
originalClearanceFreight
}}
{{
currentMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
{{
$t
(
'
全包价
'
)
}}
:
{{
row
.
originalSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
</
template
>
<
template
v-else
>
{{
$t
(
'
运费
'
)
}}
:
{{
row
.
originalSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<br>
{{
$t
(
'
清关费
'
)
}}
:
{{
row
.
originalClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
</
template
>
</template>
</template>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"address"
label=
"成本价"
>
label=
"成本价"
>
<
template
v-slot=
"{row}"
>
<
template
v-slot=
"{row}"
>
运费:
{{
row
.
seaFreight
}}
{{
currentMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<template
v-if=
"!row.costSeaFreight"
>
未报价
</
template
>
<br>
<
template
v-else-if=
"row.charging"
>
清关费:
{{
row
.
clearanceFreight
}}
{{
currentMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
{{
$t
(
'
全包价
'
)
}}
:
{{
row
.
costSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
</
template
>
<
template
v-else
>
{{
$t
(
'
运费
'
)
}}
:
{{
row
.
costSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<br>
{{
$t
(
'
清关费
'
)
}}
:
{{
row
.
oneClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
</
template
>
</template>
</template>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"address"
:label=
"$t('销售价')"
>
label=
"销售价"
>
<
template
v-slot=
"{row}"
>
<
template
v-slot=
"{row}"
>
运费:
{{
row
.
seaFreight
}}
{{
currentMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<template
v-if=
"!row.oneSeaFreight"
>
未报价
</
template
>
<br>
<
template
v-else-if=
"row.charging"
>
清关费:
{{
row
.
clearanceFreight
}}
{{
currentMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
{{
$t
(
'
全包价
'
)
}}
:
{{
row
.
oneSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
</
template
>
<
template
v-else
>
{{
$t
(
'
运费
'
)
}}
:
{{
row
.
oneSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
<br>
{{
$t
(
'
清关费
'
)
}}
:
{{
row
.
oneClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
</
template
>
</template>
</template>
</el-table-column>
</el-table-column>
<!-- <el-table-column-->
<!-- prop="status"-->
<!-- :formatter="(v) => ['取消报价', '特价审批中', '需求确认(草稿)', '跟进中', '赢单', '输单', '报价完成', '审批通过', '审批拒绝'][v.status]"-->
<!-- label="审核状态">-->
<!-- </el-table-column>-->
<el-table-column
<el-table-column
prop=
"address"
prop=
"address"
label=
"操作
"
>
:label=
"$t('操作')
"
>
<
template
v-slot=
"{row}"
>
<
template
v-slot=
"{row}"
>
<template
v-if=
"row.originalSeaFreight !== 0 && row.originalClearanceFreight !== 0"
>
<el-button
size=
"mini"
type=
"text"
v-hasPermi=
"['ecw:order:update']"
@
click=
"showDiscountItemId=row.orderItemId"
>
优惠申请
</el-button>
<el-button
size=
"mini"
type=
"text"
v-hasPermi=
"['ecw:order:update']"
@
click=
"$router.push(`/order/discount/$
{row.orderItemId}?orderId=${row.orderId}`)">优惠申请
</el-button>
<el-button
size=
"mini"
type=
"text"
v-hasPermi=
"['ecw:order:update']"
@
click=
"$router.push(`/order/specialCommission/$
{row.orderItemId}`)">佣金规则
</el-button>
<el-button
size=
"mini"
type=
"text"
v-hasPermi=
"['ecw:order:update']"
@
click=
"$router.push(`/order/specialCommission/$
{row.orderItemId}`)">佣金规则
</el-button>
<el-button
size=
"mini"
type=
"text"
v-hasPermi=
"['ecw:order:update']"
@
click=
"$router.push(`/order/discount1/$
{row.orderItemId}?orderId=${row.orderId}
&
discount=1`)">管理折扣
</el-button>
<el-button
size=
"mini"
type=
"text"
v-hasPermi=
"['ecw:order:update']"
@
click=
"$router.push(`/order/discount1/$
{row.orderItemId}?orderId=${row.orderId}
&
discount=1`)">管理折扣
</el-button>
</
template
>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
...
@@ -95,6 +107,10 @@
...
@@ -95,6 +107,10 @@
<el-button
type=
"primary"
@
click=
"$tab.closePage()"
>
关闭窗口
</el-button>
<el-button
type=
"primary"
@
click=
"$tab.closePage()"
>
关闭窗口
</el-button>
</div>
</div>
</el-card>
</el-card>
<special-discount
v-if=
"!!showDiscountItemId"
:orderItemId=
"showDiscountItemId"
/>
</div>
</div>
</template>
</template>
...
@@ -105,9 +121,12 @@ import {getCurrencyList} from "@/api/ecw/currency"
...
@@ -105,9 +121,12 @@ import {getCurrencyList} from "@/api/ecw/currency"
import
{
getProductAttrList
}
from
"
@/api/ecw/productAttr
"
import
{
getProductAttrList
}
from
"
@/api/ecw/productAttr
"
import
{
parseTime
}
from
'
@/utils/ruoyi
'
import
{
parseTime
}
from
'
@/utils/ruoyi
'
import
{
getOrder
}
from
"
@/api/ecw/order
"
import
{
getOrder
}
from
"
@/api/ecw/order
"
import
SpecialDiscount
from
'
@/views/ecw/order/components/SpecialDiscount.vue
'
export
default
{
export
default
{
name
:
"
OrderSpecial
"
,
name
:
"
OrderSpecial
"
,
components
:
{
components
:
{
SpecialDiscount
},
},
props
:
{
props
:
{
orderId
:
[
String
,
Number
]
orderId
:
[
String
,
Number
]
...
@@ -136,7 +155,9 @@ export default {
...
@@ -136,7 +155,9 @@ export default {
unitList
:[],
unitList
:[],
currencyList
:[],
currencyList
:[],
productAttrList
:[],
productAttrList
:[],
hasWarehouseInInfo
:
false
hasWarehouseInInfo
:
false
,
showDiscountItemId
:
null
};
};
},
},
created
()
{
created
()
{
...
@@ -171,7 +192,7 @@ export default {
...
@@ -171,7 +192,7 @@ export default {
path
:
"
/order/specialLight/
"
+
this
.
params
.
orderId
,
path
:
"
/order/specialLight/
"
+
this
.
params
.
orderId
,
})
})
},
},
getProductNamesByIds
(
ids
){
/*
getProductNamesByIds(ids){
const result = []
const result = []
ids.split(',').forEach(e => {
ids.split(',').forEach(e => {
this.productAttrList.forEach(f => {
this.productAttrList.forEach(f => {
...
@@ -181,20 +202,20 @@ export default {
...
@@ -181,20 +202,20 @@ export default {
})
})
})
})
return result.join(',')
return result.join(',')
}
}
*/
},
},
computed
:
{
computed
:
{
curren
t
Map
(){
curren
cy
Map
(){
let
map
=
{}
let
map
=
{}
this
.
currencyList
.
forEach
(
item
=>
{
this
.
currencyList
.
forEach
(
item
=>
{
map
[
item
.
id
]
=
item
.
titleZh
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
})
})
return
map
return
map
},
},
unitMap
(){
unitMap
(){
let
map
=
{}
let
map
=
{}
this
.
unitList
.
forEach
(
item
=>
{
this
.
unitList
.
forEach
(
item
=>
{
map
[
item
.
id
]
=
item
.
titleZh
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
})
})
return
map
return
map
}
}
...
...
src/views/ecw/order/warehousing/components/editDialog.vue
View file @
adaf7141
<
template
>
<
template
>
<div>
<div>
<el-dialog
<el-dialog
:title=
"
(edit ? '入仓修改' : (warehousing.orderWarehouseInBackItemDoList.length > 0 ? '入仓补充' : '入仓操作'))
+ ' - ' + warehousing.orderNo"
:title=
"
title
+ ' - ' + warehousing.orderNo"
:visible.sync=
"opened"
:visible.sync=
"opened"
width=
"1080px"
width=
"1080px"
>
>
...
@@ -431,7 +431,7 @@ export default {
...
@@ -431,7 +431,7 @@ export default {
opened
(
val
)
{
opened
(
val
)
{
if
(
val
)
{
if
(
val
)
{
this
.
form
.
material
=
this
.
warehousing
.
material
this
.
form
.
material
=
this
.
warehousing
.
material
this
.
form
.
brand
=
this
.
warehousing
.
brand
this
.
form
.
brand
=
this
.
warehousing
.
brand
||
'
0
'
this
.
handleBrandChange
(
this
.
form
.
brand
)
this
.
handleBrandChange
(
this
.
form
.
brand
)
}
else
{
}
else
{
this
.
$emit
(
'
update:visible
'
,
false
)
this
.
$emit
(
'
update:visible
'
,
false
)
...
@@ -442,8 +442,10 @@ export default {
...
@@ -442,8 +442,10 @@ export default {
this
.
form
.
orderWarehouseInItemDoList
=
[]
this
.
form
.
orderWarehouseInItemDoList
=
[]
this
.
form1
.
orderWarehouseInItemDoList
=
[]
this
.
form1
.
orderWarehouseInItemDoList
=
[]
this
.
activeName
=
'
first
'
this
.
activeName
=
'
first
'
this
.
handleAdd
()
if
(
!
this
.
edit
){
this
.
handleAdd
(
1
)
this
.
handleAdd
()
this
.
handleAdd
(
1
)
}
}
}
}
}
},
},
...
@@ -587,6 +589,9 @@ export default {
...
@@ -587,6 +589,9 @@ export default {
},
},
computed
:
{
computed
:
{
title
()
{
return
this
.
$route
.
name
},
brandObject
(){
brandObject
(){
return
this
.
brandList
.
find
(
e
=>
e
.
id
===
this
.
form
.
brand
)
||
''
return
this
.
brandList
.
find
(
e
=>
e
.
id
===
this
.
form
.
brand
)
||
''
},
},
...
...
src/views/ecw/order/warehousing/index.vue
View file @
adaf7141
<
template
>
<
template
>
<div
class=
"app-container"
>
<div
class=
"app-container"
>
<h2>
入仓操作
-
{{
order
.
orderNo
}}
</h2>
<h2>
{{
title
}}
-
{{
order
.
orderNo
}}
</h2>
<order-base-info
:order=
"order"
></order-base-info>
<order-base-info
:order=
"order"
></order-base-info>
...
@@ -74,14 +74,12 @@
...
@@ -74,14 +74,12 @@
prop=
"address"
prop=
"address"
label=
"操作"
>
label=
"操作"
>
<
template
v-slot=
"{ row, column, $index }"
>
<
template
v-slot=
"{ row, column, $index }"
>
<el-button
v-if=
"order.status === 5"
size=
"mini"
type=
"text"
@
click=
"handleWarehousing($index)"
>
修改
</el-button>
<el-button
v-if=
"isEdit"
size=
"mini"
type=
"text"
@
click=
"handleWarehousing($index)"
>
修改
</el-button>
<template
v-else
>
<template
v-else-if=
"orderItemList[$index] && orderItemList[$index].orderWarehouseInBackItemDoList && orderItemList[$index].orderWarehouseInBackItemDoList.length > 0"
>
<template
v-if=
"orderItemList[$index] && orderItemList[$index].orderWarehouseInBackItemDoList && orderItemList[$index].orderWarehouseInBackItemDoList.length > 0"
>
<el-button
size=
"mini"
type=
"text"
@
click=
"handleWarehousing($index)"
>
追加
</el-button>
<el-button
size=
"mini"
type=
"text"
@
click=
"handleWarehousing($index)"
>
追加
</el-button>
<el-button
size=
"mini"
type=
"text"
@
click=
"handleWarehousingReturn(row)"
>
退仓
</el-button>
<el-button
size=
"mini"
type=
"text"
@
click=
"handleWarehousingReturn(row)"
>
退仓
</el-button>
</
template
>
<el-button
v-else
size=
"mini"
type=
"text"
@
click=
"handleWarehousing($index)"
>
入仓
</el-button>
</
template
>
</
template
>
<el-button
v-else
size=
"mini"
type=
"text"
@
click=
"handleWarehousing($index)"
>
入仓
</el-button>
</template>
</template>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
@@ -145,7 +143,7 @@
...
@@ -145,7 +143,7 @@
<warehouse-area-dialog
ref=
"area"
:visible.sync=
"areaVisible"
v-model=
"form.orderLocationCreateReqVOList"
<warehouse-area-dialog
ref=
"area"
:visible.sync=
"areaVisible"
v-model=
"form.orderLocationCreateReqVOList"
:order-id=
"orderId"
:city-id=
"cityId"
></warehouse-area-dialog>
:order-id=
"orderId"
:city-id=
"cityId"
></warehouse-area-dialog>
<edit-dialog
:
customer-id=
"order.customerId"
:visible.sync=
"warehousingVisible"
:warehousing=
"warehousing"
:edit=
"order.status === 5
"
></edit-dialog>
<edit-dialog
:
title=
"title"
:customer-id=
"order.customerId"
:visible.sync=
"warehousingVisible"
:warehousing=
"warehousing"
:edit=
"isEdit
"
></edit-dialog>
<!-- 完成入仓 -->
<!-- 完成入仓 -->
<el-dialog
<el-dialog
...
@@ -267,6 +265,16 @@ export default {
...
@@ -267,6 +265,16 @@ export default {
},
},
methods
:
{
methods
:
{
include
(){
return
(
state
,
arr
)
=>
{
return
arr
.
indexOf
(
state
)
>
-
1
}
},
exclude
(){
return
(
state
,
arr
)
=>
{
return
arr
.
indexOf
(
state
)
==
-
1
}
},
handleLabelSubmit
(){
handleLabelSubmit
(){
orderWarehouseInUpdateLabel
({
orderWarehouseInUpdateLabel
({
...
this
.
label
,
...
this
.
label
,
...
@@ -367,14 +375,14 @@ export default {
...
@@ -367,14 +375,14 @@ export default {
}).
then
(()
=>
{
}).
then
(()
=>
{
this
.
$message
({
this
.
$message
({
type
:
'
success
'
,
type
:
'
success
'
,
message
:
'
申请
退仓成功!
'
message
:
'
货物
退仓成功!
'
});
});
getOrderWarehouseIn
(
this
.
orderId
).
then
(
r
=>
this
.
orderItemList
=
r
.
data
.
reverse
())
getOrderWarehouseIn
(
this
.
orderId
).
then
(
r
=>
this
.
orderItemList
=
r
.
data
.
reverse
())
this
.
getOrder
()
this
.
getOrder
()
})
})
}).
catch
(
()
=>
{
}).
catch
(
e
=>
{
});
});
}
}
},
},
...
@@ -398,6 +406,15 @@ export default {
...
@@ -398,6 +406,15 @@ export default {
},
},
computed
:
{
computed
:
{
// isAdd() {
// return this.$route.path === "/order/warehousing-add"
// },
isEdit
()
{
return
this
.
$route
.
path
===
"
/order/warehousing-update
"
},
title
()
{
return
this
.
$route
.
name
},
orderSpecialNeedsDict
()
{
orderSpecialNeedsDict
()
{
return
this
.
$store
.
state
.
dict
.
dictDatas
.
order_special_needs
return
this
.
$store
.
state
.
dict
.
dictDatas
.
order_special_needs
},
},
...
...
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