分包
This commit is contained in:
@ -91,6 +91,9 @@ public class AppTaskDetailVO {
|
||||
@ApiModelProperty("备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("申请状态(0申请中 1已同意 2已拒绝 3已取消)")
|
||||
private String applyStatus;
|
||||
|
||||
@ApiModelProperty("发布时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
@ -0,0 +1,104 @@
|
||||
package com.ruoyi.fbs.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;
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("分包商查看务工者个人基本信息返回对象")
|
||||
public class FbsGetWgzUserInfoVO implements Serializable {
|
||||
@ApiModelProperty("主键ID")
|
||||
private String id;
|
||||
|
||||
@ApiModelProperty("唯一标识")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("姓名")
|
||||
private String username;
|
||||
|
||||
@ApiModelProperty("性别字典sys_user_sex")
|
||||
private String gender;
|
||||
|
||||
@ApiModelProperty("民族")
|
||||
private String nation;
|
||||
|
||||
@ApiModelProperty("出生日期")
|
||||
private LocalDate birthdate;
|
||||
|
||||
@ApiModelProperty("年龄")
|
||||
private Integer age;
|
||||
|
||||
@ApiModelProperty("身份证号码")
|
||||
private String identityCard;
|
||||
|
||||
@ApiModelProperty("所在区域")
|
||||
private String area;
|
||||
|
||||
@ApiModelProperty("地址")
|
||||
private String site;
|
||||
|
||||
@ApiModelProperty("联系电话")
|
||||
private String phone;
|
||||
|
||||
@ApiModelProperty("银行")
|
||||
private String bank;
|
||||
|
||||
@ApiModelProperty("银行卡号")
|
||||
private String cardNo;
|
||||
|
||||
@ApiModelProperty("头像地址")
|
||||
private String avatarName;
|
||||
|
||||
@ApiModelProperty("身份证正面图路径")
|
||||
private String frontPath;
|
||||
|
||||
@ApiModelProperty("身份证反面图路径")
|
||||
private String reverseSidePath;
|
||||
|
||||
@ApiModelProperty("银行卡图路径")
|
||||
private String bankCardPath;
|
||||
|
||||
@ApiModelProperty("评分")
|
||||
private Double score;
|
||||
|
||||
@ApiModelProperty("工种,多个逗号分隔")
|
||||
private String typeOfWork;
|
||||
|
||||
@ApiModelProperty("工种名")
|
||||
private String typeOfWorkName;
|
||||
|
||||
@ApiModelProperty("是否被选择")
|
||||
private Boolean isChoose;
|
||||
|
||||
@ApiModelProperty("工作状态")
|
||||
private String workStatus;
|
||||
|
||||
@ApiModelProperty("是否工资结清")
|
||||
private Boolean isPay;
|
||||
|
||||
@ApiModelProperty("项目名称")
|
||||
private String projectName;
|
||||
|
||||
@ApiModelProperty("标段名称")
|
||||
private String sectionName;
|
||||
|
||||
@ApiModelProperty("分包主题")
|
||||
private String subName;
|
||||
|
||||
@ApiModelProperty("进场时间")
|
||||
private LocalDate entryTime;
|
||||
|
||||
@ApiModelProperty("劳务单位")
|
||||
private String companyName;
|
||||
|
||||
@ApiModelProperty("员工类型")
|
||||
private String workerType;
|
||||
|
||||
}
|
||||
@ -0,0 +1,27 @@
|
||||
package com.ruoyi.fbs.domain.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* 包工头项目任务进度对象 bgt_project_task_progress
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2025-02-18
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("App包工头项目详情-任务进度视图对象")
|
||||
public class FbsProjectTaskDetailProgressVO{
|
||||
|
||||
@ApiModelProperty("总进度")
|
||||
private Integer totalProgress = 0;
|
||||
|
||||
@ApiModelProperty("进度")
|
||||
private Integer progress = 0;
|
||||
|
||||
}
|
||||
@ -0,0 +1,36 @@
|
||||
package com.ruoyi.fbs.domain.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 包工头项目任务进度对象 bgt_project_task_progress
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2025-02-18
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("App包工头项目详情-结算情况视图对象")
|
||||
public class FbsProjectTaskDetailWageVO {
|
||||
|
||||
@ApiModelProperty("总金额")
|
||||
private BigDecimal totalAmount;
|
||||
|
||||
@ApiModelProperty("接收金额")
|
||||
private BigDecimal receiveAmount;
|
||||
|
||||
@ApiModelProperty("支付金额")
|
||||
private BigDecimal payAmount;
|
||||
|
||||
@ApiModelProperty("支付总金额")
|
||||
private BigDecimal payTotalAmount;
|
||||
|
||||
|
||||
}
|
||||
@ -80,4 +80,9 @@ public interface IFbsProjectTaskApplyService extends IServicePlus<FbsProjectTask
|
||||
* 分包商选择包工头
|
||||
*/
|
||||
Boolean choose(Long id);
|
||||
|
||||
/**
|
||||
* 获取包工头该任务的最新申请
|
||||
*/
|
||||
FbsProjectTaskApply getApplyByTaskId(Long taskId);
|
||||
}
|
||||
|
||||
@ -58,4 +58,9 @@ public interface IFbsWageApplicationService extends IServicePlus<FbsWageApplicat
|
||||
* 查询列表
|
||||
*/
|
||||
TableDataInfo<FbsWageApplication> record(FbsWageApplicationListDTO dto);
|
||||
|
||||
/**
|
||||
* 获取分包下先已审核通过的数据
|
||||
*/
|
||||
List<FbsWageApplication> getPassListBySubIds(List<Long> subIds);
|
||||
}
|
||||
|
||||
@ -2,6 +2,7 @@ package com.ruoyi.fbs.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@ -223,9 +224,17 @@ public class FbsProjectTaskApplyServiceImpl extends ServicePlusImpl<FbsProjectTa
|
||||
throw new BaseException("该申请已取消");
|
||||
}
|
||||
FbsProjectTask task = taskService.getById(taskApply.getTaskId());
|
||||
if(task!=null && task.getUserId()!=null){
|
||||
if(task == null){
|
||||
throw new BaseException("该任务不存在");
|
||||
}
|
||||
if(task.getUserId()!=null){
|
||||
throw new BaseException("该任务已被承接");
|
||||
}
|
||||
if("0".equals(task.getStatus())){
|
||||
task.setStatus("1");
|
||||
}
|
||||
task.setUserId(taskApply.getUserId());
|
||||
taskService.updateById(task);
|
||||
|
||||
//拒绝其余包工头
|
||||
LambdaQueryWrapper<FbsProjectTaskApply> wrapper = new LambdaQueryWrapper<>();
|
||||
@ -267,4 +276,14 @@ public class FbsProjectTaskApplyServiceImpl extends ServicePlusImpl<FbsProjectTa
|
||||
fbsMessageService.operationBatch(USERTYPE_FBS,SecurityUtils.getAppUserId(),list.stream().map(FbsProjectTaskApply::getId).collect(Collectors.toList()),SqlHelper.table(FbsProjectTaskApply.class).getTableName());
|
||||
return super.updateBatchById(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public FbsProjectTaskApply getApplyByTaskId(Long taskId) {
|
||||
LambdaQueryWrapper<FbsProjectTaskApply> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(FbsProjectTaskApply::getTaskId, taskId);
|
||||
wrapper.eq(FbsProjectTaskApply::getUserId, SecurityUtils.getAppUserId());
|
||||
wrapper.orderByDesc(FbsProjectTaskApply::getId);
|
||||
List<FbsProjectTaskApply> list = list(wrapper);
|
||||
return CollectionUtil.isEmpty(list)?null:list.get(0);
|
||||
}
|
||||
}
|
||||
|
||||
@ -354,6 +354,9 @@ public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMap
|
||||
public FbsTaskDetailWageVO fbsWage(Long id) {
|
||||
FbsTaskDetailWageVO fbsTaskDetailWageVO = new FbsTaskDetailWageVO();
|
||||
|
||||
FbsProjectTask task = getById(id);
|
||||
fbsTaskDetailWageVO.setTaskAmount(task.getTaskAmount());
|
||||
|
||||
List<BgtWageApplication> wageList = wageApplicationService.list(Wrappers.<BgtWageApplication>lambdaQuery()
|
||||
.eq(BgtWageApplication::getTaskId, id).orderByDesc(BgtWageApplication::getId));
|
||||
|
||||
|
||||
@ -24,10 +24,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
|
||||
import static com.ruoyi.common.constants.BgtMessageConstant.HEADLINE;
|
||||
import static com.ruoyi.common.constants.BgtMessageConstant.SUBHEADING;
|
||||
@ -153,4 +150,12 @@ public class FbsWageApplicationServiceImpl extends ServicePlusImpl<FbsWageApplic
|
||||
Page<FbsWageApplication> result = page(PageUtils.buildPage(), wrapper);
|
||||
return PageUtils.buildDataInfo(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<FbsWageApplication> getPassListBySubIds(List<Long> subIds) {
|
||||
LambdaQueryWrapper<FbsWageApplication> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(FbsWageApplication::getSubId, subIds)
|
||||
.eq(FbsWageApplication::getAuditStatus, AuditStatus.PASS.getCode());
|
||||
return list(wrapper);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user