考勤统计与工种
This commit is contained in:
		@ -132,6 +132,9 @@ public class BgtProjectRecruit implements Serializable {
 | 
			
		||||
	@ApiModelProperty("下班时间")
 | 
			
		||||
	private LocalTime endWorkTime;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("工种")
 | 
			
		||||
	private String typeOfWork;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("创建者ID")
 | 
			
		||||
	private Long userId;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -9,6 +9,7 @@ import lombok.NoArgsConstructor;
 | 
			
		||||
import lombok.experimental.Accessors;
 | 
			
		||||
 | 
			
		||||
import java.io.Serializable;
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.time.LocalDateTime;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
@ -45,10 +46,10 @@ public class BgtProjectRecruitApply implements Serializable {
 | 
			
		||||
	private String status;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("进场时间")
 | 
			
		||||
	private String entryTime;
 | 
			
		||||
	private LocalDate entryTime;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("离场时间")
 | 
			
		||||
	private String leaveTime;
 | 
			
		||||
	private LocalDate leaveTime;
 | 
			
		||||
 | 
			
		||||
    /** 删除标志(0代表存在 2代表删除) */
 | 
			
		||||
    @Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除")
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,23 @@
 | 
			
		||||
package com.ruoyi.bgt.domain.dto;
 | 
			
		||||
 | 
			
		||||
import io.swagger.annotations.ApiModel;
 | 
			
		||||
import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
import lombok.NoArgsConstructor;
 | 
			
		||||
import lombok.experimental.Accessors;
 | 
			
		||||
 | 
			
		||||
@Data
 | 
			
		||||
@NoArgsConstructor
 | 
			
		||||
@Accessors(chain = true)
 | 
			
		||||
@ApiModel("App包工头总体考勤查询对象")
 | 
			
		||||
public class BgtAttendanceDTO {
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("任务ID")
 | 
			
		||||
	private Long taskId;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("日期")
 | 
			
		||||
	private String date;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("日期类型(1日 2月)")
 | 
			
		||||
	private String dateType;
 | 
			
		||||
}
 | 
			
		||||
@ -6,6 +6,7 @@ import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
 | 
			
		||||
import java.io.Serializable;
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
@ -25,7 +26,7 @@ public class BgtProjectRecruitApplyConsentDTO implements Serializable {
 | 
			
		||||
    private Long id;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("进场时间")
 | 
			
		||||
	private String entryTime;
 | 
			
		||||
	private LocalDate entryTime;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("入场材料")
 | 
			
		||||
	List<AnnexDTO> entryMaterials;
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,36 @@
 | 
			
		||||
package com.ruoyi.bgt.domain.vo;
 | 
			
		||||
 | 
			
		||||
import io.swagger.annotations.ApiModel;
 | 
			
		||||
import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
import lombok.NoArgsConstructor;
 | 
			
		||||
import lombok.experimental.Accessors;
 | 
			
		||||
 | 
			
		||||
import java.io.Serializable;
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 考勤打卡对象 wgz_attendance
 | 
			
		||||
 *
 | 
			
		||||
 * @author ruoyi
 | 
			
		||||
 * @date 2025-02-20
 | 
			
		||||
 */
 | 
			
		||||
@Data
 | 
			
		||||
@NoArgsConstructor
 | 
			
		||||
@Accessors(chain = true)
 | 
			
		||||
@ApiModel("包工头考勤打卡统计对象")
 | 
			
		||||
public class BgtAttendanceCountVO implements Serializable {
 | 
			
		||||
 | 
			
		||||
    private static final long serialVersionUID=1L;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("到岗人数")
 | 
			
		||||
	private Integer reportToDutyNum;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("总人数")
 | 
			
		||||
	private Integer totalNum;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("日期")
 | 
			
		||||
	private LocalDate date;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,45 @@
 | 
			
		||||
package com.ruoyi.bgt.domain.vo;
 | 
			
		||||
 | 
			
		||||
import io.swagger.annotations.ApiModel;
 | 
			
		||||
import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
import lombok.NoArgsConstructor;
 | 
			
		||||
import lombok.experimental.Accessors;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@Data
 | 
			
		||||
@NoArgsConstructor
 | 
			
		||||
@Accessors(chain = true)
 | 
			
		||||
@ApiModel("App包工头总体考勤视图对象")
 | 
			
		||||
public class BgtAttendanceVO {
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("任务ID")
 | 
			
		||||
	private Long taskId;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("任务名")
 | 
			
		||||
	private String taskName;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("到岗人数")
 | 
			
		||||
	private Integer reportToDutyNum;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("总人数")
 | 
			
		||||
	private Integer totalNum;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("缺勤人数")
 | 
			
		||||
	private Integer absenceDutyNum;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("请假人数")
 | 
			
		||||
	private Integer leaveNum;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("迟到人数")
 | 
			
		||||
	private Integer lateNum;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("考勤列表")
 | 
			
		||||
	List<BgtAttendanceCountVO> countVOS;
 | 
			
		||||
 | 
			
		||||
	//务工者列表
 | 
			
		||||
	@ApiModelProperty("申请者列表")
 | 
			
		||||
	List<BgtProjectRecruitApplyVO> applyList;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@ -75,6 +75,9 @@ public class BgtProjectRecruitDetailVO implements Serializable {
 | 
			
		||||
    @ApiModelProperty("招工要求")
 | 
			
		||||
    private String recruitRequirement;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("工种")
 | 
			
		||||
	private String typeOfWork;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("创建者ID")
 | 
			
		||||
	private Long userId;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -51,6 +51,9 @@ public class BgtProjectRecruitVO implements Serializable {
 | 
			
		||||
	@JsonFormat(pattern = "yyyy-MM-dd")
 | 
			
		||||
    private LocalDateTime createTime;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("工种")
 | 
			
		||||
	private String typeOfWork;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("申请者列表")
 | 
			
		||||
	List<BgtProjectRecruitApplyVO> applylist;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -3,6 +3,7 @@ package com.ruoyi.fbs.domain.vo;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonFormat;
 | 
			
		||||
import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO;
 | 
			
		||||
import com.ruoyi.bgt.domain.vo.BgtWageApplicationListVO;
 | 
			
		||||
import com.ruoyi.bgt.domain.vo.BgtAttendanceCountVO;
 | 
			
		||||
import io.swagger.annotations.ApiModel;
 | 
			
		||||
import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
@ -83,6 +84,22 @@ public class AppTaskDetailVO {
 | 
			
		||||
	@ApiModelProperty("收款申请列表")
 | 
			
		||||
	private List<BgtWageApplicationListVO> wageApplicationList;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	//总体考勤情况
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("总人数")
 | 
			
		||||
	private Integer totalNum = 0;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("今日到岗人数")
 | 
			
		||||
	private Integer reportToDutyNum= 0;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("今日到岗率")
 | 
			
		||||
	private Integer reportToDutyRate= 0;
 | 
			
		||||
 | 
			
		||||
	@ApiModelProperty("考勤列表")
 | 
			
		||||
	List<BgtAttendanceCountVO> countVOS;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	//务工者数量列表
 | 
			
		||||
	@ApiModelProperty("申请者列表")
 | 
			
		||||
	List<BgtProjectRecruitApplyVO> applyList;
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,7 @@
 | 
			
		||||
package com.ruoyi.fbs.service.impl;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.bean.BeanUtil;
 | 
			
		||||
import cn.hutool.core.collection.CollectionUtil;
 | 
			
		||||
import cn.hutool.core.util.ObjectUtil;
 | 
			
		||||
import cn.hutool.core.util.StrUtil;
 | 
			
		||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 | 
			
		||||
@ -29,12 +30,15 @@ import com.ruoyi.fbs.domain.vo.AppTaskVO;
 | 
			
		||||
import com.ruoyi.fbs.mapper.FbsProjectTaskMapper;
 | 
			
		||||
import com.ruoyi.fbs.service.IFbsProjectTaskApplyService;
 | 
			
		||||
import com.ruoyi.fbs.service.IFbsProjectTaskService;
 | 
			
		||||
import com.ruoyi.bgt.domain.vo.BgtAttendanceCountVO;
 | 
			
		||||
import com.ruoyi.wgz.service.IWgzAttendanceService;
 | 
			
		||||
import com.ruoyi.zbf.domain.ZbfProject;
 | 
			
		||||
import com.ruoyi.zbf.service.IZbfProjectService;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.context.annotation.Lazy;
 | 
			
		||||
import org.springframework.stereotype.Service;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.Collection;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
@ -62,6 +66,8 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
 | 
			
		||||
	private IBgtProjectTaskProgressService progressService;
 | 
			
		||||
	@Autowired
 | 
			
		||||
	private IBgtWageApplicationService wageApplicationService;
 | 
			
		||||
	@Autowired
 | 
			
		||||
	private IWgzAttendanceService attendanceService;
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public FbsProjectTask queryById(Long id){
 | 
			
		||||
@ -175,9 +181,17 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
 | 
			
		||||
		appTaskDetailVO.setTaskReceiveAmount(taskReceiveAmount);
 | 
			
		||||
		//付款金额
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		//考勤情况
 | 
			
		||||
 | 
			
		||||
		LocalDate date = LocalDate.now();
 | 
			
		||||
		LocalDate startOfMonth = date.withDayOfMonth(1);
 | 
			
		||||
		List<BgtAttendanceCountVO> countVOS = attendanceService.countByTaskId(id, startOfMonth, date);
 | 
			
		||||
		if(CollectionUtil.isNotEmpty(countVOS)){
 | 
			
		||||
			BgtAttendanceCountVO vo = countVOS.get(0);
 | 
			
		||||
			appTaskDetailVO.setCountVOS(countVOS);
 | 
			
		||||
			appTaskDetailVO.setTotalNum(vo.getTotalNum());
 | 
			
		||||
			appTaskDetailVO.setReportToDutyNum(vo.getReportToDutyNum());
 | 
			
		||||
			appTaskDetailVO.setReportToDutyRate(vo.getReportToDutyNum()/vo.getTotalNum()*100);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		return appTaskDetailVO;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
@ -3,7 +3,12 @@ package com.ruoyi.wgz.mapper;
 | 
			
		||||
import com.ruoyi.wgz.domain.WgzAttendance;
 | 
			
		||||
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
 | 
			
		||||
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
 | 
			
		||||
import com.ruoyi.bgt.domain.vo.BgtAttendanceCountVO;
 | 
			
		||||
import org.apache.ibatis.annotations.CacheNamespace;
 | 
			
		||||
import org.apache.ibatis.annotations.Param;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 考勤打卡Mapper接口
 | 
			
		||||
@ -15,4 +20,7 @@ import org.apache.ibatis.annotations.CacheNamespace;
 | 
			
		||||
@CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class)
 | 
			
		||||
public interface WgzAttendanceMapper extends BaseMapperPlus<WgzAttendance> {
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	List<BgtAttendanceCountVO> countByTaskId(@Param("taskId") Long taskId, @Param("beginDate")LocalDate beginDate
 | 
			
		||||
		, @Param("endDate")LocalDate endDate);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,8 @@
 | 
			
		||||
package com.ruoyi.wgz.service;
 | 
			
		||||
 | 
			
		||||
import com.ruoyi.bgt.domain.dto.BgtAttendanceDTO;
 | 
			
		||||
import com.ruoyi.bgt.domain.vo.BgtAttendanceCountVO;
 | 
			
		||||
import com.ruoyi.bgt.domain.vo.BgtAttendanceVO;
 | 
			
		||||
import com.ruoyi.common.core.domain.AjaxResult;
 | 
			
		||||
import com.ruoyi.wgz.bo.req.WgzAppSubmitTheClockReq;
 | 
			
		||||
import com.ruoyi.wgz.bo.res.WgzAppCardReplacementApplicationRes;
 | 
			
		||||
@ -9,9 +12,13 @@ import com.ruoyi.wgz.domain.WgzAttendance;
 | 
			
		||||
import com.ruoyi.wgz.bo.WgzAttendanceQueryBo;
 | 
			
		||||
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
 | 
			
		||||
import com.ruoyi.common.core.page.TableDataInfo;
 | 
			
		||||
import com.ruoyi.wgz.bo.WgzAttendanceQueryBo;
 | 
			
		||||
import com.ruoyi.wgz.bo.req.WgzAppSubmitTheClockReq;
 | 
			
		||||
import com.ruoyi.wgz.domain.WgzAttendance;
 | 
			
		||||
import org.springframework.validation.annotation.Validated;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestBody;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.Collection;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@ -91,4 +98,21 @@ public interface IWgzAttendanceService extends IServicePlus<WgzAttendance> {
 | 
			
		||||
	 * 补卡申请列表
 | 
			
		||||
	 */
 | 
			
		||||
	WgzAppCardReplacementApplicationRes userCardReplacementApplication();
 | 
			
		||||
//	/**
 | 
			
		||||
//	 * 查看当前人、当前工地、当前日期的打卡记录
 | 
			
		||||
//	 */
 | 
			
		||||
//	WgzAttendance findByUserIdWait(Long appUserId, Long recruitId, String date);
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * 统计任务打卡情况
 | 
			
		||||
	 */
 | 
			
		||||
	List<BgtAttendanceCountVO> countByTaskId(Long taskId, LocalDate beginDate, LocalDate endDate);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * 总体考勤情况
 | 
			
		||||
	 */
 | 
			
		||||
	BgtAttendanceVO attendanceDetail(BgtAttendanceDTO dto);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -2,16 +2,20 @@ package com.ruoyi.wgz.service.impl;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.bean.BeanUtil;
 | 
			
		||||
import cn.hutool.core.util.StrUtil;
 | 
			
		||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 | 
			
		||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 | 
			
		||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 | 
			
		||||
import com.ruoyi.bgt.domain.BgtProjectRecruit;
 | 
			
		||||
import com.ruoyi.bgt.domain.BgtProjectRecruitApply;
 | 
			
		||||
import com.ruoyi.bgt.domain.dto.BgtAttendanceDTO;
 | 
			
		||||
import com.ruoyi.bgt.domain.vo.BgtAttendanceVO;
 | 
			
		||||
import com.ruoyi.bgt.service.IBgtProjectRecruitApplyService;
 | 
			
		||||
import com.ruoyi.bgt.service.IBgtProjectRecruitService;
 | 
			
		||||
import com.ruoyi.common.core.domain.AjaxResult;
 | 
			
		||||
import com.ruoyi.common.utils.PageUtils;
 | 
			
		||||
import com.ruoyi.common.core.page.PagePlus;
 | 
			
		||||
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
 | 
			
		||||
import com.ruoyi.common.core.page.TableDataInfo;
 | 
			
		||||
import com.ruoyi.common.utils.PageUtils;
 | 
			
		||||
import com.ruoyi.common.utils.SecurityUtils;
 | 
			
		||||
import com.ruoyi.wgz.bo.WgzAttendanceQueryBo;
 | 
			
		||||
import com.ruoyi.wgz.bo.req.WgzAppSubmitTheClockReq;
 | 
			
		||||
import com.ruoyi.wgz.bo.res.WgzAppCardReplacementApplicationRes;
 | 
			
		||||
import com.ruoyi.wgz.bo.res.WgzAppPunchTheCalendarRecordRes;
 | 
			
		||||
@ -19,26 +23,25 @@ import com.ruoyi.wgz.bo.res.WgzAppUserClockingConditionRes;
 | 
			
		||||
import com.ruoyi.wgz.bo.rests.WgzAppCardReplacementApplicationTwo;
 | 
			
		||||
import com.ruoyi.wgz.bo.rests.WgzAppPunchTheCalendarRecordThree;
 | 
			
		||||
import com.ruoyi.wgz.bo.rests.WgzAppPunchTheCalendarRecordTwo;
 | 
			
		||||
import com.ruoyi.wgz.domain.WgzAttendance;
 | 
			
		||||
import com.ruoyi.wgz.domain.WgzLeave;
 | 
			
		||||
import com.ruoyi.bgt.domain.vo.BgtAttendanceCountVO;
 | 
			
		||||
import com.ruoyi.wgz.mapper.WgzAttendanceMapper;
 | 
			
		||||
import com.ruoyi.wgz.service.IWgzAttendanceService;
 | 
			
		||||
import com.ruoyi.wgz.service.IWgzLeaveService;
 | 
			
		||||
import org.aspectj.weaver.ast.Var;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.stereotype.Service;
 | 
			
		||||
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
 | 
			
		||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 | 
			
		||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 | 
			
		||||
import com.ruoyi.wgz.bo.WgzAttendanceQueryBo;
 | 
			
		||||
import com.ruoyi.wgz.domain.WgzAttendance;
 | 
			
		||||
import com.ruoyi.wgz.mapper.WgzAttendanceMapper;
 | 
			
		||||
import com.ruoyi.wgz.service.IWgzAttendanceService;
 | 
			
		||||
import org.springframework.transaction.annotation.Transactional;
 | 
			
		||||
import org.springframework.transaction.reactive.TransactionalOperator;
 | 
			
		||||
 | 
			
		||||
import java.text.DecimalFormat;
 | 
			
		||||
import java.time.*;
 | 
			
		||||
import java.time.format.DateTimeFormatter;
 | 
			
		||||
import java.time.temporal.TemporalAdjusters;
 | 
			
		||||
import java.util.*;
 | 
			
		||||
import java.util.Collection;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 考勤打卡Service业务层处理
 | 
			
		||||
@ -306,6 +309,27 @@ public class WgzAttendanceServiceImpl extends ServicePlusImpl<WgzAttendanceMappe
 | 
			
		||||
		return null;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@Override
 | 
			
		||||
	public List<BgtAttendanceCountVO> countByTaskId(Long taskId, LocalDate beginDate, LocalDate endDate) {
 | 
			
		||||
		return baseMapper.countByTaskId(taskId, beginDate, endDate);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@Override
 | 
			
		||||
	public BgtAttendanceVO attendanceDetail(BgtAttendanceDTO dto) {
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		return null;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	//	@Override
 | 
			
		||||
//	public WgzAttendance findByUserIdWait(Long appUserId, Long recruitId, String date) {
 | 
			
		||||
//		LambdaQueryWrapper<WgzAttendance> qw = new LambdaQueryWrapper<>();
 | 
			
		||||
//		qw.eq(WgzAttendance::getRecruitId,recruitId);
 | 
			
		||||
//		qw.eq(WgzAttendance::getUserId,appUserId);
 | 
			
		||||
//		return null;
 | 
			
		||||
//	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * 获取指定人、指定工地、指定日期的打卡记录
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user