Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
order-group
Overview
Overview
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
order-group-application
order-group
Commits
12f9a649
Commit
12f9a649
authored
May 06, 2020
by
ping.wu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
取餐时间判断修改
parent
206c3f1d
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
24 additions
and
14 deletions
+24
-14
order-application-service/src/main/java/cn/freemud/entities/vo/CreateOrderVo.java
+5
-0
order-application-service/src/main/java/cn/freemud/service/impl/CheckOrder.java
+19
-14
No files found.
order-application-service/src/main/java/cn/freemud/entities/vo/CreateOrderVo.java
View file @
12f9a649
...
...
@@ -94,6 +94,11 @@ public class CreateOrderVo {
* 取餐时间
*/
private
String
takeMealTime
;
/**
* 取餐标识 0=我已到店、尽快送出
*/
private
String
takeMealFlag
;
/**
* 是否外带 ,打包 1 是 0 否
*/
...
...
order-application-service/src/main/java/cn/freemud/service/impl/CheckOrder.java
View file @
12f9a649
...
...
@@ -202,10 +202,6 @@ public class CheckOrder {
.
append
(
" "
).
append
(
createOrderVo
.
getTakeMealTime
()).
append
(
":00"
);
takeMealDateTime
=
DateUtil
.
convert2Date
(
takeMealTime
.
toString
(),
"yyyy-MM-dd HH:mm:ss"
);
}
// System.out.println(takeMealDateTime.before(storeResponseDto.getBusinessHoursDayStartTime()));
// Date convert2Date = DateUtil.convert2Date(storeResponseDto.getBusinessHoursDayStartTime(), "yyyy-MM-dd");
// boolean before = takeMealDateTime.before(DateUtil.addDays(convert2Date, 1));
//隔天预约时间处理 8:00-2:00 预约1:00 ,下单时间在2:00 - 23:59加1天,00:00-1:59不加
if
(
takeMealDateTime
!=
null
&&
takeMealDateTime
.
before
(
storeResponseDto
.
getBusinessHoursDayStartTime
())
&&
takeMealDateTime
.
before
(
DateUtil
.
addDays
(
DateUtil
.
convert2Date
(
storeResponseDto
.
getBusinessHoursDayStartTime
(),
"yyyy-MM-dd"
),
1
))){
...
...
@@ -216,6 +212,15 @@ public class CheckOrder {
||
takeMealDateTime
.
after
(
storeResponseDto
.
getBusinessHoursDayEndTime
())))
{
throw
new
ServiceException
(
ResponseResult
.
ORDER_TAKEMEALTIME_INVAILD
);
}
//当顾客指定送达时间小于当前时间+提前预约时间时,订单记录类型为即时单
if
(
takeMealDateTime
!=
null
&&
storeResponseDto
.
getServiceTime
()
!=
null
&&
takeMealDateTime
.
before
(
DateUtil
.
addMinutes
(
date
,
storeResponseDto
.
getServiceTime
())))
{
takeMealDateTime
=
null
;
}
//0=到店单我已到店、外卖单尽快送出
if
(
StringUtils
.
isNotBlank
(
createOrderVo
.
getTakeMealFlag
())
&&
"0"
.
equals
(
createOrderVo
.
getTakeMealFlag
()))
{
takeMealDateTime
=
null
;
}
String
appId
=
userLoginInfoDto
.
getWxAppId
();
// 校验小程序是否支持到店或者外卖
OpenPlatformIappWxappConfig
config
=
openPlatformIappWxappConfigManager
.
selectIappWxappConfigByWxAppId
(
appId
);
...
...
@@ -250,32 +255,32 @@ public class CheckOrder {
String
deliveryStr
=
storeResponseDto
.
getDeliveryHoursDay
().
replace
(
"-"
,
","
)
.
replace
(
"_"
,
","
);
String
[]
deliverys
=
deliveryStr
.
split
(
","
);
Date
s
tartDate
=
null
;
Date
e
ndDate
=
null
;
Date
deliveryS
tartDate
=
null
;
Date
deliveryE
ndDate
=
null
;
if
(
deliverys
.
length
==
2
)
{
SimpleDateFormat
hhmmss
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
SimpleDateFormat
yyyyMMdd
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
String
startDateTimeStr
=
yyyyMMdd
.
format
(
date
)
+
" "
+
deliverys
[
0
]
+
":00"
;
String
endDateTimeStr
=
yyyyMMdd
.
format
(
date
)
+
" "
+
deliverys
[
1
]
+
":00"
;
try
{
e
ndDate
=
hhmmss
.
parse
(
endDateTimeStr
);
s
tartDate
=
hhmmss
.
parse
(
startDateTimeStr
);
storeDeliveryInfoDto
.
setDeliveryStartTime
(
hhmmss
.
parse
(
startDateTimeStr
)
);
storeDeliveryInfoDto
.
setDeliveryEndTime
(
hhmmss
.
parse
(
endDateTimeStr
)
);
deliveryE
ndDate
=
hhmmss
.
parse
(
endDateTimeStr
);
deliveryS
tartDate
=
hhmmss
.
parse
(
startDateTimeStr
);
storeDeliveryInfoDto
.
setDeliveryStartTime
(
deliveryStartDate
);
storeDeliveryInfoDto
.
setDeliveryEndTime
(
deliveryEndDate
);
}
catch
(
ParseException
e
)
{
LogUtil
.
error
(
"getStoreDeliveryInfo_error"
,
endDateTimeStr
,
e
.
getMessage
());
}
}
if
(
startDate
==
null
||
endDate
==
null
||
date
.
after
(
e
ndDate
))
{
if
(
deliveryStartDate
==
null
||
deliveryEndDate
==
null
||
date
.
after
(
deliveryE
ndDate
))
{
throw
new
ServiceException
(
ResponseResult
.
ORDER_CREATE_TIME_NOT_DELIVERY
);
}
// 校验预约配送时间
if
(
StringUtils
.
isBlank
(
createOrderVo
.
getTakeMealTime
())
&&
date
.
before
(
s
tartDate
))
{
long
takeAwayTime
=
s
tartDate
.
getTime
()
+
storeResponseDto
.
getServiceTime
()
*
60
*
1000L
;
if
(
StringUtils
.
isBlank
(
createOrderVo
.
getTakeMealTime
())
&&
date
.
before
(
deliveryS
tartDate
))
{
long
takeAwayTime
=
deliveryS
tartDate
.
getTime
()
+
storeResponseDto
.
getServiceTime
()
*
60
*
1000L
;
takeMealDateTime
=
new
Date
(
takeAwayTime
);
// createOrderVo.setTakeMealTime(DateUtil.convert2Str(takeMealDateTime, "HH:mm"));
}
if
(
takeMealDateTime
!=
null
&&
(
takeMealDateTime
.
before
(
startDate
)
||
takeMealDateTime
.
after
(
end
Date
)))
{
if
(
takeMealDateTime
!=
null
&&
(
takeMealDateTime
.
before
(
deliveryStartDate
)
||
takeMealDateTime
.
after
(
deliveryStart
Date
)))
{
throw
new
ServiceException
(
ResponseResult
.
ORDER_CREATE_TIME_NOT_DELIVERY
);
}
storeDeliveryInfoDto
.
setEnableTakeaway
(
true
);
...
...
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