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
56bbdc0d
Commit
56bbdc0d
authored
Feb 17, 2023
by
我在何方
Browse files
Options
Browse Files
Download
Plain Diff
重货异常字段修改
parents
ddcebbe6
129dda9f
Changes
22
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
277 additions
and
88 deletions
+277
-88
.env.dev
.env.dev
+2
-2
.env.development
.env.development
+3
-7
box.js
src/api/ecw/box.js
+1
-0
order.js
src/api/ecw/order.js
+7
-0
Logo.vue
src/layout/components/Sidebar/Logo.vue
+10
-3
detail.vue
src/views/bpm/processInstance/detail.vue
+2
-0
indexSea.vue
src/views/ecw/box/indexSea.vue
+4
-4
indexSeaAir.vue
src/views/ecw/box/indexSeaAir.vue
+2
-2
index.vue
src/views/ecw/box/ladingBill/index.vue
+13
-6
query.vue
src/views/ecw/box/query.vue
+4
-4
shippingDetail.vue
src/views/ecw/box/shippingDetail.vue
+52
-6
index.vue
src/views/ecw/box/shippingSea/nodePage/cabinet/index.vue
+10
-8
index.vue
src/views/ecw/customer/index.vue
+2
-2
batchSingleApplication.vue
src/views/ecw/order/batchSingleApplication.vue
+21
-5
warehouse-video-list.vue
src/views/ecw/order/components/warehouse-video-list.vue
+60
-0
warehouseDetails.vue
src/views/ecw/order/components/warehouseDetails.vue
+1
-1
edit.vue
src/views/ecw/order/edit.vue
+40
-27
index.vue
src/views/ecw/order/index.vue
+1
-1
transferWarehousing.vue
src/views/ecw/order/transferWarehousing.vue
+27
-8
index.vue
src/views/ecw/order/warehousing/index.vue
+10
-1
login.vue
src/views/login.vue
+2
-1
smsTemplate.vue
src/views/system/sms/smsTemplate.vue
+3
-0
No files found.
.env.dev
View file @
56bbdc0d
...
...
@@ -2,7 +2,7 @@
NODE_ENV = 'production'
# 页面标题
VUE_APP_TITLE = 捷道管理系统
VUE_APP_TITLE = 捷道管理系统
- 测试版
# 捷道管理系统/开发环境
VUE_APP_BASE_API = 'https://api.jd.jdshangmen.com'
...
...
@@ -18,4 +18,4 @@ VUE_APP_TENANT_ENABLE = false
VUE_APP_DOC_ENABLE = true
# 百度统计
VUE_APP_BAIDU_CODE = fadc1bd5db1a1d6f581df60a1807f8ab
VUE_APP_BAIDU_CODE = fadc1bd5db1a1d6f581df60a1807f8ab
\ No newline at end of file
.env.development
View file @
56bbdc0d
...
...
@@ -2,15 +2,11 @@
ENV = 'development'
# 页面标题
VUE_APP_TITLE = 捷道管理系统
VUE_APP_TITLE = 捷道管理系统
-测试站
# 捷道管理系统/开发环境
#VUE_APP_BASE_API = 'https://jd.admtest.jdshangmen.com'
VUE_APP_BASE_API = 'https://api.jd.jdshangmen.com'
#VUE_APP_BASE_API = 'http://localhost:48080'
#VUE_APP_BASE_API = 'https://api2.groupage.cn'
# VUE_APP_BASE_API = '/api
'
VUE_APP_BASE_API = 'https://api.jd.jdshangmen.com
'
# 路由懒加载
VUE_CLI_BABEL_TRANSPILE_MODULES = true
...
...
@@ -22,4 +18,4 @@ VUE_APP_TENANT_ENABLE = false
VUE_APP_DOC_ENABLE = true
# 百度统计
VUE_APP_BAIDU_CODE = fadc1bd5db1a1d6f581df60a1807f8ab
VUE_APP_BAIDU_CODE = fadc1bd5db1a1d6f581df60a1807f8ab
\ No newline at end of file
src/api/ecw/box.js
View file @
56bbdc0d
...
...
@@ -191,6 +191,7 @@ export function zipDownload(params) {
url
:
"
/shipment/make-bill-of-lading/zipDownload
"
,
responseType
:
"
blob
"
,
method
:
"
get
"
,
timeout
:
30000
,
params
,
});
}
...
...
src/api/ecw/order.js
View file @
56bbdc0d
...
...
@@ -498,3 +498,10 @@ export function updateApply(data){
data
})
}
export
function
warehousePictureList
(
data
){
return
request
({
url
:
'
/order/warehouse-picture/list
'
,
method
:
'
post
'
,
data
})
}
src/layout/components/Sidebar/Logo.vue
View file @
56bbdc0d
...
...
@@ -3,11 +3,15 @@
<transition
name=
"sidebarLogoFade"
>
<router-link
v-if=
"collapse"
key=
"collapse"
class=
"sidebar-logo-link"
to=
"/"
>
<img
v-if=
"logo"
:src=
"logo"
class=
"sidebar-logo"
/>
<h1
v-else
class=
"sidebar-title"
:style=
"
{ color: sideTheme === 'theme-dark' ? variables.logoTitleColor : variables.logoLightTitleColor }">
{{
title
}}
</h1>
<h1
v-else
class=
"sidebar-title"
:style=
"
{ color: sideTheme === 'theme-dark' ? variables.logoTitleColor : variables.logoLightTitleColor }">
{{
title
}}
</h1>
</router-link>
<router-link
v-else
key=
"expand"
class=
"sidebar-logo-link"
to=
"/"
>
<img
v-if=
"logo"
:src=
"logo"
class=
"sidebar-logo"
/>
<h1
class=
"sidebar-title"
:style=
"
{ color: sideTheme === 'theme-dark' ? variables.logoTitleColor : variables.logoLightTitleColor }">
{{
title
}}
</h1>
<h1
class=
"sidebar-title"
:style=
"
{ color: sideTheme === 'theme-dark' ? variables.logoTitleColor : variables.logoLightTitleColor }">
{{
title
}}
</h1>
</router-link>
</transition>
</div>
...
...
@@ -33,9 +37,12 @@ export default {
return
this
.
$store
.
state
.
settings
.
sideTheme
}
},
created
(){
console
.
log
(
'
process.env
'
,
process
.
env
)
},
data
()
{
return
{
title
:
'
捷道管理系统
'
,
title
:
process
.
env
.
VUE_APP_TITLE
,
logo
:
logoImg
}
}
...
...
src/views/bpm/processInstance/detail.vue
View file @
56bbdc0d
...
...
@@ -256,10 +256,12 @@ export default {
unload_container
:
{
component
:
"
shippingDetail
"
,
processId
:
this
.
processInstance
.
businessKey
,
type
:
"
unload_container
"
,
},
close_container
:
{
component
:
"
shippingDetail
"
,
processId
:
this
.
processInstance
.
businessKey
,
type
:
"
close_container
"
,
},
shipment_preassemble
:
{
component
:
"
shippingDetail
"
,
...
...
src/views/ecw/box/indexSea.vue
View file @
56bbdc0d
...
...
@@ -119,11 +119,11 @@
{{
$t
(
'
操作
'
)
}}
<i
class=
"el-icon-arrow-down el-icon--right"
></i>
</el-button>
<el-dropdown-menu
slot=
"dropdown"
>
<
el-dropdown-item
:disabled=
"scope.row.ldStatus>=46"
command=
"edit"
>
{{
$t
(
'
编辑
'
)
}}
</el-dropdown-item
>
<
!--
<el-dropdown-item
:disabled=
"scope.row.ldStatus>=46"
command=
"edit"
>
{{
$t
(
'
编辑
'
)
}}
</el-dropdown-item>
--
>
<el-dropdown-item
command=
"sea"
>
{{
$t
(
'
操作-海运
'
)
}}
</el-dropdown-item>
<el-dropdown-item
command=
"error"
>
{{
$t
(
'
异常登记
'
)
}}
</el-dropdown-item>
<el-dropdown-item
command=
"cost"
>
{{
$t
(
'
费用登记
'
)
}}
</el-dropdown-item>
<
el-dropdown-item
command=
"delete"
>
{{
$t
(
'
删除
'
)
}}
</el-dropdown-item
>
<
!--
<el-dropdown-item
command=
"delete"
>
{{
$t
(
'
删除
'
)
}}
</el-dropdown-item>
--
>
<el-dropdown-item
:disabled=
"scope.row.ldStatus
<46
"
command=
"editLadingBill"
>
{{
$t
(
'
编辑提货单
'
)
}}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
...
...
@@ -145,7 +145,7 @@
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.page"
:limit.sync=
"queryParams.
pageSize"
@
pagination=
"getList"
@
current-change=
"pageChange
"
/>
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.page"
:limit.sync=
"queryParams.
rows"
@
pagination=
"getList
"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog
:title=
"dialogCfg.title"
:visible.sync=
"dialogCfg.open"
:width=
"dialogCfg.width"
:fullscreen=
"dialogCfg.fullscreen"
append-to-body
class=
"shippingSea-dialog"
>
...
...
@@ -258,7 +258,7 @@ export default {
// 查询参数
queryParams
:
{
page
:
1
,
pageSize
:
10
,
rows
:
10
,
}
,
cabinetList
:
[],
warehouseList
:
[],
...
...
src/views/ecw/box/indexSeaAir.vue
View file @
56bbdc0d
...
...
@@ -137,7 +137,7 @@
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.page"
:limit.sync=
"queryParams.
pageSize"
@
pagination=
"getList"
@
current-change=
"pageChange
"
/>
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.page"
:limit.sync=
"queryParams.
rows"
@
pagination=
"getList
"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog
:title=
"dialogCfg.title"
:visible.sync=
"dialogCfg.open"
:width=
"dialogCfg.width"
:fullscreen=
"dialogCfg.fullscreen"
append-to-body
class=
"shippingSea-dialog"
>
...
...
@@ -250,7 +250,7 @@ export default {
// 查询参数
queryParams
:
{
page
:
1
,
pageSize
:
10
,
rows
:
10
,
}
,
cabinetList
:
[],
channelList
:
[],
...
...
src/views/ecw/box/ladingBill/index.vue
View file @
56bbdc0d
...
...
@@ -15,9 +15,9 @@
<section
class=
"table-goodList"
>
<div
v-for=
"(item, index) in scope.row.orderItemList"
:key=
"index"
class=
"goodList-div"
>
<p>
{{
$t
(
'
品名
'
)
}}
:
{{
$l
(
item
,
'
prodTitle
'
)
}}
</p>
<p>
{{
$t
(
'
品牌
'
)
}}
:【
<
span
v-if=
"item.feeType === 0"
>
{{
$t
(
'
无品牌
'
)
}}
</span>
<dict-tag
v-else
:type=
"DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
:value=
"item.feeType"
/>
{{
$t
(
'
】
'
)
}}
</p>
<p>
{{
$t
(
'
品牌
'
)
}}
:【
<template
v-if=
"item.brandName"
>
{{
item
.
brandName
}}
</
template
>
<
dict-tag
v-else
:type=
"DICT_TYPE.ECW_IS_BRAND"
:value=
"item.feeType"
/>
{{ $t('】') }}
</p>
<p>
{{$t('其他')}}:{{getTotlContent(item)}}
</p>
</div>
</section>
...
...
@@ -77,8 +77,8 @@
</el-col>
</el-row>
<el-dialog
:title=
"dialogCfg.title"
:visible.sync=
"dialogCfg.visible"
:width=
"dialogCfg.width"
:fullscreen=
"dialogCfg.fullscreen"
append-to-body
class=
"shippingSea-dialog"
>
<makeLadingBill
v-if=
"['makeBill','queryBill','resetBill'].includes(dialogCfg.type)"
:currData=
"currData"
:currRow=
"currRow"
:dialogCfg=
"dialogCfg"
@
closeDialog=
"closeDialog"
:selfNo=
"shipmentObj.selfNo"
/>
<el-dialog
:title=
"dialogCfg.title"
:visible.sync=
"dialogCfg.visible"
:width=
"dialogCfg.width"
:fullscreen=
"dialogCfg.fullscreen"
append-to-body
class=
"shippingSea-dialog"
@
closed=
"dialogclosed"
>
<makeLadingBill
v-if=
"
dialogCfg.visible &&
['makeBill','queryBill','resetBill'].includes(dialogCfg.type)"
:currData=
"currData"
:currRow=
"currRow"
:dialogCfg=
"dialogCfg"
@
closeDialog=
"closeDialog"
:selfNo=
"shipmentObj.selfNo"
/>
<previewBill
v-if=
"dialogCfg.type === 'previewBill'"
:contentHtml=
"currData.billContent"
:currRow=
"currRow"
:type=
"dialogCfg.type"
/>
</el-dialog>
</el-row>
...
...
@@ -126,6 +126,7 @@ export default {
},
// 模板内容
billContent
:
""
,
handleType
:
""
,
};
},
created
()
{
...
...
@@ -163,7 +164,13 @@ export default {
this
.
$emit
(
"
closeDialog
"
);
}
},
dialogclosed
()
{
if
(
this
.
handleType
===
"
resetBill
"
)
{
this
.
getBillList
();
}
},
handleCommand
(
type
,
row
)
{
this
.
handleType
=
type
;
switch
(
type
)
{
case
"
previewBill
"
:
this
.
getBill
(
row
);
...
...
@@ -241,7 +248,7 @@ export default {
computed
:
{
/* 总计 */
getSumData
()
{
return
`
${
this
.
billData
.
totalNum
??
0
}
$
{
this
.
$t
(
'
箱
'
)}
$
{
return
`
${
this
.
billData
.
totalNum
??
0
}
$
{
this
.
$t
(
"
箱
"
)}
$
{
this
.
billData
.
totalVolume
??
0
}
m
³
$
{
this
.
billData
.
totalWeight
??
0
}
kg
`;
},
...
...
src/views/ecw/box/query.vue
View file @
56bbdc0d
...
...
@@ -5,11 +5,11 @@
<div
style=
"display: flex; justify-content: space-between;align-items: flex-end;"
>
<h2>
{{
$t
(
'
出货详情
'
)
}}
</h2>
<div>
<
el-button
size=
"small"
@
click=
"handleCommand('edit')"
>
{{
$t
(
'
编辑
'
)
}}
</el-button
>
<
!--
<el-button
size=
"small"
@
click=
"handleCommand('edit')"
>
{{
$t
(
'
编辑
'
)
}}
</el-button>
--
>
<el-button
size=
"small"
@
click=
"handleCommand('router')"
>
{{
$t
(
'
操作
'
)
}}
</el-button>
<el-button
type=
"primary"
size=
"small"
@
click=
"handleCommand('error')"
>
{{
$t
(
'
异常登记
'
)
}}
</el-button>
<el-button
type=
"primary"
size=
"small"
@
click=
"handleCommand('cost')"
>
{{
$t
(
'
费用登记
'
)
}}
</el-button>
<
el-button
type=
"danger"
size=
"small"
@
click=
"handleCommand('delete')"
>
{{
$t
(
'
删除
'
)
}}
</el-button
>
<
!--
<el-button
type=
"danger"
size=
"small"
@
click=
"handleCommand('delete')"
>
{{
$t
(
'
删除
'
)
}}
</el-button>
--
>
</div>
</div>
<el-card
style=
"margin-top: 15px"
>
...
...
@@ -157,9 +157,9 @@
<dict-tag
:type=
"DICT_TYPE.BOX_SHIPPING_TICKET_EXCEPTION"
:value=
"scope.row.billAbnId"
/>
</
template
>
</el-table-column>
<el-table-column
prop=
"abnDetail"
:label=
"$t('异常描述')"
align=
"center"
width=
"
7
00"
></el-table-column>
<el-table-column
prop=
"abnDetail"
:label=
"$t('异常描述')"
align=
"center"
width=
"
3
00"
></el-table-column>
<el-table-column
prop=
"delayDays"
:label=
"$t('异常延迟天数')"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
:label=
"$t('异常时间')"
align=
"center"
width=
"
3
00"
>
<el-table-column
prop=
""
:label=
"$t('异常时间')"
align=
"center"
width=
"
2
00"
>
<
template
slot-scope=
"scope"
>
<span
v-if=
"scope.row.abnStartTime"
>
{{
formatDate
(
scope
.
row
.
abnStartTime
)
}}
-
</span>
<span
v-if=
"scope.row.abnEndTime"
>
{{
formatDate
(
scope
.
row
.
abnEndTime
)
}}
</span>
...
...
src/views/ecw/box/shippingDetail.vue
View file @
56bbdc0d
...
...
@@ -31,6 +31,19 @@
</div>
</div>
<div
v-if=
"(type === 'unload_container' || type === 'close_container') && srcStrs"
style=
"marginTop:15px"
>
<h1>
{{
$t
(
'
图片
'
)
}}
</h1>
<!--
<ImagePreview
:src=
"srcStrs"
:width=
"146"
:height=
"146"
/>
-->
<div
style=
"display:flex"
>
<el-image
v-for=
"(srcStr, i) in srcStrs"
:key=
"i"
:src=
"srcStr"
fit=
"cover"
style=
"width:146px;height:146px;margin-right:10px"
:preview-src-list=
"[srcStr]"
>
<div
slot=
"error"
class=
"image-slot"
>
<i
class=
"el-icon-picture-outline"
></i>
</div>
</el-image>
</div>
</div>
<el-dialog
:title=
"dialogConfig.title"
:visible.sync=
"dialogConfig.visible"
fullscreen
:modal-append-to-body=
false
append-to-body
>
<el-descriptions
:column=
"6"
border
>
<el-descriptions-item
:label=
"$t('自编号')"
>
{{
boxBackVO
.
selfNo
}}
</el-descriptions-item>
...
...
@@ -91,23 +104,23 @@
<
script
>
import
{
approvalDetail
}
from
"
@/api/ecw/box
"
;
import
{
getSeaStatus
,
getTotlContent
,
}
from
"
./shippingSea/utils
"
;
import
{
getSeaStatus
,
getTotlContent
}
from
"
./shippingSea/utils
"
;
import
{
getCabinetPage
}
from
"
@/api/ecw/cabinet
"
;
import
{
getChannelList
}
from
"
@/api/ecw/channel
"
;
import
Decimal
from
"
decimal.js
"
;
import
ImagePreview
from
"
@/components/ImagePreview
"
;
/**
* 出货审核详情
*/
export
default
{
name
:
"
shippingDetail
"
,
components
:
{
ImagePreview
},
props
:
{
processId
:
{
type
:
[
Number
,
String
],
},
type
:
String
,
},
data
()
{
return
{
...
...
@@ -123,6 +136,7 @@ export default {
title
:
""
,
visible
:
false
,
},
srcStrs
:
[],
};
},
created
()
{
...
...
@@ -136,6 +150,17 @@ export default {
this
.
approvalInfo
=
res
.
data
.
approvalInfo
;
this
.
boxBackVO
=
res
.
data
.
boxBackVO
;
this
.
loadDetail
=
res
.
data
.
loadDetail
;
if
(
this
.
type
===
"
close_container
"
&&
res
.
data
.
cabinetVO
)
{
const
ldPictures
=
res
.
data
.
cabinetVO
.
ldPictures
?
JSON
.
parse
(
res
.
data
.
cabinetVO
.
ldPictures
)
:
[];
this
.
srcStrs
=
ldPictures
.
map
((
item
)
=>
item
.
url
);
}
if
(
this
.
type
===
"
unload_container
"
&&
res
.
data
.
cabinetUnloadVO
)
{
this
.
srcStrs
=
res
.
data
.
cabinetUnloadVO
.
ulImgs
?
res
.
data
.
cabinetUnloadVO
.
ulImgs
.
split
(
"
,
"
)
:
[];
}
});
},
/* 获取柜型 */
...
...
@@ -155,7 +180,7 @@ export default {
this
.
$set
(
this
.
dialogConfig
,
"
title
"
,
`
${
this
.
boxBackVO
.
selfNo
}
`
+
this
.
$t
(
'
订单列表
'
)
`
${
this
.
boxBackVO
.
selfNo
}
`
+
this
.
$t
(
"
订单列表
"
)
);
this
.
$set
(
this
.
dialogConfig
,
"
visible
"
,
true
);
},
...
...
@@ -190,7 +215,7 @@ export default {
return
(
shippingChannelId
)
=>
{
for
(
const
channelItem
of
this
.
channelList
)
{
if
(
channelItem
.
channelId
==
shippingChannelId
)
{
return
this
.
$l
(
channelItem
,
'
name
'
);
return
this
.
$l
(
channelItem
,
"
name
"
);
}
}
};
...
...
@@ -212,4 +237,25 @@ export default {
</
script
>
<
style
lang=
"scss"
scoped
>
.el-image
{
border-radius
:
5px
;
background-color
:
#ebeef5
;
box-shadow
:
0
0
5px
1px
#ccc
;
::v-deep
.el-image__inner
{
transition
:
all
0
.3s
;
cursor
:
pointer
;
&
:hover
{
transform
:
scale
(
1
.2
);
}
}
::v-deep
.image-slot
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
width
:
100%
;
height
:
100%
;
color
:
#909399
;
font-size
:
30px
;
}
}
</
style
>
src/views/ecw/box/shippingSea/nodePage/cabinet/index.vue
View file @
56bbdc0d
...
...
@@ -101,18 +101,20 @@ export default {
}
const
{
ldPictures
}
=
this
.
cabinetObj
;
let
pictures
=
ldPictures
?.
split
(
"
,
"
)
??
[];
// 兼容手机端数据结构
pictures
=
pictures
.
map
((
item
)
=>
{
return
{
type
:
"
image
"
,
url
:
item
,
};
});
let
newPictures
=
[];
for
(
const
item
of
pictures
)
{
if
(
item
)
{
newPictures
.
push
({
type
:
"
image
"
,
url
:
item
,
});
}
}
cabinetCreate
({
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
...
this
.
cabinetObj
,
ldPictures
:
JSON
.
stringify
(
pictures
)
,
ldPictures
:
newPictures
.
length
?
JSON
.
stringify
(
newPictures
)
:
""
,
operateType
,
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
...
...
src/views/ecw/customer/index.vue
View file @
56bbdc0d
...
...
@@ -19,7 +19,7 @@
<el-input
:placeholder=
"$t('请输入联系方式')"
v-model=
"queryParams.defaultContactPhone"
></el-input>
</el-form-item>
<el-form-item
:label=
"$t('客户类别')"
prop=
"level"
>
<dict-selector
:type=
"DICT_TYPE.CUSTOMER_TYPE"
v-model=
"queryParams.type"
></dict-selector>
<dict-selector
clearable
:type=
"DICT_TYPE.CUSTOMER_TYPE"
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"
>
...
...
@@ -28,7 +28,7 @@
</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-select
clearable
v-model=
"queryParams.source"
:placeholder=
"$t('请选择客户来源')"
size=
"small"
>
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
:key=
"dict.value"
:label=
"isChinese ? dict.label : dict.labelEn"
:value=
"dict.value"
/>
</el-select>
...
...
src/views/ecw/order/batchSingleApplication.vue
View file @
56bbdc0d
...
...
@@ -57,7 +57,7 @@
{{
row
.
consignorName
}}
</p>
<p>
+
{{
row
.
consignorCountryCode
}}{{
row
.
consignorPhone
}}
+
{{
row
.
consignorCountryCode
}}
{{
row
.
consignorPhone
}}
</p>
</div>
</div>
...
...
@@ -70,7 +70,7 @@
{{
row
.
consigneeName
}}
</p>
<p>
+
{{
row
.
consigneeCountryCode
}}{{
row
.
consigneePhone
}}
+
{{
row
.
consigneeCountryCode
}}
{{
row
.
consigneePhone
}}
</p>
</div>
</
template
>
...
...
@@ -79,7 +79,7 @@
<el-row
style=
"margin-top: 30px"
>
<el-col
:span=
"8"
>
<div
style=
"text-align: right;"
>
{{ list[0]
&&
list[0].adjustTo
StartWarehouseName ? list[0].adjustToStar
tWarehouseName : list[0] ? [14,16,15].includes(this.list[0].status) ? list[0].dstWarehouseName : list[0].startWarehouseName : '' }}
{{ list[0]
&&
list[0].adjustTo
DestWarehouseName ? list[0].adjustToDes
tWarehouseName : list[0] ? [14,16,15].includes(this.list[0].status) ? list[0].dstWarehouseName : list[0].startWarehouseName : '' }}
</div>
</el-col>
<el-col
:span=
"3"
><div
style=
"text-align:center"
>
...
...
@@ -108,6 +108,20 @@
{{
STATUS
[
row
.
status
]
}}
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('出仓影像')"
>
<
template
v-slot=
"{row}"
>
<warehouse-video-list
:modal=
"false"
:status=
"2"
:item =
"row"
></warehouse-video-list>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('入仓影像')"
>
<
template
v-slot=
"{row}"
>
<warehouse-video-list
:modal=
"false"
:status=
"3"
:item =
"row"
></warehouse-video-list>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('调拨出仓备注')"
prop=
"deliveryRemark"
>
</el-table-column>
<el-table-column
:label=
"$t('调拨到仓备注')"
prop=
"arrivalRemark"
>
</el-table-column>
</el-table>
</el-card>
<el-divider
contentPosition=
"left"
>
{{$t('审批流程')}}
</el-divider>
...
...
@@ -145,6 +159,7 @@ import workFlow from "@/components/WorkFlow";
import
Template
from
"
@/views/cms/template
"
;
import
{
arrryToKeyedObjectBy
}
from
"
@/utils
"
;
import
{
getChannelList
}
from
"
@/api/ecw/channel
"
;
import
WarehouseVideoList
from
"
@/views/ecw/order/components/warehouse-video-list.vue
"
;
export
default
{
name
:
"
batchSingleApplication
"
,
...
...
@@ -156,6 +171,7 @@ export default {
}
},
components
:
{
WarehouseVideoList
,
Template
,
warehouseDetails
,
workFlow
...
...
@@ -223,7 +239,7 @@ export default {
getOrderListFn
()
{
getOrderPage
({
orderIdList
:
this
.
orderList
}).
then
(
r
=>
{
this
.
list
=
r
.
data
.
list
warehouseAdjustmentList
({
id
:
this
.
list
[
0
].
adjustTo
StartWarehouseId
?
this
.
list
[
0
].
adjustToStartWarehouseId
:[
14
,
16
,
15
].
includes
(
this
.
list
[
0
].
status
)
?
this
.
list
[
0
].
dstWarehouseId
:
this
.
list
[
0
].
startWarehouseId
}).
then
(
r
=>
this
.
availableWarehouse
=
r
.
data
)
warehouseAdjustmentList
({
id
:
this
.
list
[
0
].
adjustTo
DestWarehouseId
?
this
.
list
[
0
].
adjustToDestWarehouseId
:[
14
,
16
,
15
].
includes
(
this
.
list
[
0
].
status
)
?
this
.
list
[
0
].
dstWarehouseId
:
this
.
list
[
0
].
startWarehouseId
}).
then
(
r
=>
this
.
availableWarehouse
=
r
.
data
)
adjustLastWithStatus
({
orderId
:
this
.
list
[
0
].
orderId
,
lang
:
0
}).
then
(
r
=>
{
this
.
applyStatus
=
r
.
data
if
(
r
.
data
?.
orderWarehouseAdjustBackVO
?.
status
===
1
){
...
...
@@ -235,7 +251,7 @@ export default {
submit
()
{
let
p
=
this
.
list
.
map
(
e
=>
e
.
orderId
).
join
(
'
,
'
);
this
.
params
.
orderIds
=
p
;
this
.
params
.
warehouseOutId
=
this
.
list
[
0
].
adjustTo
StartWarehouseId
?
this
.
list
[
0
].
adjustToStartWarehouseId
:
[
14
,
16
,
15
].
includes
(
this
.
list
[
0
].
status
)
?
this
.
list
[
0
].
dstWarehouseId
:
this
.
list
[
0
].
startWarehouseId
;
this
.
params
.
warehouseOutId
=
this
.
list
[
0
].
adjustTo
DestWarehouseId
?
this
.
list
[
0
].
adjustToDestWarehouseId
:
[
14
,
16
,
15
].
includes
(
this
.
list
[
0
].
status
)
?
this
.
list
[
0
].
dstWarehouseId
:
this
.
list
[
0
].
startWarehouseId
;
this
.
params
.
orderNo
=
this
.
list
[
0
].
orderNo
orderWarehouseInAdjustApply
(
this
.
params
).
then
(
r
=>
{
if
(
r
.
code
===
0
)
{
...
...
src/views/ecw/order/components/warehouse-video-list.vue
0 → 100644
View file @
56bbdc0d
<
template
>
<div
v-if=
"list.length"
>
<el-button
type=
"text"
@
click=
"dialogVisible = true"
>
查看图片
</el-button>
<el-dialog
:modal=
"modal"
title=
"提示"
:visible.sync=
"dialogVisible"
width=
"50%"
>
<div
style=
"display: flex;flex-wrap: wrap;"
>
<div
v-for=
"item in list"
style=
"padding: 10px"
><el-image
style=
"width: 100px; height: 100px"
:src=
"item"
:preview-src-list=
"list"
>
</el-image></div>
</div>
</el-dialog>
</div>
</
template
>
<
script
>
import
{
warehousePictureList
}
from
"
@/api/ecw/order
"
;
export
default
{
props
:{
item
:{
type
:
Object
,
default
:{}
},
status
:
Number
,
modal
:{
type
:
Boolean
,
default
:
true
,
}
},
name
:
"
warehouse-video-list
"
,
data
(){
return
{
dialogVisible
:
false
,
list
:[],
}
},
mounted
()
{
this
.
warehousePictureListFn
()
},
methods
:{
warehousePictureListFn
(){
let
p
=
{
bizId
:
this
.
item
.
id
,
type
:
this
.
status
}
warehousePictureList
(
p
).
then
(
r
=>
{
this
.
list
=
r
.
data
.
map
(
i
=>
i
.
url
)
})
}
}
}
</
script
>
<
style
scoped
>
</
style
>
src/views/ecw/order/components/warehouseDetails.vue
View file @
56bbdc0d
...
...
@@ -138,7 +138,7 @@
<ol>
<
template
v-for=
"item in FeeDetails.details.applyInfoVOList"
>
<li
v-if=
"item.orgValue === undefined"
>
{{
item
.
name
}}
:
{{
item
.
newValue
}}
</li>
<li
v-else-if=
"item.newValue === undefined"
>
{{
$t
(
'
删除入仓
'
)
}}
</li>
<li
v-else-if=
"item.newValue === undefined"
>
{{
$t
(
'
删除入仓
'
)
}}
【
{{
item
.
orgValue
}}
】
</li>
<li
v-else-if=
"item.newValue !== item.orgValue"
>
{{
item
.
name
}}
从【
{{
item
.
orgValue
}}
】改为【
{{
item
.
newValue
}}
】
</li>
</
template
>
</ol>
...
...
src/views/ecw/order/edit.vue
View file @
56bbdc0d
This diff is collapsed.
Click to expand it.
src/views/ecw/order/index.vue
View file @
56bbdc0d
...
...
@@ -295,7 +295,7 @@
include(scope.row.inWarehouseState, [202, 207, 202, 209, 210, 202, 211, 212, 202, 213, 214, 215, 216, 204, 205]) &&
scope.row.status != 11 && exclude(scope.row.shipmentState, [314,315,317,318])
"
>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing-update?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
:disabled=
"scope.row.parentOrderId"
>
{{
$t
(
'
入仓修改
'
)
}}
</el-dropdown-item>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing-update?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
:disabled
2
=
"scope.row.parentOrderId"
>
{{
$t
(
'
入仓修改
'
)
}}
</el-dropdown-item>
</
template
>
<!-- 退仓 -->
...
...
src/views/ecw/order/transferWarehousing.vue
View file @
56bbdc0d
...
...
@@ -64,6 +64,20 @@
{{
STATUS
[
row
.
status
]
}}
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
:
label
=
"
$t('出仓影像')
"
>
<
template
v
-
slot
=
"
{row
}
"
>
<
warehouse
-
video
-
list
:
status
=
"
2
"
:
item
=
"
row
"
><
/warehouse-video-list
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
:
label
=
"
$t('到仓影像')
"
>
<
template
v
-
slot
=
"
{row
}
"
>
<
warehouse
-
video
-
list
:
status
=
"
3
"
:
item
=
"
row
"
><
/warehouse-video-list
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
:
label
=
"
$t('调拨出仓备注')
"
prop
=
"
deliveryRemark
"
>
<
/el-table-column
>
<
el
-
table
-
column
:
label
=
"
$t('调拨到仓备注')
"
prop
=
"
arrivalRemark
"
>
<
/el-table-column
>
<
/el-table
>
<
el
-
descriptions
style
=
"
margin-top: 20px
"
:
column
=
"
4
"
border
>
<
el
-
descriptions
-
item
:
label
=
"
$t('集运仓库')
"
>
{{
warehouseDetails
&&
warehouseDetails
.
warehouseOutName
?
warehouseDetails
.
warehouseOutName
:
''
}}
<
/el-descriptions-item
>
...
...
@@ -97,7 +111,10 @@
:
placeholder
=
"
$t('选择日期')
"
>
<
/el-date-picker
>
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
:
label
=
"
$t('到仓日期')
"
v
-
if
=
"
type == 2
"
>
<
el
-
descriptions
-
item
v
-
if
=
"
type == 2
"
>
<
template
slot
=
"
label
"
>
<
span
style
=
"
color: red;font-size: 20px;margin-right: 5px;
"
>*<
/span>{{$t
(
'到仓日期'
)
}}
<
/template
>
<
el
-
date
-
picker
value
-
format
=
"
yyyy-MM-dd HH:mm:ss
"
v
-
model
=
"
params.arrivalDate
"
...
...
@@ -164,9 +181,11 @@ import warehouseLocation from "@/components/WarehouseAreaDialog";
import
imageUpload
from
"
@/components/ImageUpload
"
;
import
{
getProductBrankPage
}
from
"
@/api/ecw/productBrank
"
;
import
{
parseTime
}
from
"
@/utils/ruoyi
"
;
import
WarehouseVideoList
from
"
@/views/ecw/order/components/warehouse-video-list.vue
"
;
export
default
{
name
:
"
transferWarehousing
"
,
components
:
{
WarehouseVideoList
,
ImageAndVideoUpload
,
Template
,
ordeDetailsForm
,
...
...
@@ -224,7 +243,7 @@ export default {
toWarehouseAbnormal
(){
return
{
arrivalDate
:
this
.
params
.
arrivalDate
,
arrivalRemark
:
this
.
params
.
arrival
Remark
,
arrivalRemark
:
this
.
params
.
delivery
Remark
,
descZh
:
this
.
params
.
descZh
,
id
:
this
.
params
.
id
,
manualExceptionType
:
this
.
params
.
manualExceptionType
.
join
(
'
,
'
),
...
...
@@ -237,7 +256,7 @@ export default {
toWarehouse
(){
return
{
arrivalDate
:
this
.
params
.
arrivalDate
,
arrivalRemark
:
this
.
params
.
arrival
Remark
,
arrivalRemark
:
this
.
params
.
delivery
Remark
,
id
:
this
.
params
.
id
,
urls
:
this
.
params
.
urls
,
...
...
@@ -296,11 +315,11 @@ export default {
if
(
this
.
type
==
2
){
this
.
params
.
deliveryDate
=
parseTime
(
this
.
warehouseDetails
.
deliveryDate
)
}
orderWarehousePicturePage
({
rows
:
100
,
bizId
:
this
.
params
.
id
,
type
:
this
.
type
==
1
?
2
:
3
}
).
then
(
r
=>
{
if
(
r
.
code
===
0
){
this
.
params
.
urls
=
r
.
data
.
list
.
map
(
e
=>
e
.
url
);
}
}
)
//
orderWarehousePicturePage(
{
rows
:
100
,
bizId
:
this
.
params
.
id
,
type
:
this
.
type
==
1
?
2
:
3
}
).
then
(
r
=>
{
//
if(r.code === 0)
{
//
this.params.urls = r.data.list.map(e => e.url);
//
}
//
}
)
}
)
getOrderWarehouseIn
(
this
.
orderId
).
then
(
r
=>
{
if
(
r
.
code
===
0
){
...
...
src/views/ecw/order/warehousing/index.vue
View file @
56bbdc0d
...
...
@@ -201,7 +201,7 @@ import {
getOrderWarehouseIn
,
getSpecialListByOrderId
,
listByOrderId
,
orderWarehouseInFinish
,
orderWarehouseInUpdateLabel
,
rollbackDelete
rollbackDelete
,
warehousePictureList
}
from
'
@/api/ecw/order
'
import
orderBaseInfo
from
"
@/components/OrderBaseInfo
"
import
WarehouseAreaDialog
from
'
@/components/WarehouseAreaDialog
'
...
...
@@ -286,6 +286,14 @@ export default {
},
methods
:
{
getWarehousePictureList
(){
return
warehousePictureList
({
bizId
:
this
.
order
.
orderId
,
type
:
1
}).
then
(
r
=>
{
this
.
form
.
urls
=
r
.
data
.
map
(
i
=>
i
.
url
)
})
},
include
(){
return
(
state
,
arr
)
=>
{
return
arr
.
indexOf
(
state
)
>
-
1
...
...
@@ -345,6 +353,7 @@ export default {
this
.
getTowSum
()
}).
then
(()
=>
{
this
.
getLabelByOrder
()
this
.
getWarehousePictureList
()
})
},
specialHas0
(){
...
...
src/views/login.vue
View file @
56bbdc0d
<
template
>
<div
class=
"login"
>
<el-form
ref=
"loginForm"
:model=
"loginForm"
:rules=
"loginRules"
class=
"login-form"
>
<h3
class=
"title"
>
{{
$t
(
'
捷道后台管理系统
'
)
}}
</h3>
<h3
class=
"title"
>
{{
title
}}
</h3>
<el-form-item
prop=
"tenantName"
v-if=
"tenantEnable"
>
<el-input
v-model=
"loginForm.tenantName"
type=
"text"
auto-complete=
"off"
placeholder=
'租户'
>
<svg-icon
slot=
"prefix"
icon-class=
"tree"
class=
"el-input__icon input-icon"
/>
...
...
@@ -68,6 +68,7 @@ export default {
name
:
"
Login
"
,
data
()
{
return
{
title
:
process
.
env
.
VUE_APP_TITLE
,
codeUrl
:
""
,
captchaEnable
:
true
,
tenantEnable
:
false
,
...
...
src/views/system/sms/smsTemplate.vue
View file @
56bbdc0d
...
...
@@ -174,6 +174,9 @@
<!-- </el-select>-->
<!--<!– </template>–>-->
<!-- </el-table-column>-->
<el-form-item
:label=
"$t('区号')"
prop=
"areaCode"
>
<el-input
v-model=
"sendSmsForm.areaCode"
:placeholder=
"$t('请输入区号')"
/>
</el-form-item>
<el-form-item
:label=
"$t('手机号')"
prop=
"mobile"
>
<el-input
v-model=
"sendSmsForm.mobile"
:placeholder=
"$t('请输入手机号')"
/>
</el-form-item>
...
...
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