12-17-人员管理大屏-修复循环注入版-修复timeType版-消息回复-完善-修复版-优化分包公司查询版
This commit is contained in:
@ -9,6 +9,8 @@ import org.dromara.project.domain.BusAttendance;
|
||||
import org.dromara.project.domain.bo.BusAttendanceBo;
|
||||
import org.dromara.project.domain.vo.BusAttendanceVo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 考勤Mapper接口
|
||||
*
|
||||
@ -20,6 +22,6 @@ public interface BusAttendanceMapper extends BaseMapperPlus<BusAttendance, BusAt
|
||||
|
||||
Page<BusAttendanceVo> queryPageList(BusAttendanceBo bo, PageQuery pageQuery);
|
||||
|
||||
@Select("select * from sub_contractor where id = #{id}")
|
||||
SubContractor getSubContractor(Long id);
|
||||
@Select("select * from sub_contractor")
|
||||
List<SubContractor> getSubContractor();
|
||||
}
|
||||
|
||||
@ -2877,6 +2877,8 @@ public class BusAttendanceServiceImpl extends ServiceImpl<BusAttendanceMapper, B
|
||||
List<SubConstructionUser> list = constructionUserService.list(lqw);
|
||||
//先查询出用户列表
|
||||
List<SysUserVo> users = userMapper.selectVoList(Wrappers.lambdaQuery());
|
||||
//查询分包公司用于填充名称
|
||||
List<SubContractor> subContractors = baseMapper.getSubContractor();
|
||||
//根据分包和班组的id进行分类 统计都有多少人 未入场人员没有两项数据 无法统计 仅能计算为总数
|
||||
List<RyglWebSocketVo> fbList = new ArrayList<>();
|
||||
List<RyglWebSocketVo> bzList = new ArrayList<>();
|
||||
@ -2893,15 +2895,11 @@ public class BusAttendanceServiceImpl extends ServiceImpl<BusAttendanceMapper, B
|
||||
if (sysUserVo == null){
|
||||
continue;
|
||||
}
|
||||
// SysUserVo sysUserVo = userService.queryById(constructionUser.getSysUserId());
|
||||
// if (sysUserVo == null){
|
||||
// continue;
|
||||
// }
|
||||
//判断userType app用户类型 0-施工人员 1-管理人员 2-分包人员
|
||||
if (sysUserVo.getAppUserType().equals("0")){
|
||||
checkAndSetValue(bzList,constructionUser,0,timeType,projectId);
|
||||
checkAndSetValue(bzList,constructionUser,0,timeType,projectId,subContractors);
|
||||
}else if (sysUserVo.getAppUserType().equals("2")){
|
||||
checkAndSetValue(fbList,constructionUser,2,timeType,projectId);
|
||||
checkAndSetValue(fbList,constructionUser,2,timeType,projectId,subContractors);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2966,7 +2964,7 @@ public class BusAttendanceServiceImpl extends ServiceImpl<BusAttendanceMapper, B
|
||||
/**
|
||||
* getAttendanceInfo附属方法
|
||||
*/
|
||||
private void checkAndSetValue(List<RyglWebSocketVo> ryglWebSocketVoList, SubConstructionUser info,int type,Long time,Long projectId){
|
||||
private void checkAndSetValue(List<RyglWebSocketVo> ryglWebSocketVoList, SubConstructionUser info,int type,Long time,Long projectId,List<SubContractor> SubContractors){
|
||||
//timeType 1:今天 2:本周 3:本月 此参数的校验放在连接时获取参数进行校验
|
||||
if (time == 2L) {
|
||||
// 获取本周一到今天的天数
|
||||
@ -2995,9 +2993,11 @@ public class BusAttendanceServiceImpl extends ServiceImpl<BusAttendanceMapper, B
|
||||
ryglWebSocketVo.setZzId(info.getContractorId());
|
||||
//分包组织名称
|
||||
if (info.getContractorId() != null) {
|
||||
SubContractor byId = baseMapper.getSubContractor(info.getContractorId());
|
||||
if (byId != null) {
|
||||
ryglWebSocketVo.setZzmc(byId.getName());
|
||||
for (SubContractor subContractor : SubContractors) {
|
||||
if (subContractor.getId().equals(info.getContractorId())) {
|
||||
ryglWebSocketVo.setZzmc(subContractor.getName());
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
//总人数 先设置1
|
||||
|
||||
Reference in New Issue
Block a user