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
4eb51605
Commit
4eb51605
authored
Oct 10, 2022
by
dcy
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
077e3d7e
bc3c84d9
Changes
17
Show whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
131 additions
and
110 deletions
+131
-110
index.vue
src/views/bpm/processInstance/index.vue
+2
-2
indexSea.vue
src/views/ecw/box/indexSea.vue
+1
-1
shippingDetail.vue
src/views/ecw/box/shippingDetail.vue
+5
-3
splitOrder.vue
...views/ecw/box/shippingSea/nodePage/cabinet/splitOrder.vue
+17
-12
startPacking.vue
...ews/ecw/box/shippingSea/nodePage/cabinet/startPacking.vue
+7
-4
cusDeclaration.vue
src/views/ecw/box/shippingSea/nodePage/cusDeclaration.vue
+2
-1
preinstall.vue
src/views/ecw/box/shippingSea/nodePage/preinstall.vue
+11
-2
review.vue
src/views/ecw/box/shippingSea/nodePage/review.vue
+11
-7
startUnloading.vue
...ecw/box/shippingSea/nodePage/unloading/startUnloading.vue
+2
-1
utils.js
src/views/ecw/box/shippingSea/utils.js
+4
-3
index.vue
src/views/ecw/node/index.vue
+2
-3
detail.vue
src/views/ecw/offer/detail.vue
+17
-17
LandingBillDetail.vue
src/views/ecw/order/components/LandingBillDetail.vue
+2
-6
index.vue
src/views/ecw/order/exception/index.vue
+12
-12
pending.vue
src/views/ecw/order/pending.vue
+4
-4
prepayDeal.vue
src/views/ecw/order/prepayDeal.vue
+25
-25
splitApply.vue
src/views/ecw/order/splitApply.vue
+7
-7
No files found.
src/views/bpm/processInstance/index.vue
View file @
4eb51605
...
...
@@ -38,10 +38,10 @@
<!-- 操作工具栏 -->
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-col
:span=
"1.5"
>
<
!--
<
el-col
:span=
"1.5"
>
<el-button
type=
"primary"
plain
icon=
"el-icon-plus"
size=
"mini"
@
click=
"handleAdd"
v-hasPermi=
"['bpm:process-instance:query']"
>
发起流程
</el-button>
</el-col>
</el-col>
-->
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
...
...
src/views/ecw/box/indexSea.vue
View file @
4eb51605
...
...
@@ -163,7 +163,7 @@
</
template
>
<
template
v-if=
"dialogCfg.dialogType === 'notice'"
>
<div
class=
"notice-dialog"
>
<div
class=
"notice-title"
>
您有
一个/多
个待处理出货操作,请尽快前往处理:
</div>
<div
class=
"notice-title"
>
您有
{{
noticeList
.
length
}}
个待处理出货操作,请尽快前往处理:
</div>
<el-table
:data=
"noticeList"
height=
"500px"
border
>
<el-table-column
label=
"自编号"
align=
"center"
prop=
"selfNo"
/>
<el-table-column
label=
"类型"
align=
"center"
>
...
...
src/views/ecw/box/shippingDetail.vue
View file @
4eb51605
...
...
@@ -63,7 +63,8 @@
<
template
v-slot=
"{row}"
>
<section>
<div
v-for=
"(item, index) in row.goodsList"
:key=
"index"
>
{{
index
+
1
}}
:
{{
item
.
prodTitleZh
}}
<div>
{{
index
+
1
}}
:
{{
item
.
prodTitleZh
}}
</div>
<div>
{{
index
+
1
}}
:
{{
item
.
prodTitleEn
}}
</div>
</div>
</section>
</
template
>
...
...
@@ -97,6 +98,7 @@ import {
}
from
"
./shippingSea/utils
"
;
import
{
getCabinetPage
}
from
"
@/api/ecw/cabinet
"
;
import
{
getChannelList
}
from
"
@/api/ecw/channel
"
;
import
Decimal
from
"
decimal.js
"
;
/**
* 出货审核详情
...
...
@@ -162,13 +164,13 @@ export default {
calcSum
(
goodsList
)
{
let
sum
=
0
;
goodsList
.
forEach
((
element
)
=>
{
sum
=
sum
+
element
.
num
;
sum
=
Decimal
.
add
(
sum
,
element
.
num
)
;
});
return
sum
;
},
/* 跳转订单详情 */
jumpOrderDetail
(
row
)
{
this
.
$router
.
push
(
"
/order/
associated-order/
"
+
row
.
orderId
);
this
.
$router
.
push
(
"
/order/
detail?orderId=
"
+
row
.
orderId
);
},
},
watch
:
{
...
...
src/views/ecw/box/shippingSea/nodePage/cabinet/splitOrder.vue
View file @
4eb51605
...
...
@@ -16,7 +16,7 @@
{{
orderData
.
status
==
99
?
'
异常
'
:
'
正常
'
}}
</el-descriptions-item>
<el-descriptions-item
label=
"送货日期"
>
{{
orderData
.
consigneeVO
?
orderData
.
consigneeVO
.
deliveryDate
:
'
无
'
}}
{{
orderData
.
deliveryDate
}}
</el-descriptions-item>
</el-descriptions>
<el-descriptions
:column=
"4"
>
...
...
@@ -95,9 +95,10 @@
</
template
>
</el-table-column>
<el-table-column
label=
"状态"
align=
"center"
>
<
template
slot-scope=
"scope"
>
{{orderData.abnormalState!=0?$t('异常'):$t('正常')}}
<!-- <template slot-scope="scope">
<dict-tag :type="DICT_TYPE.ORDER_STATUS" :value="scope.row.status" />
</
template
>
</template>
-->
</el-table-column>
</el-table>
</el-card>
...
...
@@ -223,6 +224,7 @@ import WorkFlow from "@/components/WorkFlow";
import
{
getOrder
}
from
"
@/api/ecw/order
"
;
import
{
serviceMsg
,
toReviewDetail
}
from
"
../../utils
"
;
import
{
createApproval
,
approvalCancel
}
from
"
@/api/ecw/boxSea
"
;
import
Decimal
from
"
decimal.js
"
;
export
default
{
name
:
"
splitOrder
"
,
...
...
@@ -310,7 +312,7 @@ export default {
let
_total
=
0
;
const
{
orderSplitItemBackVOList
=
[]
}
=
this
.
splitData
;
orderSplitItemBackVOList
.
forEach
((
v
)
=>
{
_total
+=
Number
(
v
.
num
);
_total
=
Decimal
.
add
(
_total
,
Number
(
v
.
num
)
);
});
return
_total
;
},
...
...
@@ -380,12 +382,15 @@ export default {
let
leviteV
=
0
;
let
leviteW
=
0
;
this
.
orderData
.
orderItemVOList
.
forEach
((
column
,
index
)
=>
{
orderSum
+=
column
.
num
??
0
;
orderV
+=
column
.
volume
??
0
;
orderW
+=
column
.
weight
??
0
;
leviteSum
+=
column
.
warehouseInInfoVO
?.
cartonsNum
??
0
;
leviteV
+=
column
.
warehouseInInfoVO
?.
volume
??
0
;
leviteW
+=
column
.
warehouseInInfoVO
?.
weight
??
0
;
orderSum
=
Decimal
.
add
(
orderSum
,
column
.
num
??
0
);
orderV
=
Decimal
.
add
(
orderV
,
column
.
volume
??
0
);
orderW
=
Decimal
.
add
(
orderW
,
column
.
weight
??
0
);
leviteSum
=
Decimal
.
add
(
leviteSum
,
column
.
warehouseInInfoVO
?.
cartonsNum
??
0
);
leviteV
+=
Decimal
.
add
(
leviteV
,
column
.
warehouseInInfoVO
?.
volume
??
0
);
leviteW
+=
Decimal
.
add
(
leviteW
,
column
.
warehouseInInfoVO
?.
weight
??
0
);
});
sums
[
1
]
=
"
下单统计:
"
+
...
...
@@ -455,8 +460,8 @@ export default {
if
(
valid
)
{
// 输入箱数大于实装箱数
const
total
=
this
.
totalSplitNum
();
const
canSplitNum
=
this
.
currRow
.
num
-
this
.
currRow
.
installNum
;
const
remain
=
canSplitNum
-
total
;
const
canSplitNum
=
Decimal
.
sub
(
this
.
currRow
.
num
,
this
.
currRow
.
installNum
)
;
const
remain
=
Decimal
.
sub
(
canSplitNum
,
total
)
;
if
(
this
.
shopForm
.
num
>
remain
)
{
this
.
$message
.
error
(
"
放入箱数不能大于总箱数
"
);
return
;
...
...
src/views/ecw/box/shippingSea/nodePage/cabinet/startPacking.vue
View file @
4eb51605
...
...
@@ -147,7 +147,7 @@
<el-option
v-for=
"warehouse in $attrs.warehouseList"
:key=
"warehouse.id"
:label=
"warehouse.titleZh"
:value=
"warehouse.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"预
计时间
"
>
{{
preinstallDate
}}
</el-form-item>
<el-form-item
label=
"预
装日期
"
>
{{
preinstallDate
}}
</el-form-item>
<el-form-item
label=
"选择柜型"
prop=
"cabinetId"
>
<el-select
v-model=
"modifyCabinetObj.cabinetId"
placeholder=
"请选择柜型"
>
<el-option
v-for=
"item in cabinetList"
:label=
"item.name"
:value=
"item.id"
:key=
"item.id"
></el-option>
...
...
@@ -262,6 +262,7 @@ import {
}
from
"
../../utils
"
;
import
splitOrder
from
"
./splitOrder.vue
"
;
import
WorkFlow
from
"
@/components/WorkFlow
"
;
import
Decimal
from
"
decimal.js
"
;
/**
* 开始装柜
...
...
@@ -618,8 +619,10 @@ export default {
},
/* 预计时间 */
preinstallDate
()
{
if
(
this
.
shipmentObj
.
yzDate
)
{
return
dayjs
(
this
.
shipmentObj
.
yzDate
).
format
(
"
YYYY-MM-DD HH:mm:ss
"
);
if
(
this
.
shipmentObj
.
preInstallInfo
.
createTime
)
{
return
dayjs
(
this
.
shipmentObj
.
preInstallInfo
.
createTime
).
format
(
"
YYYY-MM-DD HH:mm:ss
"
);
}
return
null
;
},
...
...
@@ -639,7 +642,7 @@ export default {
this
.
listData
.
forEach
((
item
)
=>
{
const
{
sectionOrderList
=
[]
}
=
item
;
sectionOrderList
.
forEach
((
item
)
=>
{
count
=
count
+
item
.
installNum
;
count
=
Decimal
.
add
(
count
,
item
.
installNum
)
;
});
});
}
...
...
src/views/ecw/box/shippingSea/nodePage/cusDeclaration.vue
View file @
4eb51605
...
...
@@ -156,6 +156,7 @@ import {
downloadFile
,
}
from
"
../utils
"
;
import
ImageUpload
from
"
@/components/ImageUpload
"
;
import
Decimal
from
'
decimal.js
'
/**
* 报关
...
...
@@ -403,7 +404,7 @@ export default {
this
.
$set
(
this
.
cusDeclarationObj
,
"
dcVgmWgt
"
,
dcBoxWgtTmp
+
dcGoodsWgtTmp
Decimal
.
add
(
dcBoxWgtTmp
,
dcGoodsWgtTmp
)
);
},
// 审核详情
...
...
src/views/ecw/box/shippingSea/nodePage/preinstall.vue
View file @
4eb51605
...
...
@@ -142,6 +142,7 @@
<
template
slot-scope=
"scope"
>
<p
v-if=
"scope.row.volume"
>
{{
getTotlContent
(
scope
.
row
,[
'
volume
'
])
}}
</p>
<p
v-if=
"scope.row.weight"
>
{{
getTotlContent
(
scope
.
row
,[
'
weight
'
])
}}
</p>
<p>
{{
getRatioMax
(
scope
.
row
)
}}
</p>
</
template
>
</el-table-column>
<el-table-column
label=
"报关方式"
align=
"center"
prop=
"customsType"
width=
"120"
>
...
...
@@ -323,6 +324,7 @@ import {
}
from
"
../utils
"
;
import
dayjs
from
"
dayjs
"
;
import
WorkFlow
from
"
@/components/WorkFlow
"
;
import
Decimal
from
"
decimal.js
"
;
/**
* 预装
...
...
@@ -370,7 +372,9 @@ export default {
operatorData
:
{},
// 校验
rules
:
{
noticeUser
:
[{
required
:
true
,
message
:
"
目的地操作员必填
"
,
trigger
:
"
change
"
}],
noticeUser
:
[
{
required
:
true
,
message
:
"
目的地操作员必填
"
,
trigger
:
"
change
"
},
],
},
// 出货信息
shipmentObj
:
this
.
$attrs
.
shipmentObj
,
...
...
@@ -511,7 +515,7 @@ export default {
return
values
.
reduce
((
prev
,
curr
)
=>
{
const
value
=
Number
(
curr
);
if
(
!
isNaN
(
value
))
{
return
prev
+
curr
;
return
Decimal
.
add
(
prev
,
curr
)
;
}
else
{
return
prev
;
}
...
...
@@ -638,6 +642,11 @@ export default {
toReviewDetail
.
apply
(
this
,
[
shipmentObj
[
currNode
.
voName
].
bpmProcessId
]);
this
.
$emit
(
"
closeDialog
"
);
},
getRatioMax
(
row
)
{
let
volume
=
row
.
volume
??
0
;
let
weight
=
row
.
weight
??
0
;
return
Decimal
.
div
(
volume
,
weight
).
toFixed
(
2
);
},
},
};
</
script
>
...
...
src/views/ecw/box/shippingSea/nodePage/review.vue
View file @
4eb51605
...
...
@@ -33,16 +33,20 @@ export default {
},
created
()
{
const
{
currNode
,
shipmentObj
}
=
this
.
$attrs
;
const
{
preInstallBackInfo
,
cabinetUnloadBackApprovalInfo
}
=
shipmentObj
;
if
(
currNode
.
type
===
"
preinstall
"
)
{
this
.
isReview
=
shipmentObj
[
"
preInstallBackInfo
"
]
?
true
:
false
;
this
.
bpmProcessId
=
shipmentObj
[
"
preInstallBackInfo
"
]?.
bpmProcessId
;
this
.
isReview
=
preInstallBackInfo
?
true
:
false
;
if
(
preInstallBackInfo
&&
preInstallBackInfo
.
approvalStatus
!==
1
)
{
this
.
isReview
=
false
;
}
this
.
bpmProcessId
=
preInstallBackInfo
?.
bpmProcessId
;
}
if
(
currNode
.
type
===
"
unloading
"
)
{
this
.
isReview
=
shipmentObj
[
"
cabinetUnloadBackApprovalInfo
"
]
?
true
:
false
;
this
.
bpmProcessId
=
shipmentObj
[
"
cabinetUnloadBackApprovalInfo
"
]
?.
bpmProcessId
;
this
.
isReview
=
cabinetUnloadBackApprovalInfo
?
true
:
false
;
if
(
cabinetUnloadBackApprovalInfo
&&
cabinetUnloadBackApprovalInfo
.
approvalStatus
!==
1
)
{
this
.
isReview
=
false
;
}
this
.
bpmProcessId
=
cabinetUnloadBackApprovalInfo
?.
bpmProcessId
;
}
},
methods
:
{
...
...
src/views/ecw/box/shippingSea/nodePage/unloading/startUnloading.vue
View file @
4eb51605
...
...
@@ -125,6 +125,7 @@ import {
}
from
"
@/api/ecw/boxSea
"
;
import
{
serviceMsg
,
getTotlContent
,
toReviewDetail
}
from
"
../../utils
"
;
import
WorkFlow
from
"
@/components/WorkFlow
"
;
import
Decimal
from
"
decimal.js
"
;
/**
* 开始卸柜
...
...
@@ -328,7 +329,7 @@ export default {
let
count
=
0
;
if
(
this
.
pageData
.
sectionOrderList
)
{
this
.
pageData
.
sectionOrderList
.
forEach
((
item
)
=>
{
count
=
count
+
item
.
unloadNum
;
count
=
Decimal
.
add
(
count
,
item
.
unloadNum
)
;
});
}
return
count
;
...
...
src/views/ecw/box/shippingSea/utils.js
View file @
4eb51605
import
dayjs
from
"
dayjs
"
;
import
*
as
_BOX
from
"
@/api/ecw/box
"
;
import
FileSaver
from
"
file-saver
"
;
import
Decimal
from
"
decimal.js
"
;
/**
* 节点状态值
...
...
@@ -1436,13 +1437,13 @@ function sumStatistics(val) {
const { secStatistics } = item;
if (secStatistics) {
if (!Number.isNaN(Number(secStatistics.num))) {
count.num =
count.num + Number(secStatistics.num
);
count.num =
Decimal.add(count.num, Number(secStatistics.num)
);
}
if (!Number.isNaN(Number(secStatistics.volume))) {
count.volume =
count.volume + Number(secStatistics.volume
);
count.volume =
Decimal.add(count.volume, Number(secStatistics.volume)
);
}
if (!Number.isNaN(Number(secStatistics.weight))) {
count.weight =
count.weight + Number(secStatistics.weight
);
count.weight =
Decimal.add(count.weight, Number(secStatistics.weight)
);
}
}
});
...
...
src/views/ecw/node/index.vue
View file @
4eb51605
...
...
@@ -210,7 +210,7 @@ export default {
Editor
,
},
data
()
{
var
areaCheck
=
(
rule
,
value
,
callback
)
=>
{
const
areaCheck
=
(
rule
,
value
,
callback
)
=>
{
if
(
!
this
.
form
.
zhou
)
{
callback
(
new
Error
(
'
请选择大洲
'
));
}
else
if
(
!
this
.
form
.
guojia
){
...
...
@@ -221,7 +221,6 @@ export default {
callback
();
}
};
return
{
// 遮罩层
loading
:
true
,
...
...
src/views/ecw/offer/detail.vue
View file @
4eb51605
...
...
@@ -18,43 +18,43 @@
<label>
{{
$t
(
'
报价单所属
'
)
}}
:
{{
list
.
relation
?
list
.
relation
==
1
?
$t
(
'
发货人
'
):
$t
(
'
收货人
'
):
$t
(
'
发货人
'
)
}}
</label>
</div>
<el-descriptions
:column=
"3"
border
class=
"card"
>
<el-descriptions-item
:label=
"$t('发货人
:')
"
>
<el-descriptions-item
:label=
"$t('发货人
')+':'
"
>
{{
consignorData
.
contactsName
||
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('手机号
:')
"
>
<el-descriptions-item
:label=
"$t('手机号
')+':'
"
>
{{
consignorData
?(
checkCode
(
consignorData
.
areaCode
)
+
consignorData
.
phoneNew
)
||
$t
(
'
无
'
):
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('联系地址
:')
"
>
<el-descriptions-item
:label=
"$t('联系地址
')+':'
"
>
{{
consignorData
.
address
||
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('客户来源
:')
"
>
<el-descriptions-item
:label=
"$t('客户来源
')+':'
"
>
{{
consignorData
.
source
||
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('发货人公司名称
:')
"
>
<el-descriptions-item
:label=
"$t('发货人公司名称
')+':'
"
>
{{
consignorData
.
company
||
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('社交软件
:')
"
>
<el-descriptions-item
:label=
"$t('社交软件
')+':'
"
>
{{
consignorData
.
social
||
$t
(
'
无
'
)
+
'
'
+
consignorData
.
socialNumber
||
''
}}
</el-descriptions-item>
</el-descriptions>
<el-descriptions
:column=
"3"
border
class=
"card"
>
<el-descriptions-item
:label=
"$t('收货人
:')
"
>
<el-descriptions-item
:label=
"$t('收货人
')+':'
"
>
{{
consigneeData
.
contactsName
||
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('手机号
:')
"
>
<el-descriptions-item
:label=
"$t('手机号
')+':'
"
>
{{
consigneeData
?(
checkCode
(
consigneeData
.
areaCode
)
+
consigneeData
.
phoneNew
)
||
$t
(
'
无
'
):
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('联系地址
:')
"
>
<el-descriptions-item
:label=
"$t('联系地址
')+':'
"
>
{{
consigneeData
.
address
||
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('客户来源
:')
"
>
<el-descriptions-item
:label=
"$t('客户来源
')+':'
"
>
{{
consigneeData
.
source
||
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('发货人公司名称
:')
"
>
<el-descriptions-item
:label=
"$t('发货人公司名称
')+':'
"
>
{{
consigneeData
.
company
||
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('社交软件
:')
"
>
<el-descriptions-item
:label=
"$t('社交软件
')+':'
"
>
{{
consigneeData
.
social
||
$t
(
'
无
'
)
+
'
'
+
consigneeData
.
socialNumber
||
''
}}
</el-descriptions-item>
</el-descriptions>
...
...
@@ -139,19 +139,19 @@
<el-card
class=
"card"
>
<div
slot=
"header"
class=
"card-title"
>
{{$t('费用小计')}}
</div>
<el-descriptions
border
class=
"card"
:column=
"5"
>
<el-descriptions-item
:label=
"$t('总件数
:')
"
>
<el-descriptions-item
:label=
"$t('总件数
')+':'
"
>
{{list.estCostVO?list.estCostVO.totalNum||'0':0}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('总体积
:')
"
>
<el-descriptions-item
:label=
"$t('总体积
')+':'
"
>
{{list.estCostVO?(list.estCostVO.totalVolume+'m³')||'0':0}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('总重量
:')
"
>
<el-descriptions-item
:label=
"$t('总重量
')+':'
"
>
{{list.estCostVO?(list.estCostVO.totalWeight+'kg')||'0':0}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('总数量
:')
"
>
<el-descriptions-item
:label=
"$t('总数量
')+':'
"
>
{{list.estCostVO?list.estCostVO.totalQuantity||'0':0}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('总货值(RMB)
:')
"
>
<el-descriptions-item
:label=
"$t('总货值(RMB)
')+':'
"
>
{{list.estCostVO?list.estCostVO.totalWorth||'0':0}}
</el-descriptions-item>
<!-- <el-descriptions-item :label="报价费:">
...
...
src/views/ecw/order/components/LandingBillDetail.vue
View file @
4eb51605
<!--拆单审核中的申请信息部分-->
<
template
>
<div
v-if=
"order"
>
<el-descriptions
:column=
"4"
v-if=
"order"
:colon=
"
fals
e"
>
<el-descriptions
:column=
"4"
v-if=
"order"
:colon=
"
tru
e"
>
<el-descriptions-item
:label=
"$t('订单号')"
>
{{
order
.
orderNo
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('运输方式')"
>
<dict-tag
class=
"mr-10"
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"order.transportId"
/>
...
...
@@ -19,12 +19,8 @@
<el-descriptions-item
:label=
"$t('目的仓')"
:span=
"2"
>
{{
order
.
logisticsInfoDto
.
destAddressZh
}}
</el-descriptions-item>
<!-- 提单审核 -->
<el-descriptions-item>
<el-button
type=
"primary"
@
click=
"ShowLandingBill=true"
>
查看提单
</el-button>
</el-descriptions-item>
</el-descriptions>
<el-button
type=
"primary"
@
click=
"ShowLandingBill=true"
>
查看提单
</el-button>
<el-dialog
title=
"查看提单"
:visible.sync=
"ShowLandingBill"
>
<div
style=
"text-align:center; width: 600px; margin: auto"
v-html=
"billContent"
/>
...
...
src/views/ecw/order/exception/index.vue
View file @
4eb51605
...
...
@@ -12,50 +12,50 @@
<span
style=
"margin: 0 8px;"
>
{{
$t
(
'
到
'
)
}}
</span>
<el-date-picker
clearable
v-model=
"queryParams.endCreateTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
format=
"yyyy-MM-dd HH:mm:ss"
type=
"datetime"
:placeholder=
"$t('请选择结束日期')"
/>
</el-form-item>
<el-form-item
:label=
"$t('始发地
:')
"
>
<el-form-item
:label=
"$t('始发地
')+':'
"
>
<el-select
v-model=
"queryParams.originId"
:placeholder=
"$t('请选择始发地')"
clearable
>
<el-option
v-for=
"item in expoerCityList"
:label=
"$l(item, 'title')"
:value=
"item.id"
:key=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('目的地
:')
"
>
<el-form-item
:label=
"$t('目的地
')+':'
"
>
<el-select
v-model=
"queryParams.destinationId"
:placeholder=
"$t('请选择目的地')"
clearable
>
<el-option
v-for=
"item in importCityList"
:label=
"$l(item, 'title')"
:value=
"item.id"
:key=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('运输方式
:')
"
>
<el-form-item
:label=
"$t('运输方式
')+':'
"
>
<dict-selector
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:clearable=
"true"
v-model=
"queryParams.transportId"
/>
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('控货
:')
"
>
<el-form-item
:label=
"$t('控货
')+':'
"
>
<dict-selector
:type=
"DICT_TYPE.ECW_YESNO"
:clearable=
"true"
v-model=
"queryParams.isCargoControl"
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
:label=
"$t('异常状态
:')
"
>
<el-form-item
:label=
"$t('异常状态
')+':'
"
>
<dict-selector
:type=
"DICT_TYPE.ORDER_EXCEPTION_STATUS"
:clearable=
"true"
v-model=
"queryParams.orderExceptionStatus"
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
:label=
"$t('异常类型
:')
"
>
<el-form-item
:label=
"$t('异常类型
')+':'
"
>
<dict-selector
:type=
"DICT_TYPE.ORDER_ERROR_TYPE"
:clearable=
"true"
v-model=
"queryParams.orderExceptionType"
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
:label=
"$t('订单号
:')
"
>
<el-form-item
:label=
"$t('订单号
')+':'
"
>
<el-input
v-model=
"queryParams.orderNo"
:placeholder=
"$t('请输入订单号')"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('发货人
:')
"
>
<el-form-item
:label=
"$t('发货人
')+':'
"
>
<customer-selector
v-model=
"queryParams.consignor"
:clearable=
"true"
@
change=
"consignor = $event"
/>
</el-form-item>
<el-form-item
:label=
"$t('唛头
:')
"
>
<el-form-item
:label=
"$t('唛头
')+':'
"
>
<el-input
v-model=
"queryParams.marks"
:placeholder=
"$t('请输入唛头')"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
:label=
"$t('品名
:')
"
>
<el-form-item
:label=
"$t('品名
')+':'
"
>
<product-selector
v-model=
"queryParams.goodsName"
:clearable=
"true"
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
:label=
"$t('备案
:')
"
>
<el-form-item
:label=
"$t('备案
')+':'
"
>
<dict-selector
:type=
"DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
:clearable=
"true"
v-model=
"queryParams.productRecord"
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('跟进业务
:')
"
>
<el-form-item
:label=
"$t('跟进业务
')+':'
"
>
<el-select
v-model=
"queryParams.salesmanId"
:placeholder=
"$t('请选择跟进业务')"
clearable
>
<el-option
v-for=
"item in creatorData"
:key=
"item.id"
:label=
"item.nickname"
:value=
"item.id"
/>
</el-select>
...
...
src/views/ecw/order/pending.vue
View file @
4eb51605
...
...
@@ -19,11 +19,11 @@
<el-descriptions-item
:label=
"$t('运输方式')"
>
<dict-tag
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"orderData.transportId"
/>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('始发地')"
:span=
"2"
>
{{
orderData
.
logisticsInfoDto
?
orderData
.
logisticsInfoDto
.
start
Address
Zh
:
$t
(
'
无
'
)
}}
<el-descriptions-item
:label=
"$t('始发地')"
>
{{
orderData
.
logisticsInfoDto
?
orderData
.
logisticsInfoDto
.
start
Title
Zh
:
$t
(
'
无
'
)
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('目的地')"
>
{{
orderData
.
logisticsInfoDto
?
orderData
.
logisticsInfoDto
.
dest
Address
Zh
:
$t
(
'
无
'
)
}}
{{
orderData
.
logisticsInfoDto
?
orderData
.
logisticsInfoDto
.
dest
Title
Zh
:
$t
(
'
无
'
)
}}
</el-descriptions-item>
</el-descriptions>
<el-descriptions
:column=
"4"
>
...
...
src/views/ecw/order/prepayDeal.vue
View file @
4eb51605
...
...
@@ -7,47 +7,47 @@
</div>
<el-form
:model=
"orderData"
ref=
"queryForm"
size=
"small"
:inline=
"true"
label-width=
"120px"
class=
"card"
>
<el-row>
<el-form-item
:label=
"$t('订单号
:')
"
>
<el-form-item
:label=
"$t('订单号
')+':'
"
>
{{
orderData
?
orderData
.
orderNo
:
''
}}
</el-form-item>
</el-row>
<div
v-if=
"orderExceptionData.orderExceptionType=='order_superfluous_box_exception'||orderExceptionData.orderExceptionType=='order_lack_box_exception'||orderExceptionData.orderExceptionType=='order_miss_exception'||orderExceptionData.orderExceptionType=='order_superfluous_goods_exception'||orderExceptionData.orderExceptionType=='order_in_water_exception'||orderExceptionData.orderExceptionType=='order_damage_exception'"
>
<el-row>
<el-form-item
:label=
"$t('产品名称
:')
"
>
<el-form-item
:label=
"$t('产品名称
')+':'
"
>
{{
shopData
?
shopData
.
prodTitleZh
:
''
}}
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('产品英文名称
:')
"
>
<el-form-item
:label=
"$t('产品英文名称
')+':'
"
>
{{
shopData
?
shopData
.
prodTitleEn
:
''
}}
</el-form-item>
</el-row>
</div>
<el-row>
<el-form-item
:label=
"$t('运输路线
:')
"
>
<el-form-item
:label=
"$t('运输路线
')+':'
"
>
<span
v-if=
"orderData"
>
【
<dict-tag
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"orderData.transportId"
/>
】
</span>
{{
orderData
?
getRouterNameById
():
''
}}
</el-form-item>
</el-row>
<div
v-if=
"orderExceptionData.orderExceptionType!='order_doc_exception'&&orderExceptionData.orderExceptionType!='order_consignor_exception'&&orderExceptionData.orderExceptionType!='order_other_exception'"
>
<el-row>
<el-form-item
:label=
"$t('填单参数
:')
"
>
<el-form-item
:label=
"$t('填单参数
')+':'
"
>
{{
(
shopData
.
num
||
0
)
+
$t
(
'
箱
'
)
+
(
shopData
.
volume
||
0
)
+
'
m³
'
+
(
shopData
.
weight
||
0
)
+
'
kg
'
+
(
shopData
.
quantity
||
0
)
+
$t
(
'
个
'
)
}}
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('入仓参数
:')
"
>
<el-form-item
:label=
"$t('入仓参数
')+':'
"
>
<span>
{{
(
shopData
.
warehouseInInfoVO
?
shopData
.
warehouseInInfoVO
.
cartonsNum
:
0
)
+
$t
(
'
箱
'
)
+
(
shopData
.
warehouseInInfoVO
?
shopData
.
warehouseInInfoVO
.
volume
:
0
)
+
'
m³
'
+
(
shopData
.
warehouseInInfoVO
?
shopData
.
warehouseInInfoVO
.
weight
:
0
)
+
'
kg
'
+
(
shopData
.
warehouseInInfoVO
?
shopData
.
warehouseInInfoVO
.
quantityAll
:
0
)
+
$t
(
'
个
'
)
}}
</span>
</el-form-item>
</el-row>
<el-row
:span=
"12"
>
<el-form-item
:label=
"$t('异常描述
:')
"
>
<el-form-item
:label=
"$t('异常描述
')+':'
"
>
{{
orderExceptionData
.
orderExceptionDescVO
?
orderExceptionData
.
orderExceptionDescVO
.
descZh
:
'
无
'
}}
</el-form-item>
<el-button
v-if=
"orderExceptionData.orderExceptionType=='order_pay_exception'"
type=
"primary"
plain
icon=
"el-icon-plus"
style=
"margin-left: 200px;"
@
click=
"handleAdd"
>
新增收款单
</el-button>
</el-row>
<el-row>
<el-form-item
:label=
"$t('收费参数
:')
"
>
<el-form-item
:label=
"$t('收费参数
')+':'
"
>
<span>
{{
orderData
.
entryNum
||
0
}}{{
$t
(
'
箱
'
)
}}
{{
orderData
.
entryVolume
||
0
}}
m³
{{
orderData
.
entryWeight
||
0
}}
Kg
{{
orderData
.
entryQuantity
||
0
}}{{
$t
(
'
个
'
)
}}
</span>
</el-form-item>
</el-row>
...
...
@@ -130,63 +130,63 @@
</el-table>
<el-form
:model=
"handlerParams"
ref=
"queryForms"
size=
"small"
:inline=
"true"
label-width=
"120px"
class=
"card"
>
<el-row
v-if=
"orderExceptionData.orderExceptionType=='order_pay_exception'"
>
<el-form-item
:label=
"$t('订单总金额
:')
"
>
<el-form-item
:label=
"$t('订单总金额
')+':'
"
>
<span
style=
"margin-left: 8px;"
v-for=
"(item, key) of orderFee.totalAmountList"
>
{{item}}{{key}}
</span>
</el-form-item>
</el-row>
<el-row
v-if=
"orderExceptionData.orderExceptionType=='order_pay_exception'"
>
<el-form-item
:label=
"$t('应付预付金额
:')
"
>
<el-form-item
:label=
"$t('应付预付金额
')+':'
"
>
<span
style=
"margin-left: 8px;"
v-for=
"(item, key) of orderFee.totalPaymentAmount"
>
{{item}}{{key}}
</span>
</el-form-item>
</el-row>
<el-row
v-if=
"orderExceptionData.orderExceptionType=='order_pay_exception'"
>
<el-col
:span=
"6"
>
<el-form-item
:label=
"$t('已核销预付金额
:')
"
>
<el-form-item
:label=
"$t('已核销预付金额
')+':'
"
>
{{orderFee.writeOffAmount}}
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
:label=
"$t('已核销预付金额占总金额比例
:')
"
label-width=
"200px"
>
<el-form-item
:label=
"$t('已核销预付金额占总金额比例
')+':'
"
label-width=
"200px"
>
{{orderFee.writeOffAmountScale}}
</el-form-item>
</el-col>
</el-row>
<el-row
v-if=
"orderExceptionData.orderExceptionType=='order_pay_exception'"
>
<el-col
:span=
"6"
>
<el-form-item
:label=
"$t('预付商品货值
:')
"
>
<el-form-item
:label=
"$t('预付商品货值
')+':'
"
>
{{orderFee.paymentGoodsWorth}}
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
:label=
"$t('预付商品货值占佣金额比例
:')
"
label-width=
"200px"
>
<el-form-item
:label=
"$t('预付商品货值占佣金额比例
')+':'
"
label-width=
"200px"
>
{{orderFee.paymentGoodsWorthScale}}
</el-form-item>
</el-col>
</el-row>
<el-row
v-if=
"orderExceptionData.orderExceptionType=='order_pay_exception'"
>
<el-form-item
:label=
"$t('预付商品方数
:')
"
>
<el-form-item
:label=
"$t('预付商品方数
')+':'
"
>
{{orderFee.paymentGoodsVolume}}
</el-form-item>
</el-row>
<el-row
v-if=
"orderExceptionData.orderExceptionType=='order_pay_exception'"
>
<el-col
:span=
"6"
>
<el-form-item
:label=
"$t('订单总方数
:')
"
>
<el-form-item
:label=
"$t('订单总方数
')+':'
"
>
{{orderFee.totalVolume}}
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
:label=
"$t('预付商品方数占总方数比例
:')
"
label-width=
"200px"
>
<el-form-item
:label=
"$t('预付商品方数占总方数比例
')+':'
"
label-width=
"200px"
>
{{orderFee.paymentGoodsVolumeScale}}
</el-form-item>
</el-col>
</el-row>
<el-row
:span=
"8"
v-if=
"orderExceptionData.orderExceptionType=='order_doc_exception'"
>
<el-form-item
:label=
"$t('报关资料
:')
"
size=
"medium"
>
<el-form-item
:label=
"$t('报关资料
')+':'
"
size=
"medium"
>
<file-upload
v-model=
"handlerParams.fileList"
:value=
"orderExceptionData.file"
></file-upload>
</el-form-item>
</el-row>
<el-row
v-if=
"orderExceptionData.orderExceptionType!='order_miss_exception'&&orderExceptionData.orderExceptionType!='order_superfluous_goods_exception'&&orderExceptionData.orderExceptionType!='order_in_water_exception'&&orderExceptionData.orderExceptionType!='order_damage_exception'"
>
<el-form-item
:label=
"$t('处理结果
:')
"
required
>
<el-form-item
:label=
"$t('处理结果
')+':'
"
required
>
<el-select
v-model=
"handlerParams.orderExceptionHandlerResult"
placeholder=
"请选择"
clearable
>
<el-option
v-for=
"dict in getDictDatas(orderExceptionData.orderExceptionType+'_result')"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
...
...
@@ -194,7 +194,7 @@
</el-form-item>
</el-row>
<el-row
:span=
"8"
v-if=
"orderExceptionData.orderExceptionType=='order_pick_up_exception'&&handlerParams.orderExceptionHandlerResult=='cost_required'"
>
<el-form-item
:label=
"$t('送货费用
:')
"
size=
"medium"
>
<el-form-item
:label=
"$t('送货费用
')+':'
"
size=
"medium"
>
<el-input
style=
"width: 100px;"
type=
"text"
v-model=
"handlerParams.amount"
/>
<el-select
v-model=
"handlerParams.currency"
style=
"width: 100px;margin-left: 10px;"
clearable
>
<el-option
v-for=
"dict in getDictDatas('shipping_price_unit') "
...
...
@@ -203,7 +203,7 @@
</el-form-item>
</el-row>
<el-row
:span=
"8"
v-if=
"orderExceptionData.orderExceptionType!='order_lack_box_exception'&&orderExceptionData.orderExceptionType!='order_miss_exception'&&orderExceptionData.orderExceptionType!='order_superfluous_goods_exception'&&orderExceptionData.orderExceptionType!='order_in_water_exception'&&orderExceptionData.orderExceptionType!='order_damage_exception'&&orderExceptionData.orderExceptionType!='order_other_exception'&&orderExceptionData.orderExceptionType!='order_lack_box_exception'"
>
<el-form-item
:label=
"$t('备注
:')
"
size=
"medium"
>
<el-form-item
:label=
"$t('备注
')+':'
"
size=
"medium"
>
<el-input
style=
"width: 500px;"
type=
"textarea"
v-model=
"handlerParams.orderExceptionHandlerRemark"
/>
</el-form-item>
</el-row>
...
...
@@ -215,13 +215,13 @@
</el-form-item>
</el-row> -->
<el-row
>
<el-form-item
:label=
"$t('状态
:')
"
>
<el-form-item
:label=
"$t('状态
')+':'
"
>
<el-radio
v-model=
"handlerParams.orderExceptionStatus"
label=
"1"
>
{{$t('处理中')}}
</el-radio>
<el-radio
v-model=
"handlerParams.orderExceptionStatus"
label=
"2"
>
{{$t('已处理')}}
</el-radio>
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('处理结果
:')
"
required
v-if=
"handlerParams.orderExceptionStatus==2"
>
<el-form-item
:label=
"$t('处理结果
')+':'
"
required
v-if=
"handlerParams.orderExceptionStatus==2"
>
<el-select
v-model=
"handlerParams.orderExceptionHandlerResult"
placeholder=
"请选择"
clearable
>
<el-option
v-for=
"dict in getDictDatas(orderExceptionData.orderExceptionType+'_don_result')"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
...
...
@@ -229,7 +229,7 @@
</el-form-item>
</el-row>
<el-row
>
<el-form-item
:label=
"$t('赔付金额
:')
"
size=
"medium"
required
v-if=
"handlerParams.orderExceptionStatus==2&&handlerParams.orderExceptionHandlerResult=='confirm_loss'"
>
<el-form-item
:label=
"$t('赔付金额
')+':'
"
size=
"medium"
required
v-if=
"handlerParams.orderExceptionStatus==2&&handlerParams.orderExceptionHandlerResult=='confirm_loss'"
>
<el-input
style=
"width: 100px;"
type=
"text"
v-model=
"handlerParams.amount"
/>
<el-select
v-model=
"handlerParams.currency"
style=
"width: 100px;margin-left: 10px;"
clearable
>
<el-option
v-for=
"dict in getDictDatas('shipping_price_unit') "
...
...
@@ -238,7 +238,7 @@
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('查明原因
:')
"
required
v-if=
"handlerParams.orderExceptionStatus==1"
>
<el-form-item
:label=
"$t('查明原因
')+':'
"
required
v-if=
"handlerParams.orderExceptionStatus==1"
>
<el-select
v-model=
"handlerParams.orderExceptionHandlerResult"
clearable
>
<el-option
v-for=
"dict in getDictDatas(orderExceptionData.orderExceptionType+'_result')"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
...
...
src/views/ecw/order/splitApply.vue
View file @
4eb51605
...
...
@@ -186,12 +186,12 @@
<el-dialog
:title=
"$t('新建拆单')"
:visible.sync=
"open"
width=
"400px"
append-to-body
>
<el-form
ref=
"formSplit"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-row>
<el-form-item
:label=
"$t('运输方式')"
>
<el-form-item
:label=
"$t('运输方式')
+':'
"
>
<dict-selector
:clearable=
"true"
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
v-model=
"form.transportId"
formatter=
"number"
/>
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('目的仓库
:')
"
>
<el-form-item
:label=
"$t('目的仓库
')+':'
"
>
<el-select
v-model=
"form.destWarehouseId"
:placeholder=
"$t('请选择目的仓库')"
clearable
>
<el-option
v-for=
"item in importCityList"
:label=
"item.titleZh"
:value=
"item.id"
:key=
"item.id"
></el-option>
</el-select>
...
...
@@ -213,25 +213,25 @@
<el-dialog
:title=
"$t('放入品名')"
:visible.sync=
"shopOpen"
width=
"400px"
append-to-body
>
<el-form
ref=
"shopForm"
:model=
"shopForm"
:rules=
"shopRules"
label-width=
"80px"
>
<el-row>
<el-form-item
:label=
"$t('中文品名
:')
"
v-if=
"splitData.length>0"
>
<el-form-item
:label=
"$t('中文品名
')+':'
"
v-if=
"splitData.length>0"
>
<el-select
v-model=
"shopForm.prodTitleZh"
:placeholder=
"$t('请选择中文品名')"
@
change=
"changeProdTitleZh"
clearable
>
<el-option
v-for=
"item in splitData[0].orderSplitItemBackVOList"
:label=
"item.prodTitleZh"
:value=
"item.prodTitleZh"
:key=
"item.prodTitleZh"
></el-option>
</el-select>
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('英文品名
:')
"
v-if=
"splitData.length>0"
>
<el-form-item
:label=
"$t('英文品名
')+':'
"
v-if=
"splitData.length>0"
>
<el-select
v-model=
"shopForm.prodTitleEn"
:placeholder=
"$t('请选择英文品名')"
@
change=
"changeProdTitleEn"
clearable
>
<el-option
v-for=
"item in splitData[0].orderSplitItemBackVOList"
:label=
"item.prodTitleEn"
:value=
"item.prodTitleEn"
:key=
"item.prodTitleEn"
></el-option>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('剩余箱数
:')
"
>
<el-form-item
:label=
"$t('剩余箱数
')+':'
"
>
{{shopForm.sum||0}}
</el-form-item>
<el-form-item
:label=
"$t('放入箱数
:')
"
>
<el-form-item
:label=
"$t('放入箱数
')+':'
"
>
<el-input-number
v-model=
"shopForm.num"
controls-position=
"right"
:min=
"1"
:max=
"shopForm.sum"
></el-input-number>
</el-form-item>
<el-form-item
:label=
"$t('备注信息
:')
"
>
<el-form-item
:label=
"$t('备注信息
')+':'
"
>
<el-input
v-model=
"shopForm.remarks"
></el-input>
</el-form-item>
</el-row>
...
...
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