[add] 查询进度填报详情
This commit is contained in:
		@ -10,9 +10,11 @@ import org.dromara.common.mybatis.core.page.TableDataInfo;
 | 
			
		||||
import org.dromara.common.web.core.BaseController;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailFinishedCreateReq;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailPercentageCreateReq;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailQueryReq;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailRemoveReq;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailFinishedVo;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailUnFinishVo;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailVo;
 | 
			
		||||
import org.dromara.progress.service.IPgsProgressPlanDetailService;
 | 
			
		||||
import org.springframework.validation.annotation.Validated;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
@ -31,6 +33,15 @@ public class PgsProgressPlanDetailController extends BaseController {
 | 
			
		||||
    @Resource
 | 
			
		||||
    private IPgsProgressPlanDetailService pgsProgressPlanDetailService;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 查询进度计划详情列表
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("progress:progressPlanDetail:list")
 | 
			
		||||
    @GetMapping("/list")
 | 
			
		||||
    public TableDataInfo<PgsProgressPlanDetailVo> list(PgsProgressPlanDetailQueryReq req, PageQuery pageQuery){
 | 
			
		||||
        return pgsProgressPlanDetailService.queryPageList(req, pageQuery);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 新增进度计划详情(普通设施)
 | 
			
		||||
     */
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,32 @@
 | 
			
		||||
package org.dromara.progress.domain.dto.progressplandetail;
 | 
			
		||||
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
 | 
			
		||||
import java.io.Serial;
 | 
			
		||||
import java.io.Serializable;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @author lilemy
 | 
			
		||||
 * @date 2025-07-31 18:59
 | 
			
		||||
 */
 | 
			
		||||
@Data
 | 
			
		||||
public class PgsProgressPlanDetailQueryReq implements Serializable {
 | 
			
		||||
 | 
			
		||||
    @Serial
 | 
			
		||||
    private static final long serialVersionUID = -1135087412952022463L;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 项目id
 | 
			
		||||
     */
 | 
			
		||||
    private Long projectId;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 进度计划id
 | 
			
		||||
     */
 | 
			
		||||
    private Long progressPlanId;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 进度类型id
 | 
			
		||||
     */
 | 
			
		||||
    private Long progressCategoryId;
 | 
			
		||||
}
 | 
			
		||||
@ -1,16 +1,16 @@
 | 
			
		||||
package org.dromara.progress.domain.vo.progressplandetail;
 | 
			
		||||
 | 
			
		||||
import java.math.BigDecimal;
 | 
			
		||||
import java.util.Date;
 | 
			
		||||
 | 
			
		||||
import org.dromara.progress.domain.PgsProgressPlanDetail;
 | 
			
		||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
 | 
			
		||||
import com.alibaba.excel.annotation.ExcelProperty;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonFormat;
 | 
			
		||||
import io.github.linpeilie.annotations.AutoMapper;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
import org.dromara.progress.domain.PgsProgressPlanDetail;
 | 
			
		||||
 | 
			
		||||
import java.io.Serial;
 | 
			
		||||
import java.io.Serializable;
 | 
			
		||||
import java.math.BigDecimal;
 | 
			
		||||
import java.util.Date;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
@ -49,6 +49,7 @@ public class PgsProgressPlanDetailVo implements Serializable {
 | 
			
		||||
     * 计划时间
 | 
			
		||||
     */
 | 
			
		||||
    @ExcelProperty(value = "计划时间")
 | 
			
		||||
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
 | 
			
		||||
    private Date date;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
 | 
			
		||||
@ -1,15 +1,19 @@
 | 
			
		||||
package org.dromara.progress.service;
 | 
			
		||||
 | 
			
		||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 | 
			
		||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 | 
			
		||||
import com.baomidou.mybatisplus.extension.service.IService;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
 | 
			
		||||
import org.dromara.progress.domain.PgsProgressPlanDetail;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailFinishedCreateReq;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailPercentageCreateReq;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailQueryReq;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailRemoveReq;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailFinishedVo;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailNumVo;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailUnFinishVo;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailVo;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@ -21,6 +25,15 @@ import java.util.List;
 | 
			
		||||
 */
 | 
			
		||||
public interface IPgsProgressPlanDetailService extends IService<PgsProgressPlanDetail> {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 分页查询进度计划详情列表
 | 
			
		||||
     *
 | 
			
		||||
     * @param req       查询进度计划详情参数
 | 
			
		||||
     * @param pageQuery 分页参数
 | 
			
		||||
     * @return 进度计划详情分页列表
 | 
			
		||||
     */
 | 
			
		||||
    TableDataInfo<PgsProgressPlanDetailVo> queryPageList(PgsProgressPlanDetailQueryReq req, PageQuery pageQuery);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 插入进度计划详情设施
 | 
			
		||||
     *
 | 
			
		||||
@ -71,4 +84,28 @@ public interface IPgsProgressPlanDetailService extends IService<PgsProgressPlanD
 | 
			
		||||
     */
 | 
			
		||||
    Boolean removeDetail(PgsProgressPlanDetailRemoveReq req);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 获取进度计划详情视图对象
 | 
			
		||||
     *
 | 
			
		||||
     * @param progressPlanDetail 进度计划详情对象
 | 
			
		||||
     * @return 进度计划详情视图对象
 | 
			
		||||
     */
 | 
			
		||||
    PgsProgressPlanDetailVo getVo(PgsProgressPlanDetail progressPlanDetail);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 获取进度计划详情查询条件封装
 | 
			
		||||
     *
 | 
			
		||||
     * @param req 查询条件
 | 
			
		||||
     * @return 查询条件封装
 | 
			
		||||
     */
 | 
			
		||||
    LambdaQueryWrapper<PgsProgressPlanDetail> buildQueryWrapper(PgsProgressPlanDetailQueryReq req);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 获取进度计划详情分页对象视图
 | 
			
		||||
     *
 | 
			
		||||
     * @param progressPlanDetailPage 进度计划详情分页对象
 | 
			
		||||
     * @return 进度计划分页详情对象视图
 | 
			
		||||
     */
 | 
			
		||||
    Page<PgsProgressPlanDetailVo> getVoPage(Page<PgsProgressPlanDetail> progressPlanDetailPage);
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 | 
			
		||||
import jakarta.annotation.Resource;
 | 
			
		||||
import org.dromara.common.core.constant.HttpStatus;
 | 
			
		||||
import org.dromara.common.core.exception.ServiceException;
 | 
			
		||||
import org.dromara.common.core.utils.ObjectUtils;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
 | 
			
		||||
import org.dromara.common.utils.PageConvertUtil;
 | 
			
		||||
@ -30,11 +31,13 @@ import org.dromara.progress.domain.PgsProgressPlan;
 | 
			
		||||
import org.dromara.progress.domain.PgsProgressPlanDetail;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailFinishedCreateReq;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailPercentageCreateReq;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailQueryReq;
 | 
			
		||||
import org.dromara.progress.domain.dto.progressplandetail.PgsProgressPlanDetailRemoveReq;
 | 
			
		||||
import org.dromara.progress.domain.enums.PgsFinishStatusEnum;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailFinishedVo;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailNumVo;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailUnFinishVo;
 | 
			
		||||
import org.dromara.progress.domain.vo.progressplandetail.PgsProgressPlanDetailVo;
 | 
			
		||||
import org.dromara.progress.mapper.PgsProgressPlanDetailMapper;
 | 
			
		||||
import org.dromara.progress.service.IPgsProgressCategoryService;
 | 
			
		||||
import org.dromara.progress.service.IPgsProgressPlanDetailService;
 | 
			
		||||
@ -78,6 +81,19 @@ public class PgsProgressPlanDetailServiceImpl extends ServiceImpl<PgsProgressPla
 | 
			
		||||
    @Resource
 | 
			
		||||
    private IFacPhotovoltaicPanelPartsService photovoltaicPanelPartsService;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 分页查询进度计划详情列表
 | 
			
		||||
     *
 | 
			
		||||
     * @param req       查询进度计划详情参数
 | 
			
		||||
     * @param pageQuery 分页参数
 | 
			
		||||
     * @return 进度计划详情分页列表
 | 
			
		||||
     */
 | 
			
		||||
    @Override
 | 
			
		||||
    public TableDataInfo<PgsProgressPlanDetailVo> queryPageList(PgsProgressPlanDetailQueryReq req, PageQuery pageQuery) {
 | 
			
		||||
        Page<PgsProgressPlanDetail> result = this.page(pageQuery.build(), this.buildQueryWrapper(req));
 | 
			
		||||
        return TableDataInfo.build(this.getVoPage(result));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 插入进度计划详情设施
 | 
			
		||||
     *
 | 
			
		||||
@ -491,6 +507,67 @@ public class PgsProgressPlanDetailServiceImpl extends ServiceImpl<PgsProgressPla
 | 
			
		||||
        return true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 获取进度计划详情视图对象
 | 
			
		||||
     *
 | 
			
		||||
     * @param progressPlanDetail 进度计划详情对象
 | 
			
		||||
     * @return 进度计划详情视图对象
 | 
			
		||||
     */
 | 
			
		||||
    @Override
 | 
			
		||||
    public PgsProgressPlanDetailVo getVo(PgsProgressPlanDetail progressPlanDetail) {
 | 
			
		||||
        PgsProgressPlanDetailVo vo = new PgsProgressPlanDetailVo();
 | 
			
		||||
        BeanUtils.copyProperties(progressPlanDetail, vo);
 | 
			
		||||
        return vo;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 获取进度计划详情查询条件封装
 | 
			
		||||
     *
 | 
			
		||||
     * @param req 查询条件
 | 
			
		||||
     * @return 查询条件封装
 | 
			
		||||
     */
 | 
			
		||||
    @Override
 | 
			
		||||
    public LambdaQueryWrapper<PgsProgressPlanDetail> buildQueryWrapper(PgsProgressPlanDetailQueryReq req) {
 | 
			
		||||
        LambdaQueryWrapper<PgsProgressPlanDetail> lqw = new LambdaQueryWrapper<>();
 | 
			
		||||
        if (req == null) {
 | 
			
		||||
            return lqw;
 | 
			
		||||
        }
 | 
			
		||||
        Long projectId = req.getProjectId();
 | 
			
		||||
        Long progressPlanId = req.getProgressPlanId();
 | 
			
		||||
        Long progressCategoryId = req.getProgressCategoryId();
 | 
			
		||||
        lqw.eq(ObjectUtils.isNotEmpty(projectId), PgsProgressPlanDetail::getProjectId, projectId);
 | 
			
		||||
        lqw.eq(ObjectUtils.isNotEmpty(progressPlanId), PgsProgressPlanDetail::getId, progressPlanId);
 | 
			
		||||
        lqw.eq(ObjectUtils.isNotEmpty(progressCategoryId), PgsProgressPlanDetail::getProgressCategoryId, progressCategoryId);
 | 
			
		||||
        return lqw;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 获取进度计划详情分页对象视图
 | 
			
		||||
     *
 | 
			
		||||
     * @param progressPlanDetailPage 进度计划详情分页对象
 | 
			
		||||
     * @return 进度计划分页详情对象视图
 | 
			
		||||
     */
 | 
			
		||||
    @Override
 | 
			
		||||
    public Page<PgsProgressPlanDetailVo> getVoPage(Page<PgsProgressPlanDetail> progressPlanDetailPage) {
 | 
			
		||||
        List<PgsProgressPlanDetail> progressPlanDetailList = progressPlanDetailPage.getRecords();
 | 
			
		||||
        Page<PgsProgressPlanDetailVo> progressPlanDetailVoPage = new Page<>(
 | 
			
		||||
            progressPlanDetailPage.getCurrent(),
 | 
			
		||||
            progressPlanDetailPage.getSize(),
 | 
			
		||||
            progressPlanDetailPage.getTotal());
 | 
			
		||||
        if (CollUtil.isEmpty(progressPlanDetailList)) {
 | 
			
		||||
            return progressPlanDetailVoPage;
 | 
			
		||||
        }
 | 
			
		||||
        List<PgsProgressPlanDetailVo> progressPlanDetailVoList = progressPlanDetailList.stream()
 | 
			
		||||
            .map(progressPlanDetail -> {
 | 
			
		||||
                PgsProgressPlanDetailVo progressPlanDetailVo = new PgsProgressPlanDetailVo();
 | 
			
		||||
                BeanUtils.copyProperties(progressPlanDetail, progressPlanDetailVo);
 | 
			
		||||
                return progressPlanDetailVo;
 | 
			
		||||
            })
 | 
			
		||||
            .toList();
 | 
			
		||||
        progressPlanDetailVoPage.setRecords(progressPlanDetailVoList);
 | 
			
		||||
        return progressPlanDetailVoPage;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 分页
 | 
			
		||||
     *
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user