From 833ea7af7d53e1e8100aa7b544e972f72ce349ca Mon Sep 17 00:00:00 2001 From: xiaozhou <536509503@qq.com> Date: Tue, 9 Dec 2025 14:33:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=87=E5=89=8D=E7=AE=A1=E7=90=86-=E9=A3=8E?= =?UTF-8?q?=E9=99=A9=E4=BF=A1=E6=81=AF=EF=BC=8C=E4=BA=BA=E5=91=98=E4=BB=BB?= =?UTF-8?q?=E5=91=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biaoqianlixiang/domain/XzdFxxxb.java | 66 +++++++ .../biaoqianlixiang/domain/bo/XzdFxxxbBo.java | 67 ++++++++ .../domain/bo/XzdProjectRiskAssessmentBo.java | 9 + .../biaoqianlixiang/domain/vo/XzdFxxxbVo.java | 80 +++++++++ .../domain/vo/XzdProjectRiskAssessmentVo.java | 8 + .../mapper/XzdFxxxbMapper.java | 15 ++ .../service/IXzdFxxxbService.java | 70 ++++++++ .../service/impl/XzdFxxxbServiceImpl.java | 136 +++++++++++++++ .../XzdProjectRiskAssessmentServiceImpl.java | 18 +- .../controller/XzdBqglRyrmController.java | 105 ++++++++++++ .../ryrm/domain/XzdBqglRyrm.java | 57 ++++++ .../ryrm/domain/XzdBqglRyrmRmxx.java | 46 +++++ .../ryrm/domain/bo/XzdBqglRyrmBo.java | 64 +++++++ .../ryrm/domain/bo/XzdBqglRyrmRmxxBo.java | 48 ++++++ .../ryrm/domain/vo/XzdBqglRyrmRmxxVo.java | 65 +++++++ .../ryrm/domain/vo/XzdBqglRyrmVo.java | 72 ++++++++ .../ryrm/mapper/XzdBqglRyrmMapper.java | 15 ++ .../ryrm/mapper/XzdBqglRyrmRmxxMapper.java | 15 ++ .../ryrm/service/IXzdBqglRyrmRmxxService.java | 70 ++++++++ .../ryrm/service/IXzdBqglRyrmService.java | 70 ++++++++ .../impl/XzdBqglRyrmRmxxServiceImpl.java | 133 ++++++++++++++ .../service/impl/XzdBqglRyrmServiceImpl.java | 162 ++++++++++++++++++ 22 files changed, 1390 insertions(+), 1 deletion(-) create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdFxxxb.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdFxxxbBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdFxxxbVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdFxxxbMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdFxxxbService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdFxxxbServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/controller/XzdBqglRyrmController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/XzdBqglRyrm.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/XzdBqglRyrmRmxx.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/bo/XzdBqglRyrmBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/bo/XzdBqglRyrmRmxxBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/vo/XzdBqglRyrmRmxxVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/vo/XzdBqglRyrmVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/mapper/XzdBqglRyrmMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/mapper/XzdBqglRyrmRmxxMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/IXzdBqglRyrmRmxxService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/IXzdBqglRyrmService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/impl/XzdBqglRyrmRmxxServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/impl/XzdBqglRyrmServiceImpl.java diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdFxxxb.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdFxxxb.java new file mode 100644 index 00000000..48bf43a4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdFxxxb.java @@ -0,0 +1,66 @@ +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; + +/** + * 项目风险评估-风险信息对象 xzd_fxxxb + * + * @author Lion Li + * @date 2025-12-09 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_fxxxb") +public class XzdFxxxb extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 主表id + */ + private Long masterId; + + /** + * 风险名称 + */ + private String riskName; + + /** + * 风险等级 + */ + private String riskLevel; + + /** + * 风险详细描述 + */ + private String riskDesc; + + /** + * 影响程度 + */ + private String impactDegree; + + /** + * 发生概率 + */ + private String occurProbability; + + /** + * 风险应对措施 + */ + private String responseMeasures; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdFxxxbBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdFxxxbBo.java new file mode 100644 index 00000000..cfde66b3 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdFxxxbBo.java @@ -0,0 +1,67 @@ +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo; + +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdFxxxb; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 项目风险评估-风险信息业务对象 xzd_fxxxb + * + * @author Lion Li + * @date 2025-12-09 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdFxxxb.class, reverseConvertGenerate = false) +public class XzdFxxxbBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 主表id + */ + private Long masterId; + + /** + * 风险名称 + */ + @NotBlank(message = "风险名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String riskName; + + /** + * 风险等级 + */ + @NotBlank(message = "风险等级不能为空", groups = { AddGroup.class, EditGroup.class }) + private String riskLevel; + + /** + * 风险详细描述 + */ + private String riskDesc; + + /** + * 影响程度 + */ + private String impactDegree; + + /** + * 发生概率 + */ + private String occurProbability; + + /** + * 风险应对措施 + */ + private String responseMeasures; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdProjectRiskAssessmentBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdProjectRiskAssessmentBo.java index 52c281f4..934d6eb5 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdProjectRiskAssessmentBo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdProjectRiskAssessmentBo.java @@ -7,8 +7,11 @@ import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import lombok.EqualsAndHashCode; import jakarta.validation.constraints.*; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdFxxxb; import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdProjectRiskAssessment; +import java.util.List; + /** * 项目风险评估签审意见业务对象 xzd_project_risk_assessment * @@ -119,4 +122,10 @@ public class XzdProjectRiskAssessmentBo extends BaseEntity { private String auditStatus; + /** + * 风险信息对象 + */ + private List fxxxbList; + + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdFxxxbVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdFxxxbVo.java new file mode 100644 index 00000000..4c9861cf --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdFxxxbVo.java @@ -0,0 +1,80 @@ +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo; + +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdFxxxb; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 项目风险评估-风险信息视图对象 xzd_fxxxb + * + * @author Lion Li + * @date 2025-12-09 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdFxxxb.class) +public class XzdFxxxbVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 主表id + */ + @ExcelProperty(value = "主表id") + private Long masterId; + + /** + * 风险名称 + */ + @ExcelProperty(value = "风险名称") + private String riskName; + + /** + * 风险等级 + */ + @ExcelProperty(value = "风险等级") + private String riskLevel; + + /** + * 风险详细描述 + */ + @ExcelProperty(value = "风险详细描述") + private String riskDesc; + + /** + * 影响程度 + */ + @ExcelProperty(value = "影响程度") + private String impactDegree; + + /** + * 发生概率 + */ + @ExcelProperty(value = "发生概率") + private String occurProbability; + + /** + * 风险应对措施 + */ + @ExcelProperty(value = "风险应对措施") + private String responseMeasures; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdProjectRiskAssessmentVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdProjectRiskAssessmentVo.java index d3f5f8e8..35d4ef96 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdProjectRiskAssessmentVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdProjectRiskAssessmentVo.java @@ -8,11 +8,13 @@ import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.common.translation.annotation.Translation; import org.dromara.common.translation.constant.TransConstant; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdFxxxb; import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdProjectRiskAssessment; import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; +import java.util.List; /** @@ -169,4 +171,10 @@ public class XzdProjectRiskAssessmentVo implements Serializable { @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "createBy") private String createByName; + + /** + * 风险信息对象 + */ + private List fxxxbList; + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdFxxxbMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdFxxxbMapper.java new file mode 100644 index 00000000..60bf575a --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdFxxxbMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper; + +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdFxxxb; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdFxxxbVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 项目风险评估-风险信息Mapper接口 + * + * @author Lion Li + * @date 2025-12-09 + */ +public interface XzdFxxxbMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdFxxxbService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdFxxxbService.java new file mode 100644 index 00000000..6cae7191 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdFxxxbService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.biddingManagement.biaoqianlixiang.service; + +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdFxxxbVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdFxxxbBo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdFxxxb; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import java.util.Collection; +import java.util.List; + +/** + * 项目风险评估-风险信息Service接口 + * + * @author Lion Li + * @date 2025-12-09 + */ +public interface IXzdFxxxbService extends IService{ + + /** + * 查询项目风险评估-风险信息 + * + * @param id 主键 + * @return 项目风险评估-风险信息 + */ + XzdFxxxbVo queryById(Long id); + + /** + * 分页查询项目风险评估-风险信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目风险评估-风险信息分页列表 + */ + TableDataInfo queryPageList(XzdFxxxbBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的项目风险评估-风险信息列表 + * + * @param bo 查询条件 + * @return 项目风险评估-风险信息列表 + */ + List queryList(XzdFxxxbBo bo); + + /** + * 新增项目风险评估-风险信息 + * + * @param bo 项目风险评估-风险信息 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdFxxxbBo bo); + + /** + * 修改项目风险评估-风险信息 + * + * @param bo 项目风险评估-风险信息 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdFxxxbBo bo); + + /** + * 校验并批量删除项目风险评估-风险信息信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdFxxxbServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdFxxxbServiceImpl.java new file mode 100644 index 00000000..7e486c40 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdFxxxbServiceImpl.java @@ -0,0 +1,136 @@ +package org.dromara.xzd.biddingManagement.biaoqianlixiang.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdFxxxbBo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdFxxxbVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdFxxxb; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper.XzdFxxxbMapper; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdFxxxbService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 项目风险评估-风险信息Service业务层处理 + * + * @author Lion Li + * @date 2025-12-09 + */ +@RequiredArgsConstructor +@Service +public class XzdFxxxbServiceImpl extends ServiceImpl implements IXzdFxxxbService { + + private final XzdFxxxbMapper baseMapper; + + /** + * 查询项目风险评估-风险信息 + * + * @param id 主键 + * @return 项目风险评估-风险信息 + */ + @Override + public XzdFxxxbVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询项目风险评估-风险信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目风险评估-风险信息分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdFxxxbBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的项目风险评估-风险信息列表 + * + * @param bo 查询条件 + * @return 项目风险评估-风险信息列表 + */ + @Override + public List queryList(XzdFxxxbBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdFxxxbBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdFxxxb::getId); + lqw.like(StringUtils.isNotBlank(bo.getRiskName()), XzdFxxxb::getRiskName, bo.getRiskName()); + lqw.eq(StringUtils.isNotBlank(bo.getRiskLevel()), XzdFxxxb::getRiskLevel, bo.getRiskLevel()); + lqw.eq(StringUtils.isNotBlank(bo.getRiskDesc()), XzdFxxxb::getRiskDesc, bo.getRiskDesc()); + lqw.eq(StringUtils.isNotBlank(bo.getImpactDegree()), XzdFxxxb::getImpactDegree, bo.getImpactDegree()); + lqw.eq(StringUtils.isNotBlank(bo.getOccurProbability()), XzdFxxxb::getOccurProbability, bo.getOccurProbability()); + lqw.eq(StringUtils.isNotBlank(bo.getResponseMeasures()), XzdFxxxb::getResponseMeasures, bo.getResponseMeasures()); + return lqw; + } + + /** + * 新增项目风险评估-风险信息 + * + * @param bo 项目风险评估-风险信息 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdFxxxbBo bo) { + XzdFxxxb add = MapstructUtils.convert(bo, XzdFxxxb.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改项目风险评估-风险信息 + * + * @param bo 项目风险评估-风险信息 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdFxxxbBo bo) { + XzdFxxxb update = MapstructUtils.convert(bo, XzdFxxxb.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdFxxxb entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除项目风险评估-风险信息信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdProjectRiskAssessmentServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdProjectRiskAssessmentServiceImpl.java index 31f5926a..b576a466 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdProjectRiskAssessmentServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdProjectRiskAssessmentServiceImpl.java @@ -15,6 +15,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import org.dromara.common.utils.BatchNumberGenerator; import org.dromara.system.service.impl.SysOssServiceImpl; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdFxxxb; import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdProjectRiskAssessment; import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdProjectRiskAssessmentBo; import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QuerListXzdBidPreVo; @@ -23,6 +24,7 @@ import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdProjectByV import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdProjectRiskAssessmentVo; import org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper.XzdProjectRiskAssessmentMapper; import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdBidPreProjectService; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdFxxxbService; import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdProjectRiskAssessmentService; import org.dromara.xzd.comprehensive.domain.XzdCsContractInformation; import org.dromara.xzd.utilS.AreaUtil; @@ -54,6 +56,8 @@ public class XzdProjectRiskAssessmentServiceImpl extends ServiceImpl xzdFxxxbs = fxxxbService.getBaseMapper().selectList(new LambdaQueryWrapper().eq(XzdFxxxb::getMasterId, vo.getId())); + vo.setFxxxbList(xzdFxxxbs); } @@ -167,6 +173,10 @@ public class XzdProjectRiskAssessmentServiceImpl extends ServiceImpl 0; + if (bo.getFxxxbList() != null && bo.getFxxxbList().size() > 0){ + bo.getFxxxbList().forEach(temp -> temp.setMasterId(add.getId())); + fxxxbService.saveBatch(bo.getFxxxbList()); + } if (flag) { bo.setId(add.getId()); } @@ -183,6 +193,12 @@ public class XzdProjectRiskAssessmentServiceImpl extends ServiceImpl().eq(XzdFxxxb::getMasterId, update.getId())); + if (bo.getFxxxbList() != null && bo.getFxxxbList().size() > 0){ + bo.getFxxxbList().forEach(temp -> temp.setMasterId(update.getId())); + fxxxbService.saveBatch(bo.getFxxxbList()); + } return baseMapper.updateById(update) > 0; } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/controller/XzdBqglRyrmController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/controller/XzdBqglRyrmController.java new file mode 100644 index 00000000..c3c44912 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/controller/XzdBqglRyrmController.java @@ -0,0 +1,105 @@ +package org.dromara.xzd.biddingManagement.ryrm.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.core.domain.R; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.xzd.biddingManagement.ryrm.domain.vo.XzdBqglRyrmVo; +import org.dromara.xzd.biddingManagement.ryrm.domain.bo.XzdBqglRyrmBo; +import org.dromara.xzd.biddingManagement.ryrm.service.IXzdBqglRyrmService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 标前管理-人员任命 + * + * @author Lion Li + * @date 2025-12-09 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/ryrm/bqglRyrm") +public class XzdBqglRyrmController extends BaseController { + + private final IXzdBqglRyrmService xzdBqglRyrmService; + + /** + * 查询标前管理-人员任命列表 + */ + @SaCheckPermission("ryrm:bqglRyrm:list") + @GetMapping("/list") + public TableDataInfo list(XzdBqglRyrmBo bo, PageQuery pageQuery) { + return xzdBqglRyrmService.queryPageList(bo, pageQuery); + } + + /** + * 导出标前管理-人员任命列表 + */ + @SaCheckPermission("ryrm:bqglRyrm:export") + @Log(title = "标前管理-人员任命", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdBqglRyrmBo bo, HttpServletResponse response) { + List list = xzdBqglRyrmService.queryList(bo); + ExcelUtil.exportExcel(list, "标前管理-人员任命", XzdBqglRyrmVo.class, response); + } + + /** + * 获取标前管理-人员任命详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("ryrm:bqglRyrm:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdBqglRyrmService.queryById(id)); + } + + /** + * 新增标前管理-人员任命 + */ + @SaCheckPermission("ryrm:bqglRyrm:add") + @Log(title = "标前管理-人员任命", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdBqglRyrmBo bo) { + return toAjax(xzdBqglRyrmService.insertByBo(bo)); + } + + /** + * 修改标前管理-人员任命 + */ + @SaCheckPermission("ryrm:bqglRyrm:edit") + @Log(title = "标前管理-人员任命", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdBqglRyrmBo bo) { + return toAjax(xzdBqglRyrmService.updateByBo(bo)); + } + + /** + * 删除标前管理-人员任命 + * + * @param ids 主键串 + */ + @SaCheckPermission("ryrm:bqglRyrm:remove") + @Log(title = "标前管理-人员任命", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdBqglRyrmService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/XzdBqglRyrm.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/XzdBqglRyrm.java new file mode 100644 index 00000000..a63712c1 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/XzdBqglRyrm.java @@ -0,0 +1,57 @@ +package org.dromara.xzd.biddingManagement.ryrm.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; +import java.time.LocalDate; + +/** + * 标前管理-人员任命对象 xzd_bqgl_ryrm + * + * @author Lion Li + * @date 2025-12-09 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_bqgl_ryrm") +public class XzdBqglRyrm extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 主表id(标前立项) + */ + private Long masterId; + + /** + * 项目名称 + */ + private String projectName; + + /** + * 项目编码 + */ + private String projectNumber; + + /** + * 项目类型 + */ + private Long projectTypeId; + + /** + * 单据日期 + */ + private LocalDate billDate; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/XzdBqglRyrmRmxx.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/XzdBqglRyrmRmxx.java new file mode 100644 index 00000000..e2f5e892 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/XzdBqglRyrmRmxx.java @@ -0,0 +1,46 @@ +package org.dromara.xzd.biddingManagement.ryrm.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; + +/** + * 标前管理-人员任命-任命信息对象 xzd_bqgl_ryrm_rmxx + * + * @author Lion Li + * @date 2025-12-09 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_bqgl_ryrm_rmxx") +public class XzdBqglRyrmRmxx extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 主表id(风险信息表) + */ + private Long masterId; + + /** + * 角色 + */ + private String jsId; + + /** + * 用户id + */ + private Long userId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/bo/XzdBqglRyrmBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/bo/XzdBqglRyrmBo.java new file mode 100644 index 00000000..257a0b75 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/bo/XzdBqglRyrmBo.java @@ -0,0 +1,64 @@ +package org.dromara.xzd.biddingManagement.ryrm.domain.bo; + +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrm; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrmRmxx; + +import java.time.LocalDate; +import java.util.List; + +/** + * 标前管理-人员任命业务对象 xzd_bqgl_ryrm + * + * @author Lion Li + * @date 2025-12-09 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdBqglRyrm.class, reverseConvertGenerate = false) +public class XzdBqglRyrmBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 主表id(标前立项) + */ + @NotNull(message = "主表id(标前立项)不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long masterId; + + /** + * 项目名称 + */ + @NotBlank(message = "项目名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectName; + + /** + * 项目编码 + */ + @NotBlank(message = "项目编码不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectNumber; + + /** + * 项目类型 + */ + @NotNull(message = "项目类型不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long projectTypeId; + + /** + * 单据日期 + */ + private LocalDate billDate; + + private List rmxxBoList; + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/bo/XzdBqglRyrmRmxxBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/bo/XzdBqglRyrmRmxxBo.java new file mode 100644 index 00000000..e6cc45ca --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/bo/XzdBqglRyrmRmxxBo.java @@ -0,0 +1,48 @@ +package org.dromara.xzd.biddingManagement.ryrm.domain.bo; + +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrmRmxx; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 标前管理-人员任命-任命信息业务对象 xzd_bqgl_ryrm_rmxx + * + * @author Lion Li + * @date 2025-12-09 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdBqglRyrmRmxx.class, reverseConvertGenerate = false) +public class XzdBqglRyrmRmxxBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 主表id(风险信息表) + */ + @NotNull(message = "主表id(风险信息表)不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long masterId; + + /** + * 角色 + */ + @NotBlank(message = "角色不能为空", groups = { AddGroup.class, EditGroup.class }) + private String jsId; + + /** + * 用户id + */ + @NotNull(message = "用户id不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long userId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/vo/XzdBqglRyrmRmxxVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/vo/XzdBqglRyrmRmxxVo.java new file mode 100644 index 00000000..50039e85 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/vo/XzdBqglRyrmRmxxVo.java @@ -0,0 +1,65 @@ +package org.dromara.xzd.biddingManagement.ryrm.domain.vo; + +import org.dromara.common.translation.annotation.Translation; +import org.dromara.common.translation.constant.TransConstant; +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrmRmxx; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 标前管理-人员任命-任命信息视图对象 xzd_bqgl_ryrm_rmxx + * + * @author Lion Li + * @date 2025-12-09 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdBqglRyrmRmxx.class) +public class XzdBqglRyrmRmxxVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 主表id(风险信息表) + */ + @ExcelProperty(value = "主表id(风险信息表)") + private Long masterId; + + /** + * 角色 + */ + @ExcelProperty(value = "角色") + private String jsId; + + /** + * 用户id + */ + @ExcelProperty(value = "用户id") + private Long userId; + + /** + * 用户名 + */ + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "userId") + private Long userName; + + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/vo/XzdBqglRyrmVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/vo/XzdBqglRyrmVo.java new file mode 100644 index 00000000..cbad93ee --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/domain/vo/XzdBqglRyrmVo.java @@ -0,0 +1,72 @@ +package org.dromara.xzd.biddingManagement.ryrm.domain.vo; + +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrm; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrmRmxx; + +import java.io.Serial; +import java.io.Serializable; +import java.time.LocalDate; +import java.util.Date; +import java.util.List; + + +/** + * 标前管理-人员任命视图对象 xzd_bqgl_ryrm + * + * @author Lion Li + * @date 2025-12-09 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdBqglRyrm.class) +public class XzdBqglRyrmVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 主表id(标前立项) + */ + @ExcelProperty(value = "主表id(标前立项)") + private Long masterId; + + /** + * 项目名称 + */ + @ExcelProperty(value = "项目名称") + private String projectName; + + /** + * 项目编码 + */ + @ExcelProperty(value = "项目编码") + private String projectNumber; + + /** + * 项目类型 + */ + @ExcelProperty(value = "项目类型") + private Long projectTypeId; + + /** + * 单据日期 + */ + @ExcelProperty(value = "单据日期") + private LocalDate billDate; + + private List rmxxBoList; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/mapper/XzdBqglRyrmMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/mapper/XzdBqglRyrmMapper.java new file mode 100644 index 00000000..763b0b81 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/mapper/XzdBqglRyrmMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.biddingManagement.ryrm.mapper; + +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrm; +import org.dromara.xzd.biddingManagement.ryrm.domain.vo.XzdBqglRyrmVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 标前管理-人员任命Mapper接口 + * + * @author Lion Li + * @date 2025-12-09 + */ +public interface XzdBqglRyrmMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/mapper/XzdBqglRyrmRmxxMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/mapper/XzdBqglRyrmRmxxMapper.java new file mode 100644 index 00000000..646f7708 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/mapper/XzdBqglRyrmRmxxMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.biddingManagement.ryrm.mapper; + +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrmRmxx; +import org.dromara.xzd.biddingManagement.ryrm.domain.vo.XzdBqglRyrmRmxxVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 标前管理-人员任命-任命信息Mapper接口 + * + * @author Lion Li + * @date 2025-12-09 + */ +public interface XzdBqglRyrmRmxxMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/IXzdBqglRyrmRmxxService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/IXzdBqglRyrmRmxxService.java new file mode 100644 index 00000000..221e05e5 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/IXzdBqglRyrmRmxxService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.biddingManagement.ryrm.service; + +import org.dromara.xzd.biddingManagement.ryrm.domain.vo.XzdBqglRyrmRmxxVo; +import org.dromara.xzd.biddingManagement.ryrm.domain.bo.XzdBqglRyrmRmxxBo; +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrmRmxx; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import java.util.Collection; +import java.util.List; + +/** + * 标前管理-人员任命-任命信息Service接口 + * + * @author Lion Li + * @date 2025-12-09 + */ +public interface IXzdBqglRyrmRmxxService extends IService{ + + /** + * 查询标前管理-人员任命-任命信息 + * + * @param id 主键 + * @return 标前管理-人员任命-任命信息 + */ + XzdBqglRyrmRmxxVo queryById(Long id); + + /** + * 分页查询标前管理-人员任命-任命信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 标前管理-人员任命-任命信息分页列表 + */ + TableDataInfo queryPageList(XzdBqglRyrmRmxxBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的标前管理-人员任命-任命信息列表 + * + * @param bo 查询条件 + * @return 标前管理-人员任命-任命信息列表 + */ + List queryList(XzdBqglRyrmRmxxBo bo); + + /** + * 新增标前管理-人员任命-任命信息 + * + * @param bo 标前管理-人员任命-任命信息 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdBqglRyrmRmxxBo bo); + + /** + * 修改标前管理-人员任命-任命信息 + * + * @param bo 标前管理-人员任命-任命信息 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdBqglRyrmRmxxBo bo); + + /** + * 校验并批量删除标前管理-人员任命-任命信息信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/IXzdBqglRyrmService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/IXzdBqglRyrmService.java new file mode 100644 index 00000000..951278c4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/IXzdBqglRyrmService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.biddingManagement.ryrm.service; + +import org.dromara.xzd.biddingManagement.ryrm.domain.vo.XzdBqglRyrmVo; +import org.dromara.xzd.biddingManagement.ryrm.domain.bo.XzdBqglRyrmBo; +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrm; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import java.util.Collection; +import java.util.List; + +/** + * 标前管理-人员任命Service接口 + * + * @author Lion Li + * @date 2025-12-09 + */ +public interface IXzdBqglRyrmService extends IService{ + + /** + * 查询标前管理-人员任命 + * + * @param id 主键 + * @return 标前管理-人员任命 + */ + XzdBqglRyrmVo queryById(Long id); + + /** + * 分页查询标前管理-人员任命列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 标前管理-人员任命分页列表 + */ + TableDataInfo queryPageList(XzdBqglRyrmBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的标前管理-人员任命列表 + * + * @param bo 查询条件 + * @return 标前管理-人员任命列表 + */ + List queryList(XzdBqglRyrmBo bo); + + /** + * 新增标前管理-人员任命 + * + * @param bo 标前管理-人员任命 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdBqglRyrmBo bo); + + /** + * 修改标前管理-人员任命 + * + * @param bo 标前管理-人员任命 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdBqglRyrmBo bo); + + /** + * 校验并批量删除标前管理-人员任命信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/impl/XzdBqglRyrmRmxxServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/impl/XzdBqglRyrmRmxxServiceImpl.java new file mode 100644 index 00000000..533245bc --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/impl/XzdBqglRyrmRmxxServiceImpl.java @@ -0,0 +1,133 @@ +package org.dromara.xzd.biddingManagement.ryrm.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.xzd.biddingManagement.ryrm.domain.bo.XzdBqglRyrmRmxxBo; +import org.dromara.xzd.biddingManagement.ryrm.domain.vo.XzdBqglRyrmRmxxVo; +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrmRmxx; +import org.dromara.xzd.biddingManagement.ryrm.mapper.XzdBqglRyrmRmxxMapper; +import org.dromara.xzd.biddingManagement.ryrm.service.IXzdBqglRyrmRmxxService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 标前管理-人员任命-任命信息Service业务层处理 + * + * @author Lion Li + * @date 2025-12-09 + */ +@RequiredArgsConstructor +@Service +public class XzdBqglRyrmRmxxServiceImpl extends ServiceImpl implements IXzdBqglRyrmRmxxService { + + private final XzdBqglRyrmRmxxMapper baseMapper; + + /** + * 查询标前管理-人员任命-任命信息 + * + * @param id 主键 + * @return 标前管理-人员任命-任命信息 + */ + @Override + public XzdBqglRyrmRmxxVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询标前管理-人员任命-任命信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 标前管理-人员任命-任命信息分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdBqglRyrmRmxxBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的标前管理-人员任命-任命信息列表 + * + * @param bo 查询条件 + * @return 标前管理-人员任命-任命信息列表 + */ + @Override + public List queryList(XzdBqglRyrmRmxxBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdBqglRyrmRmxxBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdBqglRyrmRmxx::getId); + lqw.eq(bo.getMasterId() != null, XzdBqglRyrmRmxx::getMasterId, bo.getMasterId()); + lqw.eq(StringUtils.isNotBlank(bo.getJsId()), XzdBqglRyrmRmxx::getJsId, bo.getJsId()); + lqw.eq(bo.getUserId() != null, XzdBqglRyrmRmxx::getUserId, bo.getUserId()); + return lqw; + } + + /** + * 新增标前管理-人员任命-任命信息 + * + * @param bo 标前管理-人员任命-任命信息 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdBqglRyrmRmxxBo bo) { + XzdBqglRyrmRmxx add = MapstructUtils.convert(bo, XzdBqglRyrmRmxx.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改标前管理-人员任命-任命信息 + * + * @param bo 标前管理-人员任命-任命信息 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdBqglRyrmRmxxBo bo) { + XzdBqglRyrmRmxx update = MapstructUtils.convert(bo, XzdBqglRyrmRmxx.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdBqglRyrmRmxx entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除标前管理-人员任命-任命信息信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/impl/XzdBqglRyrmServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/impl/XzdBqglRyrmServiceImpl.java new file mode 100644 index 00000000..17d86c1f --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/ryrm/service/impl/XzdBqglRyrmServiceImpl.java @@ -0,0 +1,162 @@ +package org.dromara.xzd.biddingManagement.ryrm.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrmRmxx; +import org.dromara.xzd.biddingManagement.ryrm.domain.vo.XzdBqglRyrmRmxxVo; +import org.dromara.xzd.biddingManagement.ryrm.service.IXzdBqglRyrmRmxxService; +import org.springframework.stereotype.Service; +import org.dromara.xzd.biddingManagement.ryrm.domain.bo.XzdBqglRyrmBo; +import org.dromara.xzd.biddingManagement.ryrm.domain.vo.XzdBqglRyrmVo; +import org.dromara.xzd.biddingManagement.ryrm.domain.XzdBqglRyrm; +import org.dromara.xzd.biddingManagement.ryrm.mapper.XzdBqglRyrmMapper; +import org.dromara.xzd.biddingManagement.ryrm.service.IXzdBqglRyrmService; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 标前管理-人员任命Service业务层处理 + * + * @author Lion Li + * @date 2025-12-09 + */ +@RequiredArgsConstructor +@Service +public class XzdBqglRyrmServiceImpl extends ServiceImpl implements IXzdBqglRyrmService { + + private final XzdBqglRyrmMapper baseMapper; + + private final IXzdBqglRyrmRmxxService xzdBqglRyrmRmxxService; + + /** + * 查询标前管理-人员任命 + * + * @param id 主键 + * @return 标前管理-人员任命 + */ + @Override + public XzdBqglRyrmVo queryById(Long id){ + XzdBqglRyrmVo xzdBqglRyrmVo = baseMapper.selectVoById(id); + saveValue(xzdBqglRyrmVo); + return xzdBqglRyrmVo; + } + + private void saveValue(XzdBqglRyrmVo xzdBqglRyrmVo) { + if (xzdBqglRyrmVo != null){ + List xzdBqglRyrmRmxxes = xzdBqglRyrmRmxxService.getBaseMapper().selectList(new LambdaQueryWrapper().eq(XzdBqglRyrmRmxx::getMasterId, xzdBqglRyrmVo.getId())); + xzdBqglRyrmVo.setRmxxBoList(MapstructUtils.convert(xzdBqglRyrmRmxxes, XzdBqglRyrmRmxxVo.class)); + + } + } + + /** + * 分页查询标前管理-人员任命列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 标前管理-人员任命分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdBqglRyrmBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的标前管理-人员任命列表 + * + * @param bo 查询条件 + * @return 标前管理-人员任命列表 + */ + @Override + public List queryList(XzdBqglRyrmBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdBqglRyrmBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdBqglRyrm::getId); + lqw.eq(bo.getMasterId() != null, XzdBqglRyrm::getMasterId, bo.getMasterId()); + lqw.like(StringUtils.isNotBlank(bo.getProjectName()), XzdBqglRyrm::getProjectName, bo.getProjectName()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectNumber()), XzdBqglRyrm::getProjectNumber, bo.getProjectNumber()); + lqw.eq(bo.getProjectTypeId() != null, XzdBqglRyrm::getProjectTypeId, bo.getProjectTypeId()); + lqw.eq(bo.getBillDate() != null, XzdBqglRyrm::getBillDate, bo.getBillDate()); + return lqw; + } + + /** + * 新增标前管理-人员任命 + * + * @param bo 标前管理-人员任命 + * @return 是否新增成功 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean insertByBo(XzdBqglRyrmBo bo) { + XzdBqglRyrm add = MapstructUtils.convert(bo, XzdBqglRyrm.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (bo.getRmxxBoList() != null && bo.getRmxxBoList().size() > 0){ + bo.getRmxxBoList().forEach(rmxxBo -> rmxxBo.setMasterId(add.getId())); + xzdBqglRyrmRmxxService.saveBatch(bo.getRmxxBoList()); + } + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改标前管理-人员任命 + * + * @param bo 标前管理-人员任命 + * @return 是否修改成功 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean updateByBo(XzdBqglRyrmBo bo) { + XzdBqglRyrm update = MapstructUtils.convert(bo, XzdBqglRyrm.class); + validEntityBeforeSave(update); + xzdBqglRyrmRmxxService.getBaseMapper().delete(new LambdaQueryWrapper().eq(XzdBqglRyrmRmxx::getMasterId, update.getId())); + if (bo.getRmxxBoList() != null && bo.getRmxxBoList().size() > 0){ + bo.getRmxxBoList().forEach(rmxxBo -> rmxxBo.setMasterId(bo.getId())); + xzdBqglRyrmRmxxService.saveBatch(bo.getRmxxBoList()); + } + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdBqglRyrm entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除标前管理-人员任命信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +}