优化
This commit is contained in:
@ -10,6 +10,7 @@ import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalTime;
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@ -34,4 +35,7 @@ public class BgtAttendanceDayDTO {
|
||||
@ApiModelProperty("任务ID")
|
||||
@NotNull(message = "任务ID不能为空")
|
||||
private Long taskId;
|
||||
|
||||
@ApiModelProperty(value = "当前时间",hidden = true)
|
||||
private LocalTime currentTime;
|
||||
}
|
||||
|
@ -14,8 +14,8 @@ import java.time.LocalDate;
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("App包工头补卡记录查询对象")
|
||||
public class BgtReissueacardListDTO {
|
||||
@ApiModel("App包工头审批记录查询对象")
|
||||
public class BgtAuditListDTO {
|
||||
|
||||
/** 分页大小 */
|
||||
@ApiModelProperty("分页大小")
|
||||
@ -33,7 +33,10 @@ public class BgtReissueacardListDTO {
|
||||
@ApiModelProperty("时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate nowTime;
|
||||
private LocalDate date;
|
||||
|
||||
@ApiModelProperty("类型 1- 补卡 2- 请假")
|
||||
private String dataType;
|
||||
|
||||
@ApiModelProperty(value = "审核人Id",hidden = true)
|
||||
private Long auditorUserId;
|
@ -6,7 +6,6 @@ import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import javax.validation.constraints.Size;
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
|
||||
@ -30,11 +29,9 @@ public class BgtProjectRecruitApplyConsentDTO{
|
||||
private LocalDate entryTime;
|
||||
|
||||
@ApiModelProperty("入场材料")
|
||||
@Size(min = 1, message = "入场材料不能为空")
|
||||
List<AnnexDTO> entryMaterials;
|
||||
|
||||
@ApiModelProperty("保险")
|
||||
@Size(min = 1, message = "保险不能为空")
|
||||
List<AnnexDTO> insurances;
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,22 @@
|
||||
package com.ruoyi.bgt.domain.dto;
|
||||
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@ApiModel("App包工头资料上传对象")
|
||||
public class BgtUploadDTO {
|
||||
|
||||
@ApiModelProperty("招工ID")
|
||||
@NotNull(message = "招工ID不能为空")
|
||||
private Long recruitId ;
|
||||
|
||||
@ApiModelProperty("务工者Id")
|
||||
@NotNull(message = "务工者Id不能为空")
|
||||
private List<Long> userIds;
|
||||
}
|
@ -32,6 +32,9 @@ public class BgtAttendancePersonCountVO {
|
||||
@ApiModelProperty("早退分钟")
|
||||
private Integer earlyLeaveMinute = 0;
|
||||
|
||||
@ApiModelProperty("请假次数")
|
||||
private Integer leaveNum = 0;
|
||||
|
||||
@ApiModelProperty("早退记录")
|
||||
private List<WgzAttendanceRecordVO> earlyLeaveRecords;
|
||||
|
||||
@ -44,4 +47,7 @@ public class BgtAttendancePersonCountVO {
|
||||
@ApiModelProperty("考勤记录")
|
||||
private List<WgzAttendanceRecordVO> records;
|
||||
|
||||
@ApiModelProperty("请假记录")
|
||||
private List<WgzAttendanceRecordVO> leaveRecords;
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,46 @@
|
||||
package com.ruoyi.bgt.domain.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("包工头审批记录返回对象")
|
||||
public class BgtAuditResultVO {
|
||||
|
||||
@ApiModelProperty("主键ID")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("类型")
|
||||
private String dataType;
|
||||
|
||||
@ApiModelProperty("开始时间/补卡时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
|
||||
private LocalDateTime startTime;
|
||||
|
||||
@ApiModelProperty("结束时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
|
||||
private LocalDateTime endTime;
|
||||
|
||||
@ApiModelProperty("申请人姓名")
|
||||
private String username;
|
||||
|
||||
@ApiModelProperty("创建时间|申请时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
@ApiModelProperty("补卡理由")
|
||||
private String reason;
|
||||
|
||||
@ApiModelProperty("审核状态(0待审核 1审核中 2已同意 3已拒绝)")
|
||||
private String auditorType;
|
||||
|
||||
}
|
@ -82,7 +82,9 @@ public class BgtMessageDetailVO implements Serializable {
|
||||
@ApiModelProperty("任务名称")
|
||||
private String taskName;
|
||||
|
||||
//
|
||||
@ApiModelProperty("今日完成工作")
|
||||
private String finishToday;
|
||||
|
||||
@ApiModelProperty("是否需要操作(0不需要 1需要 2已操作)")
|
||||
private String isOperation ;
|
||||
}
|
||||
|
@ -42,4 +42,5 @@ public class WgzAttendanceRecordVO implements Serializable {
|
||||
@ApiModelProperty("分钟")
|
||||
private Integer minutes;
|
||||
|
||||
|
||||
}
|
||||
|
@ -17,11 +17,9 @@ import com.ruoyi.bgt.mapper.BgtProjectRecruitApplyMapper;
|
||||
import com.ruoyi.bgt.service.IBgtMessageService;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitApplyService;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitService;
|
||||
import com.ruoyi.common.constant.Constants;
|
||||
import com.ruoyi.common.core.domain.entity.SysDictData;
|
||||
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.domain.dto.AnnexDTO;
|
||||
import com.ruoyi.common.enums.RecruitApplyStatus;
|
||||
import com.ruoyi.common.enums.RecruitStatus;
|
||||
import com.ruoyi.common.exception.BaseException;
|
||||
@ -47,6 +45,7 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.text.DecimalFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalTime;
|
||||
import java.time.temporal.TemporalAdjusters;
|
||||
import java.util.*;
|
||||
|
||||
@ -255,13 +254,13 @@ public class BgtProjectRecruitApplyServiceImpl extends ServicePlusImpl<BgtProjec
|
||||
|
||||
recruitApply.setEntryTime(dto.getEntryTime());
|
||||
recruitApply.setStatus(RecruitApplyStatus.BGT_PASS.getCode());
|
||||
dto.getEntryMaterials().addAll(dto.getInsurances());
|
||||
for (AnnexDTO annexDTO : dto.getEntryMaterials()) {
|
||||
annexDTO.setRecruitId(recruitApply.getRecruitId());
|
||||
annexDTO.setUserId(recruitApply.getUserId());
|
||||
annexDTO.setUserType(Constants.WGZ);
|
||||
}
|
||||
annexService.insertBatch(dto.getEntryMaterials());
|
||||
// dto.getEntryMaterials().addAll(dto.getInsurances());
|
||||
// for (AnnexDTO annexDTO : dto.getEntryMaterials()) {
|
||||
// annexDTO.setRecruitId(recruitApply.getRecruitId());
|
||||
// annexDTO.setUserId(recruitApply.getUserId());
|
||||
// annexDTO.setUserType(Constants.WGZ);
|
||||
// }
|
||||
// annexService.insertBatch(dto.getEntryMaterials());
|
||||
//发消息
|
||||
HashMap<String, String> mp = new HashMap<>();
|
||||
mp.put("projectName", iBgtProjectRecruitService.getById(recruitApply.getRecruitId()).getRecruitName());
|
||||
@ -401,6 +400,11 @@ public class BgtProjectRecruitApplyServiceImpl extends ServicePlusImpl<BgtProjec
|
||||
Page<BgtAttendanceDayDTO> queryDTOPage = new Page<>();
|
||||
queryDTOPage.setCurrent(dto.getPageNum());
|
||||
queryDTOPage.setSize(dto.getPageSize());
|
||||
|
||||
if(dto.getDate().equals(LocalDate.now())){
|
||||
dto.setCurrentTime(LocalTime.now());
|
||||
}
|
||||
|
||||
Page<BgtProjectRecruitApplyVO> queryVOPage = baseMapper.todayAttendanceList(queryDTOPage, dto);
|
||||
return PageUtils.buildDataInfo(queryVOPage);
|
||||
}
|
||||
@ -452,8 +456,6 @@ public class BgtProjectRecruitApplyServiceImpl extends ServicePlusImpl<BgtProjec
|
||||
iBgtProjectRecruitService.updateById(recruit);
|
||||
}
|
||||
|
||||
|
||||
|
||||
//发消息
|
||||
HashMap<String, String> mp = new HashMap<>();
|
||||
mp.put("projectName", recruit.getRecruitName());
|
||||
|
@ -95,6 +95,9 @@ public class FbsProjectTask implements Serializable {
|
||||
@ApiModelProperty("任务图片")
|
||||
private String taskImg;
|
||||
|
||||
@ApiModelProperty("任务附件")
|
||||
private String taskAnnex;
|
||||
|
||||
/** 资质要求 */
|
||||
@Excel(name = "资质要求")
|
||||
@ApiModelProperty("资质要求")
|
||||
|
@ -72,6 +72,9 @@ public class AppTaskDetailVO {
|
||||
@ApiModelProperty("任务图片")
|
||||
private String taskImg;
|
||||
|
||||
@ApiModelProperty("任务附件")
|
||||
private String taskAnnex;
|
||||
|
||||
/** 资质要求 */
|
||||
@ApiModelProperty("资质要求")
|
||||
private String qualification;
|
||||
|
@ -214,8 +214,10 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
|
||||
//计算到岗率
|
||||
if(totalNum!=0 && CollectionUtil.isNotEmpty(bgtDayAttendanceCountVOS)){
|
||||
BgtDayAttendanceCountVO bgtDayAttendanceCountVO = bgtDayAttendanceCountVOS.get(bgtDayAttendanceCountVOS.size() - 1);
|
||||
|
||||
int rate = new BigDecimal(bgtDayAttendanceCountVO.getReportToDutyNum()).divide(new BigDecimal(totalNum), 2, RoundingMode.HALF_UP)
|
||||
.multiply(new BigDecimal(100)).intValue();
|
||||
appTaskDetailVO.setReportToDutyNum(bgtDayAttendanceCountVO.getReportToDutyNum());
|
||||
appTaskDetailVO.setReportToDutyRate(rate);
|
||||
}
|
||||
return appTaskDetailVO;
|
||||
|
@ -15,9 +15,11 @@ import com.ruoyi.fbs.service.IFbsProjectTaskService;
|
||||
import com.ruoyi.wgz.domain.WgzAttendance;
|
||||
import com.ruoyi.wgz.domain.WgzLeave;
|
||||
import com.ruoyi.wgz.domain.WgzMessage;
|
||||
import com.ruoyi.wgz.domain.WgzScoreRecord;
|
||||
import com.ruoyi.wgz.service.IWgzAttendanceService;
|
||||
import com.ruoyi.wgz.service.IWgzLeaveService;
|
||||
import com.ruoyi.wgz.service.IWgzMessageService;
|
||||
import com.ruoyi.wgz.service.IWgzScoreRecordService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
@ -60,6 +62,9 @@ public class BusinessTask
|
||||
@Autowired
|
||||
private IWgzLeaveService iWgzLeaveService;
|
||||
|
||||
@Autowired
|
||||
private IWgzScoreRecordService wgzScoreRecordService;
|
||||
|
||||
public void ryNoParams()
|
||||
{
|
||||
Console.log("-------------------------------------------------------------------------");
|
||||
@ -124,23 +129,29 @@ public class BusinessTask
|
||||
List<BgtProjectRecruitApply> applyList = recruitApplyService.list(Wrappers.<BgtProjectRecruitApply>lambdaQuery()
|
||||
.in(BgtProjectRecruitApply::getRecruitId, recruitIds));
|
||||
//筛选已离场的
|
||||
List<BgtProjectRecruitApply> outList = applyList.stream().filter(apply -> apply.getStatus().equals(RecruitApplyStatus.OUT_WORK.getCode())).collect(Collectors.toList());
|
||||
List<WgzScoreRecord> addList = new ArrayList<>();
|
||||
for (BgtProjectRecruitApply bgtProjectRecruitApply : outList) {
|
||||
WgzScoreRecord byUserIdAndRecruitApplyId = wgzScoreRecordService.getByUserIdAndRecruitApplyId(bgtProjectRecruitApply.getUserId(), bgtProjectRecruitApply.getId());
|
||||
if (byUserIdAndRecruitApplyId == null) {
|
||||
WgzScoreRecord wgzScoreRecord = new WgzScoreRecord();
|
||||
wgzScoreRecord.setRecruitId(bgtProjectRecruitApply.getRecruitId());
|
||||
wgzScoreRecord.setRecruitApplyId(bgtProjectRecruitApply.getId());
|
||||
wgzScoreRecord.setScore(5D);
|
||||
wgzScoreRecord.setContent("默认评分");
|
||||
wgzScoreRecord.setCreateBy("系统");
|
||||
wgzScoreRecord.setUpdateBy("系统");
|
||||
|
||||
addList.add(wgzScoreRecord);
|
||||
}
|
||||
|
||||
}
|
||||
if(CollectionUtil.isNotEmpty(addList)){
|
||||
wgzScoreRecordService.saveBatch(addList);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// iFbsProjectTaskService.lambdaUpdate().in(FbsProjectTask::getId,collect)
|
||||
// .set(FbsProjectTask::getStatus, "3")
|
||||
// .update();
|
||||
// iWgzMessageService.saveBatch(WgzAndBgtMessageConstant.getScoreMessage(collect));
|
||||
}
|
||||
|
||||
|
||||
recruitApplyService.lambdaUpdate()
|
||||
.le(BgtProjectRecruitApply::getEntryTime, LocalDate.now())
|
||||
.eq(BgtProjectRecruitApply::getStatus,RecruitApplyStatus.WGZ_PASS.getCode())
|
||||
.set(BgtProjectRecruitApply::getStatus,RecruitApplyStatus.BGT_REFUSE.getCode())
|
||||
.update();
|
||||
Console.log("招工进场任务结束!");
|
||||
Console.log("务工评价任务结束!");
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,13 +1,14 @@
|
||||
package com.ruoyi.wgz.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.bgt.domain.dto.BgtAuditListDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtAuditResultVO;
|
||||
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
|
||||
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
|
||||
import com.ruoyi.wgz.bo.req.WgzAppLeaveHistoryListPageReq;
|
||||
import com.ruoyi.wgz.bo.res.WgzAppLeaveHistoryListPageRes;
|
||||
import com.ruoyi.wgz.bo.res.WgzAppUserLeaveDetailsRes;
|
||||
import com.ruoyi.wgz.domain.WgzLeave;
|
||||
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
|
||||
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
|
||||
import org.apache.ibatis.annotations.CacheNamespace;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
@ -47,4 +48,5 @@ public interface WgzLeaveMapper extends BaseMapperPlus<WgzLeave> {
|
||||
" a.id DESC")
|
||||
WgzAppUserLeaveDetailsRes userLeaveDetails(@Param("id") Long id);
|
||||
|
||||
Page<BgtAuditResultVO> bgtLeaveAudit(@Param("page") Page<BgtAuditListDTO> page, @Param("dto") BgtAuditListDTO dto);
|
||||
}
|
||||
|
@ -1,13 +1,14 @@
|
||||
package com.ruoyi.wgz.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.bgt.domain.dto.BgtReissueacardListDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtAuditListDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtAuditResultVO;
|
||||
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
|
||||
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
|
||||
import com.ruoyi.wgz.bo.req.WgzAppReplacementCardRecordReq;
|
||||
import com.ruoyi.wgz.bo.res.WgzAppUserReplacementCardRecordDetailsRes;
|
||||
import com.ruoyi.wgz.bo.res.WgzReplacementCardRecordRes;
|
||||
import com.ruoyi.wgz.domain.WgzReissueacard;
|
||||
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
|
||||
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
|
||||
import org.apache.ibatis.annotations.CacheNamespace;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
@ -27,7 +28,7 @@ public interface WgzReissueacardMapper extends BaseMapperPlus<WgzReissueacard> {
|
||||
*/
|
||||
Page<WgzReplacementCardRecordRes> userReplacementCardRecordListPage(@Param("page") Page<WgzAppReplacementCardRecordReq> page,@Param("userId") Long userId);
|
||||
|
||||
Page<WgzReplacementCardRecordRes> appQueryPageList(@Param("page") Page<BgtReissueacardListDTO> page,@Param("dto") BgtReissueacardListDTO dto);
|
||||
Page<BgtAuditResultVO> appQueryPageList(@Param("page") Page<BgtAuditListDTO> page, @Param("dto") BgtAuditListDTO dto);
|
||||
|
||||
WgzAppUserReplacementCardRecordDetailsRes userReplacementCardRecordDetails(@Param("id") Long id);
|
||||
|
||||
|
@ -1,6 +1,8 @@
|
||||
package com.ruoyi.wgz.service;
|
||||
|
||||
import com.ruoyi.bgt.domain.dto.BgtAuditListDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtLeaveUpdateDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtAuditResultVO;
|
||||
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.wgz.bo.WgzLeaveQueryBo;
|
||||
@ -113,4 +115,8 @@ public interface IWgzLeaveService extends IServicePlus<WgzLeave> {
|
||||
*/
|
||||
void refuseBatch(Long recruitId,Long userId);
|
||||
|
||||
/**
|
||||
* 包工头审核列表
|
||||
*/
|
||||
TableDataInfo<BgtAuditResultVO> bgtLeaveAudit(BgtAuditListDTO dto);
|
||||
}
|
||||
|
@ -1,7 +1,8 @@
|
||||
package com.ruoyi.wgz.service;
|
||||
|
||||
import com.ruoyi.bgt.domain.dto.BgtReissueacardListDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtAuditListDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtReissueacardUpdateDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtAuditResultVO;
|
||||
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.wgz.bo.WgzReissueacardQueryBo;
|
||||
@ -81,7 +82,7 @@ public interface IWgzReissueacardService extends IServicePlus<WgzReissueacard> {
|
||||
/**
|
||||
* 补卡记录审核(分页)
|
||||
*/
|
||||
TableDataInfo<WgzReplacementCardRecordRes> appQueryPageList(BgtReissueacardListDTO dto);
|
||||
TableDataInfo<BgtAuditResultVO> appQueryPageList(BgtAuditListDTO dto);
|
||||
|
||||
/**
|
||||
* 审核
|
||||
|
@ -15,41 +15,49 @@ import java.util.List;
|
||||
* @date 2025-02-21
|
||||
*/
|
||||
public interface IWgzScoreRecordService extends IServicePlus<WgzScoreRecord> {
|
||||
/**
|
||||
* 查询单个
|
||||
* @return
|
||||
*/
|
||||
WgzScoreRecord queryById(Long id);
|
||||
/**
|
||||
* 查询单个
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
WgzScoreRecord queryById(Long id);
|
||||
|
||||
/**
|
||||
* 查询列表
|
||||
*/
|
||||
TableDataInfo<WgzScoreRecord> queryPageList(WgzScoreRecordQueryBo bo);
|
||||
/**
|
||||
* 查询列表
|
||||
*/
|
||||
TableDataInfo<WgzScoreRecord> queryPageList(WgzScoreRecordQueryBo bo);
|
||||
|
||||
/**
|
||||
* 查询列表
|
||||
*/
|
||||
List<WgzScoreRecord> queryList(WgzScoreRecordQueryBo bo);
|
||||
/**
|
||||
* 查询列表
|
||||
*/
|
||||
List<WgzScoreRecord> queryList(WgzScoreRecordQueryBo bo);
|
||||
|
||||
/**
|
||||
* 根据新增业务对象插入务工者评分记录
|
||||
* @param bo 务工者评分记录新增业务对象
|
||||
* @return
|
||||
*/
|
||||
Boolean insert(WgzScoreRecord bo);
|
||||
/**
|
||||
* 根据新增业务对象插入务工者评分记录
|
||||
*
|
||||
* @param bo 务工者评分记录新增业务对象
|
||||
* @return
|
||||
*/
|
||||
Boolean insert(WgzScoreRecord bo);
|
||||
|
||||
/**
|
||||
* 根据编辑业务对象修改务工者评分记录
|
||||
* @param bo 务工者评分记录编辑业务对象
|
||||
* @return
|
||||
*/
|
||||
Boolean update(WgzScoreRecord bo);
|
||||
/**
|
||||
* 根据编辑业务对象修改务工者评分记录
|
||||
*
|
||||
* @param bo 务工者评分记录编辑业务对象
|
||||
* @return
|
||||
*/
|
||||
Boolean update(WgzScoreRecord bo);
|
||||
|
||||
/**
|
||||
* 校验并删除数据
|
||||
*
|
||||
* @param ids 主键集合
|
||||
* @param isValid 是否校验,true-删除前校验,false-不校验
|
||||
* @return
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
|
||||
|
||||
WgzScoreRecord getByUserIdAndRecruitApplyId(Long userId, Long recruitApplyId);
|
||||
|
||||
/**
|
||||
* 校验并删除数据
|
||||
* @param ids 主键集合
|
||||
* @param isValid 是否校验,true-删除前校验,false-不校验
|
||||
* @return
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
|
@ -41,7 +41,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import java.text.DecimalFormat;
|
||||
import java.time.*;
|
||||
@ -717,6 +716,7 @@ public class WgzAttendanceServiceImpl extends ServicePlusImpl<WgzAttendanceMappe
|
||||
List<WgzAttendanceRecordVO> earlyLeaveRecords = new ArrayList<>();
|
||||
List<WgzAttendanceRecordVO> missRecords = new ArrayList<>();
|
||||
List<WgzAttendanceRecordVO> records = new ArrayList<>();
|
||||
List<WgzAttendanceRecordVO> leaveRecords = new ArrayList<>();
|
||||
|
||||
for (WgzAttendance wgzAttendance : wgzAttendances) {
|
||||
|
||||
@ -766,6 +766,12 @@ public class WgzAttendanceServiceImpl extends ServicePlusImpl<WgzAttendanceMappe
|
||||
missRecordVO.setTime(endWorkTime);
|
||||
missRecords.add(missRecordVO);
|
||||
}
|
||||
//统计请假天数
|
||||
if(wgzAttendance.getLeaveMarkId() != null){
|
||||
WgzAttendanceRecordVO leaveRecordVO = BeanUtil.copyProperties(recordVO, WgzAttendanceRecordVO.class);
|
||||
leaveRecords.add(leaveRecordVO);
|
||||
}
|
||||
|
||||
}
|
||||
//出勤数据
|
||||
bgtAttendanceDetailVO.setDayNum(records.stream().mapToDouble(WgzAttendanceRecordVO::getDay).sum());
|
||||
@ -781,6 +787,9 @@ public class WgzAttendanceServiceImpl extends ServicePlusImpl<WgzAttendanceMappe
|
||||
//缺卡数据
|
||||
bgtAttendanceDetailVO.setMissNum(missRecords.size());
|
||||
bgtAttendanceDetailVO.setMissRecords(missRecords);
|
||||
//请假数据
|
||||
bgtAttendanceDetailVO.setLeaveNum(leaveRecords.size());
|
||||
bgtAttendanceDetailVO.setLeaveRecords(leaveRecords);
|
||||
return bgtAttendanceDetailVO;
|
||||
}
|
||||
|
||||
|
@ -10,7 +10,9 @@ import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
|
||||
import com.ruoyi.bgt.domain.BgtMessage;
|
||||
import com.ruoyi.bgt.domain.BgtProjectRecruit;
|
||||
import com.ruoyi.bgt.domain.BgtProjectRecruitApply;
|
||||
import com.ruoyi.bgt.domain.dto.BgtAuditListDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtLeaveUpdateDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtAuditResultVO;
|
||||
import com.ruoyi.bgt.service.IBgtMessageService;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitApplyService;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitService;
|
||||
@ -345,4 +347,13 @@ public class WgzLeaveServiceImpl extends ServicePlusImpl<WgzLeaveMapper, WgzLeav
|
||||
bgtAudit(dto);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<BgtAuditResultVO> bgtLeaveAudit(BgtAuditListDTO dto) {
|
||||
dto.setAuditorUserId(SecurityUtils.getAppUserId());
|
||||
Page<BgtAuditListDTO> queryDTOPage = new Page<>();
|
||||
queryDTOPage.setCurrent(dto.getPageNum());
|
||||
queryDTOPage.setSize(dto.getPageSize());
|
||||
return PageUtils.buildDataInfo(baseMapper.bgtLeaveAudit(queryDTOPage, dto));
|
||||
}
|
||||
}
|
||||
|
@ -9,8 +9,9 @@ import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
|
||||
import com.ruoyi.bgt.domain.BgtMessage;
|
||||
import com.ruoyi.bgt.domain.BgtProjectRecruit;
|
||||
import com.ruoyi.bgt.domain.BgtProjectRecruitApply;
|
||||
import com.ruoyi.bgt.domain.dto.BgtReissueacardListDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtAuditListDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtReissueacardUpdateDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtAuditResultVO;
|
||||
import com.ruoyi.bgt.service.IBgtMessageService;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitApplyService;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitService;
|
||||
@ -230,9 +231,9 @@ public class WgzReissueacardServiceImpl extends ServicePlusImpl<WgzReissueacardM
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<WgzReplacementCardRecordRes> appQueryPageList(BgtReissueacardListDTO dto) {
|
||||
public TableDataInfo<BgtAuditResultVO> appQueryPageList(BgtAuditListDTO dto) {
|
||||
dto.setAuditorUserId(SecurityUtils.getAppUserId());
|
||||
Page<BgtReissueacardListDTO> queryDTOPage = new Page<>();
|
||||
Page<BgtAuditListDTO> queryDTOPage = new Page<>();
|
||||
queryDTOPage.setCurrent(dto.getPageNum());
|
||||
queryDTOPage.setSize(dto.getPageSize());
|
||||
return PageUtils.buildDataInfo(baseMapper.appQueryPageList(queryDTOPage, dto));
|
||||
|
@ -2,22 +2,21 @@ package com.ruoyi.wgz.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.common.utils.PageUtils;
|
||||
import com.ruoyi.common.core.page.PagePlus;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
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.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.utils.PageUtils;
|
||||
import com.ruoyi.wgz.bo.WgzScoreRecordQueryBo;
|
||||
import com.ruoyi.wgz.domain.WgzScoreRecord;
|
||||
import com.ruoyi.wgz.mapper.WgzScoreRecordMapper;
|
||||
import com.ruoyi.wgz.service.IWgzScoreRecordService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 务工者评分记录Service业务层处理
|
||||
@ -85,4 +84,11 @@ public class WgzScoreRecordServiceImpl extends ServicePlusImpl<WgzScoreRecordMap
|
||||
}
|
||||
return removeByIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public WgzScoreRecord getByUserIdAndRecruitApplyId(Long userId, Long recruitApplyId) {
|
||||
return getOne(Wrappers.<WgzScoreRecord>lambdaQuery()
|
||||
.eq(WgzScoreRecord::getUserId,userId)
|
||||
.eq(WgzScoreRecord::getRecruitApplyId,recruitApplyId).last("limit 1"));
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user