分包商
This commit is contained in:
@ -5,7 +5,7 @@ import com.ruoyi.common.annotation.RepeatSubmit;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.fbs.domain.dto.TaskApplyDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtTaskApplyDTO;
|
||||
import com.ruoyi.fbs.service.IFbsProjectTaskApplyService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
@ -36,7 +36,7 @@ public class AppBgtProjectTaskApplyController extends BaseController {
|
||||
@Log(title = "App申请承接项目任务", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit
|
||||
@PostMapping()
|
||||
public AjaxResult<Boolean> appTaskApply(@Validated @RequestBody TaskApplyDTO dto) {
|
||||
public AjaxResult<Boolean> appTaskApply(@Validated @RequestBody BgtTaskApplyDTO dto) {
|
||||
return AjaxResult.success(iFbsProjectTaskApplyService.appTaskApply(dto));
|
||||
}
|
||||
|
||||
@ -44,7 +44,7 @@ public class AppBgtProjectTaskApplyController extends BaseController {
|
||||
@ApiOperation("App取消申请项目任务")
|
||||
@Log(title = "App取消申请项目任务" , businessType = BusinessType.DELETE)
|
||||
@DeleteMapping()
|
||||
public AjaxResult<Boolean> cancelApply(TaskApplyDTO dto) {
|
||||
public AjaxResult<Boolean> cancelApply(BgtTaskApplyDTO dto) {
|
||||
return AjaxResult.success(iFbsProjectTaskApplyService.cancelApply(dto));
|
||||
}
|
||||
|
||||
|
@ -3,6 +3,7 @@ package com.ruoyi.web.controller.bgt;
|
||||
import com.ruoyi.bgt.domain.dto.BgtProjectTaskUserDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtProjectTaskUseCountVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtTaskDetailWageVO;
|
||||
import com.ruoyi.bgt.service.IBgtUserService;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.annotation.RepeatSubmit;
|
||||
@ -14,7 +15,7 @@ import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.common.exception.BaseException;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.fbs.domain.FbsProjectTask;
|
||||
import com.ruoyi.fbs.domain.dto.AppTaskDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtTaskDTO;
|
||||
import com.ruoyi.fbs.domain.vo.*;
|
||||
import com.ruoyi.fbs.service.IFbsProjectTaskService;
|
||||
import io.swagger.annotations.Api;
|
||||
@ -52,7 +53,7 @@ public class AppBgtProjectTaskController extends BaseController {
|
||||
,notes = "1.首页任务列表 任务状态(status) 申请(0) 是否我的任务(myTask) false\n"+
|
||||
"2.我的任务列表 任务状态(status) 申请(0) 进行(1) 完成(2) 是否我的任务(myTask) true")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<AppTaskVO> list(@Validated AppTaskDTO dto) {
|
||||
public TableDataInfo<AppTaskVO> list(@Validated BgtTaskDTO dto) {
|
||||
return iFbsProjectTaskService.appQueryPageList(dto);
|
||||
}
|
||||
|
||||
@ -86,7 +87,7 @@ public class AppBgtProjectTaskController extends BaseController {
|
||||
|
||||
@ApiOperation("项目任务详细信息-结算")
|
||||
@GetMapping("/wage/{id}")
|
||||
public AjaxResult<AppTaskDetailWageVO> getInfoWage(@NotNull(message = "主键不能为空")
|
||||
public AjaxResult<BgtTaskDetailWageVO> getInfoWage(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return AjaxResult.success(iFbsProjectTaskService.wage(id));
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
package com.ruoyi.web.controller.bgt;
|
||||
|
||||
import com.ruoyi.bgt.domain.dto.UserRealNameAuthenticationDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtUserRealNameAuthenticationDTO;
|
||||
import com.ruoyi.bgt.service.IBgtUserService;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.annotation.RepeatSubmit;
|
||||
@ -42,7 +42,7 @@ public class AppBgtUserController extends BaseController {
|
||||
@Log(title = "App管理包工头", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit
|
||||
@PutMapping
|
||||
public AjaxResult<Boolean> realNameAuthentication(@Validated @RequestBody UserRealNameAuthenticationDTO dto) {
|
||||
public AjaxResult<Boolean> realNameAuthentication(@Validated @RequestBody BgtUserRealNameAuthenticationDTO dto) {
|
||||
Boolean b = iBgtUserService.realNameAuthentication(dto);
|
||||
if(b){
|
||||
//更新上下文和缓存
|
||||
|
@ -1,7 +1,6 @@
|
||||
package com.ruoyi.web.controller.bgt;
|
||||
|
||||
import com.ruoyi.bgt.bo.BgtUserQueryBo;
|
||||
import com.ruoyi.bgt.domain.dto.UserRealNameAuthenticationDTO;
|
||||
import com.ruoyi.bgt.service.IBgtUserService;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.annotation.RepeatSubmit;
|
||||
|
@ -0,0 +1,64 @@
|
||||
package com.ruoyi.web.controller.fbs;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.annotation.RepeatSubmit;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.common.enums.SubcontractingApplyStatus;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.zbf.domain.ZbfProjectSubcontractingApply;
|
||||
import com.ruoyi.zbf.service.IZbfProjectSubcontractingApplyService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 总包方项目分包申请Controller
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2025-03-26
|
||||
*/
|
||||
@Api(value = "App分包商项目分包申请控制器", tags = {"App分包商"})
|
||||
@RequiredArgsConstructor(onConstructor_ = @Autowired)
|
||||
@RestController
|
||||
@RequestMapping("/app/fbs/apply")
|
||||
public class AppFbsProjectSubcontractingApplyController extends BaseController {
|
||||
|
||||
private final IZbfProjectSubcontractingApplyService iZbfProjectSubcontractingApplyService;
|
||||
|
||||
|
||||
/**
|
||||
* 新增总包方项目分包申请
|
||||
*/
|
||||
@ApiOperation("分包商申请项目分包")
|
||||
@Log(title = "分包商申请项目分包", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit
|
||||
@PostMapping()
|
||||
public AjaxResult<Boolean> apply(@Validated @RequestBody ZbfProjectSubcontractingApply bo) {
|
||||
return AjaxResult.success(iZbfProjectSubcontractingApplyService.insert(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改总包方项目分包申请
|
||||
*/
|
||||
@ApiOperation("分包商取消项目分包申请")
|
||||
@Log(title = "分包商取消项目分包申请", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit
|
||||
@PutMapping("/{subId}")
|
||||
public AjaxResult<Boolean> cancel(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("subId") Long subId) {
|
||||
LambdaUpdateWrapper<ZbfProjectSubcontractingApply> wrapper = Wrappers.<ZbfProjectSubcontractingApply>lambdaUpdate()
|
||||
.eq(ZbfProjectSubcontractingApply::getSubId, subId)
|
||||
.eq(ZbfProjectSubcontractingApply::getFbsUserId, SecurityUtils.getAppUserId())
|
||||
.set(ZbfProjectSubcontractingApply::getApplyStatus, SubcontractingApplyStatus.CANCEL.getCode());
|
||||
return AjaxResult.success(iZbfProjectSubcontractingApplyService.update(wrapper));
|
||||
}
|
||||
}
|
@ -25,7 +25,7 @@ import javax.validation.constraints.NotNull;
|
||||
@RequiredArgsConstructor(onConstructor_ = @Autowired)
|
||||
@RestController
|
||||
@RequestMapping("/app/fbs/subcontracting")
|
||||
public class AppProjectSubcontractingController extends BaseController {
|
||||
public class AppFbsProjectSubcontractingController extends BaseController {
|
||||
|
||||
private final IZbfProjectSubcontractingService iZbfProjectSubcontractingService;
|
||||
|
@ -1,22 +1,30 @@
|
||||
package com.ruoyi.web.controller.fbs;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.ruoyi.bgt.service.IBgtUserService;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.annotation.RepeatSubmit;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.domain.entity.BgtUser;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.fbs.domain.FbsProjectTask;
|
||||
import com.ruoyi.fbs.domain.dto.FbsProjectTaskUpdateDTO;
|
||||
import com.ruoyi.fbs.domain.dto.FbsTaskApplyListDTO;
|
||||
import com.ruoyi.fbs.domain.dto.FbsTaskListDTO;
|
||||
import com.ruoyi.fbs.domain.vo.*;
|
||||
import com.ruoyi.fbs.service.IFbsProjectTaskApplyService;
|
||||
import com.ruoyi.fbs.service.IFbsProjectTaskService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 分包商项目任务Controller
|
||||
@ -31,19 +39,72 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
public class AppFbsProjectTaskController extends BaseController {
|
||||
|
||||
private final IFbsProjectTaskService iFbsProjectTaskService;
|
||||
private final IFbsProjectTaskApplyService iFbsProjectTaskApplyService;
|
||||
private final IBgtUserService iBgtUserService;
|
||||
|
||||
@ApiOperation("分包商发布任务")
|
||||
@Log(title = "分包商发布任务", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit
|
||||
@PostMapping()
|
||||
public AjaxResult<Boolean> add(@Validated @RequestBody FbsProjectTask bo) {
|
||||
|
||||
bo.setCreateId(SecurityUtils.getAppUserId());
|
||||
bo.setStatus("1");
|
||||
// BgtUser byId = bgtUserService.selectUserByUserId(SecurityUtils.getAppUserId());
|
||||
// if(byId == null || byId.getIdentityCard() == null){
|
||||
// throw new BaseException("当前用户还未实名认证!");
|
||||
// }
|
||||
return AjaxResult.success(iFbsProjectTaskService.insert(bo));
|
||||
}
|
||||
|
||||
@ApiOperation("分包商修改任务")
|
||||
@Log(title = "分包商修改任务", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit
|
||||
@PutMapping()
|
||||
public AjaxResult<Boolean> edit(@Validated @RequestBody FbsProjectTaskUpdateDTO dto) {
|
||||
FbsProjectTask task = iFbsProjectTaskService.getById(dto.getId());
|
||||
BeanUtil.copyProperties(dto, task);
|
||||
return AjaxResult.success(iFbsProjectTaskService.update(task));
|
||||
}
|
||||
|
||||
@ApiOperation("分包商查询任务列表")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<FbsProjectTaskListVO> list(@Validated FbsTaskListDTO dto) {
|
||||
return iFbsProjectTaskService.fbsPageList(dto);
|
||||
}
|
||||
|
||||
@ApiOperation("分包商查询任务详情-基础信息")
|
||||
@GetMapping("/base/{id}")
|
||||
public AjaxResult<AppTaskDetailVO> base(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return AjaxResult.success(iFbsProjectTaskService.appQueryById(id));
|
||||
}
|
||||
|
||||
@ApiOperation("分包商查询任务详情-申请列表")
|
||||
@GetMapping("/taskApplyList")
|
||||
public TableDataInfo<FbsProjectTaskApplyListVO> taskApplyList(@Validated FbsTaskApplyListDTO dto) {
|
||||
return iFbsProjectTaskApplyService.queryPageListByTaskId(dto);
|
||||
}
|
||||
|
||||
@ApiOperation("分包商查询任务详情-包工头信息")
|
||||
@GetMapping("/bgtInfo/{id}")
|
||||
public AjaxResult<BgtUser> bgtInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
FbsProjectTask task = iFbsProjectTaskService.getById(id);
|
||||
if(task!=null&&task.getUserId()!=null){
|
||||
BgtUser bgtUser = iBgtUserService.selectUserByUserId(task.getUserId());
|
||||
return AjaxResult.success(bgtUser);
|
||||
}
|
||||
return AjaxResult.success(new BgtUser());
|
||||
}
|
||||
|
||||
@ApiOperation("分包商查询任务详情-任务进度")
|
||||
@GetMapping("/progress/{id}")
|
||||
public AjaxResult<AppTaskDetailProgressVO> progress(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return AjaxResult.success(iFbsProjectTaskService.progress(id));
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation("分包商查询任务详情-工资结算审批")
|
||||
@GetMapping("/wage/{id}")
|
||||
public AjaxResult<FbsTaskDetailWageVO> fbsWage(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return AjaxResult.success(iFbsProjectTaskService.fbsWage(id));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,26 +1,27 @@
|
||||
package com.ruoyi.zbf.controller;
|
||||
package com.ruoyi.web.controller.zbf;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Arrays;
|
||||
|
||||
import com.ruoyi.zbf.domain.ZbfProjectSubcontractingApply;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import javax.validation.constraints.*;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import com.ruoyi.common.annotation.RepeatSubmit;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.annotation.RepeatSubmit;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.zbf.bo.ZbfProjectSubcontractingApplyQueryBo;
|
||||
import com.ruoyi.zbf.service.IZbfProjectSubcontractingApplyService;
|
||||
import com.ruoyi.common.utils.poi.ExcelUtil;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.common.utils.poi.ExcelUtil;
|
||||
import com.ruoyi.zbf.bo.ZbfProjectSubcontractingApplyQueryBo;
|
||||
import com.ruoyi.zbf.domain.ZbfProjectSubcontractingApply;
|
||||
import com.ruoyi.zbf.service.IZbfProjectSubcontractingApplyService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 总包方项目分包申请Controller
|
@ -1,5 +1,8 @@
|
||||
package com.ruoyi.common.enums;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 项目任务状态
|
||||
*
|
||||
@ -7,7 +10,7 @@ package com.ruoyi.common.enums;
|
||||
*/
|
||||
public enum ProjectTaskStatus
|
||||
{
|
||||
APPLY("0", "申请中"),
|
||||
APPLY("0", "未开始"),
|
||||
PROGRESS("1", "进行中"),
|
||||
COMPLETE("2", "已完成"),
|
||||
;
|
||||
@ -30,4 +33,9 @@ public enum ProjectTaskStatus
|
||||
{
|
||||
return info;
|
||||
}
|
||||
|
||||
//已发布的状态
|
||||
public static List<String> getRelease(){
|
||||
return Arrays.asList(APPLY.getCode(), PROGRESS.getCode());
|
||||
}
|
||||
}
|
||||
|
@ -13,6 +13,7 @@ public enum SubcontractingApplyStatus
|
||||
APPLY("0", "申请中"),
|
||||
PASS("1", "已同意"),
|
||||
REFUSE("2", "已拒绝"),
|
||||
CANCEL("3", "已取消"),
|
||||
;
|
||||
|
||||
private final String code;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.ruoyi.fbs.domain.dto;
|
||||
package com.ruoyi.bgt.domain.dto;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
@ -6,7 +6,7 @@ import lombok.Data;
|
||||
|
||||
@Data
|
||||
@ApiModel("app申请/取消项目任务")
|
||||
public class TaskApplyDTO {
|
||||
public class BgtTaskApplyDTO {
|
||||
|
||||
@ApiModelProperty("任务ID")
|
||||
private Long taskId;
|
@ -1,4 +1,4 @@
|
||||
package com.ruoyi.fbs.domain.dto;
|
||||
package com.ruoyi.bgt.domain.dto;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
@ -8,7 +8,7 @@ import java.util.List;
|
||||
|
||||
@Data
|
||||
@ApiModel("app项目任务列表查询条件")
|
||||
public class AppTaskDTO {
|
||||
public class BgtTaskDTO {
|
||||
@ApiModelProperty("分页大小")
|
||||
private Integer pageSize;
|
||||
/** 当前页数 */
|
@ -22,7 +22,7 @@ import java.util.List;
|
||||
@NoArgsConstructor
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("包工头实名认证对象")
|
||||
public class UserRealNameAuthenticationDTO {
|
||||
public class BgtUserRealNameAuthenticationDTO {
|
||||
|
||||
@ApiModelProperty("主键")
|
||||
@NotNull(message = "主键不能为空")
|
@ -1,6 +1,5 @@
|
||||
package com.ruoyi.fbs.domain.vo;
|
||||
package com.ruoyi.bgt.domain.vo;
|
||||
|
||||
import com.ruoyi.bgt.domain.vo.BgtWageApplicationListVO;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
@ -10,14 +9,14 @@ import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@ApiModel("包工头项目任务详情-结算情况")
|
||||
public class AppTaskDetailWageVO {
|
||||
public class BgtTaskDetailWageVO {
|
||||
|
||||
@ApiModelProperty("主键ID")
|
||||
private Long id;
|
||||
|
||||
//结算情况
|
||||
@ApiModelProperty("任务收款金额")
|
||||
private Integer taskReceiveAmount;
|
||||
private BigDecimal taskReceiveAmount;
|
||||
|
||||
@ApiModelProperty("任务付款金额")
|
||||
private BigDecimal taskPaymentAmount;
|
@ -1,7 +1,7 @@
|
||||
package com.ruoyi.bgt.service;
|
||||
|
||||
import com.ruoyi.bgt.bo.BgtUserQueryBo;
|
||||
import com.ruoyi.bgt.domain.dto.UserRealNameAuthenticationDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtUserRealNameAuthenticationDTO;
|
||||
import com.ruoyi.common.core.domain.entity.BgtUser;
|
||||
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
@ -65,7 +65,7 @@ public interface IBgtUserService extends IServicePlus<BgtUser> {
|
||||
/**
|
||||
* 实名认证
|
||||
*/
|
||||
Boolean realNameAuthentication(@Validated @RequestBody UserRealNameAuthenticationDTO dto);
|
||||
Boolean realNameAuthentication(@Validated @RequestBody BgtUserRealNameAuthenticationDTO dto);
|
||||
|
||||
|
||||
/**
|
||||
|
@ -7,7 +7,7 @@ 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.bo.BgtUserQueryBo;
|
||||
import com.ruoyi.bgt.domain.dto.UserRealNameAuthenticationDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtUserRealNameAuthenticationDTO;
|
||||
import com.ruoyi.bgt.mapper.BgtUserMapper;
|
||||
import com.ruoyi.bgt.service.IBgtUserService;
|
||||
import com.ruoyi.common.constant.Constants;
|
||||
@ -126,7 +126,7 @@ public class BgtUserServiceImpl extends ServicePlusImpl<BgtUserMapper, BgtUser>
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean realNameAuthentication(UserRealNameAuthenticationDTO dto) {
|
||||
public Boolean realNameAuthentication(BgtUserRealNameAuthenticationDTO dto) {
|
||||
BgtUser bgtUser = baseMapper.selectOne(new LambdaQueryWrapper<BgtUser>().eq(BgtUser::getUserId, dto.getUserId()));
|
||||
if(bgtUser == null){
|
||||
throw new BaseException("用户不存在");
|
||||
|
@ -48,6 +48,9 @@ public class FbsProjectTask implements Serializable {
|
||||
@ApiModelProperty("分包ID")
|
||||
private Long subId;
|
||||
|
||||
@ApiModelProperty("分包主题")
|
||||
private String subName;
|
||||
|
||||
/** 任务名称 */
|
||||
@Excel(name = "任务名称")
|
||||
@ApiModelProperty("任务名称")
|
||||
|
@ -41,6 +41,9 @@ public class FbsProjectTaskApply implements Serializable {
|
||||
@ApiModelProperty("包工头用户ID")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("申请状态(0=申请中,1=已同意,2=已拒绝,3=已取消)")
|
||||
private String applyStatus;
|
||||
|
||||
/** 删除标志(0代表存在 2代表删除) */
|
||||
@Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除")
|
||||
@ApiModelProperty("删除标志(0代表存在 2代表删除)")
|
||||
|
@ -0,0 +1,56 @@
|
||||
package com.ruoyi.fbs.domain.dto;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import javax.validation.constraints.Pattern;
|
||||
|
||||
/**
|
||||
* 分包商项目任务对象 fbs_project_task
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2025-02-17
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("分包商项目任务视图对象")
|
||||
public class FbsProjectTaskUpdateDTO {
|
||||
|
||||
@ApiModelProperty("主键ID")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("任务名称")
|
||||
private String taskName;
|
||||
|
||||
@ApiModelProperty("用工数量")
|
||||
private Integer taskStaffNum;
|
||||
|
||||
@ApiModelProperty("任务开始时间")
|
||||
private String taskBeginTime;
|
||||
|
||||
@ApiModelProperty("任务结束时间")
|
||||
private String taskEndTime;
|
||||
|
||||
@ApiModelProperty("联系人")
|
||||
private String taskContactPerson;
|
||||
|
||||
@ApiModelProperty("联系电话")
|
||||
@Pattern(regexp = "^[0-9]+$",message = "联系电话只能是数字")
|
||||
private String taskContactPhone;
|
||||
|
||||
@ApiModelProperty("任务描述")
|
||||
private String taskDescribe;
|
||||
|
||||
@ApiModelProperty("任务图片")
|
||||
private String taskImg;
|
||||
|
||||
@ApiModelProperty("任务附件")
|
||||
private String taskAnnex;
|
||||
|
||||
@ApiModelProperty("资质要求")
|
||||
private String qualification;
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
package com.ruoyi.fbs.domain.dto;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Data
|
||||
@ApiModel("分包商任务申请列表查询条件")
|
||||
public class FbsTaskApplyListDTO {
|
||||
@ApiModelProperty("分页大小")
|
||||
private Integer pageSize;
|
||||
/** 当前页数 */
|
||||
@ApiModelProperty("当前页数")
|
||||
private Integer pageNum;
|
||||
|
||||
@ApiModelProperty("任务id")
|
||||
@NotNull(message = "任务id不能为空")
|
||||
private Long taskId;
|
||||
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
package com.ruoyi.fbs.domain.dto;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
@ApiModel("分包商任务列表查询条件")
|
||||
public class FbsTaskListDTO {
|
||||
@ApiModelProperty("分页大小")
|
||||
private Integer pageSize;
|
||||
/** 当前页数 */
|
||||
@ApiModelProperty("当前页数")
|
||||
private Integer pageNum;
|
||||
|
||||
@ApiModelProperty("任务类型(0已发布 1已完成)")
|
||||
private Integer type;
|
||||
|
||||
}
|
@ -1,10 +1,9 @@
|
||||
package com.ruoyi.fbs.domain.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.ruoyi.bgt.domain.vo.BgtAttendanceCountVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtWageApplicationListVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtAttendanceCountVO;
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
@ -21,18 +20,12 @@ public class AppTaskDetailVO {
|
||||
@ApiModelProperty("主键ID")
|
||||
private Long id;
|
||||
|
||||
/** 项目ID */
|
||||
@Excel(name = "项目ID")
|
||||
@ApiModelProperty("项目ID")
|
||||
private Long projectId;
|
||||
|
||||
/** 标段ID */
|
||||
@Excel(name = "标段ID")
|
||||
@ApiModelProperty("标段ID")
|
||||
private Long sectionId;
|
||||
|
||||
/** 分包ID */
|
||||
@Excel(name = "分包ID")
|
||||
@ApiModelProperty("分包ID")
|
||||
private Long subId;
|
||||
|
||||
|
@ -0,0 +1,46 @@
|
||||
package com.ruoyi.fbs.domain.vo;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 分包商项目任务申请对象 fbs_project_task_apply
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2025-02-17
|
||||
*/
|
||||
@Data
|
||||
@ApiModel("分包商任务申请列表视图对象")
|
||||
public class FbsProjectTaskApplyListVO {
|
||||
|
||||
/** 主键ID */
|
||||
@ApiModelProperty("主键ID")
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("任务ID")
|
||||
private Long taskId;
|
||||
|
||||
@ApiModelProperty("包工头用户ID")
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("姓名")
|
||||
private String username;
|
||||
|
||||
@ApiModelProperty("联系电话")
|
||||
private String phone;
|
||||
|
||||
@ApiModelProperty("头像")
|
||||
private String avatarName;
|
||||
|
||||
@ApiModelProperty("申请状态(0=申请中,1=已同意,2=已拒绝,3=已取消)")
|
||||
private String applyStatus;
|
||||
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,94 @@
|
||||
package com.ruoyi.fbs.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 java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 分包商项目任务对象 fbs_project_task
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2025-02-17
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@ApiModel("分包商任务列表视图对象")
|
||||
public class FbsProjectTaskListVO {
|
||||
|
||||
@ApiModelProperty("主键ID")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("项目ID")
|
||||
private Long projectId;
|
||||
|
||||
@ApiModelProperty("项目名称")
|
||||
private String projectName;
|
||||
|
||||
@ApiModelProperty("标段ID")
|
||||
private Long sectionId;
|
||||
|
||||
@ApiModelProperty("分包ID")
|
||||
private Long subId;
|
||||
|
||||
@ApiModelProperty("分包主题")
|
||||
private String subName;
|
||||
|
||||
@ApiModelProperty("任务名称")
|
||||
private String taskName;
|
||||
|
||||
@ApiModelProperty("任务地址")
|
||||
private String taskAddress;
|
||||
|
||||
@ApiModelProperty("任务金额")
|
||||
private BigDecimal taskAmount;
|
||||
|
||||
@ApiModelProperty("用工数量")
|
||||
private Integer taskStaffNum;
|
||||
|
||||
@ApiModelProperty("任务开始时间")
|
||||
private String taskBeginTime;
|
||||
|
||||
@ApiModelProperty("任务结束时间")
|
||||
private String taskEndTime;
|
||||
|
||||
@ApiModelProperty("联系人")
|
||||
private String taskContactPerson;
|
||||
|
||||
@ApiModelProperty("联系电话")
|
||||
private String taskContactPhone;
|
||||
|
||||
@ApiModelProperty("任务描述")
|
||||
private String taskDescribe;
|
||||
|
||||
@ApiModelProperty("任务图片")
|
||||
private String taskImg;
|
||||
|
||||
@ApiModelProperty("任务附件")
|
||||
private String taskAnnex;
|
||||
|
||||
@ApiModelProperty("资质要求")
|
||||
private String qualification;
|
||||
|
||||
@ApiModelProperty("包工头用户ID")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("任务状态(0未开始 1进行中 2已完成)")
|
||||
private String status;
|
||||
|
||||
@ApiModelProperty("创建时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("申请列表")
|
||||
private List<FbsProjectTaskApplyListVO> applyList;
|
||||
|
||||
}
|
@ -0,0 +1,32 @@
|
||||
package com.ruoyi.fbs.domain.vo;
|
||||
|
||||
import com.ruoyi.bgt.domain.vo.BgtWageApplicationListVO;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
|
||||
@Data
|
||||
@ApiModel("分包商项目任务详情-结算情况")
|
||||
public class FbsTaskDetailWageVO {
|
||||
|
||||
@ApiModelProperty("主键ID")
|
||||
private Long id;
|
||||
|
||||
//结算情况
|
||||
@ApiModelProperty("任务结算金额")
|
||||
private BigDecimal taskAuditAmount;
|
||||
|
||||
@ApiModelProperty("任务申请金额")
|
||||
private BigDecimal taskApplyAmount;
|
||||
|
||||
@ApiModelProperty("最新一条收款申请")
|
||||
private BgtWageApplicationListVO wageApplication;
|
||||
|
||||
@ApiModelProperty("任务金额")
|
||||
private BigDecimal taskAmount;
|
||||
|
||||
|
||||
}
|
@ -1,9 +1,13 @@
|
||||
package com.ruoyi.fbs.mapper;
|
||||
|
||||
import com.ruoyi.fbs.domain.FbsProjectTaskApply;
|
||||
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
|
||||
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
|
||||
import com.ruoyi.fbs.domain.FbsProjectTaskApply;
|
||||
import com.ruoyi.fbs.domain.dto.FbsTaskApplyListDTO;
|
||||
import com.ruoyi.fbs.domain.vo.FbsProjectTaskApplyListVO;
|
||||
import org.apache.ibatis.annotations.CacheNamespace;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
* 分包商项目任务申请Mapper接口
|
||||
@ -15,4 +19,5 @@ import org.apache.ibatis.annotations.CacheNamespace;
|
||||
@CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class)
|
||||
public interface FbsProjectTaskApplyMapper extends BaseMapperPlus<FbsProjectTaskApply> {
|
||||
|
||||
Page<FbsProjectTaskApplyListVO> queryPageListByTaskId(@Param("page") Page<FbsTaskApplyListDTO> page, @Param("dto") FbsTaskApplyListDTO dto);
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
|
||||
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
|
||||
import com.ruoyi.fbs.domain.FbsProjectTask;
|
||||
import com.ruoyi.fbs.domain.dto.AppTaskDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtTaskDTO;
|
||||
import com.ruoyi.fbs.domain.vo.AppTaskVO;
|
||||
import org.apache.ibatis.annotations.CacheNamespace;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
@ -19,6 +19,6 @@ import org.apache.ibatis.annotations.Param;
|
||||
@CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class)
|
||||
public interface FbsProjectTaskMapper extends BaseMapperPlus<FbsProjectTask> {
|
||||
|
||||
Page<AppTaskVO> appQueryPageList(@Param("page") Page<AppTaskDTO> page, @Param("dto") AppTaskDTO dto);
|
||||
Page<AppTaskVO> appQueryPageList(@Param("page") Page<BgtTaskDTO> page, @Param("dto") BgtTaskDTO dto);
|
||||
|
||||
}
|
||||
|
@ -1,10 +1,12 @@
|
||||
package com.ruoyi.fbs.service;
|
||||
|
||||
import com.ruoyi.bgt.domain.dto.BgtTaskApplyDTO;
|
||||
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.fbs.bo.FbsProjectTaskApplyQueryBo;
|
||||
import com.ruoyi.fbs.domain.FbsProjectTaskApply;
|
||||
import com.ruoyi.fbs.domain.dto.TaskApplyDTO;
|
||||
import com.ruoyi.fbs.domain.dto.FbsTaskApplyListDTO;
|
||||
import com.ruoyi.fbs.domain.vo.FbsProjectTaskApplyListVO;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
@ -57,7 +59,7 @@ public interface IFbsProjectTaskApplyService extends IServicePlus<FbsProjectTask
|
||||
/**
|
||||
* 申请承接
|
||||
*/
|
||||
Boolean appTaskApply(TaskApplyDTO dto);
|
||||
Boolean appTaskApply(BgtTaskApplyDTO dto);
|
||||
|
||||
/**
|
||||
* 获取包工头申请的所有任务ID
|
||||
@ -67,5 +69,10 @@ public interface IFbsProjectTaskApplyService extends IServicePlus<FbsProjectTask
|
||||
/**
|
||||
* 取消申请
|
||||
*/
|
||||
Boolean cancelApply(TaskApplyDTO dto);
|
||||
Boolean cancelApply(BgtTaskApplyDTO dto);
|
||||
|
||||
/**
|
||||
* 查询任务下的包工头申请列表
|
||||
*/
|
||||
TableDataInfo<FbsProjectTaskApplyListVO> queryPageListByTaskId(FbsTaskApplyListDTO dto);
|
||||
}
|
||||
|
@ -2,13 +2,15 @@ package com.ruoyi.fbs.service;
|
||||
|
||||
|
||||
import com.ruoyi.bgt.domain.dto.BgtProjectTaskUserDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtTaskDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtProjectTaskUseCountVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtTaskDetailWageVO;
|
||||
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.fbs.bo.FbsProjectTaskQueryBo;
|
||||
import com.ruoyi.fbs.domain.FbsProjectTask;
|
||||
import com.ruoyi.fbs.domain.dto.AppTaskDTO;
|
||||
import com.ruoyi.fbs.domain.dto.FbsTaskListDTO;
|
||||
import com.ruoyi.fbs.domain.vo.*;
|
||||
|
||||
import java.util.Collection;
|
||||
@ -63,7 +65,7 @@ public interface IFbsProjectTaskService extends IServicePlus<FbsProjectTask> {
|
||||
/**
|
||||
* 包工头查询列表
|
||||
*/
|
||||
TableDataInfo<AppTaskVO> appQueryPageList(AppTaskDTO dto);
|
||||
TableDataInfo<AppTaskVO> appQueryPageList(BgtTaskDTO dto);
|
||||
|
||||
/**
|
||||
* App包工头任务列表(不分页)
|
||||
@ -88,7 +90,7 @@ public interface IFbsProjectTaskService extends IServicePlus<FbsProjectTask> {
|
||||
/**
|
||||
* 任务详情-结算
|
||||
*/
|
||||
AppTaskDetailWageVO wage(Long id);
|
||||
BgtTaskDetailWageVO wage(Long id);
|
||||
|
||||
/**
|
||||
* 任务详情-务工人员
|
||||
@ -105,8 +107,16 @@ public interface IFbsProjectTaskService extends IServicePlus<FbsProjectTask> {
|
||||
*/
|
||||
BgtProjectTaskUseCountVO taskUserCount(Long id);
|
||||
|
||||
/**
|
||||
* 查询所有在进行中的任务
|
||||
*/
|
||||
|
||||
List<FbsProjectTask> findOngoingTask();
|
||||
|
||||
/**
|
||||
* 分包商查询任务列表
|
||||
*/
|
||||
TableDataInfo<FbsProjectTaskListVO> fbsPageList(FbsTaskListDTO dto);
|
||||
|
||||
/**
|
||||
* 任务详情-结算
|
||||
*/
|
||||
FbsTaskDetailWageVO fbsWage(Long id);
|
||||
}
|
||||
|
@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
|
||||
import com.ruoyi.bgt.domain.BgtMessage;
|
||||
import com.ruoyi.bgt.domain.dto.BgtTaskApplyDTO;
|
||||
import com.ruoyi.bgt.service.IBgtMessageService;
|
||||
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
@ -16,7 +17,8 @@ import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.fbs.bo.FbsProjectTaskApplyQueryBo;
|
||||
import com.ruoyi.fbs.domain.FbsProjectTask;
|
||||
import com.ruoyi.fbs.domain.FbsProjectTaskApply;
|
||||
import com.ruoyi.fbs.domain.dto.TaskApplyDTO;
|
||||
import com.ruoyi.fbs.domain.dto.FbsTaskApplyListDTO;
|
||||
import com.ruoyi.fbs.domain.vo.FbsProjectTaskApplyListVO;
|
||||
import com.ruoyi.fbs.mapper.FbsProjectTaskApplyMapper;
|
||||
import com.ruoyi.fbs.service.IFbsProjectTaskApplyService;
|
||||
import com.ruoyi.fbs.service.IFbsProjectTaskService;
|
||||
@ -111,7 +113,7 @@ public class FbsProjectTaskApplyServiceImpl extends ServicePlusImpl<FbsProjectTa
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean appTaskApply(TaskApplyDTO dto) {
|
||||
public Boolean appTaskApply(BgtTaskApplyDTO dto) {
|
||||
FbsProjectTaskApply fbsProjectTaskApply = BeanUtil.copyProperties(dto, FbsProjectTaskApply.class);
|
||||
validEntityBeforeSave(fbsProjectTaskApply);
|
||||
|
||||
@ -141,7 +143,7 @@ public class FbsProjectTaskApplyServiceImpl extends ServicePlusImpl<FbsProjectTa
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean cancelApply(TaskApplyDTO dto) {
|
||||
public Boolean cancelApply(BgtTaskApplyDTO dto) {
|
||||
int delete = baseMapper.delete(Wrappers.<FbsProjectTaskApply>lambdaQuery().eq(FbsProjectTaskApply::getTaskId, dto.getTaskId())
|
||||
.eq(FbsProjectTaskApply::getUserId, dto.getUserId()));
|
||||
//发消息
|
||||
@ -162,4 +164,13 @@ public class FbsProjectTaskApplyServiceImpl extends ServicePlusImpl<FbsProjectTa
|
||||
bgtMessageService.sendAMessage(bgtMessage);
|
||||
return delete>0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<FbsProjectTaskApplyListVO> queryPageListByTaskId(FbsTaskApplyListDTO dto) {
|
||||
Page<FbsTaskApplyListDTO> page = new Page<>();
|
||||
page.setCurrent(dto.getPageNum());
|
||||
page.setSize(dto.getPageSize());
|
||||
Page<FbsProjectTaskApplyListVO> voPage = baseMapper.queryPageListByTaskId(page, dto);
|
||||
return PageUtils.buildDataInfo(voPage);
|
||||
}
|
||||
}
|
||||
|
@ -7,12 +7,11 @@ 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.BgtProjectRecruitApply;
|
||||
import com.ruoyi.bgt.domain.BgtWageApplication;
|
||||
import com.ruoyi.bgt.domain.dto.BgtProjectTaskUserDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtTaskDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtWageApplicationQueryDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtDayAttendanceCountVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtProjectTaskUseCountVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtWageApplicationListVO;
|
||||
import com.ruoyi.bgt.domain.vo.*;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitApplyService;
|
||||
import com.ruoyi.bgt.service.IBgtProjectTaskProgressService;
|
||||
import com.ruoyi.bgt.service.IBgtWageApplicationService;
|
||||
@ -27,9 +26,11 @@ import com.ruoyi.common.utils.PageUtils;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.fbs.bo.FbsProjectTaskQueryBo;
|
||||
import com.ruoyi.fbs.domain.FbsProjectTask;
|
||||
import com.ruoyi.fbs.domain.dto.AppTaskDTO;
|
||||
import com.ruoyi.fbs.domain.dto.FbsTaskApplyListDTO;
|
||||
import com.ruoyi.fbs.domain.dto.FbsTaskListDTO;
|
||||
import com.ruoyi.fbs.domain.vo.*;
|
||||
import com.ruoyi.fbs.mapper.FbsProjectTaskMapper;
|
||||
import com.ruoyi.fbs.service.IFbsProjectTaskApplyService;
|
||||
import com.ruoyi.fbs.service.IFbsProjectTaskService;
|
||||
import com.ruoyi.wgz.service.IWgzAttendanceService;
|
||||
import com.ruoyi.wgz.service.IWgzPayCalculationService;
|
||||
@ -41,6 +42,7 @@ import org.springframework.stereotype.Service;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.time.LocalDate;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -56,7 +58,6 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
|
||||
|
||||
@Autowired
|
||||
private IZbfProjectService zbfProjectService;
|
||||
|
||||
@Autowired
|
||||
private IBgtProjectRecruitApplyService recruitApplyService;
|
||||
@Autowired
|
||||
@ -67,6 +68,8 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
|
||||
private IWgzAttendanceService attendanceService;
|
||||
@Autowired
|
||||
private IWgzPayCalculationService payCalculationService;
|
||||
@Autowired
|
||||
private IFbsProjectTaskApplyService fbsProjectTaskApplyService;
|
||||
|
||||
@Override
|
||||
public FbsProjectTask queryById(Long id){
|
||||
@ -136,8 +139,8 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo<AppTaskVO> appQueryPageList(AppTaskDTO dto) {
|
||||
Page<AppTaskDTO> appTaskDTOPage = new Page<>();
|
||||
public TableDataInfo<AppTaskVO> appQueryPageList(BgtTaskDTO dto) {
|
||||
Page<BgtTaskDTO> appTaskDTOPage = new Page<>();
|
||||
appTaskDTOPage.setCurrent(dto.getPageNum());
|
||||
appTaskDTOPage.setSize(dto.getPageSize());
|
||||
dto.setUserId(SecurityUtils.getAppUserId());
|
||||
@ -151,6 +154,7 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
|
||||
System.out.println(SecurityUtils.getAppUserId());
|
||||
wrapper.eq(FbsProjectTask::getUserId,SecurityUtils.getAppUserId());
|
||||
wrapper.eq(FbsProjectTask::getStatus,ProjectTaskStatus.PROGRESS.getCode());
|
||||
wrapper.orderByDesc(FbsProjectTask::getId);
|
||||
List<FbsProjectTask> fbsProjectTasks = baseMapper.selectList(wrapper);
|
||||
return BeanUtil.copyToList(fbsProjectTasks,AppTaskVO.class);
|
||||
}
|
||||
@ -170,20 +174,20 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
|
||||
appTaskDetailVO.setProgress(lastProgress);
|
||||
BigDecimal bd = new BigDecimal(lastProgress).divide(new BigDecimal(100), 2, RoundingMode.HALF_UP);
|
||||
appTaskDetailVO.setProgressDouble(bd.doubleValue());
|
||||
//结算情况
|
||||
//收款申请列表
|
||||
BgtWageApplicationQueryDTO wageDTO = new BgtWageApplicationQueryDTO();
|
||||
wageDTO.setTaskId(id);
|
||||
List<BgtWageApplicationListVO> wageList = wageApplicationService.appQueryList(wageDTO);
|
||||
appTaskDetailVO.setWageApplication(CollectionUtil.isEmpty(wageList)?null:wageList.get(0));
|
||||
//收款金额
|
||||
Integer taskReceiveAmount = wageList.stream().filter(wage -> AuditStatus.PASS.getCode().equals(wage.getAuditStatus()))
|
||||
.map(BgtWageApplicationListVO::getApplicantAmount)
|
||||
.reduce(BigDecimal.ZERO, BigDecimal::add).intValue();
|
||||
appTaskDetailVO.setTaskReceiveAmount(taskReceiveAmount);
|
||||
//付款金额
|
||||
BigDecimal payByTaskAndBgt = payCalculationService.getPayByTaskAndBgt(byId.getId(), byId.getUserId());
|
||||
appTaskDetailVO.setTaskPaymentAmount(payByTaskAndBgt);
|
||||
// //结算情况
|
||||
// //收款申请列表
|
||||
// BgtWageApplicationQueryDTO wageDTO = new BgtWageApplicationQueryDTO();
|
||||
// wageDTO.setTaskId(id);
|
||||
// List<BgtWageApplicationListVO> wageList = wageApplicationService.appQueryList(wageDTO);
|
||||
// appTaskDetailVO.setWageApplication(CollectionUtil.isEmpty(wageList)?null:wageList.get(0));
|
||||
// //收款金额
|
||||
// Integer taskReceiveAmount = wageList.stream().filter(wage -> AuditStatus.PASS.getCode().equals(wage.getAuditStatus()))
|
||||
// .map(BgtWageApplicationListVO::getApplicantAmount)
|
||||
// .reduce(BigDecimal.ZERO, BigDecimal::add).intValue();
|
||||
// appTaskDetailVO.setTaskReceiveAmount(taskReceiveAmount);
|
||||
// //付款金额
|
||||
// BigDecimal payByTaskAndBgt = payCalculationService.getPayByTaskAndBgt(byId.getId(), byId.getUserId());
|
||||
// appTaskDetailVO.setTaskPaymentAmount(payByTaskAndBgt);
|
||||
|
||||
}
|
||||
return appTaskDetailVO;
|
||||
@ -234,9 +238,9 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
|
||||
}
|
||||
|
||||
@Override
|
||||
public AppTaskDetailWageVO wage(Long id) {
|
||||
public BgtTaskDetailWageVO wage(Long id) {
|
||||
FbsProjectTask task = getById(id);
|
||||
AppTaskDetailWageVO appTaskDetailVO = new AppTaskDetailWageVO();
|
||||
BgtTaskDetailWageVO appTaskDetailVO = new BgtTaskDetailWageVO();
|
||||
appTaskDetailVO.setId(id);
|
||||
appTaskDetailVO.setTaskAmount(task.getTaskAmount());
|
||||
//结算情况
|
||||
@ -246,10 +250,10 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
|
||||
List<BgtWageApplicationListVO> wageList = wageApplicationService.appQueryList(wageDTO);
|
||||
appTaskDetailVO.setWageApplication(CollectionUtil.isEmpty(wageList)?null:wageList.get(0));
|
||||
//收款金额
|
||||
Integer taskReceiveAmount = wageList.stream().filter(wage -> AuditStatus.PASS.getCode().equals(wage.getAuditStatus()))
|
||||
int taskReceiveAmount = wageList.stream().filter(wage -> AuditStatus.PASS.getCode().equals(wage.getAuditStatus()))
|
||||
.map(BgtWageApplicationListVO::getApplicantAmount)
|
||||
.reduce(BigDecimal.ZERO, BigDecimal::add).intValue();
|
||||
appTaskDetailVO.setTaskReceiveAmount(taskReceiveAmount);
|
||||
appTaskDetailVO.setTaskReceiveAmount(new BigDecimal(taskReceiveAmount));
|
||||
//付款金额
|
||||
BigDecimal payByTaskAndBgt = payCalculationService.getPayByTaskAndBgt(id, SecurityUtils.getAppUserId());
|
||||
appTaskDetailVO.setTaskPaymentAmount(payByTaskAndBgt);
|
||||
@ -298,4 +302,58 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
|
||||
LambdaQueryWrapper<FbsProjectTask> wra = new LambdaQueryWrapper<FbsProjectTask>().eq(FbsProjectTask::getStatus, "1");
|
||||
return baseMapper.selectList(wra);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public TableDataInfo<FbsProjectTaskListVO> fbsPageList(FbsTaskListDTO dto) {
|
||||
|
||||
LambdaQueryWrapper<FbsProjectTask> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(dto.getType()==0,FbsProjectTask::getStatus,ProjectTaskStatus.getRelease());
|
||||
wrapper.eq(dto.getType()==1,FbsProjectTask::getStatus,ProjectTaskStatus.COMPLETE.getCode());
|
||||
wrapper.orderByDesc(FbsProjectTask::getId);
|
||||
Page<FbsProjectTask> page = page(PageUtils.buildPage(), wrapper);
|
||||
List<FbsProjectTaskListVO> fbsProjectTaskListVOS = new ArrayList<>();
|
||||
for (FbsProjectTask task : page.getRecords()){
|
||||
FbsProjectTaskListVO fbsProjectTaskListVO = BeanUtil.copyProperties(task, FbsProjectTaskListVO.class);
|
||||
//查询项目名称
|
||||
ZbfProject project = zbfProjectService.getById(task.getProjectId());
|
||||
fbsProjectTaskListVO.setProjectName(project.getProjectName());
|
||||
//申请列表
|
||||
FbsTaskApplyListDTO fbsTaskApplyListDTO = new FbsTaskApplyListDTO();
|
||||
fbsTaskApplyListDTO.setPageNum(1);
|
||||
fbsTaskApplyListDTO.setPageSize(3);
|
||||
fbsTaskApplyListDTO.setTaskId(task.getId());
|
||||
TableDataInfo<FbsProjectTaskApplyListVO> applyList = fbsProjectTaskApplyService.queryPageListByTaskId(fbsTaskApplyListDTO);
|
||||
fbsProjectTaskListVO.setApplyList(applyList.getRows());
|
||||
fbsProjectTaskListVOS.add(fbsProjectTaskListVO);
|
||||
}
|
||||
Page<FbsProjectTaskListVO> fbsProjectTaskListVOPage = new Page<>();
|
||||
fbsProjectTaskListVOPage.setTotal(page.getTotal());
|
||||
fbsProjectTaskListVOPage.setRecords(fbsProjectTaskListVOS);
|
||||
return PageUtils.buildDataInfo(fbsProjectTaskListVOPage);
|
||||
}
|
||||
|
||||
@Override
|
||||
public FbsTaskDetailWageVO fbsWage(Long id) {
|
||||
FbsTaskDetailWageVO fbsTaskDetailWageVO = new FbsTaskDetailWageVO();
|
||||
|
||||
List<BgtWageApplication> wageList = wageApplicationService.list(Wrappers.<BgtWageApplication>lambdaQuery()
|
||||
.eq(BgtWageApplication::getTaskId, id).orderByDesc(BgtWageApplication::getId));
|
||||
|
||||
BigDecimal taskAuditAmount = BigDecimal.ZERO;
|
||||
BigDecimal taskApplyAmount= BigDecimal.ZERO;
|
||||
for (BgtWageApplication wage : wageList) {
|
||||
taskApplyAmount = taskApplyAmount.add(wage.getApplicantAmount());
|
||||
if(AuditStatus.PASS.getCode().equals(wage.getAuditStatus())){
|
||||
taskAuditAmount = taskAuditAmount.add(wage.getApplicantAmount());
|
||||
}
|
||||
if(AuditStatus.AUDIT.getCode().equals(wage.getAuditStatus()) && fbsTaskDetailWageVO.getWageApplication() == null){
|
||||
BgtWageApplicationListVO bgtWageApplicationListVO = BeanUtil.copyProperties(wage, BgtWageApplicationListVO.class);
|
||||
fbsTaskDetailWageVO.setWageApplication(bgtWageApplicationListVO);
|
||||
}
|
||||
}
|
||||
fbsTaskDetailWageVO.setTaskAuditAmount(taskAuditAmount);
|
||||
fbsTaskDetailWageVO.setTaskApplyAmount(taskApplyAmount);
|
||||
return fbsTaskDetailWageVO;
|
||||
}
|
||||
}
|
||||
|
@ -55,8 +55,8 @@ public class ZbfProjectSubcontractingApply implements Serializable {
|
||||
private Long fbsUserId;
|
||||
|
||||
/** 申请状态(0申请中 1已同意 2已拒绝) */
|
||||
@Excel(name = "申请状态" , readConverterExp = "0=申请中,1=已同意,2=已拒绝")
|
||||
@ApiModelProperty("申请状态(0申请中 1已同意 2已拒绝)")
|
||||
@Excel(name = "申请状态" , readConverterExp = "0=申请中,1=已同意,2=已拒绝,3=已取消")
|
||||
@ApiModelProperty("申请状态(0=申请中,1=已同意,2=已拒绝,3=已取消)")
|
||||
private String applyStatus;
|
||||
|
||||
/** 删除标志(0代表存在 2代表删除) */
|
||||
|
@ -17,4 +17,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</resultMap>
|
||||
|
||||
|
||||
<select id="queryPageListByTaskId" resultType="com.ruoyi.fbs.domain.vo.FbsProjectTaskApplyListVO">
|
||||
select fpta.id,
|
||||
fpta.task_id,
|
||||
fpta.user_id,
|
||||
fpta.apply_status,
|
||||
bu.username,
|
||||
bu.phone,
|
||||
bu.avatar_name
|
||||
from fbs_project_task_apply fpta
|
||||
left join bgt_user bu on fpta.user_id = bu.user_id
|
||||
where fpta.task_id = #{dto.taskId}
|
||||
order by fpta.id desc
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
@ -49,7 +49,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
WHERE EXISTS (
|
||||
SELECT 1
|
||||
FROM zbf_project_subcontracting_apply zpsa
|
||||
WHERE zpsa.fbs_user_id = #{dto.fbsUserId} and zpsa.apply_status != '1'
|
||||
WHERE zpsa.fbs_user_id = #{dto.fbsUserId} and zpsa.apply_status in('0','2')
|
||||
AND zp.id = zpsa.project_id
|
||||
) order by zp.id desc
|
||||
</select>
|
||||
|
@ -193,7 +193,7 @@
|
||||
// 获取 URL 中的 userId 参数
|
||||
const urlParams = new URLSearchParams(window.location.search);
|
||||
this.userId = urlParams.get("userId");
|
||||
// console.log("userId", this.userId);
|
||||
console.log("userId", this.userId);
|
||||
|
||||
this.getRecruitList();
|
||||
},
|
||||
@ -227,7 +227,7 @@
|
||||
this.loading = true;
|
||||
try {
|
||||
const response = await this.ajaxRequest({
|
||||
url: `/ruoyi/app/bgt/apply/htmlList?recruitId=${val}&isUpload=${this.isFilter}`,
|
||||
url: `/ruoyi/app/bgt/apply/htmlList?recruitId=${val}&isNotUpload=${this.isFilter}`,
|
||||
method: "GET",
|
||||
});
|
||||
this.currentList = response.data;
|
||||
@ -247,7 +247,7 @@
|
||||
this.loading = true;
|
||||
try {
|
||||
const response = await this.ajaxRequest({
|
||||
url: `/ruoyi/app/bgt/apply/htmlList?recruitId=${this.selectedTheme}&isUpload=${this.isFilter}`,
|
||||
url: `/ruoyi/app/bgt/apply/htmlList?recruitId=${this.selectedTheme}&isNotUpload=${this.isFilter}`,
|
||||
method: "GET",
|
||||
});
|
||||
this.currentList = response.data;
|
||||
@ -369,7 +369,6 @@
|
||||
userIds(newVal) {
|
||||
const total = this.currentList.length;
|
||||
this.checkAll = newVal.length === total && total > 0;
|
||||
this.isFilter = newVal.length === total && total > 0;
|
||||
this.isIndeterminate = newVal.length > 0 && newVal.length < total;
|
||||
},
|
||||
currentList(newVal) {
|
||||
|
Reference in New Issue
Block a user