任务
This commit is contained in:
@ -24,114 +24,160 @@ import java.time.LocalDateTime;
|
||||
@ApiModel("包工头招工视图对象")
|
||||
public class BgtProjectRecruit implements Serializable {
|
||||
|
||||
private static final long serialVersionUID=1L;
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/** 主键ID */
|
||||
@ApiModelProperty("主键ID")
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@ApiModelProperty("主键ID")
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
private Long id;
|
||||
private Long id;
|
||||
|
||||
/** 项目ID */
|
||||
@Excel(name = "项目ID")
|
||||
@ApiModelProperty("项目ID")
|
||||
private Long projectId;
|
||||
/**
|
||||
* 项目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 sectionId;
|
||||
|
||||
/** 分包ID */
|
||||
@Excel(name = "分包ID")
|
||||
@ApiModelProperty("分包ID")
|
||||
private Long subId;
|
||||
/**
|
||||
* 分包ID
|
||||
*/
|
||||
@Excel(name = "分包ID")
|
||||
@ApiModelProperty("分包ID")
|
||||
private Long subId;
|
||||
|
||||
/** 任务ID */
|
||||
@Excel(name = "任务ID")
|
||||
@ApiModelProperty("任务ID")
|
||||
private Long taskId;
|
||||
/**
|
||||
* 任务ID
|
||||
*/
|
||||
@Excel(name = "任务ID")
|
||||
@ApiModelProperty("任务ID")
|
||||
private Long taskId;
|
||||
|
||||
/** 招工名称 */
|
||||
@Excel(name = "招工名称")
|
||||
@ApiModelProperty("招工名称")
|
||||
private String recruitName;
|
||||
/**
|
||||
* 招工名称
|
||||
*/
|
||||
@Excel(name = "招工名称")
|
||||
@ApiModelProperty("招工名称")
|
||||
private String recruitName;
|
||||
|
||||
/** 招工地址 */
|
||||
@Excel(name = "招工地址")
|
||||
@ApiModelProperty("招工地址")
|
||||
private String recruitAddress;
|
||||
/**
|
||||
* 招工地址
|
||||
*/
|
||||
@Excel(name = "招工地址")
|
||||
@ApiModelProperty("招工地址")
|
||||
private String recruitAddress;
|
||||
|
||||
/** 招工金额 */
|
||||
@Excel(name = "招工金额")
|
||||
@ApiModelProperty("招工金额")
|
||||
private Long recruitAmount;
|
||||
/**
|
||||
* 招工金额
|
||||
*/
|
||||
@Excel(name = "招工金额")
|
||||
@ApiModelProperty("招工金额")
|
||||
private Long recruitAmount;
|
||||
|
||||
/** 招工数量 */
|
||||
@Excel(name = "招工数量")
|
||||
@ApiModelProperty("招工数量")
|
||||
private Long recruitStaffNum;
|
||||
/**
|
||||
* 招工数量
|
||||
*/
|
||||
@Excel(name = "招工数量")
|
||||
@ApiModelProperty("招工数量")
|
||||
private Long recruitStaffNum;
|
||||
|
||||
/** 招工开始时间 */
|
||||
@Excel(name = "招工开始时间")
|
||||
@ApiModelProperty("招工开始时间")
|
||||
private String recruitBeginTime;
|
||||
/**
|
||||
* 招工开始时间
|
||||
*/
|
||||
@Excel(name = "招工开始时间")
|
||||
@ApiModelProperty("招工开始时间")
|
||||
private String recruitBeginTime;
|
||||
|
||||
/** 联系人 */
|
||||
@Excel(name = "联系人")
|
||||
@ApiModelProperty("联系人")
|
||||
private String recruitContactPerson;
|
||||
/**
|
||||
* 联系人
|
||||
*/
|
||||
@Excel(name = "联系人")
|
||||
@ApiModelProperty("联系人")
|
||||
private String recruitContactPerson;
|
||||
|
||||
/** 联系电话 */
|
||||
@Excel(name = "联系电话")
|
||||
@ApiModelProperty("联系电话")
|
||||
private String recruitContactPhone;
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
@Excel(name = "联系电话")
|
||||
@ApiModelProperty("联系电话")
|
||||
private String recruitContactPhone;
|
||||
|
||||
/** 招工描述 */
|
||||
@Excel(name = "招工描述")
|
||||
@ApiModelProperty("招工描述")
|
||||
private String subDescribe;
|
||||
/**
|
||||
* 招工描述
|
||||
*/
|
||||
@Excel(name = "招工描述")
|
||||
@ApiModelProperty("招工描述")
|
||||
private String subDescribe;
|
||||
|
||||
/** 招工要求 */
|
||||
@Excel(name = "招工要求")
|
||||
@ApiModelProperty("招工要求")
|
||||
private String recruitRequirement;
|
||||
/**
|
||||
* 招工要求
|
||||
*/
|
||||
@Excel(name = "招工要求")
|
||||
@ApiModelProperty("招工要求")
|
||||
private String recruitRequirement;
|
||||
|
||||
@ApiModelProperty("上班时间")
|
||||
private String beginWorkTime;
|
||||
|
||||
@ApiModelProperty("下班时间")
|
||||
private String endWorkTime;
|
||||
|
||||
@ApiModelProperty("创建者ID")
|
||||
private Long userId;
|
||||
|
||||
/** 删除标志(0代表存在 2代表删除) */
|
||||
@Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除")
|
||||
@ApiModelProperty("删除标志(0代表存在 2代表删除)")
|
||||
/**
|
||||
* 删除标志(0代表存在 2代表删除)
|
||||
*/
|
||||
@Excel(name = "删除标志", readConverterExp = "0=代表存在,2=代表删除")
|
||||
@ApiModelProperty("删除标志(0代表存在 2代表删除)")
|
||||
// @TableLogic
|
||||
private String delFlag;
|
||||
private String delFlag;
|
||||
|
||||
/** 创建者 */
|
||||
@Excel(name = "创建者")
|
||||
@ApiModelProperty("创建者")
|
||||
@TableField(fill = FieldFill.INSERT)
|
||||
private String createBy;
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
@Excel(name = "创建者")
|
||||
@ApiModelProperty("创建者")
|
||||
@TableField(fill = FieldFill.INSERT)
|
||||
private String createBy;
|
||||
|
||||
/** 创建时间 */
|
||||
@Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty("创建时间")
|
||||
@TableField(fill = FieldFill.INSERT)
|
||||
private LocalDateTime createTime;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty("创建时间")
|
||||
@TableField(fill = FieldFill.INSERT)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/** 更新者 */
|
||||
@Excel(name = "更新者")
|
||||
@ApiModelProperty("更新者")
|
||||
@TableField(fill = FieldFill.INSERT_UPDATE)
|
||||
private String updateBy;
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
@Excel(name = "更新者")
|
||||
@ApiModelProperty("更新者")
|
||||
@TableField(fill = FieldFill.INSERT_UPDATE)
|
||||
private String updateBy;
|
||||
|
||||
/** 更新时间 */
|
||||
@Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty("更新时间")
|
||||
@TableField(fill = FieldFill.INSERT_UPDATE)
|
||||
private LocalDateTime updateTime;
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty("更新时间")
|
||||
@TableField(fill = FieldFill.INSERT_UPDATE)
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
/** 备注 */
|
||||
@Excel(name = "备注")
|
||||
@ApiModelProperty("备注")
|
||||
private String remark;
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Excel(name = "备注")
|
||||
@ApiModelProperty("备注")
|
||||
private String remark;
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,36 @@
|
||||
package com.ruoyi.bgt.domain.dto;
|
||||
|
||||
import com.ruoyi.common.domain.dto.AnnexDTO;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 包工头招工申请对象 bgt_project_recruit_apply
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2025-02-18
|
||||
*/
|
||||
@Data
|
||||
@ApiModel("包工头同意申请对象")
|
||||
public class BgtProjectRecruitApplyConsentDTO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
/** 主键ID */
|
||||
@ApiModelProperty("主键ID")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("进场时间")
|
||||
private String entryTime;
|
||||
|
||||
@ApiModelProperty("入场材料")
|
||||
List<AnnexDTO> entryMaterials;
|
||||
|
||||
@ApiModelProperty("保险")
|
||||
List<AnnexDTO> insurances;
|
||||
|
||||
}
|
@ -6,16 +6,17 @@ import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ApiModel("包工头招工申请列表查询对象")
|
||||
public class BgtProjectRecruitApplyQueryDTO extends BaseEntity {
|
||||
|
||||
@ApiModelProperty("招工ID")
|
||||
@NotNull(message = "招工ID不能为空")
|
||||
private Long recruitId;
|
||||
@ApiModelProperty("招工ID列表")
|
||||
@NotEmpty(message = "招工ID列表不能为空")
|
||||
private List<Long> recruitIds;
|
||||
|
||||
@ApiModelProperty("选择状态(0未选择 1已选择)")
|
||||
private String status;
|
||||
|
@ -22,6 +22,9 @@ public class BgtProjectRecruitApplyVO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
@ApiModelProperty("主键ID")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("务工者用户ID")
|
||||
private Long userId;
|
||||
|
||||
|
@ -2,6 +2,7 @@ package com.ruoyi.bgt.service;
|
||||
|
||||
import com.ruoyi.bgt.bo.BgtProjectRecruitApplyQueryBo;
|
||||
import com.ruoyi.bgt.domain.BgtProjectRecruitApply;
|
||||
import com.ruoyi.bgt.domain.dto.BgtProjectRecruitApplyConsentDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtProjectRecruitApplyQueryDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO;
|
||||
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
|
||||
@ -72,4 +73,9 @@ public interface IBgtProjectRecruitApplyService extends IServicePlus<BgtProjectR
|
||||
*/
|
||||
BgtProjectRecruitApply selectByUserIdProjectRecruitApplyId(Long id);
|
||||
|
||||
/**
|
||||
* 同意申请
|
||||
*/
|
||||
Boolean consent(BgtProjectRecruitApplyConsentDTO dto);
|
||||
|
||||
}
|
||||
|
@ -1,19 +1,26 @@
|
||||
package com.ruoyi.bgt.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
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;
|
||||
import com.ruoyi.bgt.bo.BgtProjectRecruitApplyQueryBo;
|
||||
import com.ruoyi.bgt.domain.BgtProjectRecruitApply;
|
||||
import com.ruoyi.bgt.domain.dto.BgtProjectRecruitApplyConsentDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtProjectRecruitApplyQueryDTO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO;
|
||||
import com.ruoyi.bgt.mapper.BgtProjectRecruitApplyMapper;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitApplyService;
|
||||
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.RecruitApplyStatus;
|
||||
import com.ruoyi.common.exception.BaseException;
|
||||
import com.ruoyi.common.service.IAnnexService;
|
||||
import com.ruoyi.common.utils.PageUtils;
|
||||
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.List;
|
||||
@ -28,6 +35,10 @@ import java.util.Map;
|
||||
@Service
|
||||
public class BgtProjectRecruitApplyServiceImpl extends ServicePlusImpl<BgtProjectRecruitApplyMapper, BgtProjectRecruitApply> implements IBgtProjectRecruitApplyService {
|
||||
|
||||
|
||||
@Autowired
|
||||
private IAnnexService annexService;
|
||||
|
||||
@Override
|
||||
public BgtProjectRecruitApply queryById(Long id){
|
||||
return getById(id);
|
||||
@ -88,6 +99,27 @@ public class BgtProjectRecruitApplyServiceImpl extends ServicePlusImpl<BgtProjec
|
||||
return baseMapper.appQueryList(dto);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean consent(BgtProjectRecruitApplyConsentDTO dto) {
|
||||
|
||||
BgtProjectRecruitApply recruitApply = getById(dto.getId());
|
||||
List<BgtProjectRecruitApply> list = baseMapper.selectList(Wrappers.<BgtProjectRecruitApply>lambdaQuery()
|
||||
.eq(BgtProjectRecruitApply::getUserId, recruitApply.getUserId())
|
||||
.eq(BgtProjectRecruitApply::getStatus,RecruitApplyStatus.PASS.getCode())
|
||||
.isNotNull(BgtProjectRecruitApply::getLeaveTime));
|
||||
|
||||
if(CollectionUtil.isNotEmpty(list)){
|
||||
throw new BaseException("该务工者已进入其他工地");
|
||||
}
|
||||
recruitApply.setEntryTime(dto.getEntryTime());
|
||||
recruitApply.setStatus(RecruitApplyStatus.PASS.getCode());
|
||||
dto.getEntryMaterials().addAll(dto.getInsurances());
|
||||
annexService.insertBatch(dto.getEntryMaterials());
|
||||
return updateById(recruitApply);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* LC-APP相关
|
||||
|
@ -23,9 +23,7 @@ import com.ruoyi.fbs.service.IFbsProjectTaskService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 包工头招工Service业务层处理
|
||||
@ -39,7 +37,6 @@ public class BgtProjectRecruitServiceImpl extends ServicePlusImpl<BgtProjectRecr
|
||||
@Autowired
|
||||
private IFbsProjectTaskService fbsProjectTaskService;
|
||||
|
||||
|
||||
@Autowired
|
||||
private IBgtProjectRecruitApplyService bgtProjectRecruitApplyService;
|
||||
|
||||
@ -118,7 +115,7 @@ public class BgtProjectRecruitServiceImpl extends ServicePlusImpl<BgtProjectRecr
|
||||
Page<BgtProjectRecruitVO> queryVOPage = baseMapper.appQueryPageList(queryDTOPage, dto);
|
||||
for(BgtProjectRecruitVO vo : queryVOPage.getRecords()) {
|
||||
BgtProjectRecruitApplyQueryDTO bgtProjectRecruitApplyQueryDTO = new BgtProjectRecruitApplyQueryDTO();
|
||||
bgtProjectRecruitApplyQueryDTO.setRecruitId(vo.getId());
|
||||
bgtProjectRecruitApplyQueryDTO.setRecruitIds(Collections.singletonList(vo.getId()));
|
||||
bgtProjectRecruitApplyQueryDTO.setStatus(dto.getStatus());
|
||||
vo.setApplylist(bgtProjectRecruitApplyService.appQueryList(bgtProjectRecruitApplyQueryDTO));
|
||||
}
|
||||
@ -132,11 +129,10 @@ public class BgtProjectRecruitServiceImpl extends ServicePlusImpl<BgtProjectRecr
|
||||
FbsProjectTask task = fbsProjectTaskService.getById(vo.getTaskId());
|
||||
vo.setTaskName(task.getTaskName());
|
||||
BgtProjectRecruitApplyQueryDTO bgtProjectRecruitApplyQueryDTO = new BgtProjectRecruitApplyQueryDTO();
|
||||
bgtProjectRecruitApplyQueryDTO.setRecruitId(vo.getId());
|
||||
bgtProjectRecruitApplyQueryDTO.setRecruitIds(Collections.singletonList(vo.getId()));
|
||||
bgtProjectRecruitApplyQueryDTO.setStatus(RecruitApplyStatus.TO_PASS.getCode());
|
||||
vo.setApplylist(bgtProjectRecruitApplyService.appQueryList(bgtProjectRecruitApplyQueryDTO));
|
||||
|
||||
return null;
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user