修改bug
This commit is contained in:
@ -20,12 +20,11 @@ import org.dromara.project.domain.vo.projectteammember.BusProjectTeamMemberVo;
|
||||
import org.dromara.project.service.IBusAttendanceMachineService;
|
||||
import org.dromara.project.service.IBusAttendanceMachineUserService;
|
||||
import org.dromara.project.service.IBusProjectTeamMemberService;
|
||||
import org.dromara.system.domain.vo.SysOssVo;
|
||||
import org.dromara.system.service.ISysOssService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@ -47,6 +46,8 @@ public class BusAttendanceMachineUserServiceImpl implements IBusAttendanceMachin
|
||||
|
||||
private final IBusProjectTeamMemberService projectTeamMemberService;
|
||||
|
||||
private final ISysOssService ossService;
|
||||
|
||||
/**
|
||||
* 查询符合条件的考勤机用户列表
|
||||
*
|
||||
@ -124,13 +125,31 @@ public class BusAttendanceMachineUserServiceImpl implements IBusAttendanceMachin
|
||||
List<SubConstructionUser> userList = constructionUserService.lambdaQuery()
|
||||
.in(SubConstructionUser::getSysUserId, userIds)
|
||||
.list();
|
||||
// 获取用户人脸照信息
|
||||
List<Long> faceIds = userList.stream().map(SubConstructionUser::getFacePic).map(Long::parseLong).distinct().toList();
|
||||
List<SysOssVo> ossVos = ossService.listByIds(faceIds);
|
||||
Map<Long, SysOssVo> ossVoMap = ossVos.stream()
|
||||
.collect(Collectors.toMap(SysOssVo::getOssId, v -> v));
|
||||
// 返回数据
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("用户:[");
|
||||
int count = 0;
|
||||
for (SubConstructionUser user : userList) {
|
||||
String facePic = user.getFacePic();
|
||||
if (StringUtils.isBlank(facePic)) {
|
||||
sb.append(user.getUserName()).append(" ");
|
||||
count++;
|
||||
continue;
|
||||
}
|
||||
SysOssVo ossVo = ossVoMap.get(Long.parseLong(facePic));
|
||||
if (ossVo == null) {
|
||||
sb.append(user.getUserName()).append(" ");
|
||||
count++;
|
||||
continue;
|
||||
}
|
||||
Boolean result = deviceMessageSender.sendPersonnelInformation(machine.getSn(),
|
||||
user.getSysUserId().toString(), user.getUserName(), user.getFacePic());
|
||||
user.getSysUserId().toString(), user.getUserName(), ossVo.getUrl());
|
||||
log.info("考勤机 Sn:{} ,用户:{} 下发成功", machine.getSn(), user.getUserName());
|
||||
if (!result) {
|
||||
sb.append(user.getUserName()).append(" ");
|
||||
count++;
|
||||
|
||||
Reference in New Issue
Block a user