diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wgz/controller/WgzAppController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wgz/controller/WgzAppController.java index 8858540..e62ed12 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wgz/controller/WgzAppController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wgz/controller/WgzAppController.java @@ -484,6 +484,18 @@ return iWgzPayCalculationService.userApplyForPayrollSettlementList(req); } + /** + * 【首页】【项目进行中】 项目进行中·申请工资结算(详情) + * 【首页】【已完成项目】 已完成项目·申请工资结算(详情) WgzAppUserApplyForPayrollSettlementDetails + */ + @ApiOperation("【首页】【项目进行中|已完成项目】 申请工资结算(详情)") + //@PreAuthorize("@ss.hasPermi('wgzApp:user:userApplyForPayrollSettlementDetails')") + @RepeatSubmit + @PostMapping("/WgzAppUserApplyForPayrollSettlementDetails/{messageId}") + public AjaxResult userApplyForPayrollSettlementDetails(@NotNull(message = "主键ID不能为空") @PathVariable("id") Long id) { + return AjaxResult.success(iWgzPayCalculationService.userApplyForPayrollSettlementDetails(id)); + } + /** * 【消息】消息类型统计 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/bgt/domain/dto/BgtApplyForWgzPayAddDTO.java b/ruoyi-system/src/main/java/com/ruoyi/bgt/domain/dto/BgtApplyForWgzPayAddDTO.java index a62309a..1fb185d 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/bgt/domain/dto/BgtApplyForWgzPayAddDTO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/bgt/domain/dto/BgtApplyForWgzPayAddDTO.java @@ -52,7 +52,7 @@ public class BgtApplyForWgzPayAddDTO implements Serializable { @ApiModelProperty("出勤天数") private Integer num; - @ApiModelProperty("务工状态") + @ApiModelProperty("务工状态(1进场 2离场)") private String workingState; @ApiModelProperty("联系电话") diff --git a/ruoyi-system/src/main/java/com/ruoyi/bgt/domain/vo/BgtApplyForWgzPayAddInfoVO.java b/ruoyi-system/src/main/java/com/ruoyi/bgt/domain/vo/BgtApplyForWgzPayAddInfoVO.java index 2eb3e16..cd15005 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/bgt/domain/vo/BgtApplyForWgzPayAddInfoVO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/bgt/domain/vo/BgtApplyForWgzPayAddInfoVO.java @@ -52,7 +52,7 @@ public class BgtApplyForWgzPayAddInfoVO implements Serializable { @ApiModelProperty("出勤天数") private Integer num; - @ApiModelProperty("务工状态") + @ApiModelProperty("务工状态(1进场 2离场)") private String workingState; @ApiModelProperty("联系电话") diff --git a/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/WgzPayCalculationQueryBo.java b/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/WgzPayCalculationQueryBo.java index 986ed40..8813711 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/WgzPayCalculationQueryBo.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/WgzPayCalculationQueryBo.java @@ -71,7 +71,7 @@ public class WgzPayCalculationQueryBo extends BaseEntity { @ApiModelProperty("出勤天数") private Long num; /** 务工状态 */ - @ApiModelProperty("务工状态") + @ApiModelProperty("务工状态(1进场 2离场)") private String workingState; /** 联系电话 */ @ApiModelProperty("联系电话") diff --git a/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/req/WgzApplyForPayrollSettlementAddReq.java b/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/req/WgzApplyForPayrollSettlementAddReq.java index 4118a44..3774d5b 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/req/WgzApplyForPayrollSettlementAddReq.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/req/WgzApplyForPayrollSettlementAddReq.java @@ -13,6 +13,8 @@ import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.Accessors; +import javax.validation.constraints.Min; +import javax.validation.constraints.Size; import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDate; @@ -56,9 +58,10 @@ public class WgzApplyForPayrollSettlementAddReq implements Serializable { private BigDecimal recruitAmount; @ApiModelProperty("出勤天数") + @Min(value = 1, message = "出勤天数不能为 0") private Integer num; - @ApiModelProperty("务工状态") + @ApiModelProperty("务工状态(1进场 2离场)") private String workingState; @ApiModelProperty("联系电话") diff --git a/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/res/WgzAppApplyForPayrollSettlementListRes.java b/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/res/WgzAppApplyForPayrollSettlementListRes.java index 949f242..68760da 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/res/WgzAppApplyForPayrollSettlementListRes.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/res/WgzAppApplyForPayrollSettlementListRes.java @@ -55,7 +55,7 @@ public class WgzAppApplyForPayrollSettlementListRes implements Serializable { @ApiModelProperty("出勤天数") private Long num; - @ApiModelProperty("务工状态") + @ApiModelProperty("务工状态(1进场 2离场)") private String workingState; @ApiModelProperty("联系电话") diff --git a/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/res/WgzAppUserApplyForPayrollSettlementDetails.java b/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/res/WgzAppUserApplyForPayrollSettlementDetails.java new file mode 100644 index 0000000..c10467c --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/wgz/bo/res/WgzAppUserApplyForPayrollSettlementDetails.java @@ -0,0 +1,107 @@ +package com.ruoyi.wgz.bo.res; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.wgz.bo.WgzPayCalculationFilesQueryBo; +import com.ruoyi.wgz.domain.WgzPayCalculationFiles; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.util.List; + +@Data +@NoArgsConstructor +@Accessors(chain = true) +@ApiModel("工资结算详情") +public class WgzAppUserApplyForPayrollSettlementDetails { + + @ApiModelProperty("任务名称") + private String taskName; + + @ApiModelProperty("任务地址") + private String taskAddress; + + @ApiModelProperty("招工主题") + private String recruitName; + + @ApiModelProperty("申请人名称") + private String userName; + + @ApiModelProperty("进场时间") + private LocalDate entryTime; + + @ApiModelProperty("离场时间") + private LocalDate leaveTime; + + @ApiModelProperty("结算人") + private String auditorUserName; + + @ApiModelProperty("结算时间") + private LocalDateTime createTime; + + @ApiModelProperty("工资金额") + private BigDecimal recruitAmount; + + @ApiModelProperty("出勤天数") + private Integer num; + + @ApiModelProperty("务工状态(1进场 2离场)") + private String workingState; + + @ApiModelProperty("联系电话") + private String phone; + + @ApiModelProperty("银行") + private String bank; + + @ApiModelProperty("银行卡号") + private String cardNo; + + @ApiModelProperty("附件") + private List files; + + + + + + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("任务ID") + private Long taskId; + + @ApiModelProperty("招工ID") + private Long recruitId; + + @ApiModelProperty("务工者ID") + private Long userId; + + @ApiModelProperty("审核人ID") + private Long auditorUserId; + + @ApiModelProperty("审核状态(0未读 1待审核 2已同意 3已拒绝)") + private String auditorType; + + @ApiModelProperty("审核意见") + private String auditorOpinion; + + @ApiModelProperty("同意|拒绝时间") + private LocalDateTime auditorTime; + + @ApiModelProperty("申请人类型") + private String operatorType; + + @ApiModelProperty("备注") + private String remark; + + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/wgz/domain/WgzPayCalculation.java b/ruoyi-system/src/main/java/com/ruoyi/wgz/domain/WgzPayCalculation.java index 0e11545..e069ddb 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wgz/domain/WgzPayCalculation.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wgz/domain/WgzPayCalculation.java @@ -88,7 +88,7 @@ public class WgzPayCalculation implements Serializable { /** 务工状态 */ @Excel(name = "务工状态") - @ApiModelProperty("务工状态") + @ApiModelProperty("务工状态(1进场 2离场)") private String workingState; /** 联系电话 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/wgz/service/IWgzPayCalculationService.java b/ruoyi-system/src/main/java/com/ruoyi/wgz/service/IWgzPayCalculationService.java index a0c0dd6..0e26a1b 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wgz/service/IWgzPayCalculationService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wgz/service/IWgzPayCalculationService.java @@ -13,9 +13,12 @@ import com.ruoyi.wgz.bo.WgzPayCalculationQueryBo; import com.ruoyi.wgz.bo.req.WgzAppApplyForPayrollSettlementListReq; import com.ruoyi.wgz.bo.req.WgzApplyForPayrollSettlementAddReq; import com.ruoyi.wgz.bo.res.WgzAppApplyForPayrollSettlementListRes; +import com.ruoyi.wgz.bo.res.WgzAppUserApplyForPayrollSettlementDetails; import com.ruoyi.wgz.domain.WgzPayCalculation; import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PathVariable; +import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.util.Collection; import java.util.List; @@ -88,6 +91,11 @@ public interface IWgzPayCalculationService extends IServicePlus findByUserIdRecruitIdNewestData(Long userId, Long recruitId); + /** + * 用户申请结算(详情) + */ + WgzAppUserApplyForPayrollSettlementDetails userApplyForPayrollSettlementDetails(Long id); + /** * 查询列表 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/wgz/service/impl/WgzAttendanceServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/wgz/service/impl/WgzAttendanceServiceImpl.java index b4a156e..e1de8b6 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wgz/service/impl/WgzAttendanceServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wgz/service/impl/WgzAttendanceServiceImpl.java @@ -207,6 +207,7 @@ public class WgzAttendanceServiceImpl extends ServicePlusImpl apply = new LambdaQueryWrapper().eq(WgzDailyClock::getUserId, appUserId).apply("DATE_FORMAT(dily_time, '%Y-%m') = {0}", req.getYearMonth()); + BgtProjectRecruitApply by = iBgtProjectRecruitApplyService.selectByUserIdProjectRecruitApplyId(appUserId); + LambdaQueryWrapper apply = new LambdaQueryWrapper() + .eq(WgzDailyClock::getRecruitId, by.getRecruitId()) + .eq(WgzDailyClock::getUserId, appUserId) + .apply("DATE_FORMAT(dily_time, '%Y-%m') = {0}", req.getYearMonth()); List wgzDailyClocks = baseMapper.selectList(apply); //3、查看当前人、当前项目、当前月是否有请假 Map ll = iWgzLeaveService.selectByUserCancelLeave(req.getYearMonth()); @@ -204,8 +208,22 @@ public class WgzDailyClockServiceImpl extends ServicePlusImpl(). diff --git a/ruoyi-system/src/main/java/com/ruoyi/wgz/service/impl/WgzPayCalculationServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/wgz/service/impl/WgzPayCalculationServiceImpl.java index 0b69177..edc368b 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wgz/service/impl/WgzPayCalculationServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wgz/service/impl/WgzPayCalculationServiceImpl.java @@ -35,10 +35,12 @@ import com.ruoyi.wgz.bo.WgzPayCalculationQueryBo; import com.ruoyi.wgz.bo.req.WgzAppApplyForPayrollSettlementListReq; import com.ruoyi.wgz.bo.req.WgzApplyForPayrollSettlementAddReq; import com.ruoyi.wgz.bo.res.WgzAppApplyForPayrollSettlementListRes; +import com.ruoyi.wgz.bo.res.WgzAppUserApplyForPayrollSettlementDetails; import com.ruoyi.wgz.domain.*; import com.ruoyi.wgz.mapper.WgzPayCalculationMapper; import com.ruoyi.wgz.service.*; import org.apache.commons.collections4.CollectionUtils; +import org.apache.xmlbeans.impl.validator.ValidatingXMLStreamReader; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -368,6 +370,21 @@ public class WgzPayCalculationServiceImpl extends ServicePlusImpl files = iWgzPayCalculationFilesService.list( + Wrappers.lambdaQuery() + .eq(WgzPayCalculationFiles::getCalculationId, id) + ); + wgz.setFiles(files); + return wgz; + } + @Override public TableDataInfo appQueryPageList(BgtPayCalculationListDTO dto) { dto.setAuditorUserId(SecurityUtils.getAppUserId());