This commit is contained in:
zt
2025-04-03 11:42:05 +08:00
parent bd4b8f4b28
commit 7059394761
11 changed files with 116 additions and 6 deletions

View File

@ -3,6 +3,7 @@ package com.ruoyi.web.controller.fbs;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.fbs.domain.dto.FbsProgressListDTO;
import com.ruoyi.fbs.domain.dto.FbsProjectListDTO;
import com.ruoyi.fbs.domain.vo.*;
import com.ruoyi.zbf.service.IZbfProjectService;
@ -102,6 +103,12 @@ public class AppFbsProjectController extends BaseController {
return AjaxResult.success(zbfProjectService.fbsProgress(projectId));
}
@ApiOperation("分包商查询项目详情-用工进度列表")
@GetMapping("/progressList")
public TableDataInfo<FbsProgressListVO> fbsProgressList(FbsProgressListDTO dto) {
return zbfProjectService.fbsProgressList(dto);
}
@ApiOperation("分包商查询项目详情-结算情况")
@GetMapping("/wage")
public AjaxResult<FbsProjectTaskDetailWageVO> fbsWage(Long projectId) {

View File

@ -9,6 +9,7 @@ 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.ZbfUser;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.fbs.domain.FbsWageApplication;
@ -16,6 +17,9 @@ import com.ruoyi.fbs.domain.dto.FbsWageApplicationListDTO;
import com.ruoyi.fbs.domain.dto.FbsWageAuditDTO;
import com.ruoyi.fbs.domain.dto.FbsWageAuditListDTO;
import com.ruoyi.fbs.service.IFbsWageApplicationService;
import com.ruoyi.zbf.domain.ZbfProject;
import com.ruoyi.zbf.service.IZbfProjectService;
import com.ruoyi.zbf.service.IZbfUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
@ -39,6 +43,8 @@ public class AppFbsWageApplicationController extends BaseController {
private final IFbsWageApplicationService iFbsWageApplicationService;
private final IBgtWageApplicationService iBgtWageApplicationService;
private final IZbfUserService iZbfUserService;
private final IZbfProjectService iZbfProjectService;
@ApiOperation("分包商查询自己的工资申请列表")
@GetMapping("/list")
@ -58,9 +64,10 @@ public class AppFbsWageApplicationController extends BaseController {
@RepeatSubmit
@PostMapping()
public AjaxResult<Boolean> add(@Validated @RequestBody FbsWageApplication bo) {
// ZbfProject byId = iZbfProjectService.getById(bo.getProjectId());
//
// bo.setReviewerName(byId.getUnitName())
ZbfProject project = iZbfProjectService.getById(bo.getProjectId());
ZbfUser zbfUser = iZbfUserService.selectUserByUserId(project.getUserId());
bo.setReviewerName(zbfUser.getUsername());
bo.setReviewerId(zbfUser.getUserId());
return AjaxResult.success(iFbsWageApplicationService.insert(bo));
}

View File

@ -23,5 +23,9 @@ public interface BgtProjectTaskProgressMapper extends BaseMapperPlus<BgtProjectT
Page<BgtProjectTaskProgressVO> appQueryPageList(@Param("page") Page<BgtProjectTaskProgressQueryDTO> page, @Param("dto") BgtProjectTaskProgressQueryDTO dto);
//根据Id查询任务最新进度
List<BgtProjectTaskProgress> getProgressByTaskIds(@Param("taskIds") List<Long> taskIds);
//根据项目Id查询任务最新进度
Page<BgtProjectTaskProgress> getProgressByTaskIds(@Param("page") Page<Long> page, @Param("taskIds") List<Long> taskIds);
}

View File

@ -76,9 +76,13 @@ public interface IBgtProjectTaskProgressService extends IServicePlus<BgtProjectT
Boolean fbsAudit(BgtProjectTaskProgress bo);
/**
* 根据Id查询任务最新进度
* 根据任务Id查询任务最新进度-列表
*/
List<BgtProjectTaskProgress> getProgressByTaskIds(List<Long> taskIds);
/**
* 根据任务Id查询任务最新进度-分页
*/
TableDataInfo<BgtProjectTaskProgress> getProgressByTaskIds(Integer pageSize, Integer pageNum,List<Long> taskIds);
}

View File

@ -138,8 +138,11 @@ public class BgtProjectTaskProgressServiceImpl extends ServicePlusImpl<BgtProjec
*/
private void validEntityBeforeSave(BgtProjectTaskProgress entity){
Integer lastProgress = getLastProgress(entity.getTaskId());
if(lastProgress>entity.getProgress()){
throw new BaseException("当前进度不能小于上一个进度");
if(lastProgress>=entity.getProgress()){
throw new BaseException("当前进度不能小于等于上一个进度");
}
if(lastProgress==100){
throw new BaseException("进度已满");
}
}
@ -210,4 +213,13 @@ public class BgtProjectTaskProgressServiceImpl extends ServicePlusImpl<BgtProjec
public List<BgtProjectTaskProgress> getProgressByTaskIds(List<Long> taskIds) {
return baseMapper.getProgressByTaskIds(taskIds);
}
@Override
public TableDataInfo<BgtProjectTaskProgress> getProgressByTaskIds(Integer pageSize, Integer pageNum,List<Long> taskIds) {
Page<Long> queryDTOPage = new Page<>();
queryDTOPage.setCurrent(pageNum);
queryDTOPage.setSize(pageSize);
Page<BgtProjectTaskProgress> queryVOPage = baseMapper.getProgressByTaskIds(queryDTOPage, taskIds);
return PageUtils.buildDataInfo(queryVOPage);
}
}

View File

@ -0,0 +1,21 @@
package com.ruoyi.fbs.domain.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
@Data
@Accessors(chain = true)
@ApiModel("分包商任务进度列表查询对象")
public class FbsProgressListDTO {
/** 分页大小 */
@ApiModelProperty("分页大小")
private Integer pageSize;
/** 当前页数 */
@ApiModelProperty("当前页数")
private Integer pageNum;
@ApiModelProperty("项目ID")
private Long projectId;
}

View File

@ -0,0 +1,21 @@
package com.ruoyi.fbs.domain.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
@Data
@Accessors(chain = true)
@ApiModel("分包商任务进度列表试图对象")
public class FbsProgressListVO {
@ApiModelProperty("主键ID")
private Long id;
@ApiModelProperty("进度")
private Integer progress;
@ApiModelProperty("项目名称")
private String taskName;
}

View File

@ -3,6 +3,7 @@ package com.ruoyi.zbf.service;
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.fbs.domain.dto.FbsProgressListDTO;
import com.ruoyi.fbs.domain.dto.FbsProjectListDTO;
import com.ruoyi.fbs.domain.vo.*;
import com.ruoyi.zbf.bo.ZbfProjectQueryBo;
@ -115,6 +116,11 @@ public interface IZbfProjectService extends IServicePlus<ZbfProject> {
*/
FbsProjectTaskDetailProgressVO fbsProgress(Long projectId);
/**
* 分包商查询项目详情-用工进度列表
*/
TableDataInfo<FbsProgressListVO> fbsProgressList(FbsProgressListDTO dto);
/**
* 分包商查询项目详情-结算情况
*/

View File

@ -57,4 +57,9 @@ public interface IZbfUserService extends IServicePlus<ZbfUser> {
* 通过电话查询用户
*/
ZbfUser selectUserByPhone(String phone);
/**
* 通过userId查询用户
*/
ZbfUser selectUserByUserId(Long userId);
}

View File

@ -18,6 +18,7 @@ import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.fbs.domain.FbsProjectTask;
import com.ruoyi.fbs.domain.FbsWageApplication;
import com.ruoyi.fbs.domain.dto.FbsProgressListDTO;
import com.ruoyi.fbs.domain.dto.FbsProjectListDTO;
import com.ruoyi.fbs.domain.vo.*;
import com.ruoyi.fbs.service.IFbsProjectTaskService;
@ -506,6 +507,23 @@ public class ZbfProjectServiceImpl extends ServicePlusImpl<ZbfProjectMapper, Zbf
return vo;
}
@Override
public TableDataInfo<FbsProgressListVO> fbsProgressList(FbsProgressListDTO dto) {
Page<FbsProgressListVO> fbsProgressListVOPage = new Page<>();
//查询所有创建的任务
List<FbsProjectTask> taskList = fbsProjectTaskService.list(Wrappers.<FbsProjectTask>lambdaQuery()
.eq(FbsProjectTask::getCreateId, SecurityUtils.getAppUserId())
.eq(FbsProjectTask::getProjectId, dto)
);
List<Long> taskIds = taskList.stream().map(FbsProjectTask::getId).collect(Collectors.toList());
if(CollectionUtil.isNotEmpty(taskIds)){
TableDataInfo<BgtProjectTaskProgress> progressByTaskIds = bgtProjectTaskProgressService.getProgressByTaskIds(dto.getPageSize(), dto.getPageNum(), taskIds);
fbsProgressListVOPage.setTotal(progressByTaskIds.getTotal());
fbsProgressListVOPage.setRecords(BeanUtil.copyToList(progressByTaskIds.getRows(), FbsProgressListVO.class));
}
return PageUtils.buildDataInfo(fbsProgressListVOPage);
}
@Override
public FbsProjectTaskDetailWageVO fbsWage(Long projectId) {
FbsProjectTaskDetailWageVO vo = new FbsProjectTaskDetailWageVO();

View File

@ -102,4 +102,9 @@ public class ZbfUserServiceImpl extends ServicePlusImpl<ZbfUserMapper, ZbfUser>
public ZbfUser selectUserByPhone(String phone) {
return baseMapper.selectOne(new LambdaQueryWrapper<ZbfUser>().eq(ZbfUser::getPhone, phone));
}
@Override
public ZbfUser selectUserByUserId(Long userId) {
return baseMapper.selectOne(new LambdaQueryWrapper<ZbfUser>().eq(ZbfUser::getUserId, userId));
}
}