bug修复
This commit is contained in:
parent
2482c473d5
commit
05b773ce8e
@ -44,4 +44,15 @@ public class WorkerAttendancePresenceController {
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
@ApiOperation(value = "劳务在场零点清空功能", notes = "劳务在场零点清空功能", httpMethod = "POST")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping(value = "/updateWorkerAttendanceZero")
|
||||
public Result updateWorkerAttendanceZero(@ApiIgnore @RequestBody HashMap<String, Object> paramMap) {
|
||||
workerAttendancePresenceService.updateWorkerAttendanceZero(paramMap);
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.zhgd.xmgl.modules.worker.entity.WorkerAttendance;
|
||||
import com.zhgd.xmgl.modules.worker.entity.WorkerAttendancePresence;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
/**
|
||||
* @Description: 考勤当前在场的人
|
||||
* @author: pds
|
||||
@ -20,4 +22,6 @@ public interface IWorkerAttendancePresenceService extends IService<WorkerAttenda
|
||||
* @param projectSn
|
||||
*/
|
||||
void addNowAllWorkerAttendancePresence(String projectSn);
|
||||
|
||||
void updateWorkerAttendanceZero(HashMap<String, Object> paramMap);
|
||||
}
|
||||
|
||||
@ -1,22 +1,27 @@
|
||||
package com.zhgd.xmgl.modules.worker.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.zhgd.xmgl.modules.project.entity.Project;
|
||||
import com.zhgd.xmgl.modules.project.mapper.ProjectMapper;
|
||||
import com.zhgd.xmgl.modules.worker.entity.WorkerAttendance;
|
||||
import com.zhgd.xmgl.modules.worker.entity.WorkerAttendancePresence;
|
||||
import com.zhgd.xmgl.modules.worker.mapper.WorkerAttendancePresenceMapper;
|
||||
import com.zhgd.xmgl.modules.worker.service.IWorkerAttendancePresenceService;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 考勤当前在场的人
|
||||
* @author: pds
|
||||
* @date: 2020-09-25
|
||||
* @date: 2020-09-25
|
||||
* @version: V1.0
|
||||
*/
|
||||
@Service
|
||||
@ -24,13 +29,17 @@ public class WorkerAttendancePresenceServiceImpl extends ServiceImpl<WorkerAtten
|
||||
|
||||
@Autowired
|
||||
private WorkerAttendancePresenceMapper workerAttendancePresenceMapper;
|
||||
@Autowired
|
||||
private ProjectMapper projectMapper;
|
||||
@Autowired
|
||||
private IWorkerAttendancePresenceService workerAttendancePresenceService;
|
||||
|
||||
@Override
|
||||
public void addWorkerAttendancePresence(WorkerAttendance workerAttendance) {
|
||||
SimpleDateFormat sft = new SimpleDateFormat("yyyy-MM-dd");
|
||||
String nowDay=sft.format(new Date());
|
||||
String nowDay = sft.format(new Date());
|
||||
//非今天考勤不计算在场
|
||||
if(workerAttendance.getCreateTime().startsWith(nowDay)) {
|
||||
if (workerAttendance.getCreateTime().startsWith(nowDay)) {
|
||||
QueryWrapper<WorkerAttendancePresence> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.lambda().eq(WorkerAttendancePresence::getPersonSn, workerAttendance.getPersonSn())
|
||||
.eq(WorkerAttendancePresence::getProjectSn, workerAttendance.getProjectSn());
|
||||
@ -51,5 +60,17 @@ public class WorkerAttendancePresenceServiceImpl extends ServiceImpl<WorkerAtten
|
||||
workerAttendancePresenceMapper.addNowAllPresenceWorkerAttendance(projectSn);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateWorkerAttendanceZero(HashMap<String, Object> paramMap) {
|
||||
String projectSn1 = MapUtils.getString(paramMap, "projectSn");
|
||||
List<Project> projects = projectMapper.selectList(new LambdaQueryWrapper<Project>()
|
||||
.eq(Project::getEnableWorkerAttendanceZero, 1)
|
||||
.eq(Project::getProjectSn, projectSn1)
|
||||
);
|
||||
for (Project project : projects) {
|
||||
workerAttendancePresenceService.addNowAllWorkerAttendancePresence(project.getProjectSn());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -69,9 +69,6 @@ public class ProjectTask {
|
||||
AsyncCommon asyncCommon;
|
||||
public static Map<String, Integer> sendcodecount = new HashMap<>();
|
||||
|
||||
@Autowired
|
||||
private IWorkerAttendancePresenceService workerAttendancePresenceService;
|
||||
|
||||
/**
|
||||
* 定时清除无效的校验码
|
||||
*/
|
||||
@ -276,22 +273,5 @@ public class ProjectTask {
|
||||
workerAttendancePresenceMapper.deleteAttendancePresence();
|
||||
}
|
||||
|
||||
/**
|
||||
* 劳务在场零点清空功能
|
||||
*/
|
||||
@Scheduled(cron = "0 20 0 * * ?")
|
||||
@SchedulerLock(name = "updateWorkerAttendanceZero", lockAtMostFor = 1000 * 60 * 30, lockAtLeastFor = 1000 * 60 * 3)
|
||||
@RequestMapping("updateWorkerAttendanceZero")
|
||||
public void updateWorkerAttendanceZero() {
|
||||
List<Project> projects = projectMapper.selectList(new LambdaQueryWrapper<Project>()
|
||||
.eq(Project::getEnableWorkerAttendanceZero, 1));
|
||||
for (Project project : projects) {
|
||||
String projectSn = project.getProjectSn();
|
||||
workerAttendancePresenceMapper.delete(new LambdaQueryWrapper<WorkerAttendancePresence>()
|
||||
.eq(WorkerAttendancePresence::getProjectSn, projectSn));
|
||||
workerAttendancePresenceService.addNowAllWorkerAttendancePresence(projectSn);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -7,15 +7,18 @@ import com.zhgd.xmgl.modules.basicdata.entity.SystemUser;
|
||||
import com.zhgd.xmgl.modules.basicdata.mapper.SystemLogoConfigMapper;
|
||||
import com.zhgd.xmgl.modules.basicdata.mapper.SystemUserMapper;
|
||||
import com.zhgd.xmgl.modules.basicdata.service.INoticeService;
|
||||
import com.zhgd.xmgl.modules.project.entity.Project;
|
||||
import com.zhgd.xmgl.modules.project.entity.ProjectExternalSystemService;
|
||||
import com.zhgd.xmgl.modules.project.mapper.ProjectExternalSystemServiceMapper;
|
||||
import com.zhgd.xmgl.modules.project.mapper.ProjectMapper;
|
||||
import com.zhgd.xmgl.modules.project.service.IProjectUfaceConfigService;
|
||||
import com.zhgd.xmgl.modules.worker.entity.WorkerBlacklist;
|
||||
import com.zhgd.xmgl.modules.worker.entity.WorkerInfo;
|
||||
import com.zhgd.xmgl.modules.worker.mapper.WorkerAttendancePresenceMapper;
|
||||
import com.zhgd.xmgl.modules.worker.mapper.WorkerBlacklistMapper;
|
||||
import com.zhgd.xmgl.modules.worker.mapper.WorkerCertificateMapper;
|
||||
import com.zhgd.xmgl.modules.worker.mapper.WorkerInfoMapper;
|
||||
import com.zhgd.xmgl.modules.worker.service.IWorkerAttendancePresenceService;
|
||||
import com.zhgd.xmgl.modules.worker.service.IWorkerCertificateService;
|
||||
import com.zhgd.xmgl.util.ElecardUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -55,6 +58,9 @@ public class WorkerTask {
|
||||
@Autowired
|
||||
private SystemLogoConfigMapper systemLogoConfigMapper;
|
||||
|
||||
@Autowired
|
||||
private IWorkerAttendancePresenceService workerAttendancePresenceService;
|
||||
|
||||
@Autowired
|
||||
private INoticeService noticeService;
|
||||
@Autowired
|
||||
@ -66,6 +72,9 @@ public class WorkerTask {
|
||||
@Autowired
|
||||
private WorkerBlacklistMapper workerBlacklistMapper;
|
||||
|
||||
@Autowired
|
||||
private WorkerAttendancePresenceMapper workerAttendancePresenceMapper;
|
||||
|
||||
/**
|
||||
* 定时修改用户码状态
|
||||
*/
|
||||
@ -255,4 +264,19 @@ public class WorkerTask {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 劳务在场零点清空功能
|
||||
*/
|
||||
@Scheduled(cron = "0 10 0 * * ?")
|
||||
@SchedulerLock(name = "updateWorkerAttendanceZero", lockAtMostFor = 1000 * 60 * 30, lockAtLeastFor = 1000 * 60 * 3)
|
||||
@RequestMapping("updateWorkerAttendanceZero")
|
||||
public void updateWorkerAttendanceZero() {
|
||||
List<Project> projects = projectMapper.selectList(new LambdaQueryWrapper<Project>()
|
||||
.eq(Project::getEnableWorkerAttendanceZero, 1));
|
||||
for (Project project : projects) {
|
||||
String projectSn = project.getProjectSn();
|
||||
workerAttendancePresenceService.addNowAllWorkerAttendancePresence(projectSn);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user