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
1280a926
Commit
1280a926
authored
Oct 10, 2022
by
我在何方
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
http://gitlab.jdshangmen.com/jiedao-app/jiedao-app-operator
into dev
parents
b92e5fed
29e05e99
Changes
13
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
178 additions
and
76 deletions
+178
-76
.gitignore
.gitignore
+2
-1
collectI18nMessages.js
collectI18nMessages.js
+27
-0
bg-login.png
src/assets/images/bg-login.png
+0
-0
index.vue
src/views/ecw/customerCommissionInfo/index.vue
+1
-1
index.vue
src/views/ecw/customerConfirm/index.vue
+72
-42
creatCollection.vue
src/views/ecw/financial/creatCollection.vue
+17
-10
creatPayment.vue
src/views/ecw/financial/creatPayment.vue
+18
-4
index.vue
src/views/ecw/myCustomerService/index.vue
+0
-4
index.vue
src/views/ecw/oceanCustomer/index.vue
+0
-5
detail.vue
src/views/ecw/offer/detail.vue
+4
-4
result.vue
src/views/ecw/offer/result.vue
+34
-2
batchSingleApplication.vue
src/views/ecw/order/batchSingleApplication.vue
+1
-1
login.vue
src/views/login.vue
+2
-2
No files found.
.gitignore
View file @
1280a926
...
@@ -9,7 +9,8 @@ yarn-error.log*
...
@@ -9,7 +9,8 @@ yarn-error.log*
tests/**/coverage/
tests/**/coverage/
tests/e2e/reports
tests/e2e/reports
selenium-debug.log
selenium-debug.log
# 提取的需要翻译的文件列表
messages.txt
# Editor directories and files
# Editor directories and files
.idea
.idea
.vscode
.vscode
...
...
collectI18nMessages.js
0 → 100644
View file @
1280a926
const
fs
=
require
(
'
fs
'
);
const
root
=
"
./src
"
let
allFiles
=
[]
function
getFiles
(
dir
){
let
files
=
fs
.
readdirSync
(
dir
)
files
.
forEach
(
file
=>
{
let
path
=
dir
+
'
/
'
+
file
if
(
fs
.
lstatSync
(
path
).
isDirectory
()){
getFiles
(
path
)
}
else
allFiles
.
push
(
path
)
})
}
getFiles
(
root
)
let
messages
=
new
Set
()
allFiles
.
forEach
(
file
=>
{
let
data
=
fs
.
readFileSync
(
file
,
{
encoding
:
'
utf-8
'
})
let
matched
=
data
.
matchAll
(
/
\$
t
\([\'\"]{1}([^\"\']
+
)[\'\"]{1}\)
/g
)
let
i
=
0
for
(
let
item
of
matched
){
i
++
messages
.
add
(
item
[
1
])
}
})
fs
.
writeFileSync
(
"
./messages.txt
"
,
Array
.
from
(
messages
).
join
(
"
\n
"
))
console
.
log
(
"
done!
"
)
\ No newline at end of file
src/assets/images/bg-login.png
0 → 100644
View file @
1280a926
719 KB
src/views/ecw/customerCommissionInfo/index.vue
View file @
1280a926
...
@@ -294,7 +294,7 @@ export default {
...
@@ -294,7 +294,7 @@ export default {
{
{
productType
:
0
,
//商品类型
productType
:
0
,
//商品类型
productAttr
:
0
,
//暗佣 产品属性
productAttr
:
0
,
//暗佣 产品属性
darkCommission
:
1
,
//暗佣 佣金
darkCommission
:
''
,
//暗佣 佣金
darkCurrency
:
parseInt
(
this
.
getDictDatas
(
this
.
DICT_TYPE
.
COMMISSION_CURRENCY_TYPE
)[
0
].
value
),
// 暗佣 货币
darkCurrency
:
parseInt
(
this
.
getDictDatas
(
this
.
DICT_TYPE
.
COMMISSION_CURRENCY_TYPE
)[
0
].
value
),
// 暗佣 货币
darkUnit
:
undefined
,
// 暗佣 单位
darkUnit
:
undefined
,
// 暗佣 单位
}
}
...
...
src/views/ecw/customerConfirm/index.vue
View file @
1280a926
...
@@ -3,46 +3,60 @@
...
@@ -3,46 +3,60 @@
<!-- 搜索工作栏 -->
<!-- 搜索工作栏 -->
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"68px"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"68px"
>
<el-form-item
label=
"客户编号
"
prop=
"number"
>
<el-form-item
:label=
"$t('客户编号')
"
prop=
"number"
>
<el-input
v-model=
"queryParams.number"
placeholder=
"请输入客户编号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.number"
placeholder=
"请输入客户编号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"客户名称
"
prop=
"name"
>
<el-form-item
:label=
"$t('客户名称')
"
prop=
"name"
>
<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=
"$t('客户等级')
"
prop=
"level"
>
<el-select
v-model=
"queryParams.level"
placeholder=
"请选择客户等级
"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.level"
:placeholder=
"$t('请选择客户等级')
"
clearable
size=
"small"
>
<el-option
v-for=
"dict in
this.
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=
"客户来源"
prop=
"source"
>
<el-form-item
:label=
"$t('联系方式')"
>
<el-select
v-model=
"queryParams.source"
placeholder=
"请选择客户来源"
clearable
size=
"small"
>
<el-input
:placeholder=
"$t('请输入联系方式')"
v-model=
"queryParams.defaultContactPhone"
></el-input>
<el-option
v-for=
"dict in this.getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
</el-form-item>
<el-form-item
:label=
"$t('客户类别')"
prop=
"level"
>
<dict-selector
:type=
"DICT_TYPE.CUSTOMER_TYPE"
multiple
v-model=
"queryParams.type"
></dict-selector>
</el-form-item>
<el-form-item
:label=
"$t('客户经理')"
prop=
"customerService"
>
<el-select
clearable
v-model=
"queryParams.customerService"
:placeholder=
"$t('请选择客户经理')"
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=
"$t('客户来源')"
prop=
"source"
>
<el-select
clearable
v-model=
"queryParams.source"
:placeholder=
"$t('请选择客户来源')"
clearable
size=
"small"
>
<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=
"$t('国家')"
prop=
"sour
ce"
>
<el-select
v-model=
"queryParams.customerService"
placeholder=
"请选择客户经理"
clearable
size=
"small
"
>
<el-select
clearable
v-model=
"form.country"
:placeholder=
"$t('请选择国家')
"
>
<el-option
v-for=
"dict in
serviceStaffOptions
"
<el-option
v-for=
"dict in
countryList
"
:key=
"dict.id"
:label=
"dict.nickname"
:value=
"dict.id"
/>
:key=
"dict.id"
:label=
"dict.nameZh"
:value=
"parseInt(dict.id)"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"客户状态
"
prop=
"status"
>
<el-form-item
:label=
"$t('客户状态')
"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择客户状态
"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.status"
:placeholder=
"$t('请选择客户状态')
"
clearable
size=
"small"
>
<el-option
v-for=
"dict in
this.
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-form-item
:label=
"$t('创建时间')"
>
<el-input
v-model=
"queryParams.department"
placeholder=
"请输入部门"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-date-picker
clearable
v-model=
"dateRangeCreateTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"-"
:start-placeholder=
"$t('开始日期')"
:end-placeholder=
"$t('结束日期')"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"创建时间"
>
<el-form-item
:label=
"$t('信用等级')"
prop=
"department"
>
<el-date-picker
v-model=
"dateRangeCreateTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
<el-select
clearable
v-model=
"form.level"
>
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
/>
<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-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
type=
"primary"
icon=
"el-icon-search"
@
click=
"handleQuery"
>
{{
$t
(
'
搜索
'
)
}}
</el-button>
<el-button
icon=
"el-icon-refresh"
@
click=
"resetQuery"
>
重置
</el-button>
<el-button
icon=
"el-icon-refresh"
@
click=
"resetQuery"
>
{{
$t
(
'
重置
'
)
}}
</el-button>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
...
@@ -58,38 +72,36 @@
...
@@ -58,38 +72,36 @@
<!-- 列表 -->
<!-- 列表 -->
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table-column
label=
"客户编号
"
align=
"center"
prop=
"number"
/>
<el-table-column
:label=
"$t('客户编号')
"
align=
"center"
prop=
"number"
/>
<el-table-column
label=
"客户名称
"
align=
"center"
prop=
"name"
/>
<el-table-column
:label=
"$t('客户名称')
"
align=
"center"
prop=
"name"
/>
<el-table-column
label=
"客户等级"
align=
"center"
prop=
"level
"
>
<el-table-column
:label=
"$t('客户等级')"
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=
"$t('信用等级')"
prop=
"creditLevelNameZh"
></el-table-column>
<
template
slot-scope=
"scope"
>
<el-table-column
:label=
"$t('客户状态')"
align=
"center"
prop=
"status"
>
<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"
>
<
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=
"$t('主联系人')"
prop=
"defaultContactName"
></el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<el-table-column
:label=
"$t('主联系方式')"
prop=
"defaultContactPhone"
></el-table-column>
<el-table-column
:label=
"$t('创建时间')"
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=
"$t('客户经理')"
align=
"center"
prop=
"customerService"
:formatter=
"customerServiceFn"
>
</el-table-column>
<el-table-column
:label=
"$t('国家')"
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-delete"
@
click=
"handleConfirmService(scope.row)"
<el-button
size=
"mini"
type=
"text"
@
click=
"handleConfirmService(scope.row)"
v-hasPermi=
"['ecw:customer:update']"
>
确认接收
</el-button>
v-hasPermi=
"['ecw:customer:update']"
>
确认接收
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handOver(scope.row)"
<el-button
size=
"mini"
type=
"text"
@
click=
"handOver(scope.row)"
v-hasPermi=
"['ecw:customer:update']"
>
移交
</el-button>
v-hasPermi=
"['ecw:customer:update']"
>
移交
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
<el-button
size=
"mini"
type=
"text"
@
click=
"handleUpdate(scope.row)"
v-hasPermi=
"['ecw:customer:update']"
>
完善
</el-button>
v-hasPermi=
"['ecw:customer:update']"
>
完善
</el-button>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
...
@@ -314,6 +326,8 @@ import { listServiceUser } from "@/api/system/user"
...
@@ -314,6 +326,8 @@ import { listServiceUser } from "@/api/system/user"
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
import
{
CommonStatusEnum
}
from
'
@/utils/constants
'
import
{
CommonStatusEnum
}
from
'
@/utils/constants
'
import
{
handOverCustomer
}
from
"
../../../api/ecw/customer
"
;
import
{
handOverCustomer
}
from
"
../../../api/ecw/customer
"
;
import
{
getCountryListAll
}
from
"
@/api/ecw/country
"
;
import
{
getCreditPage
}
from
"
@/api/customer/credit
"
;
...
@@ -360,17 +374,33 @@ export default {
...
@@ -360,17 +374,33 @@ export default {
weightUnit
:
[{
required
:
true
,
message
:
"
重货标准(CBM)不能为空
"
,
trigger
:
"
blur
"
}],
weightUnit
:
[{
required
:
true
,
message
:
"
重货标准(CBM)不能为空
"
,
trigger
:
"
blur
"
}],
},
},
serviceStaffOptions
:
[]
serviceStaffOptions
:
[],
customerServiceList
:[],
countryList
:[],
creditList
:[]
};
};
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
getCreditPage
({
page
:
1
,
rows
:
999
}).
then
(
r
=>
{
this
.
creditList
=
r
.
data
.
list
})
// 获得客服人员列表
// 获得客服人员列表
listServiceUser
().
then
(
response
=>
{
listServiceUser
().
then
(
response
=>
{
this
.
serviceStaffOptions
=
response
.
data
;
this
.
serviceStaffOptions
=
response
.
data
;
})
})
listServiceUser
().
then
(
r
=>
{
this
.
customerServiceList
=
r
.
data
;
})
getCountryListAll
().
then
(
r
=>
{
this
.
countryList
=
r
.
data
})
},
},
methods
:
{
methods
:
{
countryFormatter
(
row
,
column
,
cellValue
)
{
const
country
=
this
.
countryList
.
find
((
e
)
=>
e
.
id
===
cellValue
)
return
country
?.
nameZh
},
customerServiceFn
(
row
){
customerServiceFn
(
row
){
let
obj
=
this
.
serviceStaffOptions
.
find
(
item
=>
item
.
id
===
row
.
customerService
)
let
obj
=
this
.
serviceStaffOptions
.
find
(
item
=>
item
.
id
===
row
.
customerService
)
return
obj
?
obj
.
nickname
:
''
;
return
obj
?
obj
.
nickname
:
''
;
...
...
src/views/ecw/financial/creatCollection.vue
View file @
1280a926
...
@@ -137,7 +137,7 @@
...
@@ -137,7 +137,7 @@
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
discountTotal
?
`${scope.row.discountTotal
}
`
:
0
}}
<
/span
>
<span>
{{
scope
.
row
.
discountTotal
?
`${scope.row.discountTotal
}
`
:
0
}}
<
/span
>
<
dict
-
tag
:
type
=
"
DICT_TYPE.BOX_SHIPPING_PRICE_UNIT
"
:
value
=
"
scope.row.currencyId
"
/>
<
dict
-
tag
:
type
=
"
DICT_TYPE.BOX_SHIPPING_PRICE_UNIT
"
:
value
=
"
scope.row.currencyId
"
/>
<
span
>
{{
scope
.
row
.
discountRemark
?(
'
(
'
+
scope
.
row
.
discountRemark
+
'
)
'
):
''
}}
<
/span
>
<
span
v
-
if
=
"
scope.row.discountTotal
"
>
{{
scope
.
row
.
discountRemark
?(
'
(
'
+
scope
.
row
.
discountRemark
+
'
)
'
):
''
}}
<
/span
>
<
/template
>
<
/template
>
<
/el-table-column
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
操作
"
align
=
"
center
"
>
<
el
-
table
-
column
label
=
"
操作
"
align
=
"
center
"
>
...
@@ -262,7 +262,7 @@
...
@@ -262,7 +262,7 @@
<
/el-table-column
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
应收金额
"
align
=
"
center
"
prop
=
"
receivableAmount
"
>
<
el
-
table
-
column
label
=
"
应收金额
"
align
=
"
center
"
prop
=
"
receivableAmount
"
>
<
template
slot
-
scope
=
"
scope
"
v
-
if
=
"
scope.row.type !== 'total'
"
>
<
template
slot
-
scope
=
"
scope
"
v
-
if
=
"
scope.row.type !== 'total'
"
>
{{
`${
scope.row.receivableAmount - scope.row.discountTotal
}
(${scope.row.receivableAmount
}
- ${scope.row.discountTotal
}
)
`
}}
{{
`${
NP.minus(scope.row.receivableAmount, scope.row.discountTotal)
}
${scope.row.discountTotal > 0 ? `
(
$
{
scope
.
row
.
receivableAmount
}
-
$
{
scope
.
row
.
discountTotal
}
)
` : ''
}
`
}}
<
/template
>
<
/template
>
<
/el-table-column
>
<
/el-table-column
>
<
el
-
table
-
column
align
=
"
center
"
width
=
"
220
"
>
<
el
-
table
-
column
align
=
"
center
"
width
=
"
220
"
>
...
@@ -648,6 +648,7 @@ export default {
...
@@ -648,6 +648,7 @@ export default {
}
,
}
,
data
()
{
data
()
{
return
{
return
{
NP
,
loadings
:
false
,
loadings
:
false
,
loading1
:
false
,
loading1
:
false
,
uploadFileUrl
:
process
.
env
.
VUE_APP_BASE_API
+
"
/app-api/file/upload
"
,
// 上传的图片服务器地址
uploadFileUrl
:
process
.
env
.
VUE_APP_BASE_API
+
"
/app-api/file/upload
"
,
// 上传的图片服务器地址
...
@@ -688,7 +689,8 @@ export default {
...
@@ -688,7 +689,8 @@ export default {
discountVisible
:
false
,
discountVisible
:
false
,
discountForm
:
{
}
,
discountForm
:
{
}
,
selectListRow
:
{
}
,
selectListRow
:
{
}
,
selectListIndex
:
0
selectListIndex
:
0
,
flag
:
false
}
;
}
;
}
,
}
,
async
created
()
{
async
created
()
{
...
@@ -700,6 +702,7 @@ export default {
...
@@ -700,6 +702,7 @@ export default {
let
that
=
this
;
let
that
=
this
;
if
(
that
.
$route
.
query
.
id
)
{
if
(
that
.
$route
.
query
.
id
)
{
this
.
flag
=
true
this
.
id
=
this
.
$route
.
query
.
id
;
this
.
id
=
this
.
$route
.
query
.
id
;
console
.
log
(
this
.
id
)
console
.
log
(
this
.
id
)
getReceiptInfoByIds
({
id
:
this
.
id
}
).
then
(
res
=>
{
getReceiptInfoByIds
({
id
:
this
.
id
}
).
then
(
res
=>
{
...
@@ -991,17 +994,21 @@ export default {
...
@@ -991,17 +994,21 @@ export default {
return
NP
.
divide
(
this
.
currencyList
.
find
(
v
=>
v
.
titleEn
===
'
NGN
'
).
huilv
,
100
).
toFixed
(
6
)
return
NP
.
divide
(
this
.
currencyList
.
find
(
v
=>
v
.
titleEn
===
'
NGN
'
).
huilv
,
100
).
toFixed
(
6
)
}
,
}
,
customerChange
(
value
)
{
customerChange
(
value
)
{
if
(
this
.
flag
)
{
this
.
flag
=
false
return
}
this
.
form
.
customerName
=
value
.
name
this
.
form
.
customerName
=
value
.
name
this
.
form
.
customerId
&&
getCustomer
(
this
.
form
.
customerId
).
then
(
res
=>
{
this
.
form
.
customerId
&&
getCustomer
(
this
.
form
.
customerId
).
then
(
res
=>
{
this
.
form
=
{
this
.
form
=
{
...
this
.
form
,
...
this
.
form
,
invoice
:
this
.
form
.
invoice
||
res
.
data
.
invoiceTitle
,
invoice
:
res
.
data
.
invoiceTitle
,
taxpayer
:
this
.
form
.
taxpayer
||
res
.
data
.
licenseNumber
,
taxpayer
:
res
.
data
.
licenseNumber
,
accountBank
:
this
.
form
.
accountBank
||
res
.
data
.
bank
,
accountBank
:
res
.
data
.
bank
,
accountName
:
this
.
form
.
accountName
||
res
.
data
.
bankNumber
,
accountName
:
res
.
data
.
bankNumber
,
projectName
:
this
.
form
.
projectName
||
res
.
data
.
project
,
projectName
:
res
.
data
.
project
,
taxRate
:
this
.
form
.
taxRate
||
res
.
data
.
taxRate
,
taxRate
:
res
.
data
.
taxRate
,
addressPhone
:
this
.
form
.
addressPhone
||
`${res.data.billingAddress || ''
}
/${res.data.billingTell || ''
}
`
,
addressPhone
:
`${res.data.billingAddress || ''
}
/${res.data.billingTell || ''
}
`
,
}
}
}
)
}
)
}
,
}
,
...
...
src/views/ecw/financial/creatPayment.vue
View file @
1280a926
...
@@ -246,7 +246,7 @@
...
@@ -246,7 +246,7 @@
</el-form>
</el-form>
</el-card>
</el-card>
<div
slot=
"footer"
style=
"margin: 20px 0"
>
<div
slot=
"footer"
style=
"margin: 20px 0"
>
<
el-button
type=
"primary"
@
click=
"submitDraft"
>
保 存
</el-button
>
<
!-- <el-button type="primary" @click="submitDraft">保 存</el-button> --
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
新 增
</el-button>
<el-button
type=
"primary"
@
click=
"submitForm"
>
新 增
</el-button>
</div>
</div>
<el-dialog
<el-dialog
...
@@ -416,6 +416,8 @@ import { listSimpleDepts } from "@/api/system/dept";
...
@@ -416,6 +416,8 @@ import { listSimpleDepts } from "@/api/system/dept";
import
{
getTradeCityList
}
from
"
@/api/ecw/region
"
;
import
{
getTradeCityList
}
from
"
@/api/ecw/region
"
;
import
{
getSupplierPage
,
getSupplier
}
from
"
@/api/ecw/supplier
"
;
import
{
getSupplierPage
,
getSupplier
}
from
"
@/api/ecw/supplier
"
;
import
{
getPayableList
,
getPayableInfoByIds
,
createPayment
,
getPaymentInfoByIds
,
getPaymentItem
,
updatePayment
}
from
"
@/api/ecw/financial
"
import
{
getPayableList
,
getPayableInfoByIds
,
createPayment
,
getPaymentInfoByIds
,
getPaymentItem
,
updatePayment
}
from
"
@/api/ecw/financial
"
import
{
getCurrencyPage
}
from
"
@/api/ecw/currency
"
;
import
NP
from
'
number-precision
'
export
default
{
export
default
{
name
:
"
CreatPayment
"
,
name
:
"
CreatPayment
"
,
components
:
{
components
:
{
...
@@ -448,10 +450,12 @@ export default {
...
@@ -448,10 +450,12 @@ export default {
},
},
multipleSelection
:
[],
multipleSelection
:
[],
tradeCityList
:
[],
tradeCityList
:
[],
allSupplier
:
[]
allSupplier
:
[],
currencyList
:
[],
};
};
},
},
created
()
{
async
created
()
{
await
getCurrencyPage
(
this
.
params
).
then
(
res
=>
this
.
currencyList
=
res
.
data
.
list
)
let
that
=
this
;
let
that
=
this
;
if
(
that
.
$route
.
query
.
payableId
&&
that
.
$route
.
query
.
payableId
!==
'
0
'
)
{
if
(
that
.
$route
.
query
.
payableId
&&
that
.
$route
.
query
.
payableId
!==
'
0
'
)
{
this
.
payableId
=
this
.
$route
.
query
.
payableId
;
this
.
payableId
=
this
.
$route
.
query
.
payableId
;
...
@@ -627,8 +631,18 @@ export default {
...
@@ -627,8 +631,18 @@ export default {
// t && (this.bankData = t.bankList)
// t && (this.bankData = t.bankList)
},
},
handleQuery
()
{},
handleQuery
()
{},
UStoRMB
()
{
return
NP
.
divide
(
this
.
currencyList
.
find
(
v
=>
v
.
titleEn
===
'
USD
'
).
huilv
,
100
).
toFixed
(
6
)
},
NANtoRMB
()
{
return
NP
.
divide
(
this
.
currencyList
.
find
(
v
=>
v
.
titleEn
===
'
NGN
'
).
huilv
,
100
).
toFixed
(
6
)
},
handleSelectionChange
(
val
)
{
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
;
this
.
multipleSelection
=
val
.
map
(
v
=>
{
if
(
v
.
currencyId
===
1
)
return
Object
.
assign
(
v
,
{
exchangeRate
:
this
.
UStoRMB
()
})
if
(
v
.
currencyId
===
2
)
return
Object
.
assign
(
v
,
{
exchangeRate
:
1
})
if
(
v
.
currencyId
===
3
)
return
Object
.
assign
(
v
,
{
exchangeRate
:
this
.
NANtoRMB
()
})
});
},
},
hiddenDialog
()
{
hiddenDialog
()
{
this
.
open
=
false
;
this
.
open
=
false
;
...
...
src/views/ecw/myCustomerService/index.vue
View file @
1280a926
...
@@ -71,10 +71,6 @@
...
@@ -71,10 +71,6 @@
<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']"
>
{{
$t
(
'
导出
'
)
}}
</el-button>
v-hasPermi=
"['ecw:customer:export']"
>
{{
$t
(
'
导出
'
)
}}
</el-button>
</el-col>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
:disabled=
"selectCustomerList.length === 0"
type=
"primary"
size=
"mini"
@
click=
"show = true;"
:loading=
"exportLoading"
v-hasPermi=
"['ecw:customer:export']"
>
{{
$t
(
'
批量移交
'
)
}}
</el-button>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
</el-row>
...
...
src/views/ecw/oceanCustomer/index.vue
View file @
1280a926
...
@@ -70,11 +70,6 @@
...
@@ -70,11 +70,6 @@
<el-col
:span=
"1.5"
>
<el-col
:span=
"1.5"
>
<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']"
>
{{
$t
(
'
导出
'
)
}}
</el-button>
v-hasPermi=
"['ecw:customer:export']"
>
{{
$t
(
'
导出
'
)
}}
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"primary"
size=
"mini"
@
click=
"batchHandover"
:disabled=
"multipleSelection.length === 0"
>
{{
$t
(
'
批量移交
'
)
}}
</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>
...
...
src/views/ecw/offer/detail.vue
View file @
1280a926
...
@@ -105,10 +105,10 @@
...
@@ -105,10 +105,10 @@
<dict-tag
:value=
"scope.row.unit"
:type=
"DICT_TYPE.ECW_PACKAGING_TYPE"
defaultable
/>
<dict-tag
:value=
"scope.row.unit"
:type=
"DICT_TYPE.ECW_PACKAGING_TYPE"
defaultable
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('箱规
(m)')
"
width=
"120px"
prop=
"boxGauge"
/>
<el-table-column
:label=
"$t('箱规
') + '(m)'
"
width=
"120px"
prop=
"boxGauge"
/>
<el-table-column
:label=
"$t('体积
(m³)')
"
width=
"100px"
prop=
"volume"
/>
<el-table-column
:label=
"$t('体积
') + '(m³)'
"
width=
"100px"
prop=
"volume"
/>
<el-table-column
:label=
"$t('重量
(kg)')
"
width=
"100px"
prop=
"weight"
/>
<el-table-column
:label=
"$t('重量
') + '(kg)'
"
width=
"100px"
prop=
"weight"
/>
<el-table-column
:label=
"$t('货值
(RMB)')
"
width=
"100px"
prop=
"worth"
/>
<el-table-column
:label=
"$t('货值
') + '(RMB)'
"
width=
"100px"
prop=
"worth"
/>
<el-table-column
:label=
"$t('商品特性')"
width=
"200px"
prop=
"prodAttrName"
/>
<el-table-column
:label=
"$t('商品特性')"
width=
"200px"
prop=
"prodAttrName"
/>
<el-table-column
:label=
"$t('是否预付')"
>
<el-table-column
:label=
"$t('是否预付')"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
...
...
src/views/ecw/offer/result.vue
View file @
1280a926
...
@@ -15,7 +15,23 @@
...
@@ -15,7 +15,23 @@
<dict-selector
:type=
"DICT_TYPE.ECW_WAREHOUSING_TYPE"
v-model=
"form.warehousingType"
/>
<dict-selector
:type=
"DICT_TYPE.ECW_WAREHOUSING_TYPE"
v-model=
"form.warehousingType"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"关联订单"
prop=
"orderIds"
>
<el-form-item
label=
"关联订单"
prop=
"orderIds"
>
<el-input
v-model=
"form.orderIds"
style=
"width: 206px;"
></el-input>
<!--
<el-input
v-model=
"form.orderIds"
style=
"width: 206px;"
></el-input>
-->
<el-select
v-model=
"form.orderNo"
filterable
remote
reserve-keyword
placeholder=
"订单号"
@
focus=
"checkOptions"
:remote-method=
"remoteMethod"
:loading=
"selectLoading"
>
<el-option
v-for=
"item in orderNoList"
:key=
"item.value"
:label=
"item.value"
:value=
"item.value"
>
</el-option>
</el-select>
</el-form-item>
</el-form-item>
</
template
>
</
template
>
<
template
v-else
>
<
template
v-else
>
...
@@ -39,6 +55,7 @@ import RoutersSelector from '@/components/RoutersSelector'
...
@@ -39,6 +55,7 @@ import RoutersSelector from '@/components/RoutersSelector'
import
ProductsSelector
from
'
@/components/ProductsSelector
'
import
ProductsSelector
from
'
@/components/ProductsSelector
'
import
Editor
from
'
@/components/Editor
'
import
Editor
from
'
@/components/Editor
'
import
Selector
from
'
@/components/Selector/index
'
import
Selector
from
'
@/components/Selector/index
'
import
{
getOrderNoSearch
}
from
'
@/api/ecw/order
'
export
default
{
export
default
{
name
:
"
OfferResult
"
,
name
:
"
OfferResult
"
,
components
:
{
CustomersSelector
,
RoutersSelector
,
ProductsSelector
,
Editor
,
Selector
},
components
:
{
CustomersSelector
,
RoutersSelector
,
ProductsSelector
,
Editor
,
Selector
},
...
@@ -59,7 +76,9 @@ export default {
...
@@ -59,7 +76,9 @@ export default {
// 表单校验
// 表单校验
rules
:
{
rules
:
{
warehousingType
:
{
required
:
true
,
message
:
'
请选择入仓类型
'
}
warehousingType
:
{
required
:
true
,
message
:
'
请选择入仓类型
'
}
}
},
selectLoading
:
false
,
orderNoList
:
[]
};
};
},
},
computed
:
{
computed
:
{
...
@@ -97,6 +116,19 @@ export default {
...
@@ -97,6 +116,19 @@ export default {
});
});
});
});
},
},
remoteMethod
(
query
){
this
.
selectLoading
=
true
getOrderNoSearch
({
key
:
query
,
pageSize
:
200
}).
then
(
res
=>
{
this
.
orderNoList
=
res
.
data
.
list
}).
finally
(
res
=>
{
this
.
selectLoading
=
false
})
},
checkOptions
(){
if
(
!
this
.
orderNoList
.
length
){
this
.
remoteMethod
(
""
)
}
}
},
},
};
};
</
script
>
</
script
>
\ No newline at end of file
src/views/ecw/order/batchSingleApplication.vue
View file @
1280a926
...
@@ -31,7 +31,7 @@
...
@@ -31,7 +31,7 @@
<div>
重量:
{{
row
.
sumWeight
||
0
}}
KG
</div>
<div>
重量:
{{
row
.
sumWeight
||
0
}}
KG
</div>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"入仓时间"
>
<el-table-column
label=
"入仓时间"
prop=
"rucangTime"
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"运输方式"
>
<el-table-column
label=
"运输方式"
>
...
...
src/views/login.vue
View file @
1280a926
...
@@ -207,13 +207,13 @@ export default {
...
@@ -207,13 +207,13 @@ export default {
};
};
</
script
>
</
script
>
<
style
rel=
"stylesheet/scss"
lang=
"scss"
>
<
style
lang=
"scss"
scoped
>
.login
{
.login
{
display
:
flex
;
display
:
flex
;
justify-content
:
center
;
justify-content
:
center
;
align-items
:
center
;
align-items
:
center
;
height
:
100%
;
height
:
100%
;
background-image
:
url(
"https://musician-release-1305250541.file.myqcloud.com/static/bg-login.png"
)
;
background-image
:
url(
../assets/images/bg-login.png
)
;
background-size
:
cover
;
background-size
:
cover
;
}
}
.title
{
.title
{
...
...
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