diff --git a/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java index 0b1eea4e5..79bbc6dfc 100644 --- a/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java @@ -230,7 +230,7 @@ public class HiddenDangerInspectRecordServiceImpl extends ServiceImpl= 0 ? workerInfo.getSafeScore() - item.getDeductScore() : 0); diff --git a/src/main/java/com/zhgd/xmgl/modules/exam/controller/ExamPaperController.java b/src/main/java/com/zhgd/xmgl/modules/exam/controller/ExamPaperController.java index 3af17dbe3..c839f82f1 100644 --- a/src/main/java/com/zhgd/xmgl/modules/exam/controller/ExamPaperController.java +++ b/src/main/java/com/zhgd/xmgl/modules/exam/controller/ExamPaperController.java @@ -125,7 +125,7 @@ public class ExamPaperController { if (examPaperEntity == null) { result.error500("未找到对应实体"); } else { - boolean ok = examPaperService.updateById(examPaper); + boolean ok = examPaperService.updateInfo(examPaper); if (ok) { result.success("修改成功!"); } else { diff --git a/src/main/java/com/zhgd/xmgl/modules/exam/controller/ExamTrainRecordController.java b/src/main/java/com/zhgd/xmgl/modules/exam/controller/ExamTrainRecordController.java index e40a513c8..81eaf127b 100644 --- a/src/main/java/com/zhgd/xmgl/modules/exam/controller/ExamTrainRecordController.java +++ b/src/main/java/com/zhgd/xmgl/modules/exam/controller/ExamTrainRecordController.java @@ -81,6 +81,43 @@ public class ExamTrainRecordController { return Result.success(pageList); } + /** + * 分页列表查询 + * + * @return + */ + @OperLog(operModul = "教育培训记录信息管理", operType = "分页查询", operDesc = "分页列表查询教育培训记录信息信息") + @ApiOperation(value = " 分页列表查询教育培训记录信息信息", notes = "分页列表查询教育培训记录信息信息", httpMethod = "POST") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNo", value = "页数", paramType = "body", required = true, defaultValue = "1", dataType = "Integer"), + @ApiImplicitParam(name = "pageSize", value = "每页条数", paramType = "body", required = true, defaultValue = "10", dataType = "Integer") + }) + @PostMapping(value = "/examRecordPage") + public Result> examRecordPage(@ApiIgnore @RequestBody Map map) { + QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(ExamTrainRecord.class, map); + Page page = PageUtil.getPage(map); + IPage pageList = examTrainRecordService.examPageList(page, queryWrapper); + return Result.success(pageList); + } + + /** + * 分页列表查询 + * + * @return + */ + @OperLog(operModul = "教育培训记录信息管理", operType = "分页查询", operDesc = "分页列表查询教育培训记录信息信息") + @ApiOperation(value = " 分页列表查询教育培训记录信息信息", notes = "分页列表查询教育培训记录信息信息", httpMethod = "POST") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNo", value = "页数", paramType = "body", required = true, defaultValue = "1", dataType = "Integer"), + @ApiImplicitParam(name = "pageSize", value = "每页条数", paramType = "body", required = true, defaultValue = "10", dataType = "Integer") + }) + @PostMapping(value = "/examRecordList") + public Result> examRecordList(@ApiIgnore @RequestBody Map map) { + QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(ExamTrainRecord.class, map); + IPage pageList = examTrainRecordService.examPageList(new Page(-1, -1), queryWrapper); + return Result.success(pageList.getRecords()); + } + /** * 列表查询 * diff --git a/src/main/java/com/zhgd/xmgl/modules/exam/mapper/ExamTrainRecordMapper.java b/src/main/java/com/zhgd/xmgl/modules/exam/mapper/ExamTrainRecordMapper.java index 072fc0028..81f8e1327 100644 --- a/src/main/java/com/zhgd/xmgl/modules/exam/mapper/ExamTrainRecordMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/exam/mapper/ExamTrainRecordMapper.java @@ -21,4 +21,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; public interface ExamTrainRecordMapper extends BaseMapper { Page pageList(Page page, @Param(Constants.WRAPPER)Wrapper wrapper); + + Page examPageList(Page page, @Param(Constants.WRAPPER)Wrapper wrapper); } diff --git a/src/main/java/com/zhgd/xmgl/modules/exam/mapper/xml/ExamTrainRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/exam/mapper/xml/ExamTrainRecordMapper.xml index ab5d9132a..2bbf8acea 100644 --- a/src/main/java/com/zhgd/xmgl/modules/exam/mapper/xml/ExamTrainRecordMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/exam/mapper/xml/ExamTrainRecordMapper.xml @@ -9,4 +9,13 @@ left join exam_course c on et.course_id = c.id) a ${ew.customSqlSegment} + + \ No newline at end of file diff --git a/src/main/java/com/zhgd/xmgl/modules/exam/service/IExamPaperService.java b/src/main/java/com/zhgd/xmgl/modules/exam/service/IExamPaperService.java index 924b3e523..32d4ed31f 100644 --- a/src/main/java/com/zhgd/xmgl/modules/exam/service/IExamPaperService.java +++ b/src/main/java/com/zhgd/xmgl/modules/exam/service/IExamPaperService.java @@ -23,6 +23,8 @@ public interface IExamPaperService extends IService { boolean saveInfo(ExamPaperVo examPaperVo); + boolean updateInfo(ExamPaper examPaper); + ExamPaperVo queryDetailById(Long examId); List queryQuestionById(Long examId); diff --git a/src/main/java/com/zhgd/xmgl/modules/exam/service/IExamTrainRecordService.java b/src/main/java/com/zhgd/xmgl/modules/exam/service/IExamTrainRecordService.java index 0d2033b53..8400d69f7 100644 --- a/src/main/java/com/zhgd/xmgl/modules/exam/service/IExamTrainRecordService.java +++ b/src/main/java/com/zhgd/xmgl/modules/exam/service/IExamTrainRecordService.java @@ -19,6 +19,8 @@ public interface IExamTrainRecordService extends IService { Page pageList(Page page, Wrapper wrapper); + Page examPageList(Page page, Wrapper wrapper); + ExamTrainRecord submit(List examAnswerQuestionList); void submitStudy(ExamCourseRecord examCourseRecord); diff --git a/src/main/java/com/zhgd/xmgl/modules/exam/service/impl/ExamPaperServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/exam/service/impl/ExamPaperServiceImpl.java index b84a7d9b7..16e26258e 100644 --- a/src/main/java/com/zhgd/xmgl/modules/exam/service/impl/ExamPaperServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/exam/service/impl/ExamPaperServiceImpl.java @@ -75,6 +75,18 @@ public class ExamPaperServiceImpl extends ServiceImpl list = Arrays.asList(examPaper.getQuestions().split(",")).stream().map(Long::new).collect(Collectors.toList()); + List examQuestionBankList = examQuestionBankService.listByIds(list); + int sum = examQuestionBankList.stream().mapToInt(e -> e.getScore()).sum(); + examPaper.setTotalScore(sum); + } + boolean flag = this.updateById(examPaper); + return flag; + } + @Override public ExamPaperVo queryDetailById(Long examId) { ExamPaper byId = this.getById(examId); diff --git a/src/main/java/com/zhgd/xmgl/modules/exam/service/impl/ExamTrainRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/exam/service/impl/ExamTrainRecordServiceImpl.java index 3501ee9ce..2cdd0e9d0 100644 --- a/src/main/java/com/zhgd/xmgl/modules/exam/service/impl/ExamTrainRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/exam/service/impl/ExamTrainRecordServiceImpl.java @@ -60,6 +60,11 @@ public class ExamTrainRecordServiceImpl extends ServiceImpl examPageList(Page page, Wrapper wrapper) { + return baseMapper.examPageList(page, wrapper); + } + @Override public ExamTrainRecord submit(List examAnswerQuestionList) { ExamTrainRecord examTrainRecord = this.getById(examAnswerQuestionList.get(0).getTrainRecordId()); @@ -98,13 +103,20 @@ public class ExamTrainRecordServiceImpl extends ServiceImpllambdaQuery() + .eq(ExamCourseRecord::getTrainId, examCourseRecord.getTrainId()) + .eq(ExamCourseRecord::getWorkerId, examCourseRecord.getWorkerId())); + if (courseRecord.getNumber() != null && courseRecord.getNumber() > 0) { + return; + } LambdaUpdateWrapper wrapper = Wrappers.lambdaUpdate(); wrapper.set(ExamCourseRecord::getBeginTime, examCourseRecord.getBeginTime()); wrapper.set(ExamCourseRecord::getEndTime, examCourseRecord.getEndTime()); wrapper.set(ExamCourseRecord::getNumber, 1); // wrapper.eq(ExamCourseRecord::getCourseId, examCourseRecord.getCourseId()); wrapper.eq(ExamCourseRecord::getTrainId, examCourseRecord.getTrainId()); - examCourseRecordService.update(wrapper); + wrapper.eq(ExamCourseRecord::getWorkerId, examCourseRecord.getWorkerId()); + boolean update = examCourseRecordService.update(wrapper); //TODO 积分管理 List list = examPointConfigService.list(Wrappers.lambdaQuery().eq(ExamPointConfig::getProjectSn, examTrain.getProjectSn())); if (list.size() > 0) { @@ -114,38 +126,31 @@ public class ExamTrainRecordServiceImpl extends ServiceImpllambdaQuery() + .eq(ExamTrainRecord::getTrainId, courseRecord.getTrainId()) + .eq(ExamTrainRecord::getWorkerId, courseRecord.getWorkerId())); + examTrainRecord.setIsPass(1); + this.updateById(examTrainRecord); + } } private void point(String dictData, List list, Long workerId, String desc) { List collect = list.stream().filter(l -> l.getDictData().equals(dictData)).collect(Collectors.toList()); int score = 0; - int flag = -1; if (collect.size() > 0) { if (collect.get(0).getType().equals("+")) { //加分 score = collect.get(0).getPoint(); - flag = 1; } else { //扣分 - score = collect.get(0).getPoint(); - flag = 0; - } - } - WorkerInfo workerInfo = workerInfoService.getById(workerId); - LambdaUpdateWrapper wrapper = Wrappers.lambdaUpdate(); - if (flag == 1) { - wrapper.set(WorkerInfo::getSafeScore, workerInfo.getSafeScore() + score); - } else { - if (workerInfo.getSafeScore() < score) { - wrapper.set(WorkerInfo::getSafeScore, 0); - } else { - wrapper.set(WorkerInfo::getSafeScore, workerInfo.getSafeScore() - score); + score = -collect.get(0).getPoint(); } } //扣分 HashMap map = new HashMap<>(); - map.put("id", workerInfo.getId()); - map.put("deductScore", score); + map.put("id", workerId); + map.put("deductScore", -score); workerInfoService.updateScoreSendAuth(map); XzDeductScoreRecord xzDeductScoreRecord = new XzDeductScoreRecord(); xzDeductScoreRecord.setCreateDate(new Date()); @@ -153,6 +158,8 @@ public class ExamTrainRecordServiceImpl extends ServiceImpl recordList = examTrain.getExamTrainRecordList(); + Integer passLine = 0; + if (examTrain.getExamPaperId() != null) { + passLine = examPaperService.getById(examTrain.getExamPaperId()).getPassLine(); + } UserInfo user = SecurityUtils.getUser(); + examTrain.setPassLine(passLine); examTrain.setCreateBy(user.getUserId().toString()); examTrain.setWorkerNum(recordList.size()); boolean flag = this.save(examTrain); @@ -74,18 +83,21 @@ public class ExamTrainServiceImpl extends ServiceImpl { + ExamCourseRecord examCourseRecord = new ExamCourseRecord(); + examCourseRecord.setProjectSn(examTrain.getProjectSn()); + examCourseRecord.setCreateBy(examTrain.getCreateBy()); + examCourseRecord.setCourseId(examTrain.getCourseId()); + examCourseRecord.setNumber(0); + examCourseRecord.setWorkerId(r.getWorkerId()); + examCourseRecord.setWorkerName(r.getWorkerName()); + examCourseRecord.setWorkerCard(r.getWorkerCard()); + examCourseRecord.setTrainId(examTrain.getId()); + examCourseRecordList.add(examCourseRecord); + }); + } examTrainRecordService.saveBatch(recordList); examCourseRecordService.saveBatch(examCourseRecordList); } diff --git a/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityInspectionRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityInspectionRecordServiceImpl.java index c53d7f40a..0b574d7df 100644 --- a/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityInspectionRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityInspectionRecordServiceImpl.java @@ -349,7 +349,7 @@ public class QualityInspectionRecordServiceImpl extends ServiceImpl= 0 ? workerInfo.getSafeScore() - item.getDeductScore() : 0); diff --git a/src/main/java/com/zhgd/xmgl/modules/video/service/impl/AiAnalyseHardWareAlarmRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/video/service/impl/AiAnalyseHardWareAlarmRecordServiceImpl.java index c9108afbb..fadae2a9c 100644 --- a/src/main/java/com/zhgd/xmgl/modules/video/service/impl/AiAnalyseHardWareAlarmRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/video/service/impl/AiAnalyseHardWareAlarmRecordServiceImpl.java @@ -517,7 +517,7 @@ public class AiAnalyseHardWareAlarmRecordServiceImpl extends ServiceImpl= 0 ? workerInfo.getSafeScore() - item.getDeductScore() : 0); diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/controller/XzWorkerSafeWatchConfigController.java b/src/main/java/com/zhgd/xmgl/modules/xz/controller/XzWorkerSafeWatchConfigController.java index 2dbd8214e..702d71ab0 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/controller/XzWorkerSafeWatchConfigController.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/controller/XzWorkerSafeWatchConfigController.java @@ -1,5 +1,6 @@ package com.zhgd.xmgl.modules.xz.controller; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.zhgd.annotation.OperLog; import com.zhgd.xmgl.modules.xz.entity.XzWorkerSafeWatchConfig; import com.zhgd.xmgl.modules.xz.service.IXzWorkerSafeWatchConfigService; @@ -102,7 +103,12 @@ public class XzWorkerSafeWatchConfigController { @ApiOperation(value = " 添加安全履职配置信息信息", notes = "添加安全履职配置信息信息", httpMethod = "POST") @PostMapping(value = "/add") public Result add(@RequestBody XzWorkerSafeWatchConfig xzWorkerSafeWatchConfig) { - Result result = new Result(); + XzWorkerSafeWatchConfig workerSafeWatchConfig = xzWorkerSafeWatchConfigService.getOne(Wrappers.lambdaQuery() + .eq(XzWorkerSafeWatchConfig::getProjectSn, xzWorkerSafeWatchConfig.getProjectSn()) + .eq(XzWorkerSafeWatchConfig::getType, xzWorkerSafeWatchConfig.getType())); + if (workerSafeWatchConfig != null) { + return Result.error("已存在该配置!"); + } xzWorkerSafeWatchConfigService.save(xzWorkerSafeWatchConfig); return Result.success("添加成功!"); } @@ -122,11 +128,19 @@ public class XzWorkerSafeWatchConfigController { if (xzWorkerSafeWatchConfigEntity == null) { result.error500("未找到对应实体"); } else { - boolean ok = xzWorkerSafeWatchConfigService.updateById(xzWorkerSafeWatchConfig); - if (ok) { - result.success("修改成功!"); + XzWorkerSafeWatchConfig workerSafeWatchConfig = xzWorkerSafeWatchConfigService.getOne(Wrappers.lambdaQuery() + .eq(XzWorkerSafeWatchConfig::getProjectSn, xzWorkerSafeWatchConfig.getProjectSn()) + .eq(XzWorkerSafeWatchConfig::getType, xzWorkerSafeWatchConfig.getType()) + .ne(XzWorkerSafeWatchConfig::getId, xzWorkerSafeWatchConfig.getId())); + if (workerSafeWatchConfig != null) { + result.error500("已存在该配置!"); } else { - result.success("操作失败!"); + boolean ok = xzWorkerSafeWatchConfigService.updateById(xzWorkerSafeWatchConfig); + if (ok) { + result.success("修改成功!"); + } else { + result.success("操作失败!"); + } } } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/controller/XzWorkerSafeWatchManagerController.java b/src/main/java/com/zhgd/xmgl/modules/xz/controller/XzWorkerSafeWatchManagerController.java index 999e63ca7..8fa78ae17 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/controller/XzWorkerSafeWatchManagerController.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/controller/XzWorkerSafeWatchManagerController.java @@ -1,6 +1,8 @@ package com.zhgd.xmgl.modules.xz.controller; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.zhgd.annotation.OperLog; +import com.zhgd.xmgl.modules.xz.entity.XzWorkerSafeWatchConfig; import com.zhgd.xmgl.modules.xz.entity.XzWorkerSafeWatchManager; import com.zhgd.xmgl.modules.xz.service.IXzWorkerSafeWatchManagerService; import com.zhgd.xmgl.util.PageUtil; @@ -84,7 +86,12 @@ public class XzWorkerSafeWatchManagerController { @ApiOperation(value = " 添加安全履职报警推送人信息信息", notes = "添加安全履职报警推送人信息信息", httpMethod = "POST") @PostMapping(value = "/add") public Result add(@RequestBody XzWorkerSafeWatchManager xzWorkerSafeWatchManager) { - Result result = new Result(); + XzWorkerSafeWatchManager workerSafeWatchManager = xzWorkerSafeWatchManagerService.getOne(Wrappers.lambdaQuery() + .eq(XzWorkerSafeWatchManager::getWatchConfigId, xzWorkerSafeWatchManager.getWatchConfigId()) + .eq(XzWorkerSafeWatchManager::getEnterpriseId, xzWorkerSafeWatchManager.getEnterpriseId())); + if (workerSafeWatchManager != null) { + return Result.error("已存在该企业信息!"); + } xzWorkerSafeWatchManagerService.save(xzWorkerSafeWatchManager); return Result.success("添加成功!"); } @@ -104,11 +111,19 @@ public class XzWorkerSafeWatchManagerController { if (xzWorkerSafeWatchManagerEntity == null) { result.error500("未找到对应实体"); } else { - boolean ok = xzWorkerSafeWatchManagerService.updateById(xzWorkerSafeWatchManager); - if (ok) { - result.success("修改成功!"); + XzWorkerSafeWatchManager workerSafeWatchManager = xzWorkerSafeWatchManagerService.getOne(Wrappers.lambdaQuery() + .eq(XzWorkerSafeWatchManager::getWatchConfigId, xzWorkerSafeWatchManager.getWatchConfigId()) + .eq(XzWorkerSafeWatchManager::getEnterpriseId, xzWorkerSafeWatchManager.getEnterpriseId()) + .ne(XzWorkerSafeWatchManager::getId, xzWorkerSafeWatchManager.getId())); + if (workerSafeWatchManager != null) { + result.error500("已存在该企业信息"); } else { - result.success("操作失败!"); + boolean ok = xzWorkerSafeWatchManagerService.updateById(xzWorkerSafeWatchManager); + if (ok) { + result.success("修改成功!"); + } else { + result.success("操作失败!"); + } } } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/entity/XzWorkerSafeWatchAlarm.java b/src/main/java/com/zhgd/xmgl/modules/xz/entity/XzWorkerSafeWatchAlarm.java index c6e3ac108..062db0695 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/entity/XzWorkerSafeWatchAlarm.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/entity/XzWorkerSafeWatchAlarm.java @@ -62,6 +62,12 @@ public class XzWorkerSafeWatchAlarm implements Serializable { @Excel(name = "姓名", width = 15) @ApiModelProperty(value = "姓名") private String workerName; + /** + * 企业ID + */ + @Excel(name = "企业ID", width = 15) + @ApiModelProperty(value = "企业ID") + private Long enterpriseId; /** * 企业名称 */ diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/mapper/XzWorkerSafeWatchAlarmMapper.java b/src/main/java/com/zhgd/xmgl/modules/xz/mapper/XzWorkerSafeWatchAlarmMapper.java index d00a96a28..586f33037 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/mapper/XzWorkerSafeWatchAlarmMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/mapper/XzWorkerSafeWatchAlarmMapper.java @@ -2,6 +2,7 @@ package com.zhgd.xmgl.modules.xz.mapper; import java.util.List; +import com.zhgd.annotation.DataScope; import com.zhgd.xmgl.modules.xz.entity.XzWorkerSafeWatchAlarm; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -14,6 +15,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; * @version: V1.0 */ @Mapper +@DataScope public interface XzWorkerSafeWatchAlarmMapper extends BaseMapper { } diff --git a/src/main/java/com/zhgd/xmgl/task/ExamTask.java b/src/main/java/com/zhgd/xmgl/task/ExamTask.java index c9ff7a8e7..042c40aa3 100644 --- a/src/main/java/com/zhgd/xmgl/task/ExamTask.java +++ b/src/main/java/com/zhgd/xmgl/task/ExamTask.java @@ -48,6 +48,10 @@ public class ExamTask { @Autowired private IExamTrainRecordService examTrainRecordService; + @Autowired + private IExamNoticeService examNoticeService; + + @Scheduled(cron = "0 0/1 * * * ?") public void examNotice() { List list = projectService.list(); @@ -73,17 +77,13 @@ public class ExamTask { noticeList.add(examNotice); } } - } - } - List examCourseList = examCourseService.list(Wrappers.lambdaQuery().eq(ExamCourse::getProjectSn, list.get(i).getProjectSn())); - for (int j = 0; j < examCourseList.size(); j++) { - if (DateUtil.compare(new Date(), getTime(examNoticeConfig.getExamType(), examNoticeConfig.getExamNum())) < 0) { - List examCourseRecords = examCourseRecordService.list(Wrappers.lambdaQuery().eq(ExamCourseRecord::getCourseId, examCourseList.get(j))); - for (int i1 = 0; i1 < examCourseRecords.size(); i1++) { - if (examCourseRecords.get(i).getNumber() == null || examCourseRecords.get(i).getNumber() == 0) { + List examCourseRecords = examCourseRecordService.list(Wrappers.lambdaQuery() + .eq(ExamCourseRecord::getTrainId, examTrainList.get(j).getId())); + for (int i2 = 0; i2 < examCourseRecords.size(); i2++) { + if (examCourseRecords.get(i2).getNumber() == null || examCourseRecords.get(i2).getNumber() == 0) { ExamNotice examNotice = new ExamNotice(); - examNotice.setWorkerId(examCourseRecords.get(i1).getWorkerId().toString()); - examNotice.setWorkerName(examCourseRecords.get(i1).getWorkerName()); + examNotice.setWorkerId(examCourseRecords.get(i2).getWorkerId().toString()); + examNotice.setWorkerName(examCourseRecords.get(i2).getWorkerName()); examNotice.setType(1); examNotice.setContent("参加安全教育课程学习"); examNotice.setProjectSn(list.get(i).getProjectSn()); @@ -136,14 +136,15 @@ public class ExamTask { // } } } + examNoticeService.saveBatch(noticeList); } private DateTime getTime(int type, int num){ DateTime dateTime = null; if (type == 1) { - dateTime = DateUtil.offsetHour(new Date(), -num); + dateTime = DateUtil.offsetHour(new Date(), num); } else if (type == 2) { - dateTime = DateUtil.offsetDay(new Date(), -num); + dateTime = DateUtil.offsetDay(new Date(), num); } return dateTime; } diff --git a/src/main/java/com/zhgd/xmgl/task/WorkerTask.java b/src/main/java/com/zhgd/xmgl/task/WorkerTask.java index 788c273b2..dd259c470 100644 --- a/src/main/java/com/zhgd/xmgl/task/WorkerTask.java +++ b/src/main/java/com/zhgd/xmgl/task/WorkerTask.java @@ -3,6 +3,7 @@ package com.zhgd.xmgl.task; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -382,8 +383,12 @@ public class WorkerTask { if (personSn.size() > 0) { Map requestParam = new HashMap<>(); requestParam.put("personSns", personSn); + requestParam.put("inserviceType", 1); List workerInfoList = workerInfoMapper.selectWorkerInfoList(new Page<>(-1, -1), requestParam); for (WorkerInfo workerInfo : workerInfoList) { + if (workerInfo.getEnterpriseId() == null) { + continue; + } XzWorkerSafeWatchAlarm xzWorkerSafeWatchAlarm = new XzWorkerSafeWatchAlarm(); xzWorkerSafeWatchAlarm.setWorkerId(workerInfo.getId()); xzWorkerSafeWatchAlarm.setWorkerName(workerInfo.getWorkerName()); @@ -395,6 +400,7 @@ public class WorkerTask { xzWorkerSafeWatchAlarm.setType(type); xzWorkerSafeWatchAlarm.setProjectSn(project.getProjectSn()); xzWorkerSafeWatchAlarm.setDayNum(dayNum); + xzWorkerSafeWatchAlarm.setEnterpriseId(workerInfo.getEnterpriseId()); alarmList.add(xzWorkerSafeWatchAlarm); Long id = xzWorkerSafeWatchConfig.getId(); @@ -403,15 +409,17 @@ public class WorkerTask { .eq(XzWorkerSafeWatchManager::getWatchConfigId, id)) .stream().map(l -> l.getUserId()).collect(Collectors.joining(",")).split(",")); for (String userId : userIds) { - Notice notice = new Notice(); - notice.setType("35"); - notice.setMsg(String.format("事件:{},人员名称:{},身份证号:{}", - typeName[Integer.parseInt(type) - 1] + dayNum + "天未履职", workerInfo.getWorkerName(), workerInfo.getIdCard())); - notice.setTitle("人员安全履职预警提醒"); - notice.setIsRead(0); - notice.setAccountId(Long.valueOf(userId)); - notice.setSendTime(DateUtil.formatDateTime(new Date())); - noticeList.add(notice); + if (StringUtils.isNotBlank(userId)) { + Notice notice = new Notice(); + notice.setType("35"); + notice.setMsg(StrUtil.format("事件:{},人员名称:{},身份证号:{}", + typeName[Integer.parseInt(type) - 1] + dayNum + "天未履职", workerInfo.getWorkerName(), workerInfo.getIdCard())); + notice.setTitle("人员安全履职预警提醒"); + notice.setIsRead(0); + notice.setAccountId(Long.valueOf(userId)); + notice.setSendTime(DateUtil.formatDateTime(new Date())); + noticeList.add(notice); + } } } }