Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gxpt_ht
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
pseer
gxpt_ht
Commits
c4e85090
Commit
c4e85090
authored
Jan 24, 2024
by
吕明尚
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
在保洁自动完成的任务修改房间是否脏房
parent
e8442a90
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
28 additions
and
31 deletions
+28
-31
SCleanRecordsServiceImpl.java
...a/share/system/service/impl/SCleanRecordsServiceImpl.java
+28
-31
No files found.
share-system/src/main/java/share/system/service/impl/SCleanRecordsServiceImpl.java
View file @
c4e85090
...
@@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
...
@@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.transaction.annotation.Transactional
;
import
share.common.constant.Constants
;
import
share.common.constant.Constants
;
import
share.common.core.page.TableDataInfo
;
import
share.common.core.page.TableDataInfo
;
import
share.common.enums.*
;
import
share.common.enums.*
;
...
@@ -19,10 +20,7 @@ import share.system.domain.*;
...
@@ -19,10 +20,7 @@ import share.system.domain.*;
import
share.system.domain.vo.FrontTokenComponent
;
import
share.system.domain.vo.FrontTokenComponent
;
import
share.system.domain.vo.SCleanRecordsVo
;
import
share.system.domain.vo.SCleanRecordsVo
;
import
share.system.mapper.*
;
import
share.system.mapper.*
;
import
share.system.service.DeviceOpService
;
import
share.system.service.*
;
import
share.system.service.ISCleanRecordsService
;
import
share.system.service.ISOrderService
;
import
share.system.service.SmsService
;
/**
/**
* 保洁记录Service业务层处理
* 保洁记录Service业务层处理
...
@@ -49,6 +47,8 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
...
@@ -49,6 +47,8 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
private
SStoreConsumerMapper
storeConsumerMapper
;
private
SStoreConsumerMapper
storeConsumerMapper
;
@Autowired
@Autowired
private
SConsumerMapper
consumerMapper
;
private
SConsumerMapper
consumerMapper
;
@Autowired
private
ISRoomService
roomService
;
//管理员手机号
//管理员手机号
private
static
final
String
phone
=
"13888888888"
;
private
static
final
String
phone
=
"13888888888"
;
...
@@ -306,6 +306,7 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
...
@@ -306,6 +306,7 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
}
}
@Override
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
boolean
finishCleanRecords
()
{
public
boolean
finishCleanRecords
()
{
Date
now
=
DateUtil
.
date
();
Date
now
=
DateUtil
.
date
();
LambdaQueryWrapper
<
SCleanRecords
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
LambdaQueryWrapper
<
SCleanRecords
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
...
@@ -325,25 +326,20 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
...
@@ -325,25 +326,20 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
sOrderLambdaQueryWrapper
.
between
(
SOrder:
:
getPreStartDate
,
now
,
DateUtil
.
offsetMinute
(
now
,
CLEANING
));
sOrderLambdaQueryWrapper
.
between
(
SOrder:
:
getPreStartDate
,
now
,
DateUtil
.
offsetMinute
(
now
,
CLEANING
));
List
<
SOrder
>
orderList
=
orderService
.
list
(
sOrderLambdaQueryWrapper
);
List
<
SOrder
>
orderList
=
orderService
.
list
(
sOrderLambdaQueryWrapper
);
//30分钟未完成保洁并且5分钟内有预约订单
//30分钟未完成保洁并且5分钟内有预约订单
if
(
CollectionUtils
.
isNotEmpty
(
orderList
))
{
List
<
Long
>
orderRoomIds
=
Optional
.
ofNullable
(
orderList
).
orElse
(
new
ArrayList
<>()).
parallelStream
().
map
(
SOrder:
:
getRoomId
).
collect
(
Collectors
.
toList
());
List
<
Long
>
orderRoomIds
=
orderList
.
stream
().
map
(
SOrder:
:
getRoomId
).
collect
(
Collectors
.
toList
());
List
<
SCleanRecords
>
hasOrderlist
=
list
.
stream
().
filter
(
item
->
orderRoomIds
.
contains
(
item
.
getRoomId
())).
collect
(
Collectors
.
toList
());
list
=
list
.
stream
().
filter
(
item
->
orderRoomIds
.
contains
(
item
.
getRoomId
())).
collect
(
Collectors
.
toList
());
List
<
SCleanRecords
>
nonOrderlist
=
list
.
stream
().
filter
(
item
->
!
orderRoomIds
.
contains
(
item
.
getRoomId
())).
collect
(
Collectors
.
toList
());
//查询当前房间当前时间加5分钟有没有预约订单
if
(
CollectionUtils
.
isNotEmpty
(
hasOrderlist
))
{
for
(
SCleanRecords
sCleanRecords
:
list
)
{
hasOrderlist
.
forEach
(
item
->
{
sCleanRecords
.
setStatus
(
2
);
item
.
setStatus
(
2
);
sCleanRecords
.
setStartDate
(
now
);
item
.
setStartDate
(
now
);
sCleanRecords
.
setEndDate
(
now
);
item
.
setEndDate
(
now
);
sCleanRecords
.
setUpdateTime
(
now
);
item
.
setUpdateTime
(
now
);
// List<Long> unusedOrderRoomIds = Optional.ofNullable(orderList).
});
// orElse(new ArrayList<>()).stream().filter(order -> order.getStatus().equals(OrderStatusEnum.UNUSED.getCode()))
// .map(SOrder::getRoomId).collect(Collectors.toList());
// if (unusedOrderRoomIds.contains(sCleanRecords.getRoomId())) {
// deviceOpService.openOrCloseDevice(sCleanRecords.getRoomId(), phone, OpTypeEnum.CUT_ELECTRIC.getCode(), true, FIVE);
// }
}
}
return
0
<
baseMapper
.
updateBatch
(
list
);
List
<
SRoom
>
dirtyRoomList
=
new
ArrayList
<>(
);
}
else
{
if
(
CollectionUtils
.
isNotEmpty
(
nonOrderlist
))
{
List
<
Long
>
roomIdList
=
list
.
stream
().
map
(
SCleanRecords:
:
getRoomId
).
collect
(
Collectors
.
toList
());
List
<
Long
>
roomIdList
=
nonOrder
list
.
stream
().
map
(
SCleanRecords:
:
getRoomId
).
collect
(
Collectors
.
toList
());
//查找改房间门店的保洁人员和管理员
//查找改房间门店的保洁人员和管理员
List
<
SRoom
>
sRoomList
=
sRoomMapper
.
selectBatchIds
(
roomIdList
);
List
<
SRoom
>
sRoomList
=
sRoomMapper
.
selectBatchIds
(
roomIdList
);
//获取门店id,去重
//获取门店id,去重
...
@@ -352,7 +348,6 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
...
@@ -352,7 +348,6 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
//获取门店的保洁人员和管理员
//获取门店的保洁人员和管理员
List
<
SStoreConsumer
>
sStoreConsumers
=
storeConsumerMapper
.
selectList
(
new
LambdaQueryWrapper
<
SStoreConsumer
>().
in
(
SStoreConsumer:
:
getStoreId
,
storeIds
));
List
<
SStoreConsumer
>
sStoreConsumers
=
storeConsumerMapper
.
selectList
(
new
LambdaQueryWrapper
<
SStoreConsumer
>().
in
(
SStoreConsumer:
:
getStoreId
,
storeIds
));
List
<
SConsumer
>
sConsumers
=
consumerMapper
.
selectBatchIds
(
sStoreConsumers
.
stream
().
map
(
SStoreConsumer:
:
getConsumerId
).
collect
(
Collectors
.
toList
()));
List
<
SConsumer
>
sConsumers
=
consumerMapper
.
selectBatchIds
(
sStoreConsumers
.
stream
().
map
(
SStoreConsumer:
:
getConsumerId
).
collect
(
Collectors
.
toList
()));
List
<
Long
>
roomId
=
new
ArrayList
<>();
sStoreConsumers
.
stream
().
forEach
(
item
->
{
sStoreConsumers
.
stream
().
forEach
(
item
->
{
//循环门店和店员的关系表
//循环门店和店员的关系表
sStoreList
.
stream
().
forEach
(
store
->
{
sStoreList
.
stream
().
forEach
(
store
->
{
...
@@ -364,7 +359,8 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
...
@@ -364,7 +359,8 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
//发送短信
//发送短信
sConsumers
.
stream
().
forEach
(
consumer
->
{
sConsumers
.
stream
().
forEach
(
consumer
->
{
if
(
consumer
.
getId
().
equals
(
item
.
getConsumerId
()))
{
if
(
consumer
.
getId
().
equals
(
item
.
getConsumerId
()))
{
roomId
.
add
(
room
.
getId
());
room
.
setIsDirtyRoom
(
YesNoEnum
.
yes
.
getIndex
());
dirtyRoomList
.
add
(
room
);
smsService
.
sendSmsCleanRecords
(
consumer
.
getPhone
(),
store
,
room
);
smsService
.
sendSmsCleanRecords
(
consumer
.
getPhone
(),
store
,
room
);
}
}
});
});
...
@@ -372,16 +368,17 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
...
@@ -372,16 +368,17 @@ public class SCleanRecordsServiceImpl extends ServiceImpl<SCleanRecordsMapper,SC
});
});
});
});
});
});
if
(
CollectionUtils
.
isEmpty
(
roomId
))
{
}
return
false
;
//修改保洁记录为已完成
if
(
CollectionUtils
.
isNotEmpty
(
hasOrderlist
))
{
baseMapper
.
updateBatch
(
hasOrderlist
);
}
}
//修改房间为脏房
//修改房间为脏房
UpdateWrapper
<
SRoom
>
updateWrapper
=
new
UpdateWrapper
<>();
if
(
CollectionUtils
.
isNotEmpty
(
dirtyRoomList
))
{
updateWrapper
.
set
(
"is_dirty_room"
,
YesNoEnum
.
yes
.
getIndex
());
roomService
.
updateBatchById
(
dirtyRoomList
);
updateWrapper
.
in
(
"id"
,
roomId
);
sRoomMapper
.
update
(
null
,
updateWrapper
);
return
false
;
}
}
return
true
;
}
}
@Override
@Override
...
...
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