|
|
@@ -43,6 +43,9 @@ import org.springblade.estate.vo.AccessRecordVO;
|
|
|
import org.springblade.estate.mapper.AccessRecordMapper;
|
|
|
import org.springblade.estate.service.IAccessRecordService;
|
|
|
import org.springblade.core.mp.base.BaseServiceImpl;
|
|
|
+import org.springblade.person.entity.HouseUser;
|
|
|
+import org.springblade.person.feign.IHouseUserClient;
|
|
|
+import org.springblade.person.vo.HouseUserVO;
|
|
|
import org.springblade.system.user.entity.User;
|
|
|
import org.springblade.system.user.feign.IUserClient;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
@@ -79,6 +82,8 @@ public class AccessRecordServiceImpl extends BaseServiceImpl<AccessRecordMapper,
|
|
|
private IUserClient userClient;
|
|
|
@Autowired
|
|
|
private IAccessStatisticsService accessStatisticsService;
|
|
|
+ @Autowired
|
|
|
+ private IHouseUserClient houseUserClient;
|
|
|
|
|
|
@Override
|
|
|
public IPage<AccessRecordVO> selectAccessRecordPage(IPage<AccessRecordVO> page, AccessRecordVO accessRecord) {
|
|
|
@@ -111,20 +116,13 @@ public class AccessRecordServiceImpl extends BaseServiceImpl<AccessRecordMapper,
|
|
|
Agency agency = agencyClient.getById(doorDevice.getAgencyId());
|
|
|
Residential residential = residentialClient.getById(doorDevice.getResidentialId());
|
|
|
String userId = accessRecord.getUserId();
|
|
|
- if(accessRecord.getUserType().intValue() == CommonConstant.UserType.STAFF.getType().intValue()){
|
|
|
- Staff staff = staffClient.getById(Long.parseLong(userId.substring(5)));
|
|
|
+ if(CommonConstant.UserFlag.ENTERPRISE_STAFF_FLAG.getValue().equals(accessRecord.getUserType())){
|
|
|
+ Staff staff = staffClient.getById(Long.parseLong(userId));
|
|
|
Enterprise enterprise = enterpriseClient.getById(staff.getEnterpriseId());
|
|
|
accessRecord.setEnterpriseId(staff.getEnterpriseId());
|
|
|
accessRecord.setEnterpriseName(enterprise.getEnterpriseName());
|
|
|
- accessRecord.setUserName(staff.getRealName());
|
|
|
- accessRecord.setUserId(userId);
|
|
|
- }else if(accessRecord.getUserType().intValue() == CommonConstant.UserType.ADMIN.getType().intValue()){
|
|
|
- R<User> userR = userClient.userInfoById(Long.parseLong(userId.substring(6)));
|
|
|
- User user = userR.getData();
|
|
|
- accessRecord.setUserId(userId);
|
|
|
- accessRecord.setUserName(user.getRealName());
|
|
|
- }else if(accessRecord.getUserType().intValue() == CommonConstant.UserType.GUEST.getType().intValue()){
|
|
|
- GuestRecord guestRecord = guestRecordClient.getById(Long.parseLong(userId.substring(3)));
|
|
|
+ }else if(CommonConstant.UserFlag.GUEST_FLAG.getValue().equals(accessRecord.getUserType())){
|
|
|
+ GuestRecord guestRecord = guestRecordClient.getById(Long.parseLong(userId));
|
|
|
Enterprise enterprise = enterpriseClient.getById(guestRecord.getEnterpriseId());
|
|
|
if(enterprise != null){
|
|
|
accessRecord.setEnterpriseId(guestRecord.getEnterpriseId());
|
|
|
@@ -150,19 +148,23 @@ public class AccessRecordServiceImpl extends BaseServiceImpl<AccessRecordMapper,
|
|
|
String date = sdf.format(accessRecord.getCreateTime());
|
|
|
AccessStatistics accessStatistics = accessStatisticsService.getByDate(date, accessRecord.getTenantId());
|
|
|
if(accessStatistics != null){
|
|
|
- if(accessRecord.getUserType().intValue() == CommonConstant.UserType.STAFF.getType().intValue()){
|
|
|
+ if(CommonConstant.UserFlag.ENTERPRISE_STAFF_FLAG.getValue().equals(accessRecord.getUserType())){
|
|
|
accessStatistics.setStaffCnt(accessStatistics.getStaffCnt() + 1);
|
|
|
- }else if(accessRecord.getUserType().intValue() == CommonConstant.UserType.GUEST.getType().intValue()){
|
|
|
+ }else if(CommonConstant.UserFlag.GUEST_FLAG.getValue().equals(accessRecord.getUserType())){
|
|
|
accessStatistics.setGuestCnt(accessStatistics.getGuestCnt() + 1);
|
|
|
+ }else if(CommonConstant.UserFlag.HOUSE_USER_FLAG.getValue().equals(accessRecord.getUserType())){
|
|
|
+ accessStatistics.setHouseUserCnt(accessStatistics.getHouseUserCnt() + 1);
|
|
|
}
|
|
|
}else{
|
|
|
accessStatistics = new AccessStatistics();
|
|
|
accessStatistics.setDate(DateUtil.parse(date, "yyyy-MM-dd"));
|
|
|
accessStatistics.setTenantId(accessRecord.getTenantId());
|
|
|
- if(accessRecord.getUserType().intValue() == CommonConstant.UserType.STAFF.getType().intValue()){
|
|
|
+ if(CommonConstant.UserFlag.ENTERPRISE_STAFF_FLAG.getValue().equals(accessRecord.getUserType())){
|
|
|
accessStatistics.setStaffCnt(1);
|
|
|
- }else if(accessRecord.getUserType().intValue() == CommonConstant.UserType.GUEST.getType().intValue()){
|
|
|
+ }else if(CommonConstant.UserFlag.GUEST_FLAG.getValue().equals(accessRecord.getUserType())){
|
|
|
accessStatistics.setGuestCnt(1);
|
|
|
+ }else if(CommonConstant.UserFlag.HOUSE_USER_FLAG.getValue().equals(accessRecord.getUserType())){
|
|
|
+ accessStatistics.setHouseUserCnt(1);
|
|
|
}
|
|
|
}
|
|
|
accessStatisticsService.statCount(accessStatistics);
|
|
|
@@ -223,7 +225,6 @@ public class AccessRecordServiceImpl extends BaseServiceImpl<AccessRecordMapper,
|
|
|
record.setDeviceAddress(doorDevice.getAddress());
|
|
|
record.setSerialNum(doorDevice.getSerialNum());
|
|
|
record.setDeviceId(doorDevice.getId());
|
|
|
- record.setOrgPosition(residential.getOrgPosition());
|
|
|
record.setCommandSeq(commandSeq);
|
|
|
record.setTemperature(StringUtil.isNoneBlank(temperature) ? new BigDecimal(temperature).compareTo(BigDecimal.ZERO) == 1 ? temperature : null : null);
|
|
|
record.setOpenTime(openDate);
|