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
Expand all
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*
tests/**/coverage/
tests/e2e/reports
selenium-debug.log
# 提取的需要翻译的文件列表
messages.txt
# Editor directories and files
.idea
.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 {
{
productType
:
0
,
//商品类型
productAttr
:
0
,
//暗佣 产品属性
darkCommission
:
1
,
//暗佣 佣金
darkCommission
:
''
,
//暗佣 佣金
darkCurrency
:
parseInt
(
this
.
getDictDatas
(
this
.
DICT_TYPE
.
COMMISSION_CURRENCY_TYPE
)[
0
].
value
),
// 暗佣 货币
darkUnit
:
undefined
,
// 暗佣 单位
}
...
...
src/views/ecw/customerConfirm/index.vue
View file @
1280a926
This diff is collapsed.
Click to expand it.
src/views/ecw/financial/creatCollection.vue
View file @
1280a926
...
...
@@ -137,7 +137,7 @@
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
discountTotal
?
`${scope.row.discountTotal
}
`
:
0
}}
<
/span
>
<
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
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
操作
"
align
=
"
center
"
>
...
...
@@ -262,7 +262,7 @@
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
应收金额
"
align
=
"
center
"
prop
=
"
receivableAmount
"
>
<
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
>
<
/el-table-column
>
<
el
-
table
-
column
align
=
"
center
"
width
=
"
220
"
>
...
...
@@ -648,6 +648,7 @@ export default {
}
,
data
()
{
return
{
NP
,
loadings
:
false
,
loading1
:
false
,
uploadFileUrl
:
process
.
env
.
VUE_APP_BASE_API
+
"
/app-api/file/upload
"
,
// 上传的图片服务器地址
...
...
@@ -688,7 +689,8 @@ export default {
discountVisible
:
false
,
discountForm
:
{
}
,
selectListRow
:
{
}
,
selectListIndex
:
0
selectListIndex
:
0
,
flag
:
false
}
;
}
,
async
created
()
{
...
...
@@ -700,6 +702,7 @@ export default {
let
that
=
this
;
if
(
that
.
$route
.
query
.
id
)
{
this
.
flag
=
true
this
.
id
=
this
.
$route
.
query
.
id
;
console
.
log
(
this
.
id
)
getReceiptInfoByIds
({
id
:
this
.
id
}
).
then
(
res
=>
{
...
...
@@ -991,17 +994,21 @@ export default {
return
NP
.
divide
(
this
.
currencyList
.
find
(
v
=>
v
.
titleEn
===
'
NGN
'
).
huilv
,
100
).
toFixed
(
6
)
}
,
customerChange
(
value
)
{
if
(
this
.
flag
)
{
this
.
flag
=
false
return
}
this
.
form
.
customerName
=
value
.
name
this
.
form
.
customerId
&&
getCustomer
(
this
.
form
.
customerId
).
then
(
res
=>
{
this
.
form
=
{
...
this
.
form
,
invoice
:
this
.
form
.
invoice
||
res
.
data
.
invoiceTitle
,
taxpayer
:
this
.
form
.
taxpayer
||
res
.
data
.
licenseNumber
,
accountBank
:
this
.
form
.
accountBank
||
res
.
data
.
bank
,
accountName
:
this
.
form
.
accountName
||
res
.
data
.
bankNumber
,
projectName
:
this
.
form
.
projectName
||
res
.
data
.
project
,
taxRate
:
this
.
form
.
taxRate
||
res
.
data
.
taxRate
,
addressPhone
:
this
.
form
.
addressPhone
||
`${res.data.billingAddress || ''
}
/${res.data.billingTell || ''
}
`
,
invoice
:
res
.
data
.
invoiceTitle
,
taxpayer
:
res
.
data
.
licenseNumber
,
accountBank
:
res
.
data
.
bank
,
accountName
:
res
.
data
.
bankNumber
,
projectName
:
res
.
data
.
project
,
taxRate
:
res
.
data
.
taxRate
,
addressPhone
:
`${res.data.billingAddress || ''
}
/${res.data.billingTell || ''
}
`
,
}
}
)
}
,
...
...
src/views/ecw/financial/creatPayment.vue
View file @
1280a926
...
...
@@ -246,7 +246,7 @@
</el-form>
</el-card>
<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>
</div>
<el-dialog
...
...
@@ -416,6 +416,8 @@ import { listSimpleDepts } from "@/api/system/dept";
import
{
getTradeCityList
}
from
"
@/api/ecw/region
"
;
import
{
getSupplierPage
,
getSupplier
}
from
"
@/api/ecw/supplier
"
;
import
{
getPayableList
,
getPayableInfoByIds
,
createPayment
,
getPaymentInfoByIds
,
getPaymentItem
,
updatePayment
}
from
"
@/api/ecw/financial
"
import
{
getCurrencyPage
}
from
"
@/api/ecw/currency
"
;
import
NP
from
'
number-precision
'
export
default
{
name
:
"
CreatPayment
"
,
components
:
{
...
...
@@ -448,10 +450,12 @@ export default {
},
multipleSelection
:
[],
tradeCityList
:
[],
allSupplier
:
[]
allSupplier
:
[],
currencyList
:
[],
};
},
created
()
{
async
created
()
{
await
getCurrencyPage
(
this
.
params
).
then
(
res
=>
this
.
currencyList
=
res
.
data
.
list
)
let
that
=
this
;
if
(
that
.
$route
.
query
.
payableId
&&
that
.
$route
.
query
.
payableId
!==
'
0
'
)
{
this
.
payableId
=
this
.
$route
.
query
.
payableId
;
...
...
@@ -627,8 +631,18 @@ export default {
// t && (this.bankData = t.bankList)
},
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
)
{
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
()
{
this
.
open
=
false
;
...
...
src/views/ecw/myCustomerService/index.vue
View file @
1280a926
...
...
@@ -71,10 +71,6 @@
<el-button
type=
"warning"
plain
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
:loading=
"exportLoading"
v-hasPermi=
"['ecw:customer:export']"
>
{{
$t
(
'
导出
'
)
}}
</el-button>
</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>
</el-row>
...
...
src/views/ecw/oceanCustomer/index.vue
View file @
1280a926
...
...
@@ -70,11 +70,6 @@
<el-col
:span=
"1.5"
>
<el-button
type=
"warning"
plain
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
:loading=
"exportLoading"
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>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
...
...
src/views/ecw/offer/detail.vue
View file @
1280a926
...
...
@@ -105,10 +105,10 @@
<dict-tag
:value=
"scope.row.unit"
:type=
"DICT_TYPE.ECW_PACKAGING_TYPE"
defaultable
/>
</
template
>
</el-table-column>
<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('重量
(kg)')
"
width=
"100px"
prop=
"weight"
/>
<el-table-column
:label=
"$t('货值
(RMB)')
"
width=
"100px"
prop=
"worth"
/>
<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('重量
') + '(kg)'
"
width=
"100px"
prop=
"weight"
/>
<el-table-column
:label=
"$t('货值
') + '(RMB)'
"
width=
"100px"
prop=
"worth"
/>
<el-table-column
:label=
"$t('商品特性')"
width=
"200px"
prop=
"prodAttrName"
/>
<el-table-column
:label=
"$t('是否预付')"
>
<
template
slot-scope=
"scope"
>
...
...
src/views/ecw/offer/result.vue
View file @
1280a926
...
...
@@ -15,7 +15,23 @@
<dict-selector
:type=
"DICT_TYPE.ECW_WAREHOUSING_TYPE"
v-model=
"form.warehousingType"
/>
</el-form-item>
<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>
</
template
>
<
template
v-else
>
...
...
@@ -39,6 +55,7 @@ import RoutersSelector from '@/components/RoutersSelector'
import
ProductsSelector
from
'
@/components/ProductsSelector
'
import
Editor
from
'
@/components/Editor
'
import
Selector
from
'
@/components/Selector/index
'
import
{
getOrderNoSearch
}
from
'
@/api/ecw/order
'
export
default
{
name
:
"
OfferResult
"
,
components
:
{
CustomersSelector
,
RoutersSelector
,
ProductsSelector
,
Editor
,
Selector
},
...
...
@@ -59,7 +76,9 @@ export default {
// 表单校验
rules
:
{
warehousingType
:
{
required
:
true
,
message
:
'
请选择入仓类型
'
}
}
},
selectLoading
:
false
,
orderNoList
:
[]
};
},
computed
:
{
...
...
@@ -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
>
\ No newline at end of file
src/views/ecw/order/batchSingleApplication.vue
View file @
1280a926
...
...
@@ -31,7 +31,7 @@
<div>
重量:
{{
row
.
sumWeight
||
0
}}
KG
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"入仓时间"
>
<el-table-column
label=
"入仓时间"
prop=
"rucangTime"
>
</el-table-column>
<el-table-column
label=
"运输方式"
>
...
...
src/views/login.vue
View file @
1280a926
...
...
@@ -207,13 +207,13 @@ export default {
};
</
script
>
<
style
rel=
"stylesheet/scss"
lang=
"scss"
>
<
style
lang=
"scss"
scoped
>
.login
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
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
;
}
.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