考勤
This commit is contained in:
		| @ -13,13 +13,13 @@ spring.boot.admin.client: | ||||
|  | ||||
| --- # snail-job 配置 | ||||
| snail-job: | ||||
|   enabled: false | ||||
|   enabled: true | ||||
|   # 需要在 SnailJob 后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务 | ||||
|   group: "ruoyi_group" | ||||
|   # SnailJob 接入验证令牌 详见 script/sql/ry_job.sql `sj_group_config` 表 | ||||
|   token: "SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT" | ||||
|   server: | ||||
|     host: 192.168.110.119 | ||||
|     host: 127.0.0.1 | ||||
|     port: 17888 | ||||
|   # 命名空间UUID 详见 script/sql/ry_job.sql `sj_namespace`表`unique_id`字段 | ||||
|   namespace: ${spring.profiles.active} | ||||
|  | ||||
| @ -108,6 +108,11 @@ | ||||
|             <artifactId>ruoyi-common-doc</artifactId> | ||||
|         </dependency> | ||||
|  | ||||
|         <dependency> | ||||
|             <groupId>org.dromara</groupId> | ||||
|             <artifactId>ruoyi-common-job</artifactId> | ||||
|         </dependency> | ||||
|  | ||||
|         <dependency> | ||||
|             <groupId>org.dromara</groupId> | ||||
|             <artifactId>ruoyi-common-mybatis</artifactId> | ||||
|  | ||||
| @ -2,6 +2,7 @@ package org.dromara.job.attendance; | ||||
|  | ||||
|  | ||||
| import cn.hutool.core.date.DateUtil; | ||||
| import com.aizuda.snailjob.client.job.core.annotation.JobExecutor; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import jakarta.annotation.Resource; | ||||
| @ -31,7 +32,7 @@ import java.time.LocalTime; | ||||
| import java.util.*; | ||||
|  | ||||
| @Slf4j | ||||
| //@Component | ||||
| @Component | ||||
| public class AttendanceJob { | ||||
|  | ||||
|     @Resource | ||||
| @ -54,6 +55,7 @@ public class AttendanceJob { | ||||
|  | ||||
|  | ||||
| //    @Scheduled(cron = "0 0/10 * * * ?") | ||||
|     @JobExecutor(name = "clockInMiss") | ||||
|     public void clockInMiss() { | ||||
|  | ||||
|         log.info("执行定时任务:上班缺卡记录生成"); | ||||
| @ -165,6 +167,7 @@ public class AttendanceJob { | ||||
|     } | ||||
|  | ||||
| //    @Scheduled(cron = "0 0/10 * * * ?") | ||||
|     @JobExecutor(name = "clockOutMiss") | ||||
|     public void clockOutMiss() { | ||||
|         log.info("执行定时任务:下班缺卡记录生成"); | ||||
|  | ||||
|  | ||||
| @ -1,17 +1,20 @@ | ||||
| package org.dromara.project.controller.app; | ||||
|  | ||||
| import cn.hutool.core.collection.CollectionUtil; | ||||
| import jakarta.annotation.Resource; | ||||
| import jakarta.validation.constraints.NotNull; | ||||
| import org.dromara.common.core.domain.R; | ||||
| import org.dromara.common.satoken.utils.LoginHelper; | ||||
| import org.dromara.common.web.core.BaseController; | ||||
| import org.dromara.contractor.service.ISubConstructionUserService; | ||||
| import org.dromara.project.domain.BusProjectPunchrange; | ||||
| import org.dromara.project.domain.dto.attendance.BusAttendancePunchCardByFaceReq; | ||||
| import org.dromara.project.domain.vo.BusAttendanceRuleVo; | ||||
| import org.dromara.project.domain.vo.BusAttendanceVo; | ||||
| import org.dromara.project.domain.vo.BusMonthAttendanceVo; | ||||
| import org.dromara.project.service.IBusAttendanceRuleService; | ||||
| import org.dromara.project.service.IBusAttendanceService; | ||||
| import org.dromara.project.service.IBusProjectPunchrangeService; | ||||
| import org.springframework.validation.annotation.Validated; | ||||
| import org.springframework.web.bind.annotation.*; | ||||
| import org.springframework.web.multipart.MultipartFile; | ||||
| @ -36,6 +39,10 @@ public class BusAttendanceAppController extends BaseController { | ||||
|     @Resource | ||||
|     private  IBusAttendanceRuleService attendanceRuleService; | ||||
|  | ||||
|     @Resource | ||||
|     private IBusProjectPunchrangeService projectPunchrangeService; | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * 人脸坐标打卡 | ||||
|      */ | ||||
| @ -62,11 +69,22 @@ public class BusAttendanceAppController extends BaseController { | ||||
|         return R.ok(attendanceService.getPunchRangeByProjectIdAndUserId(projectId, userId)); | ||||
|     } | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * 查询项目考勤范围规则 | ||||
|      */ | ||||
|     @GetMapping("/punchRangeInfoList/{projectId}") | ||||
|     public R<List<BusProjectPunchrange>> infoList(@NotNull @PathVariable("projectId") Long projectId) { | ||||
|         List<BusProjectPunchrange> list = projectPunchrangeService.lambdaQuery().eq(BusProjectPunchrange::getProjectId, projectId).list(); | ||||
|         return R.ok(list); | ||||
|     } | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * 判断是否在打卡范围内 | ||||
|      */ | ||||
|     @GetMapping("/checkInRange") | ||||
|     public R<Boolean> checkInRange(BusAttendancePunchCardByFaceReq req) { | ||||
|     @PostMapping("/checkInRange") | ||||
|     public R<Boolean> checkInRange(@RequestBody BusAttendancePunchCardByFaceReq req) { | ||||
|         return R.ok(attendanceService.checkInRange(req)); | ||||
|     } | ||||
|  | ||||
|  | ||||
| @ -70,7 +70,7 @@ public class QltQualityInspectionCreateReq implements Serializable { | ||||
|     /** | ||||
|      * 整改人 | ||||
|      */ | ||||
|     private Long corrector_id; | ||||
|     private Long correctorId; | ||||
|  | ||||
|     /** | ||||
|      * 回复期限日期 | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 zt
					zt