Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
O
on-site-service
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
external
on-site-service
Commits
aec88f6d
Commit
aec88f6d
authored
Jul 15, 2022
by
lining
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 超时不能派单逻辑
parent
a24e44db
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
13 additions
and
9 deletions
+13
-9
DispatchServiceOrderDTO.java
...siteservice/common/order/dto/DispatchServiceOrderDTO.java
+0
-5
ServiceOrderService.java
.../com/onsiteservice/service/order/ServiceOrderService.java
+12
-4
BizCodeEnum.java
...in/java/com/onsiteservice/constant/enums/BizCodeEnum.java
+1
-0
No files found.
common/src/main/java/com/onsiteservice/common/order/dto/DispatchServiceOrderDTO.java
View file @
aec88f6d
...
...
@@ -30,9 +30,4 @@ public class DispatchServiceOrderDTO {
@ApiModelProperty
(
value
=
"派单备注"
)
private
String
remark
;
@ApiModelProperty
(
value
=
"期望维修工上门时间"
,
required
=
true
)
@NotNull
(
message
=
"请选择上门时间"
)
@Future
(
message
=
"上门时间必须为将来的某个时间点"
)
private
Date
expectArrivalTime
;
}
common/src/main/java/com/onsiteservice/service/order/ServiceOrderService.java
View file @
aec88f6d
...
...
@@ -187,12 +187,16 @@ public class ServiceOrderService extends AbstractMapper<ServiceOrder> {
throw
new
ServiceException
(
BizCodeEnum
.
SERVICE_ORDER_CANNOT_DISPATCH
);
}
if
(
System
.
currentTimeMillis
()
>=
serviceOrder
.
getExpectArrivalTime
().
getTime
())
{
throw
new
ServiceException
(
BizCodeEnum
.
SERVICE_ORDER_TIMEOUT_CANNOT_DISPATCH
);
}
ServiceWorker
serviceWorker
=
serviceWorkerMapper
.
selectByPrimaryKey
(
dto
.
getHostId
());
if
(
Objects
.
isNull
(
serviceWorker
))
{
throw
new
ServiceException
(
BizCodeEnum
.
SERVICE_WORKER_NOT_EXIST
);
}
serviceWorkerAssignMapper
.
insertSelective
(
buildServiceWorkerAssign
(
dto
,
userId
));
serviceWorkerAssignMapper
.
insertSelective
(
buildServiceWorkerAssign
(
dto
,
serviceOrder
,
userId
));
serviceOrder
.
setOrderStatus
(
ServiceOrderStatusEnum
.
DISPATCH
.
getStatus
());
serviceOrder
.
setModifyBy
(
userId
);
...
...
@@ -222,6 +226,10 @@ public class ServiceOrderService extends AbstractMapper<ServiceOrder> {
throw
new
ServiceException
(
BizCodeEnum
.
SERVICE_ORDER_CANNOT_REDISPATCH
);
}
if
(
System
.
currentTimeMillis
()
>=
serviceOrder
.
getExpectArrivalTime
().
getTime
())
{
throw
new
ServiceException
(
BizCodeEnum
.
SERVICE_ORDER_TIMEOUT_CANNOT_DISPATCH
);
}
ServiceWorker
serviceWorker
=
serviceWorkerMapper
.
selectByPrimaryKey
(
dto
.
getHostId
());
if
(
Objects
.
isNull
(
serviceWorker
))
{
throw
new
ServiceException
(
BizCodeEnum
.
SERVICE_WORKER_NOT_EXIST
);
...
...
@@ -229,7 +237,7 @@ public class ServiceOrderService extends AbstractMapper<ServiceOrder> {
disableServiceWorkerAssign
(
serviceOrder
,
userId
,
false
);
int
result
=
serviceWorkerAssignMapper
.
insertSelective
(
buildServiceWorkerAssign
(
dto
,
userId
));
int
result
=
serviceWorkerAssignMapper
.
insertSelective
(
buildServiceWorkerAssign
(
dto
,
serviceOrder
,
userId
));
// TODO 短信 "您的订单已为您重新指派维修工,请保持手机畅通!"
...
...
@@ -319,14 +327,14 @@ public class ServiceOrderService extends AbstractMapper<ServiceOrder> {
return
serviceValuatorAssign
;
}
private
ServiceWorkerAssign
buildServiceWorkerAssign
(
DispatchServiceOrderDTO
dto
,
Long
userId
)
{
private
ServiceWorkerAssign
buildServiceWorkerAssign
(
DispatchServiceOrderDTO
dto
,
ServiceOrder
serviceOrder
,
Long
userId
)
{
ServiceWorkerAssign
serviceWorkerAssign
=
new
ServiceWorkerAssign
();
// 维修工id
serviceWorkerAssign
.
setWorkerId
(
dto
.
getHostId
());
// 订单id
serviceWorkerAssign
.
setOrderId
(
dto
.
getId
());
// 维修工上门时间
serviceWorkerAssign
.
setAssignTime
(
dto
.
getExpectArrivalTime
());
serviceWorkerAssign
.
setAssignTime
(
serviceOrder
.
getExpectArrivalTime
());
// 创建人
serviceWorkerAssign
.
setCreateBy
(
userId
);
...
...
constant/src/main/java/com/onsiteservice/constant/enums/BizCodeEnum.java
View file @
aec88f6d
...
...
@@ -22,6 +22,7 @@ public enum BizCodeEnum {
SERVICE_ORDER_CANNOT_CANCEL
(
"订单不能取消"
),
SERVICE_ORDER_CANNOT_REFUND
(
"订单不能申请退款"
),
SERVICE_ORDER_CANNOT_DISPATCH
(
"订单未支付,不能派维修工"
),
SERVICE_ORDER_TIMEOUT_CANNOT_DISPATCH
(
"已过上门维修时间,不能派维修工"
),
SERVICE_ORDER_CANNOT_REDISPATCH
(
"订单未指派维修工,不能修改"
),
SERVICE_ORDER_CANNOT_FINISH
(
"订单未派单,不能完成本次服务"
),
...
...
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