From f820edebb55839eea641302f0c384f58564cd8d8 Mon Sep 17 00:00:00 2001 From: lg Date: Sat, 11 Oct 2025 10:56:07 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=A0=87=E5=89=8D=E7=AB=8B=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/service/ISysDeptService.java | 2 +- .../service/impl/SysDeptServiceImpl.java | 6 +- .../XzdBidPreProjectController.java | 28 ++- .../XzdProjectRiskAssessmentController.java | 10 +- .../domain/XzdBidPreProject.java | 19 ++- .../domain/XzdBqlxProjectInfo.java | 10 +- .../domain/XzdProjectRiskAssessment.java | 2 +- .../domain/bo/XzdBidPreProjectBo.java | 22 ++- .../domain/bo/XzdBqlxProjectInfoBo.java | 26 ++- .../domain/bo/XzdProjectRiskAssessmentBo.java | 4 +- .../domain/dto/BiddingManagementDto.java | 17 ++ .../domain/dto/QuerBiddingManagementDto.java | 2 +- .../domain/vo/QuerListXzdBidPreVo.java | 2 +- .../domain/vo/QueryListXzdVo.java | 3 +- .../domain/vo/XzdBidPreProjectVo.java | 30 +++- .../domain/vo/XzdBqlxProjectInfoVo.java | 15 +- .../domain/vo/XzdProjectByVo.java | 2 +- .../domain/vo/XzdProjectRiskAssessmentVo.java | 6 +- .../mapper/XzdBidPreProjectMapper.java | 10 +- .../mapper/XzdBqlxProjectInfoMapper.java | 6 +- .../XzdProjectRiskAssessmentMapper.java | 6 +- .../service/IXzdBidPreProjectService.java | 17 +- .../service/IXzdBqlxProjectInfoService.java | 8 +- .../IXzdProjectRiskAssessmentService.java | 10 +- .../impl/XzdBidPreProjectServiceImpl.java | 110 +++++++----- .../impl/XzdBqlxProjectInfoServiceImpl.java | 12 +- .../XzdProjectRiskAssessmentServiceImpl.java | 22 +-- .../XzdBiddingFileEstimateController.java | 105 ++++++++++++ .../domain/XzdBiddingFileEstimate.java | 128 ++++++++++++++ .../domain/bo/XzdBiddingFileEstimateBo.java | 127 ++++++++++++++ .../domain/vo/XzdBiddingFileEstimateVo.java | 155 +++++++++++++++++ .../mapper/XzdBiddingFileEstimateMapper.java | 15 ++ .../IXzdBiddingFileEstimateService.java | 70 ++++++++ .../XzdBiddingFileEstimateServiceImpl.java | 160 +++++++++++++++++ .../domain/dto/BiddingManagementDto.java | 17 -- .../XzdBiddingAgencyFeePaymentController.java | 106 ++++++++++++ .../domain/XzdBiddingAgencyFeePayment.java | 120 +++++++++++++ .../bo/XzdBiddingAgencyFeePaymentBo.java | 121 +++++++++++++ .../vo/XzdBiddingAgencyFeePaymentVo.java | 141 +++++++++++++++ .../XzdBiddingAgencyFeePaymentMapper.java | 15 ++ .../IXzdBiddingAgencyFeePaymentService.java | 70 ++++++++ ...XzdBiddingAgencyFeePaymentServiceImpl.java | 158 +++++++++++++++++ .../XzdBidPreProjectMapper.xml | 87 ---------- .../XzdBidPreProjectMapper.xml | 161 ++++++++++++++++++ 44 files changed, 1913 insertions(+), 250 deletions(-) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/controller/XzdBidPreProjectController.java (77%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/controller/XzdProjectRiskAssessmentController.java (89%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/XzdBidPreProject.java (84%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/XzdBqlxProjectInfo.java (92%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/XzdProjectRiskAssessment.java (96%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/bo/XzdBidPreProjectBo.java (87%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/bo/XzdBqlxProjectInfoBo.java (85%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/bo/XzdProjectRiskAssessmentBo.java (92%) create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/dto/BiddingManagementDto.java rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/dto/QuerBiddingManagementDto.java (91%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/vo/QuerListXzdBidPreVo.java (71%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/vo/QueryListXzdVo.java (67%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/vo/XzdBidPreProjectVo.java (86%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/vo/XzdBqlxProjectInfoVo.java (94%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/vo/XzdProjectByVo.java (91%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/domain/vo/XzdProjectRiskAssessmentVo.java (96%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/mapper/XzdBidPreProjectMapper.java (57%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/mapper/XzdBqlxProjectInfoMapper.java (51%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/mapper/XzdProjectRiskAssessmentMapper.java (53%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/service/IXzdBidPreProjectService.java (69%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/service/IXzdBqlxProjectInfoService.java (83%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/service/IXzdProjectRiskAssessmentService.java (81%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/service/impl/XzdBidPreProjectServiceImpl.java (71%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/service/impl/XzdBqlxProjectInfoServiceImpl.java (93%) rename xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/{ => biaoqianlixiang}/service/impl/XzdProjectRiskAssessmentServiceImpl.java (87%) create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/controller/XzdBiddingFileEstimateController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/XzdBiddingFileEstimate.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/bo/XzdBiddingFileEstimateBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/vo/XzdBiddingFileEstimateVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/mapper/XzdBiddingFileEstimateMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/IXzdBiddingFileEstimateService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/impl/XzdBiddingFileEstimateServiceImpl.java delete mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/dto/BiddingManagementDto.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/controller/XzdBiddingAgencyFeePaymentController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/XzdBiddingAgencyFeePayment.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/bo/XzdBiddingAgencyFeePaymentBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/vo/XzdBiddingAgencyFeePaymentVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/mapper/XzdBiddingAgencyFeePaymentMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/IXzdBiddingAgencyFeePaymentService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/impl/XzdBiddingAgencyFeePaymentServiceImpl.java delete mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/biddingManagement/XzdBidPreProjectMapper.xml create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/biddingManagement/biaoqianlixiang/XzdBidPreProjectMapper.xml diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java index 14ffc514..55db0954 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java @@ -164,5 +164,5 @@ public interface ISysDeptService { */ int deleteDeptById(Long deptId); - List querListDept(); + List querListDept(); } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 6a46d081..6267a5c1 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -530,12 +530,12 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { } @Override - public List querListDept() { + public List querListDept() { -// baseMapper.selectDeptList(new LambdaQueryWrapper().) + List sysDeptVos = baseMapper.selectDeptList(new LambdaQueryWrapper().eq(SysDept::getParentId, "100").eq(SysDept::getStatus, "0").eq(SysDept::getDelFlag, "0")); - return List.of(); + return sysDeptVos; } /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/controller/XzdBidPreProjectController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/controller/XzdBidPreProjectController.java similarity index 77% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/controller/XzdBidPreProjectController.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/controller/XzdBidPreProjectController.java index bac1231d..fa6248b4 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/controller/XzdBidPreProjectController.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/controller/XzdBidPreProjectController.java @@ -1,21 +1,17 @@ -package org.dromara.xzd.biddingManagement.controller; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.controller; import java.util.List; -import cn.hutool.core.lang.tree.Tree; import lombok.RequiredArgsConstructor; import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.constraints.*; import cn.dev33.satoken.annotation.SaCheckPermission; -import org.dromara.system.domain.SysDept; +import org.dromara.system.domain.vo.SysDeptVo; import org.dromara.system.service.ISysDeptService; -import org.dromara.xzd.biddingManagement.domain.dto.BiddingManagementDto; -import org.dromara.xzd.biddingManagement.domain.dto.QuerBiddingManagementDto; -import org.dromara.xzd.biddingManagement.domain.vo.QuerListXzdBidPreVo; -import org.dromara.xzd.biddingManagement.domain.vo.QueryListXzdVo; -import org.dromara.xzd.domain.bo.XzdProjectTypeBo; -import org.dromara.xzd.domain.vo.XzdProjectTypeVo; -import org.dromara.xzd.service.IXzdProjectTypeService; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.dto.BiddingManagementDto; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.dto.QuerBiddingManagementDto; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QuerListXzdBidPreVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QueryListXzdVo; import org.springframework.web.bind.annotation.*; import org.springframework.validation.annotation.Validated; import org.dromara.common.idempotent.annotation.RepeatSubmit; @@ -24,13 +20,11 @@ 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.domain.vo.XzdBidPreProjectVo; -import org.dromara.xzd.biddingManagement.domain.bo.XzdBidPreProjectBo; -import org.dromara.xzd.biddingManagement.service.IXzdBidPreProjectService; -import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBidPreProjectVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdBidPreProjectBo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdBidPreProjectService; /** * 标前立项 @@ -55,8 +49,8 @@ public class XzdBidPreProjectController extends BaseController { * 查询部门 */ @GetMapping("/listDept") - public R> list() { - List list = iSysDeptService.querListDept(); + public R> list() { + List list = iSysDeptService.querListDept(); return R.ok(list); } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/controller/XzdProjectRiskAssessmentController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/controller/XzdProjectRiskAssessmentController.java similarity index 89% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/controller/XzdProjectRiskAssessmentController.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/controller/XzdProjectRiskAssessmentController.java index 1be41a83..e49206e4 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/controller/XzdProjectRiskAssessmentController.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/controller/XzdProjectRiskAssessmentController.java @@ -1,4 +1,4 @@ -package org.dromara.xzd.biddingManagement.controller; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.controller; import java.util.List; @@ -6,10 +6,10 @@ import lombok.RequiredArgsConstructor; import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.constraints.*; import cn.dev33.satoken.annotation.SaCheckPermission; -import org.dromara.xzd.biddingManagement.domain.bo.XzdProjectRiskAssessmentBo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdProjectByVo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdProjectRiskAssessmentVo; -import org.dromara.xzd.biddingManagement.service.IXzdProjectRiskAssessmentService; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdProjectRiskAssessmentBo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdProjectByVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdProjectRiskAssessmentVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdProjectRiskAssessmentService; import org.springframework.web.bind.annotation.*; import org.springframework.validation.annotation.Validated; import org.dromara.common.idempotent.annotation.RepeatSubmit; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/XzdBidPreProject.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdBidPreProject.java similarity index 84% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/XzdBidPreProject.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdBidPreProject.java index 3877b9c3..6ea3a67a 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/XzdBidPreProject.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdBidPreProject.java @@ -1,4 +1,4 @@ -package org.dromara.xzd.biddingManagement.domain; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain; import org.dromara.common.mybatis.core.domain.BaseEntity; import com.baomidou.mybatisplus.annotation.*; @@ -6,6 +6,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import java.io.Serial; +import java.time.LocalDateTime; /** * 标前立项对象 xzd_bid_pre_project @@ -97,6 +98,22 @@ public class XzdBidPreProject extends BaseEntity { */ private String investmentUnit; + + /** + * 单据日期 + */ + private LocalDateTime billDate; + + /** + * 联投单位 + */ + private String jointInvestmentEntity; + + /** + * 联系方式 + */ + private String contactInformation; + /** * 工程造价(万元) */ diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/XzdBqlxProjectInfo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdBqlxProjectInfo.java similarity index 92% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/XzdBqlxProjectInfo.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdBqlxProjectInfo.java index 0306c6c3..adecfede 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/XzdBqlxProjectInfo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdBqlxProjectInfo.java @@ -1,5 +1,6 @@ -package org.dromara.xzd.biddingManagement.domain; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain; +import com.alibaba.excel.annotation.ExcelProperty; import org.dromara.common.mybatis.core.domain.BaseEntity; import com.baomidou.mybatisplus.annotation.*; import lombok.Data; @@ -49,6 +50,13 @@ public class XzdBqlxProjectInfo extends BaseEntity { */ private Date bidStartDate; + /** + * 填报组织 + */ + @ExcelProperty(value = "填报组织") + private String reportingOrganization; + + /** * 报名截止时间 */ diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/XzdProjectRiskAssessment.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdProjectRiskAssessment.java similarity index 96% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/XzdProjectRiskAssessment.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdProjectRiskAssessment.java index 7a1e8382..f7a30d5a 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/XzdProjectRiskAssessment.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/XzdProjectRiskAssessment.java @@ -1,4 +1,4 @@ -package org.dromara.xzd.biddingManagement.domain; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain; import org.dromara.common.mybatis.core.domain.BaseEntity; import com.baomidou.mybatisplus.annotation.*; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/bo/XzdBidPreProjectBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdBidPreProjectBo.java similarity index 87% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/bo/XzdBidPreProjectBo.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdBidPreProjectBo.java index 8ad278e6..9ae9f3c7 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/bo/XzdBidPreProjectBo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdBidPreProjectBo.java @@ -1,6 +1,6 @@ -package org.dromara.xzd.biddingManagement.domain.bo; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo; -import org.dromara.xzd.biddingManagement.domain.XzdBidPreProject; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBidPreProject; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; @@ -9,6 +9,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import jakarta.validation.constraints.*; +import java.time.LocalDateTime; + /** * 标前立项业务对象 xzd_bid_pre_project * @@ -56,6 +58,22 @@ public class XzdBidPreProjectBo extends BaseEntity { @NotBlank(message = "城市不能为空", groups = { AddGroup.class, EditGroup.class }) private String city; + + + /** + * 单据日期 + */ + private LocalDateTime billDate; + + /** + * 联投单位 + */ + private String jointInvestmentEntity; + + /** + * 联系方式 + */ + private String contactInformation; /** * 区县 */ diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/bo/XzdBqlxProjectInfoBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdBqlxProjectInfoBo.java similarity index 85% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/bo/XzdBqlxProjectInfoBo.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdBqlxProjectInfoBo.java index fee62c83..3f45a8e1 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/bo/XzdBqlxProjectInfoBo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdBqlxProjectInfoBo.java @@ -1,6 +1,7 @@ -package org.dromara.xzd.biddingManagement.domain.bo; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo; -import org.dromara.xzd.biddingManagement.domain.XzdBqlxProjectInfo; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBqlxProjectInfo; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; @@ -8,8 +9,8 @@ import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import lombok.EqualsAndHashCode; import jakarta.validation.constraints.*; -import java.util.Date; -import com.fasterxml.jackson.annotation.JsonFormat; + +import java.time.LocalDateTime; /** * 标前立项业务对象 xzd_bqlx_project_info @@ -37,7 +38,7 @@ public class XzdBqlxProjectInfoBo extends BaseEntity { /** * 预计开工日期 */ - private Date expectedStartDate; + private LocalDateTime expectedStartDate; /** * 资质要求 @@ -47,18 +48,18 @@ public class XzdBqlxProjectInfoBo extends BaseEntity { /** * 报名开始时间 */ - private Date bidStartDate; + private LocalDateTime bidStartDate; /** * 报名截止时间 */ @NotNull(message = "报名截止时间不能为空", groups = { AddGroup.class, EditGroup.class }) - private Date bidEndDate; + private LocalDateTime bidEndDate; /** * 投标截止时间 */ - private Date submissionDeadline; + private LocalDateTime submissionDeadline; /** * 设计情况 @@ -70,6 +71,13 @@ public class XzdBqlxProjectInfoBo extends BaseEntity { */ private String projectStatus; + /** + * 填报组织 + */ + @ExcelProperty(value = "填报组织") + private String reportingOrganization; + + /** * 招标公告地址 */ @@ -103,7 +111,7 @@ public class XzdBqlxProjectInfoBo extends BaseEntity { /** * 开标时间 */ - private Date startDate; + private LocalDateTime startDate; /** * 评标方式 diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/bo/XzdProjectRiskAssessmentBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdProjectRiskAssessmentBo.java similarity index 92% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/bo/XzdProjectRiskAssessmentBo.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdProjectRiskAssessmentBo.java index 18597030..5022ce31 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/bo/XzdProjectRiskAssessmentBo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/bo/XzdProjectRiskAssessmentBo.java @@ -1,4 +1,4 @@ -package org.dromara.xzd.biddingManagement.domain.bo; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.core.validate.AddGroup; @@ -7,7 +7,7 @@ import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import lombok.EqualsAndHashCode; import jakarta.validation.constraints.*; -import org.dromara.xzd.biddingManagement.domain.XzdProjectRiskAssessment; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdProjectRiskAssessment; /** * 项目风险评估签审意见业务对象 xzd_project_risk_assessment diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/dto/BiddingManagementDto.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/dto/BiddingManagementDto.java new file mode 100644 index 00000000..ecd02a9a --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/dto/BiddingManagementDto.java @@ -0,0 +1,17 @@ +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.dto; + +import lombok.Data; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdBidPreProjectBo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdBqlxProjectInfoBo; + +@Data +public class BiddingManagementDto { + +// 标前立项 + + private XzdBidPreProjectBo xzdBidPreProjectBo; + +// 标前立项-项目信息 + + private XzdBqlxProjectInfoBo xzdBqlxProjectInfoBo; +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/dto/QuerBiddingManagementDto.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/dto/QuerBiddingManagementDto.java similarity index 91% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/dto/QuerBiddingManagementDto.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/dto/QuerBiddingManagementDto.java index d54d6820..c4289e75 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/dto/QuerBiddingManagementDto.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/dto/QuerBiddingManagementDto.java @@ -1,4 +1,4 @@ -package org.dromara.xzd.biddingManagement.domain.dto; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.dto; import jakarta.validation.constraints.NotBlank; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/QuerListXzdBidPreVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/QuerListXzdBidPreVo.java similarity index 71% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/QuerListXzdBidPreVo.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/QuerListXzdBidPreVo.java index e02c9f72..9064ded7 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/QuerListXzdBidPreVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/QuerListXzdBidPreVo.java @@ -1,4 +1,4 @@ -package org.dromara.xzd.biddingManagement.domain.vo; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo; import lombok.Data; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/QueryListXzdVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/QueryListXzdVo.java similarity index 67% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/QueryListXzdVo.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/QueryListXzdVo.java index 6ce00b82..ae57782a 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/QueryListXzdVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/QueryListXzdVo.java @@ -1,6 +1,5 @@ -package org.dromara.xzd.biddingManagement.domain.vo; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo; -import lombok.Builder; import lombok.Data; import java.util.List; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdBidPreProjectVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdBidPreProjectVo.java similarity index 86% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdBidPreProjectVo.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdBidPreProjectVo.java index 68434782..9d581159 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdBidPreProjectVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdBidPreProjectVo.java @@ -1,8 +1,8 @@ -package org.dromara.xzd.biddingManagement.domain.vo; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo; import org.dromara.common.translation.annotation.Translation; import org.dromara.common.translation.constant.TransConstant; -import org.dromara.xzd.biddingManagement.domain.XzdBidPreProject; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBidPreProject; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; @@ -12,8 +12,7 @@ import lombok.Data; import java.io.Serial; import java.io.Serializable; -import java.util.Date; - +import java.time.LocalDateTime; /** @@ -130,6 +129,22 @@ public class XzdBidPreProjectVo implements Serializable { @ExcelDictFormat(readConverterExp = "万=元") private Long projectCost; + + + /** + * 单据日期 + */ + private LocalDateTime billDate; + + /** + * 联投单位 + */ + private String jointInvestmentEntity; + + /** + * 联系方式 + */ + private String contactInformation; /** * 资料费 */ @@ -161,4 +176,11 @@ public class XzdBidPreProjectVo implements Serializable { private String createByUserName; + + private Long createDept; + + + @Translation(type = TransConstant.DEPT_ID_TO_NAME, mapper = "createDept") + private String createDeptName; + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdBqlxProjectInfoVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdBqlxProjectInfoVo.java similarity index 94% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdBqlxProjectInfoVo.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdBqlxProjectInfoVo.java index 35afd7b2..448550ec 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdBqlxProjectInfoVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdBqlxProjectInfoVo.java @@ -1,8 +1,8 @@ -package org.dromara.xzd.biddingManagement.domain.vo; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo; import java.util.Date; -import com.fasterxml.jackson.annotation.JsonFormat; -import org.dromara.xzd.biddingManagement.domain.XzdBqlxProjectInfo; + +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBqlxProjectInfo; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; @@ -12,8 +12,6 @@ import lombok.Data; import java.io.Serial; import java.io.Serializable; -import java.util.Date; - /** @@ -72,6 +70,13 @@ public class XzdBqlxProjectInfoVo implements Serializable { @ExcelProperty(value = "投标截止时间") private Date submissionDeadline; + + /** + * 填报组织 + */ + @ExcelProperty(value = "填报组织") + private String reportingOrganization; + /** * 设计情况 */ diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdProjectByVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdProjectByVo.java similarity index 91% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdProjectByVo.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdProjectByVo.java index 7e482243..12b7a231 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdProjectByVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdProjectByVo.java @@ -1,4 +1,4 @@ -package org.dromara.xzd.biddingManagement.domain.vo; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo; import com.alibaba.excel.annotation.ExcelProperty; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdProjectRiskAssessmentVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdProjectRiskAssessmentVo.java similarity index 96% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdProjectRiskAssessmentVo.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdProjectRiskAssessmentVo.java index b77a1a44..d64ebb75 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/vo/XzdProjectRiskAssessmentVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/domain/vo/XzdProjectRiskAssessmentVo.java @@ -1,4 +1,4 @@ -package org.dromara.xzd.biddingManagement.domain.vo; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; @@ -8,13 +8,11 @@ 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.domain.XzdProjectRiskAssessment; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdProjectRiskAssessment; import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; -import java.util.Date; - /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/mapper/XzdBidPreProjectMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdBidPreProjectMapper.java similarity index 57% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/mapper/XzdBidPreProjectMapper.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdBidPreProjectMapper.java index 86f44cb5..350b9002 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/mapper/XzdBidPreProjectMapper.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdBidPreProjectMapper.java @@ -1,10 +1,10 @@ -package org.dromara.xzd.biddingManagement.mapper; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper; import org.apache.ibatis.annotations.Param; -import org.dromara.xzd.biddingManagement.domain.XzdBidPreProject; -import org.dromara.xzd.biddingManagement.domain.dto.QuerBiddingManagementDto; -import org.dromara.xzd.biddingManagement.domain.vo.QuerListXzdBidPreVo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdBidPreProjectVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBidPreProject; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.dto.QuerBiddingManagementDto; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QuerListXzdBidPreVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBidPreProjectVo; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import java.util.List; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/mapper/XzdBqlxProjectInfoMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdBqlxProjectInfoMapper.java similarity index 51% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/mapper/XzdBqlxProjectInfoMapper.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdBqlxProjectInfoMapper.java index 63208d29..d9b3450f 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/mapper/XzdBqlxProjectInfoMapper.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdBqlxProjectInfoMapper.java @@ -1,7 +1,7 @@ -package org.dromara.xzd.biddingManagement.mapper; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper; -import org.dromara.xzd.biddingManagement.domain.XzdBqlxProjectInfo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdBqlxProjectInfoVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBqlxProjectInfo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBqlxProjectInfoVo; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/mapper/XzdProjectRiskAssessmentMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdProjectRiskAssessmentMapper.java similarity index 53% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/mapper/XzdProjectRiskAssessmentMapper.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdProjectRiskAssessmentMapper.java index 9d1abb47..26d3d85d 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/mapper/XzdProjectRiskAssessmentMapper.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/mapper/XzdProjectRiskAssessmentMapper.java @@ -1,9 +1,9 @@ -package org.dromara.xzd.biddingManagement.mapper; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; -import org.dromara.xzd.biddingManagement.domain.XzdProjectRiskAssessment; -import org.dromara.xzd.biddingManagement.domain.vo.XzdProjectRiskAssessmentVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdProjectRiskAssessment; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdProjectRiskAssessmentVo; /** * 项目风险评估签审意见Mapper接口 diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/IXzdBidPreProjectService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdBidPreProjectService.java similarity index 69% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/IXzdBidPreProjectService.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdBidPreProjectService.java index 0e5bd19b..785241fd 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/IXzdBidPreProjectService.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdBidPreProjectService.java @@ -1,13 +1,12 @@ -package org.dromara.xzd.biddingManagement.service; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.service; -import org.dromara.xzd.biddingManagement.domain.dto.BiddingManagementDto; -import org.dromara.xzd.biddingManagement.domain.dto.QuerBiddingManagementDto; -import org.dromara.xzd.biddingManagement.domain.vo.QuerListXzdBidPreVo; -import org.dromara.xzd.biddingManagement.domain.vo.QueryListXzdVo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdBidPreProjectVo; -import org.dromara.xzd.biddingManagement.domain.bo.XzdBidPreProjectBo; -import org.dromara.xzd.biddingManagement.domain.XzdBidPreProject; -import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.dto.BiddingManagementDto; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.dto.QuerBiddingManagementDto; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QuerListXzdBidPreVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QueryListXzdVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBidPreProjectVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdBidPreProjectBo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBidPreProject; import org.dromara.common.mybatis.core.page.PageQuery; import com.baomidou.mybatisplus.extension.service.IService; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/IXzdBqlxProjectInfoService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdBqlxProjectInfoService.java similarity index 83% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/IXzdBqlxProjectInfoService.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdBqlxProjectInfoService.java index ad6dbc4f..bc803a50 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/IXzdBqlxProjectInfoService.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdBqlxProjectInfoService.java @@ -1,8 +1,8 @@ -package org.dromara.xzd.biddingManagement.service; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.service; -import org.dromara.xzd.biddingManagement.domain.vo.XzdBqlxProjectInfoVo; -import org.dromara.xzd.biddingManagement.domain.bo.XzdBqlxProjectInfoBo; -import org.dromara.xzd.biddingManagement.domain.XzdBqlxProjectInfo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBqlxProjectInfoVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdBqlxProjectInfoBo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBqlxProjectInfo; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.PageQuery; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/IXzdProjectRiskAssessmentService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdProjectRiskAssessmentService.java similarity index 81% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/IXzdProjectRiskAssessmentService.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdProjectRiskAssessmentService.java index a3a35760..4d474407 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/IXzdProjectRiskAssessmentService.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/IXzdProjectRiskAssessmentService.java @@ -1,14 +1,14 @@ -package org.dromara.xzd.biddingManagement.service; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.service; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.PageQuery; import com.baomidou.mybatisplus.extension.service.IService; -import org.dromara.xzd.biddingManagement.domain.XzdProjectRiskAssessment; -import org.dromara.xzd.biddingManagement.domain.bo.XzdProjectRiskAssessmentBo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdProjectByVo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdProjectRiskAssessmentVo; +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.XzdProjectByVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdProjectRiskAssessmentVo; import java.util.Collection; import java.util.List; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/impl/XzdBidPreProjectServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdBidPreProjectServiceImpl.java similarity index 71% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/impl/XzdBidPreProjectServiceImpl.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdBidPreProjectServiceImpl.java index f6e5a2cc..670dd091 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/impl/XzdBidPreProjectServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdBidPreProjectServiceImpl.java @@ -1,38 +1,34 @@ -package org.dromara.xzd.biddingManagement.service.impl; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.service.impl; import cn.hutool.core.bean.BeanUtil; 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.domain.XzdBqlxProjectInfo; -import org.dromara.xzd.biddingManagement.domain.bo.XzdBqlxProjectInfoBo; -import org.dromara.xzd.biddingManagement.domain.dto.BiddingManagementDto; -import org.dromara.xzd.biddingManagement.domain.dto.QuerBiddingManagementDto; -import org.dromara.xzd.biddingManagement.domain.vo.QuerListXzdBidPreVo; -import org.dromara.xzd.biddingManagement.domain.vo.QueryListXzdVo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdBqlxProjectInfoVo; -import org.dromara.xzd.biddingManagement.mapper.XzdBqlxProjectInfoMapper; -import org.dromara.xzd.biddingManagement.service.IXzdBqlxProjectInfoService; +import org.dromara.system.service.impl.SysOssServiceImpl; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBqlxProjectInfo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdBqlxProjectInfoBo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.dto.BiddingManagementDto; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.dto.QuerBiddingManagementDto; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QuerListXzdBidPreVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QueryListXzdVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBqlxProjectInfoVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdBqlxProjectInfoService; import org.dromara.xzd.utilS.AreaUtil; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; -import org.dromara.xzd.biddingManagement.domain.bo.XzdBidPreProjectBo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdBidPreProjectVo; -import org.dromara.xzd.biddingManagement.domain.XzdBidPreProject; -import org.dromara.xzd.biddingManagement.mapper.XzdBidPreProjectMapper; -import org.dromara.xzd.biddingManagement.service.IXzdBidPreProjectService; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdBidPreProjectBo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBidPreProjectVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBidPreProject; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper.XzdBidPreProjectMapper; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdBidPreProjectService; import org.springframework.transaction.annotation.Transactional; import java.time.LocalDateTime; -import java.util.List; -import java.util.Map; -import java.util.Collection; +import java.util.*; +import java.util.stream.Collectors; /** * 标前立项Service业务层处理 @@ -52,6 +48,8 @@ public class XzdBidPreProjectServiceImpl extends ServiceImpl(XzdBqlxProjectInfo.class).eq(XzdBqlxProjectInfo::getBidPreProjectId, id)); - XzdBqlxProjectInfoVo res = new XzdBqlxProjectInfoVo(); - BeanUtils.copyProperties(xzdBqlxProjectInfo, res); + XzdBqlxProjectInfoVo res = new XzdBqlxProjectInfoVo(); + if (xzdBqlxProjectInfo != null){ + BeanUtils.copyProperties(xzdBqlxProjectInfo, res); + } querListXzdBidPreVo.setXzdBqlxProjectInfoVo(res); querListXzdBidPreVo.setXzdBidPreProjectVo(xzdBidPreProjectVo); @@ -145,9 +145,7 @@ public class XzdBidPreProjectServiceImpl extends ServiceImpl().gt(XzdBidPreProject::getCreateTime, LocalDateTime.now().minusDays(1))); + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdBidPreProject::getCreateTime, LocalDateTime.now())); String s = areaUtil.generateDateBasedNumber(); // 标前立项 @@ -164,10 +162,7 @@ public class XzdBidPreProjectServiceImpl extends ServiceImpl ids, Boolean isValid) { + if(isValid){ - //TODO 做一些业务上的校验,判断是否需要校验 + } + for (Long id : ids) { + XzdBidPreProjectVo xzdBidPreProjectVo = baseMapper.selectVoById(id); + + // 删除附件 + if (!StringUtils.isEmpty(xzdBidPreProjectVo.getFileId())){ + List collect = Arrays.stream(xzdBidPreProjectVo.getFileId().split(",")).map(item -> { + return Long.parseLong(item); + }).collect(Collectors.toList()); + sysOssService.deleteWithValidByIds(collect, false); + } + + + HashMap objectObjectHashMap = new HashMap<>(); + objectObjectHashMap.put("bid_pre_project_id",id); + iXzdBqlxProjectInfoService.removeByMap(objectObjectHashMap); + } + + return baseMapper.deleteByIds(ids) > 0; } + + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/impl/XzdBqlxProjectInfoServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdBqlxProjectInfoServiceImpl.java similarity index 93% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/impl/XzdBqlxProjectInfoServiceImpl.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdBqlxProjectInfoServiceImpl.java index 9279d9f5..af717451 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/impl/XzdBqlxProjectInfoServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdBqlxProjectInfoServiceImpl.java @@ -1,4 +1,4 @@ -package org.dromara.xzd.biddingManagement.service.impl; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.dromara.common.core.utils.MapstructUtils; @@ -10,11 +10,11 @@ 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.domain.bo.XzdBqlxProjectInfoBo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdBqlxProjectInfoVo; -import org.dromara.xzd.biddingManagement.domain.XzdBqlxProjectInfo; -import org.dromara.xzd.biddingManagement.mapper.XzdBqlxProjectInfoMapper; -import org.dromara.xzd.biddingManagement.service.IXzdBqlxProjectInfoService; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.bo.XzdBqlxProjectInfoBo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBqlxProjectInfoVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBqlxProjectInfo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper.XzdBqlxProjectInfoMapper; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdBqlxProjectInfoService; import java.util.List; import java.util.Map; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/impl/XzdProjectRiskAssessmentServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdProjectRiskAssessmentServiceImpl.java similarity index 87% rename from xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/impl/XzdProjectRiskAssessmentServiceImpl.java rename to xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdProjectRiskAssessmentServiceImpl.java index 3613600e..18c33350 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/service/impl/XzdProjectRiskAssessmentServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdProjectRiskAssessmentServiceImpl.java @@ -1,4 +1,4 @@ -package org.dromara.xzd.biddingManagement.service.impl; +package org.dromara.xzd.biddingManagement.biaoqianlixiang.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.dromara.common.core.utils.MapstructUtils; @@ -9,12 +9,12 @@ 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.domain.XzdProjectRiskAssessment; -import org.dromara.xzd.biddingManagement.domain.bo.XzdProjectRiskAssessmentBo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdProjectByVo; -import org.dromara.xzd.biddingManagement.domain.vo.XzdProjectRiskAssessmentVo; -import org.dromara.xzd.biddingManagement.mapper.XzdProjectRiskAssessmentMapper; -import org.dromara.xzd.biddingManagement.service.IXzdProjectRiskAssessmentService; +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.XzdProjectByVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdProjectRiskAssessmentVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper.XzdProjectRiskAssessmentMapper; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdProjectRiskAssessmentService; import org.dromara.xzd.utilS.AreaUtil; import org.springframework.stereotype.Service; @@ -110,9 +110,9 @@ public class XzdProjectRiskAssessmentServiceImpl extends ServiceImpl().gt(XzdProjectRiskAssessment::getCreateTime, LocalDateTime.now().minusDays(1))); + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdProjectRiskAssessment::getCreateTime, LocalDateTime.now())); add.setDocumentNumber(s+"-"+(l+1)); } boolean flag = baseMapper.insert(add) > 0; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/controller/XzdBiddingFileEstimateController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/controller/XzdBiddingFileEstimateController.java new file mode 100644 index 00000000..99c97a00 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/controller/XzdBiddingFileEstimateController.java @@ -0,0 +1,105 @@ +package org.dromara.xzd.biddingManagement.biddingDocument.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.biddingDocument.domain.vo.XzdBiddingFileEstimateVo; +import org.dromara.xzd.biddingManagement.biddingDocument.domain.bo.XzdBiddingFileEstimateBo; +import org.dromara.xzd.biddingManagement.biddingDocument.service.IXzdBiddingFileEstimateService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 招标文件审估 + * + * @author Lion Li + * @date 2025-10-10 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/biddingDocument/biddingFileEstimate") +public class XzdBiddingFileEstimateController extends BaseController { + + private final IXzdBiddingFileEstimateService xzdBiddingFileEstimateService; + + /** + * 查询招标文件审估列表 + */ + @SaCheckPermission("biddingDocument:biddingFileEstimate:list") + @GetMapping("/list") + public TableDataInfo list(XzdBiddingFileEstimateBo bo, PageQuery pageQuery) { + return xzdBiddingFileEstimateService.queryPageList(bo, pageQuery); + } + + /** + * 导出招标文件审估列表 + */ + @SaCheckPermission("biddingDocument:biddingFileEstimate:export") + @Log(title = "招标文件审估", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdBiddingFileEstimateBo bo, HttpServletResponse response) { + List list = xzdBiddingFileEstimateService.queryList(bo); + ExcelUtil.exportExcel(list, "招标文件审估", XzdBiddingFileEstimateVo.class, response); + } + + /** + * 获取招标文件审估详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("biddingDocument:biddingFileEstimate:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdBiddingFileEstimateService.queryById(id)); + } + + /** + * 新增招标文件审估 + */ + @SaCheckPermission("biddingDocument:biddingFileEstimate:add") + @Log(title = "招标文件审估", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdBiddingFileEstimateBo bo) { + return toAjax(xzdBiddingFileEstimateService.insertByBo(bo)); + } + + /** + * 修改招标文件审估 + */ + @SaCheckPermission("biddingDocument:biddingFileEstimate:edit") + @Log(title = "招标文件审估", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdBiddingFileEstimateBo bo) { + return toAjax(xzdBiddingFileEstimateService.updateByBo(bo)); + } + + /** + * 删除招标文件审估 + * + * @param ids 主键串 + */ + @SaCheckPermission("biddingDocument:biddingFileEstimate:remove") + @Log(title = "招标文件审估", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdBiddingFileEstimateService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/XzdBiddingFileEstimate.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/XzdBiddingFileEstimate.java new file mode 100644 index 00000000..f8437e5e --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/XzdBiddingFileEstimate.java @@ -0,0 +1,128 @@ +package org.dromara.xzd.biddingManagement.biddingDocument.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 招标文件审估对象 xzd_bidding_file_estimate + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_bidding_file_estimate") +public class XzdBiddingFileEstimate extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 单据编码 + */ + private String documentCode; + + /** + * 单据日期 + */ + private Date documentDate; + + /** + * 项目名称 + */ + private String projectName; + + /** + * 标题 + */ + private String title; + + /** + * 工程地点 + */ + private String projectLocation; + + /** + * 招标单位 + */ + private String biddingUnit; + + /** + * 招标方式 + */ + private String biddingMethod; + + /** + * 承包方式 + */ + private String contractingMethod; + + /** + * 开标时间 + */ + private Date startDate; + + /** + * 工程概况 + */ + private String projectOverview; + + /** + * 投标时间 + */ + private Date biddingDate; + + /** + * 投标地址 + */ + private String biddingAddress; + + /** + * 招标控制价 + */ + private Long biddingControlPrice; + + /** + * 评标方法 + */ + private String evaluationMethod; + + /** + * 招标范围 + */ + private String biddingScope; + + /** + * 项目经理要求 + */ + private String projectManagerRequirement; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/bo/XzdBiddingFileEstimateBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/bo/XzdBiddingFileEstimateBo.java new file mode 100644 index 00000000..465de353 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/bo/XzdBiddingFileEstimateBo.java @@ -0,0 +1,127 @@ +package org.dromara.xzd.biddingManagement.biddingDocument.domain.bo; + +import org.dromara.xzd.biddingManagement.biddingDocument.domain.XzdBiddingFileEstimate; +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 java.util.Date; + +/** + * 招标文件审估业务对象 xzd_bidding_file_estimate + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdBiddingFileEstimate.class, reverseConvertGenerate = false) +public class XzdBiddingFileEstimateBo extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 单据编码 + */ + @NotBlank(message = "单据编码不能为空", groups = { AddGroup.class, EditGroup.class }) + private String documentCode; + + /** + * 单据日期 + */ + private Date documentDate; + + /** + * 项目名称 + */ + @NotBlank(message = "项目名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectName; + + /** + * 标题 + */ + private String title; + + /** + * 工程地点 + */ + private String projectLocation; + + /** + * 招标单位 + */ + private String biddingUnit; + + /** + * 招标方式 + */ + private String biddingMethod; + + /** + * 承包方式 + */ + private String contractingMethod; + + /** + * 开标时间 + */ + private Date startDate; + + /** + * 工程概况 + */ + private String projectOverview; + + /** + * 投标时间 + */ + private Date biddingDate; + + /** + * 投标地址 + */ + private String biddingAddress; + + /** + * 招标控制价 + */ + private Long biddingControlPrice; + + /** + * 评标方法 + */ + private String evaluationMethod; + + /** + * 招标范围 + */ + private String biddingScope; + + /** + * 项目经理要求 + */ + private String projectManagerRequirement; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/vo/XzdBiddingFileEstimateVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/vo/XzdBiddingFileEstimateVo.java new file mode 100644 index 00000000..3990c67e --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/vo/XzdBiddingFileEstimateVo.java @@ -0,0 +1,155 @@ +package org.dromara.xzd.biddingManagement.biddingDocument.domain.vo; + +import java.util.Date; + +import org.dromara.xzd.biddingManagement.biddingDocument.domain.XzdBiddingFileEstimate; +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; + + +/** + * 招标文件审估视图对象 xzd_bidding_file_estimate + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdBiddingFileEstimate.class) +public class XzdBiddingFileEstimateVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 单据编码 + */ + @ExcelProperty(value = "单据编码") + private String documentCode; + + /** + * 单据日期 + */ + @ExcelProperty(value = "单据日期") + private Date documentDate; + + /** + * 项目名称 + */ + @ExcelProperty(value = "项目名称") + private String projectName; + + /** + * 标题 + */ + @ExcelProperty(value = "标题") + private String title; + + /** + * 工程地点 + */ + @ExcelProperty(value = "工程地点") + private String projectLocation; + + /** + * 招标单位 + */ + @ExcelProperty(value = "招标单位") + private String biddingUnit; + + /** + * 招标方式 + */ + @ExcelProperty(value = "招标方式", converter = ExcelDictConvert.class) + @ExcelDictFormat(dictType = "xzd_bidding_method") + private String biddingMethod; + + /** + * 承包方式 + */ + @ExcelProperty(value = "承包方式", converter = ExcelDictConvert.class) + @ExcelDictFormat(dictType = "xzd_contracting_method") + private String contractingMethod; + + /** + * 开标时间 + */ + @ExcelProperty(value = "开标时间") + private Date startDate; + + /** + * 工程概况 + */ + @ExcelProperty(value = "工程概况") + private String projectOverview; + + /** + * 投标时间 + */ + @ExcelProperty(value = "投标时间") + private Date biddingDate; + + /** + * 投标地址 + */ + @ExcelProperty(value = "投标地址") + private String biddingAddress; + + /** + * 招标控制价 + */ + @ExcelProperty(value = "招标控制价") + private Long biddingControlPrice; + + /** + * 评标方法 + */ + @ExcelProperty(value = "评标方法", converter = ExcelDictConvert.class) + @ExcelDictFormat(dictType = "xzd_evaluation_method") + private String evaluationMethod; + + /** + * 招标范围 + */ + @ExcelProperty(value = "招标范围") + private String biddingScope; + + /** + * 项目经理要求 + */ + @ExcelProperty(value = "项目经理要求") + private String projectManagerRequirement; + + /** + * 文件ID + */ + @ExcelProperty(value = "文件ID") + private String fileId; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + /** + * 审核状态 + */ + @ExcelProperty(value = "审核状态") + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/mapper/XzdBiddingFileEstimateMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/mapper/XzdBiddingFileEstimateMapper.java new file mode 100644 index 00000000..622307ee --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/mapper/XzdBiddingFileEstimateMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.biddingManagement.biddingDocument.mapper; + +import org.dromara.xzd.biddingManagement.biddingDocument.domain.XzdBiddingFileEstimate; +import org.dromara.xzd.biddingManagement.biddingDocument.domain.vo.XzdBiddingFileEstimateVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 招标文件审估Mapper接口 + * + * @author Lion Li + * @date 2025-10-10 + */ +public interface XzdBiddingFileEstimateMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/IXzdBiddingFileEstimateService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/IXzdBiddingFileEstimateService.java new file mode 100644 index 00000000..24a9c0e1 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/IXzdBiddingFileEstimateService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.biddingManagement.biddingDocument.service; + +import org.dromara.xzd.biddingManagement.biddingDocument.domain.vo.XzdBiddingFileEstimateVo; +import org.dromara.xzd.biddingManagement.biddingDocument.domain.bo.XzdBiddingFileEstimateBo; +import org.dromara.xzd.biddingManagement.biddingDocument.domain.XzdBiddingFileEstimate; +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-10-10 + */ +public interface IXzdBiddingFileEstimateService extends IService{ + + /** + * 查询招标文件审估 + * + * @param id 主键 + * @return 招标文件审估 + */ + XzdBiddingFileEstimateVo queryById(Long id); + + /** + * 分页查询招标文件审估列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 招标文件审估分页列表 + */ + TableDataInfo queryPageList(XzdBiddingFileEstimateBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的招标文件审估列表 + * + * @param bo 查询条件 + * @return 招标文件审估列表 + */ + List queryList(XzdBiddingFileEstimateBo bo); + + /** + * 新增招标文件审估 + * + * @param bo 招标文件审估 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdBiddingFileEstimateBo bo); + + /** + * 修改招标文件审估 + * + * @param bo 招标文件审估 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdBiddingFileEstimateBo 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/biddingDocument/service/impl/XzdBiddingFileEstimateServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/impl/XzdBiddingFileEstimateServiceImpl.java new file mode 100644 index 00000000..7b7e7dcf --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/impl/XzdBiddingFileEstimateServiceImpl.java @@ -0,0 +1,160 @@ +package org.dromara.xzd.biddingManagement.biddingDocument.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.utilS.AreaUtil; +import org.springframework.stereotype.Service; +import org.dromara.xzd.biddingManagement.biddingDocument.domain.bo.XzdBiddingFileEstimateBo; +import org.dromara.xzd.biddingManagement.biddingDocument.domain.vo.XzdBiddingFileEstimateVo; +import org.dromara.xzd.biddingManagement.biddingDocument.domain.XzdBiddingFileEstimate; +import org.dromara.xzd.biddingManagement.biddingDocument.mapper.XzdBiddingFileEstimateMapper; +import org.dromara.xzd.biddingManagement.biddingDocument.service.IXzdBiddingFileEstimateService; + +import java.time.LocalDateTime; +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 招标文件审估Service业务层处理 + * + * @author Lion Li + * @date 2025-10-10 + */ +@RequiredArgsConstructor +@Service +public class XzdBiddingFileEstimateServiceImpl extends ServiceImpl implements IXzdBiddingFileEstimateService { + + private final XzdBiddingFileEstimateMapper baseMapper; + + + private final AreaUtil areaUtil; + + /** + * 查询招标文件审估 + * + * @param id 主键 + * @return 招标文件审估 + */ + @Override + public XzdBiddingFileEstimateVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询招标文件审估列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 招标文件审估分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdBiddingFileEstimateBo 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(XzdBiddingFileEstimateBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdBiddingFileEstimateBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdBiddingFileEstimate::getId); + lqw.eq(StringUtils.isNotBlank(bo.getDocumentCode()), XzdBiddingFileEstimate::getDocumentCode, bo.getDocumentCode()); + lqw.eq(bo.getDocumentDate() != null, XzdBiddingFileEstimate::getDocumentDate, bo.getDocumentDate()); + lqw.like(StringUtils.isNotBlank(bo.getProjectName()), XzdBiddingFileEstimate::getProjectName, bo.getProjectName()); + lqw.eq(StringUtils.isNotBlank(bo.getTitle()), XzdBiddingFileEstimate::getTitle, bo.getTitle()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectLocation()), XzdBiddingFileEstimate::getProjectLocation, bo.getProjectLocation()); + lqw.eq(StringUtils.isNotBlank(bo.getBiddingUnit()), XzdBiddingFileEstimate::getBiddingUnit, bo.getBiddingUnit()); + lqw.eq(StringUtils.isNotBlank(bo.getBiddingMethod()), XzdBiddingFileEstimate::getBiddingMethod, bo.getBiddingMethod()); + lqw.eq(StringUtils.isNotBlank(bo.getContractingMethod()), XzdBiddingFileEstimate::getContractingMethod, bo.getContractingMethod()); + lqw.eq(bo.getStartDate() != null, XzdBiddingFileEstimate::getStartDate, bo.getStartDate()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectOverview()), XzdBiddingFileEstimate::getProjectOverview, bo.getProjectOverview()); + lqw.eq(bo.getBiddingDate() != null, XzdBiddingFileEstimate::getBiddingDate, bo.getBiddingDate()); + lqw.eq(StringUtils.isNotBlank(bo.getBiddingAddress()), XzdBiddingFileEstimate::getBiddingAddress, bo.getBiddingAddress()); + lqw.eq(bo.getBiddingControlPrice() != null, XzdBiddingFileEstimate::getBiddingControlPrice, bo.getBiddingControlPrice()); + lqw.eq(StringUtils.isNotBlank(bo.getEvaluationMethod()), XzdBiddingFileEstimate::getEvaluationMethod, bo.getEvaluationMethod()); + lqw.eq(StringUtils.isNotBlank(bo.getBiddingScope()), XzdBiddingFileEstimate::getBiddingScope, bo.getBiddingScope()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectManagerRequirement()), XzdBiddingFileEstimate::getProjectManagerRequirement, bo.getProjectManagerRequirement()); + lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdBiddingFileEstimate::getFileId, bo.getFileId()); + lqw.eq(StringUtils.isNotBlank(bo.getAuditStatus()), XzdBiddingFileEstimate::getAuditStatus, bo.getAuditStatus()); + return lqw; + } + + /** + * 新增招标文件审估 + * + * @param bo 招标文件审估 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdBiddingFileEstimateBo bo) { + XzdBiddingFileEstimate add = MapstructUtils.convert(bo, XzdBiddingFileEstimate.class); + validEntityBeforeSave(add); + + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdBiddingFileEstimate::getCreateTime, LocalDateTime.now())); + + String s = areaUtil.generateDateBasedNumber(); + + add.setDocumentCode(s+"-"+(l+1)); + + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改招标文件审估 + * + * @param bo 招标文件审估 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdBiddingFileEstimateBo bo) { + XzdBiddingFileEstimate update = MapstructUtils.convert(bo, XzdBiddingFileEstimate.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdBiddingFileEstimate 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/domain/dto/BiddingManagementDto.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/dto/BiddingManagementDto.java deleted file mode 100644 index 2e2d7901..00000000 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/domain/dto/BiddingManagementDto.java +++ /dev/null @@ -1,17 +0,0 @@ -package org.dromara.xzd.biddingManagement.domain.dto; - -import lombok.Data; -import org.dromara.xzd.biddingManagement.domain.bo.XzdBidPreProjectBo; -import org.dromara.xzd.biddingManagement.domain.bo.XzdBqlxProjectInfoBo; - -@Data -public class BiddingManagementDto { - -// 标前立项 - - private XzdBidPreProjectBo xzdBidPreProjectBo; - -// 标前立项-项目信息 - - private XzdBqlxProjectInfoBo xzdBqlxProjectInfoBo; -} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/controller/XzdBiddingAgencyFeePaymentController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/controller/XzdBiddingAgencyFeePaymentController.java new file mode 100644 index 00000000..fa8748b5 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/controller/XzdBiddingAgencyFeePaymentController.java @@ -0,0 +1,106 @@ +package org.dromara.xzd.biddingManagement.paymentapplication.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.paymentapplication.domain.vo.XzdBiddingAgencyFeePaymentVo; +import org.dromara.xzd.biddingManagement.paymentapplication.domain.bo.XzdBiddingAgencyFeePaymentBo; +import org.dromara.xzd.biddingManagement.paymentapplication.service.IXzdBiddingAgencyFeePaymentService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 招标代理服务费支付申请 + * + * @author Lion Li + * @date 2025-10-10 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/paymentapplication/biddingAgencyFeePayment") +public class XzdBiddingAgencyFeePaymentController extends BaseController { + + private final IXzdBiddingAgencyFeePaymentService xzdBiddingAgencyFeePaymentService; + + /** + * 查询招标代理服务费支付申请列表 + */ + @SaCheckPermission("paymentapplication:biddingAgencyFeePayment:list") + @GetMapping("/list") + public TableDataInfo list(XzdBiddingAgencyFeePaymentBo bo, PageQuery pageQuery) { + return xzdBiddingAgencyFeePaymentService.queryPageList(bo, pageQuery); + } + + /** + * 导出招标代理服务费支付申请列表 + */ + @SaCheckPermission("paymentapplication:biddingAgencyFeePayment:export") + @Log(title = "招标代理服务费支付申请", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdBiddingAgencyFeePaymentBo bo, HttpServletResponse response) { + List list = xzdBiddingAgencyFeePaymentService.queryList(bo); + ExcelUtil.exportExcel(list, "招标代理服务费支付申请", XzdBiddingAgencyFeePaymentVo.class, response); + } + + /** + * 获取招标代理服务费支付申请详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("paymentapplication:biddingAgencyFeePayment:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdBiddingAgencyFeePaymentService.queryById(id)); + } + + /** + * 新增招标代理服务费支付申请 + */ + @SaCheckPermission("paymentapplication:biddingAgencyFeePayment:add") + @Log(title = "招标代理服务费支付申请", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdBiddingAgencyFeePaymentBo bo) { + + return toAjax(xzdBiddingAgencyFeePaymentService.insertByBo(bo)); + } + + /** + * 修改招标代理服务费支付申请 + */ + @SaCheckPermission("paymentapplication:biddingAgencyFeePayment:edit") + @Log(title = "招标代理服务费支付申请", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdBiddingAgencyFeePaymentBo bo) { + return toAjax(xzdBiddingAgencyFeePaymentService.updateByBo(bo)); + } + + /** + * 删除招标代理服务费支付申请 + * + * @param ids 主键串 + */ + @SaCheckPermission("paymentapplication:biddingAgencyFeePayment:remove") + @Log(title = "招标代理服务费支付申请", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdBiddingAgencyFeePaymentService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/XzdBiddingAgencyFeePayment.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/XzdBiddingAgencyFeePayment.java new file mode 100644 index 00000000..17b4b97f --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/XzdBiddingAgencyFeePayment.java @@ -0,0 +1,120 @@ +package org.dromara.xzd.biddingManagement.paymentapplication.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.time.LocalDateTime; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 招标代理服务费支付申请对象 xzd_bidding_agency_fee_payment + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_bidding_agency_fee_payment") +public class XzdBiddingAgencyFeePayment extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 单据编码 + */ + private String documentCode; + + /** + * 单据日期 + */ + private LocalDateTime documentDate; + + /** + * 标题 + */ + private String title; + + /** + * 项目 + */ + private String projectName; + + /** + * 工程地点 + */ + private String projectLocation; + + /** + * 联系人 + */ + private String contactPerson; + + /** + * 联系方式 + */ + private String contactMethod; + + /** + * 投标时间 + */ + private LocalDateTime biddingDate; + + /** + * 代理机构名称 + */ + private String agencyName; + + /** + * 申请金额 + */ + private Long applicationAmount; + + /** + * 支付方式 + */ + private String paymentMethod; + + /** + * 收款银行 + */ + private String receivingBank; + + /** + * 收款 + */ + private String receivingAccount; + + /** + * 事由 + */ + private String reason; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/bo/XzdBiddingAgencyFeePaymentBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/bo/XzdBiddingAgencyFeePaymentBo.java new file mode 100644 index 00000000..8704c710 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/bo/XzdBiddingAgencyFeePaymentBo.java @@ -0,0 +1,121 @@ +package org.dromara.xzd.biddingManagement.paymentapplication.domain.bo; + +import org.dromara.xzd.biddingManagement.paymentapplication.domain.XzdBiddingAgencyFeePayment; +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 java.time.LocalDateTime; + +/** + * 招标代理服务费支付申请业务对象 xzd_bidding_agency_fee_payment + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdBiddingAgencyFeePayment.class, reverseConvertGenerate = false) +public class XzdBiddingAgencyFeePaymentBo extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 单据编码 + */ + private String documentCode; + + /** + * 单据日期 + */ + @NotNull(message = "单据日期不能为空", groups = { AddGroup.class, EditGroup.class }) + private LocalDateTime documentDate; + + /** + * 标题 + */ + private String title; + + /** + * 项目 + */ + @NotBlank(message = "项目不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectName; + + /** + * 工程地点 + */ + private String projectLocation; + + /** + * 联系人 + */ + private String contactPerson; + + /** + * 联系方式 + */ + private String contactMethod; + + /** + * 投标时间 + */ + private LocalDateTime biddingDate; + + /** + * 代理机构名称 + */ + @NotBlank(message = "代理机构名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String agencyName; + + /** + * 申请金额 + */ + @NotNull(message = "申请金额不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long applicationAmount; + + /** + * 支付方式 + */ + @NotBlank(message = "支付方式不能为空", groups = { AddGroup.class, EditGroup.class }) + private String paymentMethod; + + /** + * 收款银行 + */ + private String receivingBank; + + /** + * 收款 + */ + private String receivingAccount; + + /** + * 事由 + */ + private String reason; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/vo/XzdBiddingAgencyFeePaymentVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/vo/XzdBiddingAgencyFeePaymentVo.java new file mode 100644 index 00000000..0f7d55ad --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/vo/XzdBiddingAgencyFeePaymentVo.java @@ -0,0 +1,141 @@ +package org.dromara.xzd.biddingManagement.paymentapplication.domain.vo; + +import java.util.Date; + +import org.dromara.xzd.biddingManagement.paymentapplication.domain.XzdBiddingAgencyFeePayment; +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; + + +/** + * 招标代理服务费支付申请视图对象 xzd_bidding_agency_fee_payment + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdBiddingAgencyFeePayment.class) +public class XzdBiddingAgencyFeePaymentVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 单据编码 + */ + @ExcelProperty(value = "单据编码") + private String documentCode; + + /** + * 单据日期 + */ + @ExcelProperty(value = "单据日期") + private Date documentDate; + + /** + * 标题 + */ + @ExcelProperty(value = "标题") + private String title; + + /** + * 项目 + */ + @ExcelProperty(value = "项目") + private String projectName; + + /** + * 工程地点 + */ + @ExcelProperty(value = "工程地点") + private String projectLocation; + + /** + * 联系人 + */ + @ExcelProperty(value = "联系人") + private String contactPerson; + + /** + * 联系方式 + */ + @ExcelProperty(value = "联系方式") + private String contactMethod; + + /** + * 投标时间 + */ + @ExcelProperty(value = "投标时间") + private Date biddingDate; + + /** + * 代理机构名称 + */ + @ExcelProperty(value = "代理机构名称") + private String agencyName; + + /** + * 申请金额 + */ + @ExcelProperty(value = "申请金额") + private Long applicationAmount; + + /** + * 支付方式 + */ + @ExcelProperty(value = "支付方式", converter = ExcelDictConvert.class) + @ExcelDictFormat(dictType = "xzd_payment_method") + private String paymentMethod; + + /** + * 收款银行 + */ + @ExcelProperty(value = "收款银行") + private String receivingBank; + + /** + * 收款 + */ + @ExcelProperty(value = "收款") + private String receivingAccount; + + /** + * 事由 + */ + @ExcelProperty(value = "事由") + private String reason; + + /** + * 文件ID + */ + @ExcelProperty(value = "文件ID") + private String fileId; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + /** + * 审核状态 + */ + @ExcelProperty(value = "审核状态") + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/mapper/XzdBiddingAgencyFeePaymentMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/mapper/XzdBiddingAgencyFeePaymentMapper.java new file mode 100644 index 00000000..a8db37e3 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/mapper/XzdBiddingAgencyFeePaymentMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.biddingManagement.paymentapplication.mapper; + +import org.dromara.xzd.biddingManagement.paymentapplication.domain.XzdBiddingAgencyFeePayment; +import org.dromara.xzd.biddingManagement.paymentapplication.domain.vo.XzdBiddingAgencyFeePaymentVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 招标代理服务费支付申请Mapper接口 + * + * @author Lion Li + * @date 2025-10-10 + */ +public interface XzdBiddingAgencyFeePaymentMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/IXzdBiddingAgencyFeePaymentService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/IXzdBiddingAgencyFeePaymentService.java new file mode 100644 index 00000000..5da229b1 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/IXzdBiddingAgencyFeePaymentService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.biddingManagement.paymentapplication.service; + +import org.dromara.xzd.biddingManagement.paymentapplication.domain.vo.XzdBiddingAgencyFeePaymentVo; +import org.dromara.xzd.biddingManagement.paymentapplication.domain.bo.XzdBiddingAgencyFeePaymentBo; +import org.dromara.xzd.biddingManagement.paymentapplication.domain.XzdBiddingAgencyFeePayment; +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-10-10 + */ +public interface IXzdBiddingAgencyFeePaymentService extends IService{ + + /** + * 查询招标代理服务费支付申请 + * + * @param id 主键 + * @return 招标代理服务费支付申请 + */ + XzdBiddingAgencyFeePaymentVo queryById(Long id); + + /** + * 分页查询招标代理服务费支付申请列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 招标代理服务费支付申请分页列表 + */ + TableDataInfo queryPageList(XzdBiddingAgencyFeePaymentBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的招标代理服务费支付申请列表 + * + * @param bo 查询条件 + * @return 招标代理服务费支付申请列表 + */ + List queryList(XzdBiddingAgencyFeePaymentBo bo); + + /** + * 新增招标代理服务费支付申请 + * + * @param bo 招标代理服务费支付申请 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdBiddingAgencyFeePaymentBo bo); + + /** + * 修改招标代理服务费支付申请 + * + * @param bo 招标代理服务费支付申请 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdBiddingAgencyFeePaymentBo 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/paymentapplication/service/impl/XzdBiddingAgencyFeePaymentServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/impl/XzdBiddingAgencyFeePaymentServiceImpl.java new file mode 100644 index 00000000..055816b3 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/impl/XzdBiddingAgencyFeePaymentServiceImpl.java @@ -0,0 +1,158 @@ +package org.dromara.xzd.biddingManagement.paymentapplication.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.utilS.AreaUtil; +import org.springframework.stereotype.Service; +import org.dromara.xzd.biddingManagement.paymentapplication.domain.bo.XzdBiddingAgencyFeePaymentBo; +import org.dromara.xzd.biddingManagement.paymentapplication.domain.vo.XzdBiddingAgencyFeePaymentVo; +import org.dromara.xzd.biddingManagement.paymentapplication.domain.XzdBiddingAgencyFeePayment; +import org.dromara.xzd.biddingManagement.paymentapplication.mapper.XzdBiddingAgencyFeePaymentMapper; +import org.dromara.xzd.biddingManagement.paymentapplication.service.IXzdBiddingAgencyFeePaymentService; + +import java.time.LocalDateTime; +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 招标代理服务费支付申请Service业务层处理 + * + * @author Lion Li + * @date 2025-10-10 + */ +@RequiredArgsConstructor +@Service +public class XzdBiddingAgencyFeePaymentServiceImpl extends ServiceImpl implements IXzdBiddingAgencyFeePaymentService { + + private final XzdBiddingAgencyFeePaymentMapper baseMapper; + + private final AreaUtil areaUtil; + + + /** + * 查询招标代理服务费支付申请 + * + * @param id 主键 + * @return 招标代理服务费支付申请 + */ + @Override + public XzdBiddingAgencyFeePaymentVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询招标代理服务费支付申请列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 招标代理服务费支付申请分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdBiddingAgencyFeePaymentBo 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(XzdBiddingAgencyFeePaymentBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdBiddingAgencyFeePaymentBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdBiddingAgencyFeePayment::getId); + lqw.eq(StringUtils.isNotBlank(bo.getDocumentCode()), XzdBiddingAgencyFeePayment::getDocumentCode, bo.getDocumentCode()); + lqw.eq(bo.getDocumentDate() != null, XzdBiddingAgencyFeePayment::getDocumentDate, bo.getDocumentDate()); + lqw.eq(StringUtils.isNotBlank(bo.getTitle()), XzdBiddingAgencyFeePayment::getTitle, bo.getTitle()); + lqw.like(StringUtils.isNotBlank(bo.getProjectName()), XzdBiddingAgencyFeePayment::getProjectName, bo.getProjectName()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectLocation()), XzdBiddingAgencyFeePayment::getProjectLocation, bo.getProjectLocation()); + lqw.eq(StringUtils.isNotBlank(bo.getContactPerson()), XzdBiddingAgencyFeePayment::getContactPerson, bo.getContactPerson()); + lqw.eq(StringUtils.isNotBlank(bo.getContactMethod()), XzdBiddingAgencyFeePayment::getContactMethod, bo.getContactMethod()); + lqw.eq(bo.getBiddingDate() != null, XzdBiddingAgencyFeePayment::getBiddingDate, bo.getBiddingDate()); + lqw.like(StringUtils.isNotBlank(bo.getAgencyName()), XzdBiddingAgencyFeePayment::getAgencyName, bo.getAgencyName()); + lqw.eq(bo.getApplicationAmount() != null, XzdBiddingAgencyFeePayment::getApplicationAmount, bo.getApplicationAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getPaymentMethod()), XzdBiddingAgencyFeePayment::getPaymentMethod, bo.getPaymentMethod()); + lqw.eq(StringUtils.isNotBlank(bo.getReceivingBank()), XzdBiddingAgencyFeePayment::getReceivingBank, bo.getReceivingBank()); + lqw.eq(StringUtils.isNotBlank(bo.getReceivingAccount()), XzdBiddingAgencyFeePayment::getReceivingAccount, bo.getReceivingAccount()); + lqw.eq(StringUtils.isNotBlank(bo.getReason()), XzdBiddingAgencyFeePayment::getReason, bo.getReason()); + lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdBiddingAgencyFeePayment::getFileId, bo.getFileId()); + lqw.eq(StringUtils.isNotBlank(bo.getAuditStatus()), XzdBiddingAgencyFeePayment::getAuditStatus, bo.getAuditStatus()); + return lqw; + } + + /** + * 新增招标代理服务费支付申请 + * + * @param bo 招标代理服务费支付申请 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdBiddingAgencyFeePaymentBo bo) { + XzdBiddingAgencyFeePayment add = MapstructUtils.convert(bo, XzdBiddingAgencyFeePayment.class); + validEntityBeforeSave(add); + + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdBiddingAgencyFeePayment::getCreateTime, LocalDateTime.now())); + + String s = areaUtil.generateDateBasedNumber(); + + add.setDocumentCode(s+"-"+(l+1)); + + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改招标代理服务费支付申请 + * + * @param bo 招标代理服务费支付申请 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdBiddingAgencyFeePaymentBo bo) { + XzdBiddingAgencyFeePayment update = MapstructUtils.convert(bo, XzdBiddingAgencyFeePayment.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdBiddingAgencyFeePayment 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/resources/mapper/xzd/biddingManagement/XzdBidPreProjectMapper.xml b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/biddingManagement/XzdBidPreProjectMapper.xml deleted file mode 100644 index b503afc3..00000000 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/biddingManagement/XzdBidPreProjectMapper.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/biddingManagement/biaoqianlixiang/XzdBidPreProjectMapper.xml b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/biddingManagement/biaoqianlixiang/XzdBidPreProjectMapper.xml new file mode 100644 index 00000000..024d9b21 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/biddingManagement/biaoqianlixiang/XzdBidPreProjectMapper.xml @@ -0,0 +1,161 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 51686c212e5363a5a3cecf1c8c157baed2d14a24 Mon Sep 17 00:00:00 2001 From: lg Date: Sun, 12 Oct 2025 00:25:23 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=A0=87=E5=89=8D=E7=AB=8B=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/XzdBidPreProjectServiceImpl.java | 3 +- .../XzdProjectRiskAssessmentServiceImpl.java | 38 ++- .../domain/vo/XzdBiddingFileEstimateVo.java | 18 ++ .../XzdBiddingFileEstimateServiceImpl.java | 24 +- .../XzdBiddingDocumentController.java | 108 ++++++++ .../XzdTbwjBusinessBidController.java | 106 ++++++++ ...TbwjBusinessBidRequirementsController.java | 106 ++++++++ ...wjQualificationRequirementsController.java | 106 ++++++++ .../XzdTbwjTechnicalBidController.java | 106 ++++++++ ...bwjTechnicalBidRequirementsController.java | 106 ++++++++ .../domain/XzdBiddingDocument.java | 98 +++++++ .../domain/XzdTbwjBusinessBid.java | 85 ++++++ .../XzdTbwjBusinessBidRequirements.java | 58 ++++ .../XzdTbwjQualificationRequirements.java | 58 ++++ .../domain/XzdTbwjTechnicalBid.java | 55 ++++ .../XzdTbwjTechnicalBidRequirements.java | 58 ++++ .../domain/bo/XzdBiddingDocumentBo.java | 99 +++++++ .../domain/bo/XzdBiddingDocumentBoBylist.java | 42 +++ .../domain/bo/XzdTbwjBusinessBidBo.java | 87 ++++++ .../bo/XzdTbwjBusinessBidRequirementsBo.java | 59 +++++ .../XzdTbwjQualificationRequirementsBo.java | 59 +++++ .../domain/bo/XzdTbwjTechnicalBidBo.java | 54 ++++ .../bo/XzdTbwjTechnicalBidRequirementsBo.java | 59 +++++ .../domain/vo/XzdBiddingDocumentVo.java | 132 ++++++++++ .../domain/vo/XzdBiddingDocumentVoBylist.java | 39 +++ .../vo/XzdTbwjBusinessBidRequirementsVo.java | 69 +++++ .../domain/vo/XzdTbwjBusinessBidVo.java | 103 ++++++++ .../XzdTbwjQualificationRequirementsVo.java | 69 +++++ .../vo/XzdTbwjTechnicalBidRequirementsVo.java | 69 +++++ .../domain/vo/XzdTbwjTechnicalBidVo.java | 67 +++++ .../mapper/XzdBiddingDocumentMapper.java | 16 ++ .../mapper/XzdTbwjBusinessBidMapper.java | 16 ++ .../XzdTbwjBusinessBidRequirementsMapper.java | 16 ++ ...zdTbwjQualificationRequirementsMapper.java | 16 ++ .../mapper/XzdTbwjTechnicalBidMapper.java | 16 ++ ...XzdTbwjTechnicalBidRequirementsMapper.java | 17 ++ .../service/IXzdBiddingDocumentService.java | 74 ++++++ ...XzdTbwjBusinessBidRequirementsService.java | 72 +++++ .../service/IXzdTbwjBusinessBidService.java | 72 +++++ ...dTbwjQualificationRequirementsService.java | 72 +++++ ...zdTbwjTechnicalBidRequirementsService.java | 72 +++++ .../service/IXzdTbwjTechnicalBidService.java | 72 +++++ .../impl/XzdBiddingDocumentServiceImpl.java | 218 +++++++++++++++ ...bwjBusinessBidRequirementsServiceImpl.java | 134 ++++++++++ .../impl/XzdTbwjBusinessBidServiceImpl.java | 141 ++++++++++ ...jQualificationRequirementsServiceImpl.java | 134 ++++++++++ ...wjTechnicalBidRequirementsServiceImpl.java | 134 ++++++++++ .../impl/XzdTbwjTechnicalBidServiceImpl.java | 135 ++++++++++ .../XzdBidDepositPaymentController.java | 107 ++++++++ .../domain/XzdBidDepositPayment.java | 154 +++++++++++ .../domain/bo/XzdBidDepositPaymentBo.java | 159 +++++++++++ .../domain/vo/XzdBidDepositPaymentByBqlx.java | 17 ++ .../domain/vo/XzdBidDepositPaymentVo.java | 203 ++++++++++++++ .../mapper/XzdBidDepositPaymentMapper.java | 16 ++ .../service/IXzdBidDepositPaymentService.java | 72 +++++ .../impl/XzdBidDepositPaymentServiceImpl.java | 192 ++++++++++++++ .../XzdBidDepositRecoveryController.java | 107 ++++++++ .../domain/XzdBidDepositRecovery.java | 196 ++++++++++++++ .../domain/bo/XzdBidDepositRecoveryBo.java | 207 +++++++++++++++ .../domain/vo/XzdBidDepositRecoveryVo.java | 248 ++++++++++++++++++ .../domain/vo/XzdBidDepositRecoveryXqVo.java | 21 ++ .../mapper/XzdBidDepositRecoveryMapper.java | 17 ++ .../IXzdBidDepositRecoveryService.java | 73 ++++++ .../XzdBidDepositRecoveryServiceImpl.java | 201 ++++++++++++++ .../vo/XzdBiddingAgencyFeePaymentVo.java | 16 ++ ...XzdBiddingAgencyFeePaymentServiceImpl.java | 21 +- .../XzdPostBidAnalysisController.java | 106 ++++++++ .../domain/XzdPostBidAnalysis.java | 128 +++++++++ .../domain/bo/XzdPostBidAnalysisBo.java | 128 +++++++++ .../domain/vo/XzdPostBidAnalysisVo.java | 155 +++++++++++ .../mapper/XzdPostBidAnalysisMapper.java | 17 ++ .../service/IXzdPostBidAnalysisService.java | 72 +++++ .../impl/XzdPostBidAnalysisServiceImpl.java | 149 +++++++++++ .../XzdDepositApplicationController.java | 106 ++++++++ .../domain/XzdDepositApplication.java | 131 +++++++++ .../domain/bo/XzdDepositApplicationBo.java | 130 +++++++++ .../domain/vo/XzdDepositApplicationVo.java | 155 +++++++++++ .../mapper/XzdDepositApplicationMapper.java | 16 ++ .../IXzdDepositApplicationService.java | 72 +++++ .../XzdDepositApplicationServiceImpl.java | 175 ++++++++++++ 80 files changed, 7121 insertions(+), 13 deletions(-) create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdBiddingDocumentController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjBusinessBidController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjBusinessBidRequirementsController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjQualificationRequirementsController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjTechnicalBidController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjTechnicalBidRequirementsController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdBiddingDocument.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjBusinessBid.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjBusinessBidRequirements.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjQualificationRequirements.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjTechnicalBid.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjTechnicalBidRequirements.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdBiddingDocumentBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdBiddingDocumentBoBylist.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjBusinessBidBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjBusinessBidRequirementsBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjQualificationRequirementsBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjTechnicalBidBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjTechnicalBidRequirementsBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdBiddingDocumentVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdBiddingDocumentVoBylist.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjBusinessBidRequirementsVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjBusinessBidVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjQualificationRequirementsVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjTechnicalBidRequirementsVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjTechnicalBidVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdBiddingDocumentMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjBusinessBidMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjBusinessBidRequirementsMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjQualificationRequirementsMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjTechnicalBidMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjTechnicalBidRequirementsMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdBiddingDocumentService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjBusinessBidRequirementsService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjBusinessBidService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjQualificationRequirementsService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjTechnicalBidRequirementsService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjTechnicalBidService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdBiddingDocumentServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjBusinessBidRequirementsServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjBusinessBidServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjQualificationRequirementsServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjTechnicalBidRequirementsServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjTechnicalBidServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/controller/XzdBidDepositPaymentController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/XzdBidDepositPayment.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/bo/XzdBidDepositPaymentBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/vo/XzdBidDepositPaymentByBqlx.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/vo/XzdBidDepositPaymentVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/mapper/XzdBidDepositPaymentMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/service/IXzdBidDepositPaymentService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/service/impl/XzdBidDepositPaymentServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/controller/XzdBidDepositRecoveryController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/XzdBidDepositRecovery.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/bo/XzdBidDepositRecoveryBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/vo/XzdBidDepositRecoveryVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/vo/XzdBidDepositRecoveryXqVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/mapper/XzdBidDepositRecoveryMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/service/IXzdBidDepositRecoveryService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/service/impl/XzdBidDepositRecoveryServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/controller/XzdPostBidAnalysisController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/XzdPostBidAnalysis.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/bo/XzdPostBidAnalysisBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/vo/XzdPostBidAnalysisVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/mapper/XzdPostBidAnalysisMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/service/IXzdPostBidAnalysisService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/service/impl/XzdPostBidAnalysisServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/controller/XzdDepositApplicationController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/XzdDepositApplication.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/bo/XzdDepositApplicationBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/vo/XzdDepositApplicationVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/mapper/XzdDepositApplicationMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/service/IXzdDepositApplicationService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/service/impl/XzdDepositApplicationServiceImpl.java diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdBidPreProjectServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdBidPreProjectServiceImpl.java index 670dd091..4a443e17 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdBidPreProjectServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biaoqianlixiang/service/impl/XzdBidPreProjectServiceImpl.java @@ -26,6 +26,7 @@ import org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper.XzdBidPreProject import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdBidPreProjectService; import org.springframework.transaction.annotation.Transactional; +import java.time.LocalDate; import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; @@ -145,7 +146,7 @@ public class XzdBidPreProjectServiceImpl extends ServiceImpl().gt(XzdBidPreProject::getCreateTime, LocalDateTime.now())); + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdBidPreProject::getCreateTime, LocalDate.now())); String s = areaUtil.generateDateBasedNumber(); // 标前立项 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 18c33350..a5084dea 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 @@ -9,8 +9,10 @@ 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.system.service.impl.SysOssServiceImpl; 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.XzdBidPreProjectVo; import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdProjectByVo; import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdProjectRiskAssessmentVo; import org.dromara.xzd.biddingManagement.biaoqianlixiang.mapper.XzdProjectRiskAssessmentMapper; @@ -19,10 +21,10 @@ import org.dromara.xzd.utilS.AreaUtil; import org.springframework.stereotype.Service; +import java.time.LocalDate; import java.time.LocalDateTime; -import java.util.List; -import java.util.Map; -import java.util.Collection; +import java.util.*; +import java.util.stream.Collectors; /** * 项目风险评估签审意见Service业务层处理 @@ -38,6 +40,9 @@ public class XzdProjectRiskAssessmentServiceImpl extends ServiceImpl().gt(XzdProjectRiskAssessment::getCreateTime, LocalDateTime.now())); + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdProjectRiskAssessment::getCreateTime, LocalDate.now())); add.setDocumentNumber(s+"-"+(l+1)); } boolean flag = baseMapper.insert(add) > 0; @@ -169,7 +181,17 @@ public class XzdProjectRiskAssessmentServiceImpl extends ServiceImpl ids, Boolean isValid) { if(isValid){ - //TODO 做一些业务上的校验,判断是否需要校验 + for (Long id : ids) { + XzdProjectRiskAssessmentVo xzdProjectRiskAssessmentVo = baseMapper.selectVoById(id); + + // 删除附件 + if (!StringUtils.isEmpty(xzdProjectRiskAssessmentVo.getFileId())){ + List collect = Arrays.stream(xzdProjectRiskAssessmentVo.getFileId().split(",")).map(item -> { + return Long.parseLong(item); + }).collect(Collectors.toList()); + sysOssService.deleteWithValidByIds(collect, false); + }; + } } return baseMapper.deleteByIds(ids) > 0; } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/vo/XzdBiddingFileEstimateVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/vo/XzdBiddingFileEstimateVo.java index 3990c67e..c2356d20 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/vo/XzdBiddingFileEstimateVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/domain/vo/XzdBiddingFileEstimateVo.java @@ -2,6 +2,10 @@ package org.dromara.xzd.biddingManagement.biddingDocument.domain.vo; import java.util.Date; +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import org.dromara.common.translation.annotation.Translation; +import org.dromara.common.translation.constant.TransConstant; import org.dromara.xzd.biddingManagement.biddingDocument.domain.XzdBiddingFileEstimate; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; @@ -152,4 +156,18 @@ public class XzdBiddingFileEstimateVo implements Serializable { private String auditStatus; + + private Long createBy; + + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "createBy") + private String createName; + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private Date createTime; + + + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/impl/XzdBiddingFileEstimateServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/impl/XzdBiddingFileEstimateServiceImpl.java index 7b7e7dcf..02aa021b 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/impl/XzdBiddingFileEstimateServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocument/service/impl/XzdBiddingFileEstimateServiceImpl.java @@ -9,6 +9,8 @@ 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.system.service.impl.SysOssServiceImpl; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBidPreProjectVo; import org.dromara.xzd.utilS.AreaUtil; import org.springframework.stereotype.Service; import org.dromara.xzd.biddingManagement.biddingDocument.domain.bo.XzdBiddingFileEstimateBo; @@ -17,10 +19,13 @@ import org.dromara.xzd.biddingManagement.biddingDocument.domain.XzdBiddingFileEs import org.dromara.xzd.biddingManagement.biddingDocument.mapper.XzdBiddingFileEstimateMapper; import org.dromara.xzd.biddingManagement.biddingDocument.service.IXzdBiddingFileEstimateService; +import java.time.LocalDate; import java.time.LocalDateTime; +import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.Collection; +import java.util.stream.Collectors; /** * 招标文件审估Service业务层处理 @@ -35,6 +40,10 @@ public class XzdBiddingFileEstimateServiceImpl extends ServiceImpl().gt(XzdBiddingFileEstimate::getCreateTime, LocalDateTime.now())); + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdBiddingFileEstimate::getCreateTime, LocalDate.now())); String s = areaUtil.generateDateBasedNumber(); @@ -153,7 +162,18 @@ public class XzdBiddingFileEstimateServiceImpl extends ServiceImpl ids, Boolean isValid) { if(isValid){ - //TODO 做一些业务上的校验,判断是否需要校验 + for (Long id : ids) { + XzdBiddingFileEstimateVo xzdBiddingFileEstimateVo = baseMapper.selectVoById(id); + + // 删除附件 + if (!StringUtils.isEmpty(xzdBiddingFileEstimateVo.getFileId())){ + List collect = Arrays.stream(xzdBiddingFileEstimateVo.getFileId().split(",")).map(item -> { + return Long.parseLong(item); + }).collect(Collectors.toList()); + sysOssService.deleteWithValidByIds(collect, false); + } + } + } return baseMapper.deleteByIds(ids) > 0; } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdBiddingDocumentController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdBiddingDocumentController.java new file mode 100644 index 00000000..ecd40c8c --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdBiddingDocumentController.java @@ -0,0 +1,108 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdBiddingDocumentBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdBiddingDocumentBoBylist; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdBiddingDocumentVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdBiddingDocumentVoBylist; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdBiddingDocumentService; +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.common.mybatis.core.page.TableDataInfo; + +/** + * 投标文件 + * + * @author Lion Li + * @date 2025-10-11 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/biddingDocument/biddingDocument") +public class XzdBiddingDocumentController extends BaseController { + + private final IXzdBiddingDocumentService xzdBiddingDocumentService; + + /** + * 查询投标文件列表 + */ + @SaCheckPermission("biddingDocument:biddingDocument:list") + @GetMapping("/list") + public TableDataInfo list(XzdBiddingDocumentBo bo, PageQuery pageQuery) { + return xzdBiddingDocumentService.queryPageList(bo, pageQuery); + } + + /** + * 导出投标文件列表 + */ + @SaCheckPermission("biddingDocument:biddingDocument:export") + @Log(title = "投标文件", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdBiddingDocumentBo bo, HttpServletResponse response) { + List list = xzdBiddingDocumentService.queryList(bo); + ExcelUtil.exportExcel(list, "投标文件", XzdBiddingDocumentVo.class, response); + } + + /** + * 获取投标文件详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("biddingDocument:biddingDocument:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdBiddingDocumentService.queryById(id)); + } + + /** + * 新增投标文件 + */ + @SaCheckPermission("biddingDocument:biddingDocument:add") + @Log(title = "投标文件", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdBiddingDocumentBoBylist bo) { + return toAjax(xzdBiddingDocumentService.insertByBo(bo)); + } + + /** + * 修改投标文件 + */ + @SaCheckPermission("biddingDocument:biddingDocument:edit") + @Log(title = "投标文件", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdBiddingDocumentBoBylist bo) { + return toAjax(xzdBiddingDocumentService.updateByBo(bo)); + } + + /** + * 删除投标文件 + * + * @param ids 主键串 + */ + @SaCheckPermission("biddingDocument:biddingDocument:remove") + @Log(title = "投标文件", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdBiddingDocumentService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjBusinessBidController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjBusinessBidController.java new file mode 100644 index 00000000..3f7e47dd --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjBusinessBidController.java @@ -0,0 +1,106 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjBusinessBidBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjBusinessBidVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjBusinessBidService; +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.common.mybatis.core.page.TableDataInfo; + +/** + * 投标文件-商务标 + * + * @author Lion Li + * @date 2025-10-11 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/biddingDocument/tbwjBusinessBid") +public class XzdTbwjBusinessBidController extends BaseController { + + private final IXzdTbwjBusinessBidService xzdTbwjBusinessBidService; + + /** + * 查询投标文件-商务标列表 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBid:list") + @GetMapping("/list") + public TableDataInfo list(XzdTbwjBusinessBidBo bo, PageQuery pageQuery) { + return xzdTbwjBusinessBidService.queryPageList(bo, pageQuery); + } + + /** + * 导出投标文件-商务标列表 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBid:export") + @Log(title = "投标文件-商务标", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdTbwjBusinessBidBo bo, HttpServletResponse response) { + List list = xzdTbwjBusinessBidService.queryList(bo); + ExcelUtil.exportExcel(list, "投标文件-商务标", XzdTbwjBusinessBidVo.class, response); + } + + /** + * 获取投标文件-商务标详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBid:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdTbwjBusinessBidService.queryById(id)); + } + + /** + * 新增投标文件-商务标 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBid:add") + @Log(title = "投标文件-商务标", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdTbwjBusinessBidBo bo) { + return toAjax(xzdTbwjBusinessBidService.insertByBo(bo)); + } + + /** + * 修改投标文件-商务标 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBid:edit") + @Log(title = "投标文件-商务标", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdTbwjBusinessBidBo bo) { + return toAjax(xzdTbwjBusinessBidService.updateByBo(bo)); + } + + /** + * 删除投标文件-商务标 + * + * @param ids 主键串 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBid:remove") + @Log(title = "投标文件-商务标", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdTbwjBusinessBidService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjBusinessBidRequirementsController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjBusinessBidRequirementsController.java new file mode 100644 index 00000000..15027ad9 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjBusinessBidRequirementsController.java @@ -0,0 +1,106 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjBusinessBidRequirementsBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjBusinessBidRequirementsVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjBusinessBidRequirementsService; +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.common.mybatis.core.page.TableDataInfo; + +/** + * 投标文件-商务标要求 + * + * @author Lion Li + * @date 2025-10-11 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/biddingDocument/tbwjBusinessBidRequirements") +public class XzdTbwjBusinessBidRequirementsController extends BaseController { + + private final IXzdTbwjBusinessBidRequirementsService xzdTbwjBusinessBidRequirementsService; + + /** + * 查询投标文件-商务标要求列表 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBidRequirements:list") + @GetMapping("/list") + public TableDataInfo list(XzdTbwjBusinessBidRequirementsBo bo, PageQuery pageQuery) { + return xzdTbwjBusinessBidRequirementsService.queryPageList(bo, pageQuery); + } + + /** + * 导出投标文件-商务标要求列表 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBidRequirements:export") + @Log(title = "投标文件-商务标要求", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdTbwjBusinessBidRequirementsBo bo, HttpServletResponse response) { + List list = xzdTbwjBusinessBidRequirementsService.queryList(bo); + ExcelUtil.exportExcel(list, "投标文件-商务标要求", XzdTbwjBusinessBidRequirementsVo.class, response); + } + + /** + * 获取投标文件-商务标要求详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBidRequirements:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdTbwjBusinessBidRequirementsService.queryById(id)); + } + + /** + * 新增投标文件-商务标要求 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBidRequirements:add") + @Log(title = "投标文件-商务标要求", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdTbwjBusinessBidRequirementsBo bo) { + return toAjax(xzdTbwjBusinessBidRequirementsService.insertByBo(bo)); + } + + /** + * 修改投标文件-商务标要求 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBidRequirements:edit") + @Log(title = "投标文件-商务标要求", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdTbwjBusinessBidRequirementsBo bo) { + return toAjax(xzdTbwjBusinessBidRequirementsService.updateByBo(bo)); + } + + /** + * 删除投标文件-商务标要求 + * + * @param ids 主键串 + */ + @SaCheckPermission("biddingDocument:tbwjBusinessBidRequirements:remove") + @Log(title = "投标文件-商务标要求", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdTbwjBusinessBidRequirementsService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjQualificationRequirementsController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjQualificationRequirementsController.java new file mode 100644 index 00000000..c04ae34a --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjQualificationRequirementsController.java @@ -0,0 +1,106 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjQualificationRequirementsBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjQualificationRequirementsVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjQualificationRequirementsService; +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.common.mybatis.core.page.TableDataInfo; + +/** + * 投标文件-资审要求 + * + * @author Lion Li + * @date 2025-10-11 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/biddingDocument/tbwjQualificationRequirements") +public class XzdTbwjQualificationRequirementsController extends BaseController { + + private final IXzdTbwjQualificationRequirementsService xzdTbwjQualificationRequirementsService; + + /** + * 查询投标文件-资审要求列表 + */ + @SaCheckPermission("biddingDocument:tbwjQualificationRequirements:list") + @GetMapping("/list") + public TableDataInfo list(XzdTbwjQualificationRequirementsBo bo, PageQuery pageQuery) { + return xzdTbwjQualificationRequirementsService.queryPageList(bo, pageQuery); + } + + /** + * 导出投标文件-资审要求列表 + */ + @SaCheckPermission("biddingDocument:tbwjQualificationRequirements:export") + @Log(title = "投标文件-资审要求", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdTbwjQualificationRequirementsBo bo, HttpServletResponse response) { + List list = xzdTbwjQualificationRequirementsService.queryList(bo); + ExcelUtil.exportExcel(list, "投标文件-资审要求", XzdTbwjQualificationRequirementsVo.class, response); + } + + /** + * 获取投标文件-资审要求详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("biddingDocument:tbwjQualificationRequirements:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdTbwjQualificationRequirementsService.queryById(id)); + } + + /** + * 新增投标文件-资审要求 + */ + @SaCheckPermission("biddingDocument:tbwjQualificationRequirements:add") + @Log(title = "投标文件-资审要求", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdTbwjQualificationRequirementsBo bo) { + return toAjax(xzdTbwjQualificationRequirementsService.insertByBo(bo)); + } + + /** + * 修改投标文件-资审要求 + */ + @SaCheckPermission("biddingDocument:tbwjQualificationRequirements:edit") + @Log(title = "投标文件-资审要求", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdTbwjQualificationRequirementsBo bo) { + return toAjax(xzdTbwjQualificationRequirementsService.updateByBo(bo)); + } + + /** + * 删除投标文件-资审要求 + * + * @param ids 主键串 + */ + @SaCheckPermission("biddingDocument:tbwjQualificationRequirements:remove") + @Log(title = "投标文件-资审要求", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdTbwjQualificationRequirementsService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjTechnicalBidController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjTechnicalBidController.java new file mode 100644 index 00000000..e43cd85c --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjTechnicalBidController.java @@ -0,0 +1,106 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjTechnicalBidBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjTechnicalBidVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjTechnicalBidService; +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.common.mybatis.core.page.TableDataInfo; + +/** + * 投标文件-技术标 + * + * @author Lion Li + * @date 2025-10-11 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/biddingDocument/tbwjTechnicalBid") +public class XzdTbwjTechnicalBidController extends BaseController { + + private final IXzdTbwjTechnicalBidService xzdTbwjTechnicalBidService; + + /** + * 查询投标文件-技术标列表 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBid:list") + @GetMapping("/list") + public TableDataInfo list(XzdTbwjTechnicalBidBo bo, PageQuery pageQuery) { + return xzdTbwjTechnicalBidService.queryPageList(bo, pageQuery); + } + + /** + * 导出投标文件-技术标列表 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBid:export") + @Log(title = "投标文件-技术标", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdTbwjTechnicalBidBo bo, HttpServletResponse response) { + List list = xzdTbwjTechnicalBidService.queryList(bo); + ExcelUtil.exportExcel(list, "投标文件-技术标", XzdTbwjTechnicalBidVo.class, response); + } + + /** + * 获取投标文件-技术标详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBid:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdTbwjTechnicalBidService.queryById(id)); + } + + /** + * 新增投标文件-技术标 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBid:add") + @Log(title = "投标文件-技术标", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdTbwjTechnicalBidBo bo) { + return toAjax(xzdTbwjTechnicalBidService.insertByBo(bo)); + } + + /** + * 修改投标文件-技术标 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBid:edit") + @Log(title = "投标文件-技术标", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdTbwjTechnicalBidBo bo) { + return toAjax(xzdTbwjTechnicalBidService.updateByBo(bo)); + } + + /** + * 删除投标文件-技术标 + * + * @param ids 主键串 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBid:remove") + @Log(title = "投标文件-技术标", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdTbwjTechnicalBidService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjTechnicalBidRequirementsController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjTechnicalBidRequirementsController.java new file mode 100644 index 00000000..2481e1d0 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/controller/XzdTbwjTechnicalBidRequirementsController.java @@ -0,0 +1,106 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjTechnicalBidRequirementsBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjTechnicalBidRequirementsVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjTechnicalBidRequirementsService; +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.common.mybatis.core.page.TableDataInfo; + +/** + * 投标文件-技术标要求 + * + * @author Lion Li + * @date 2025-10-11 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/biddingDocument/tbwjTechnicalBidRequirements") +public class XzdTbwjTechnicalBidRequirementsController extends BaseController { + + private final IXzdTbwjTechnicalBidRequirementsService xzdTbwjTechnicalBidRequirementsService; + + /** + * 查询投标文件-技术标要求列表 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBidRequirements:list") + @GetMapping("/list") + public TableDataInfo list(XzdTbwjTechnicalBidRequirementsBo bo, PageQuery pageQuery) { + return xzdTbwjTechnicalBidRequirementsService.queryPageList(bo, pageQuery); + } + + /** + * 导出投标文件-技术标要求列表 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBidRequirements:export") + @Log(title = "投标文件-技术标要求", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdTbwjTechnicalBidRequirementsBo bo, HttpServletResponse response) { + List list = xzdTbwjTechnicalBidRequirementsService.queryList(bo); + ExcelUtil.exportExcel(list, "投标文件-技术标要求", XzdTbwjTechnicalBidRequirementsVo.class, response); + } + + /** + * 获取投标文件-技术标要求详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBidRequirements:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdTbwjTechnicalBidRequirementsService.queryById(id)); + } + + /** + * 新增投标文件-技术标要求 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBidRequirements:add") + @Log(title = "投标文件-技术标要求", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdTbwjTechnicalBidRequirementsBo bo) { + return toAjax(xzdTbwjTechnicalBidRequirementsService.insertByBo(bo)); + } + + /** + * 修改投标文件-技术标要求 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBidRequirements:edit") + @Log(title = "投标文件-技术标要求", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdTbwjTechnicalBidRequirementsBo bo) { + return toAjax(xzdTbwjTechnicalBidRequirementsService.updateByBo(bo)); + } + + /** + * 删除投标文件-技术标要求 + * + * @param ids 主键串 + */ + @SaCheckPermission("biddingDocument:tbwjTechnicalBidRequirements:remove") + @Log(title = "投标文件-技术标要求", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdTbwjTechnicalBidRequirementsService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdBiddingDocument.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdBiddingDocument.java new file mode 100644 index 00000000..2d0fb694 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdBiddingDocument.java @@ -0,0 +1,98 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 投标文件对象 xzd_bidding_document + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_bidding_document") +public class XzdBiddingDocument extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 单据编号 + */ + private String documentNumber; + + /** + * 标题 + */ + private String title; + + /** + * 投标时间 + */ + private Date biddingTime; + + /** + * 项目名称 + */ + private String projectName; + + /** + * 项目类型ID + */ + private Long projectType; + + /** + * 投标单位 + */ + private String bidUnit; + + /** + * 单据日期 + */ + private Date documentDate; + + /** + * 项目经理 + */ + private String projectManager; + + /** + * 工程概况 + */ + private String projectOverview; + + /** + * 组织 + */ + private String organization; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjBusinessBid.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjBusinessBid.java new file mode 100644 index 00000000..34458796 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjBusinessBid.java @@ -0,0 +1,85 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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_tbwj_business_bid + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@TableName("xzd_tbwj_business_bid") +public class XzdTbwjBusinessBid { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 标底价 + */ + private Long bidPrice; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + /** + * 折扣率 + */ + private Long discountRate; + + /** + * 最高限价 + */ + private Long ceilingPrice; + + /** + * 成本价 + */ + private Long costPrice; + + /** + * 投标报价 + */ + private Long totalBidPrice; + + /** + * 毛利率 + */ + private Long feeRate; + + /** + * 投标税率 + */ + private Long bidTaxRate; + + /** + * 备用金 + */ + private Long pettyCash; + + /** + * 编制部门 + */ + private String compilationDept; + + /** + * 报价说明 + */ + private String estimatedProfit; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjBusinessBidRequirements.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjBusinessBidRequirements.java new file mode 100644 index 00000000..c0f28bde --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjBusinessBidRequirements.java @@ -0,0 +1,58 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 投标文件-商务标要求对象 xzd_tbwj_business_bid_requirements + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_tbwj_business_bid_requirements") +public class XzdTbwjBusinessBidRequirements extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 商务标要求 + */ + private String businessBidRequirement; + + /** + * 编制要点 + */ + private String compilationPoints; + + /** + * 提供时间 + */ + private Date provideTime; + + /** + * 备注 + */ + private String remark; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjQualificationRequirements.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjQualificationRequirements.java new file mode 100644 index 00000000..7df65c62 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjQualificationRequirements.java @@ -0,0 +1,58 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 投标文件-资审要求对象 xzd_tbwj_qualification_requirements + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_tbwj_qualification_requirements") +public class XzdTbwjQualificationRequirements extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 资审要求 + */ + private String qualificationRequirement; + + /** + * 编制要点 + */ + private String compilationPoints; + + /** + * 提供时间 + */ + private Date provideTime; + + /** + * 备注 + */ + private String remark; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjTechnicalBid.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjTechnicalBid.java new file mode 100644 index 00000000..89815a45 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjTechnicalBid.java @@ -0,0 +1,55 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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_tbwj_technical_bid + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@TableName("xzd_tbwj_technical_bid") +public class XzdTbwjTechnicalBid { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 质量要求 + */ + private String qualityRequirements; + + /** + * 技术要求 + */ + private String technicalRequirements; + + /** + * 编制部门 + */ + private String compilationDept; + + /** + * 编制说明 + */ + private String compilationExplain; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjTechnicalBidRequirements.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjTechnicalBidRequirements.java new file mode 100644 index 00000000..cc66e471 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/XzdTbwjTechnicalBidRequirements.java @@ -0,0 +1,58 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 投标文件-技术标要求对象 xzd_tbwj_technical_bid_requirements + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_tbwj_technical_bid_requirements") +public class XzdTbwjTechnicalBidRequirements extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 技术标要求 + */ + private String technicalBidRequirement; + + /** + * 编制要点 + */ + private String compilationPoints; + + /** + * 提供时间 + */ + private Date provideTime; + + /** + * 备注 + */ + private String remark; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdBiddingDocumentBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdBiddingDocumentBo.java new file mode 100644 index 00000000..d78fe840 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdBiddingDocumentBo.java @@ -0,0 +1,99 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo; + +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 java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdBiddingDocument; + +/** + * 投标文件业务对象 xzd_bidding_document + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdBiddingDocument.class, reverseConvertGenerate = false) +public class XzdBiddingDocumentBo extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 单据编号 + */ + private String documentNumber; + + /** + * 标题 + */ + private String title; + + /** + * 投标时间 + */ + @NotNull(message = "投标时间不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date biddingTime; + + /** + * 项目名称 + */ + @NotBlank(message = "项目名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectName; + + /** + * 项目类型ID + */ + private Long projectType; + + /** + * 投标单位 + */ + private String bidUnit; + + /** + * 单据日期 + */ + @NotNull(message = "单据日期不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date documentDate; + + /** + * 项目经理 + */ + private String projectManager; + + /** + * 工程概况 + */ + private String projectOverview; + + /** + * 组织 + */ + private String organization; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdBiddingDocumentBoBylist.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdBiddingDocumentBoBylist.java new file mode 100644 index 00000000..185f4019 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdBiddingDocumentBoBylist.java @@ -0,0 +1,42 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo; + + +import lombok.Data; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdBiddingDocument; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.*; + +@Data +public class XzdBiddingDocumentBoBylist { + + +// 投标文件 + private XzdBiddingDocumentBo xzdBiddingDocument; + + // 投标文件-技术标 + private XzdTbwjTechnicalBidBo xzdTbwjTechnicalBidVo; + + // 投标文件-商务标 + private XzdTbwjBusinessBidBo xzdTbwjBusinessBidVo; + + + + + +// // 投标文件-商务标要求 +// private XzdTbwjBusinessBidRequirementsBo xzdTbwjBusinessBidRequirementsVo; +// +// +// +// +//// 投标文件-资审要求 +// private XzdTbwjQualificationRequirementsBo xzdTbwjQualificationRequirementsVo; +// +//// 投标文件-技术标要求 +// private XzdTbwjTechnicalBidRequirementsBo xzdTbwjTechnicalBidRequirementsVo; +// + + + + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjBusinessBidBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjBusinessBidBo.java new file mode 100644 index 00000000..2a4ff978 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjBusinessBidBo.java @@ -0,0 +1,87 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo; + +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.biddingDocumentList.domain.XzdTbwjBusinessBid; + +import java.math.BigDecimal; + +/** + * 投标文件-商务标业务对象 xzd_tbwj_business_bid + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdTbwjBusinessBid.class, reverseConvertGenerate = false) +public class XzdTbwjBusinessBidBo extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 标底价 + */ + private Long bidPrice; + + /** + * 折扣率 + */ + private BigDecimal discountRate; + + /** + * 最高限价 + */ + private Long ceilingPrice; + + /** + * 成本价 + */ + private Long costPrice; + + /** + * 投标报价 + */ + @NotNull(message = "投标报价不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long totalBidPrice; + + /** + * 毛利率 + */ + private BigDecimal feeRate; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + /** + * 投标税率 + */ + private BigDecimal bidTaxRate; + + /** + * 备用金 + */ + private Long pettyCash; + + /** + * 编制部门 + */ + private String compilationDept; + + /** + * 报价说明 + */ + private String estimatedProfit; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjBusinessBidRequirementsBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjBusinessBidRequirementsBo.java new file mode 100644 index 00000000..90e0640e --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjBusinessBidRequirementsBo.java @@ -0,0 +1,59 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo; + +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 java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjBusinessBidRequirements; + +/** + * 投标文件-商务标要求业务对象 xzd_tbwj_business_bid_requirements + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdTbwjBusinessBidRequirements.class, reverseConvertGenerate = false) +public class XzdTbwjBusinessBidRequirementsBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 商务标要求 + */ + @NotBlank(message = "商务标要求不能为空", groups = { AddGroup.class, EditGroup.class }) + private String businessBidRequirement; + + /** + * 编制要点 + */ + private String compilationPoints; + + /** + * 提供时间 + */ + @NotNull(message = "提供时间不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date provideTime; + + /** + * 备注 + */ + private String remark; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjQualificationRequirementsBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjQualificationRequirementsBo.java new file mode 100644 index 00000000..16314d2c --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjQualificationRequirementsBo.java @@ -0,0 +1,59 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo; + +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 java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjQualificationRequirements; + +/** + * 投标文件-资审要求业务对象 xzd_tbwj_qualification_requirements + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdTbwjQualificationRequirements.class, reverseConvertGenerate = false) +public class XzdTbwjQualificationRequirementsBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 资审要求 + */ + @NotBlank(message = "资审要求不能为空", groups = { AddGroup.class, EditGroup.class }) + private String qualificationRequirement; + + /** + * 编制要点 + */ + private String compilationPoints; + + /** + * 提供时间 + */ + @NotNull(message = "提供时间不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date provideTime; + + /** + * 备注 + */ + private String remark; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjTechnicalBidBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjTechnicalBidBo.java new file mode 100644 index 00000000..a433a24e --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjTechnicalBidBo.java @@ -0,0 +1,54 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo; + +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.biddingDocumentList.domain.XzdTbwjTechnicalBid; + +/** + * 投标文件-技术标业务对象 xzd_tbwj_technical_bid + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdTbwjTechnicalBid.class, reverseConvertGenerate = false) +public class XzdTbwjTechnicalBidBo extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 质量要求 + */ + private String qualityRequirements; + + /** + * 技术要求 + */ + private String technicalRequirements; + + /** + * 编制部门 + */ + private String compilationDept; + + /** + * 编制说明 + */ + private String compilationExplain; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjTechnicalBidRequirementsBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjTechnicalBidRequirementsBo.java new file mode 100644 index 00000000..1de00e7e --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/bo/XzdTbwjTechnicalBidRequirementsBo.java @@ -0,0 +1,59 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo; + +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 java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjTechnicalBidRequirements; + +/** + * 投标文件-技术标要求业务对象 xzd_tbwj_technical_bid_requirements + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdTbwjTechnicalBidRequirements.class, reverseConvertGenerate = false) +public class XzdTbwjTechnicalBidRequirementsBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 技术标要求 + */ + @NotBlank(message = "技术标要求不能为空", groups = { AddGroup.class, EditGroup.class }) + private String technicalBidRequirement; + + /** + * 编制要点 + */ + private String compilationPoints; + + /** + * 提供时间 + */ + @NotNull(message = "提供时间不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date provideTime; + + /** + * 备注 + */ + private String remark; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdBiddingDocumentVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdBiddingDocumentVo.java new file mode 100644 index 00000000..3db08469 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdBiddingDocumentVo.java @@ -0,0 +1,132 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +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.common.translation.annotation.Translation; +import org.dromara.common.translation.constant.TransConstant; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdBiddingDocument; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 投标文件视图对象 xzd_bidding_document + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdBiddingDocument.class) +public class XzdBiddingDocumentVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 单据编号 + */ + @ExcelProperty(value = "单据编号") + private String documentNumber; + + /** + * 标题 + */ + @ExcelProperty(value = "标题") + private String title; + + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + /** + * 投标时间 + */ + @ExcelProperty(value = "投标时间") + private Date biddingTime; + + /** + * 项目名称 + */ + @ExcelProperty(value = "项目名称") + private String projectName; + + /** + * 项目类型ID + */ + @ExcelProperty(value = "项目类型ID") + private Long projectType; + + /** + * 投标单位 + */ + @ExcelProperty(value = "投标单位") + private String bidUnit; + + /** + * 单据日期 + */ + @ExcelProperty(value = "单据日期") + private Date documentDate; + + /** + * 项目经理 + */ + @ExcelProperty(value = "项目经理") + private String projectManager; + + + /** + * 项目经理名称 + */ + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "projectManager") + private String projectManagerName; + + /** + * 工程概况 + */ + @ExcelProperty(value = "工程概况") + private String projectOverview; + + /** + * 组织 + */ + @ExcelProperty(value = "组织") + private String organization; + + /** + * 文件ID + */ + @ExcelProperty(value = "文件ID") + private String fileId; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + /** + * 审核状态 + */ + @ExcelProperty(value = "审核状态") + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdBiddingDocumentVoBylist.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdBiddingDocumentVoBylist.java new file mode 100644 index 00000000..73c08ced --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdBiddingDocumentVoBylist.java @@ -0,0 +1,39 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo; + + +import lombok.Data; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdBiddingDocument; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjBusinessBid; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjTechnicalBid; + +@Data +public class XzdBiddingDocumentVoBylist { + + +// 投标文件 + private XzdBiddingDocumentVo xzdBiddingDocument; + + + // 投标文件-技术标 + private XzdTbwjTechnicalBid xzdTbwjTechnicalBidVo; + + // 投标文件-商务标 + private XzdTbwjBusinessBid xzdTbwjBusinessBidVo; + +//// 投标文件-商务标要求 +// private XzdTbwjBusinessBidRequirementsVo xzdTbwjBusinessBidRequirementsVo; +// +// +//// 投标文件-资审要求 +// private XzdTbwjQualificationRequirementsVo xzdTbwjQualificationRequirementsVo; +// +//// 投标文件-技术标要求 +// private XzdTbwjTechnicalBidRequirementsVo xzdTbwjTechnicalBidRequirementsVo; + + + + + + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjBusinessBidRequirementsVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjBusinessBidRequirementsVo.java new file mode 100644 index 00000000..55dfcfba --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjBusinessBidRequirementsVo.java @@ -0,0 +1,69 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +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.biddingDocumentList.domain.XzdTbwjBusinessBidRequirements; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 投标文件-商务标要求视图对象 xzd_tbwj_business_bid_requirements + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdTbwjBusinessBidRequirements.class) +public class XzdTbwjBusinessBidRequirementsVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 商务标要求 + */ + @ExcelProperty(value = "商务标要求") + private String businessBidRequirement; + + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + /** + * 编制要点 + */ + @ExcelProperty(value = "编制要点") + private String compilationPoints; + + /** + * 提供时间 + */ + @ExcelProperty(value = "提供时间") + private Date provideTime; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjBusinessBidVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjBusinessBidVo.java new file mode 100644 index 00000000..be2276be --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjBusinessBidVo.java @@ -0,0 +1,103 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo; + +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.biddingDocumentList.domain.XzdTbwjBusinessBid; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 投标文件-商务标视图对象 xzd_tbwj_business_bid + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdTbwjBusinessBid.class) +public class XzdTbwjBusinessBidVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + /** + * 标底价 + */ + @ExcelProperty(value = "标底价") + private Long bidPrice; + + /** + * 折扣率 + */ + @ExcelProperty(value = "折扣率") + private Long discountRate; + + /** + * 最高限价 + */ + @ExcelProperty(value = "最高限价") + private Long ceilingPrice; + + /** + * 成本价 + */ + @ExcelProperty(value = "成本价") + private Long costPrice; + + /** + * 投标报价 + */ + @ExcelProperty(value = "投标报价") + private Long totalBidPrice; + + /** + * 毛利率 + */ + @ExcelProperty(value = "毛利率") + private Long feeRate; + + /** + * 投标税率 + */ + @ExcelProperty(value = "投标税率") + private Long bidTaxRate; + + /** + * 备用金 + */ + @ExcelProperty(value = "备用金") + private Long pettyCash; + + /** + * 编制部门 + */ + @ExcelProperty(value = "编制部门") + private String compilationDept; + + /** + * 报价说明 + */ + @ExcelProperty(value = "报价说明") + private String estimatedProfit; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjQualificationRequirementsVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjQualificationRequirementsVo.java new file mode 100644 index 00000000..6e5801ec --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjQualificationRequirementsVo.java @@ -0,0 +1,69 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +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.biddingDocumentList.domain.XzdTbwjQualificationRequirements; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 投标文件-资审要求视图对象 xzd_tbwj_qualification_requirements + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdTbwjQualificationRequirements.class) +public class XzdTbwjQualificationRequirementsVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + /** + * 资审要求 + */ + @ExcelProperty(value = "资审要求") + private String qualificationRequirement; + + /** + * 编制要点 + */ + @ExcelProperty(value = "编制要点") + private String compilationPoints; + + /** + * 提供时间 + */ + @ExcelProperty(value = "提供时间") + private Date provideTime; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjTechnicalBidRequirementsVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjTechnicalBidRequirementsVo.java new file mode 100644 index 00000000..1e2ae143 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjTechnicalBidRequirementsVo.java @@ -0,0 +1,69 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +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.biddingDocumentList.domain.XzdTbwjTechnicalBidRequirements; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 投标文件-技术标要求视图对象 xzd_tbwj_technical_bid_requirements + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdTbwjTechnicalBidRequirements.class) +public class XzdTbwjTechnicalBidRequirementsVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + /** + * 技术标要求 + */ + @ExcelProperty(value = "技术标要求") + private String technicalBidRequirement; + + /** + * 编制要点 + */ + @ExcelProperty(value = "编制要点") + private String compilationPoints; + + /** + * 提供时间 + */ + @ExcelProperty(value = "提供时间") + private Date provideTime; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjTechnicalBidVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjTechnicalBidVo.java new file mode 100644 index 00000000..43969fdb --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/domain/vo/XzdTbwjTechnicalBidVo.java @@ -0,0 +1,67 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo; + +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.biddingDocumentList.domain.XzdTbwjTechnicalBid; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 投标文件-技术标视图对象 xzd_tbwj_technical_bid + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdTbwjTechnicalBid.class) +public class XzdTbwjTechnicalBidVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 质量要求 + */ + @ExcelProperty(value = "质量要求") + private String qualityRequirements; + + /** + * 技术要求 + */ + @ExcelProperty(value = "技术要求") + private String technicalRequirements; + + /** + * 编制部门 + */ + @ExcelProperty(value = "编制部门") + private String compilationDept; + + /** + * 投标文件ID + */ + private Long biddingDocumentId; + + /** + * 编制说明 + */ + @ExcelProperty(value = "编制说明") + private String compilationExplain; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdBiddingDocumentMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdBiddingDocumentMapper.java new file mode 100644 index 00000000..823bd9f5 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdBiddingDocumentMapper.java @@ -0,0 +1,16 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.mapper; + + +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdBiddingDocument; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdBiddingDocumentVo; + +/** + * 投标文件Mapper接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface XzdBiddingDocumentMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjBusinessBidMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjBusinessBidMapper.java new file mode 100644 index 00000000..625ec57b --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjBusinessBidMapper.java @@ -0,0 +1,16 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.mapper; + + +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjBusinessBid; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjBusinessBidVo; + +/** + * 投标文件-商务标Mapper接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface XzdTbwjBusinessBidMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjBusinessBidRequirementsMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjBusinessBidRequirementsMapper.java new file mode 100644 index 00000000..ede188fc --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjBusinessBidRequirementsMapper.java @@ -0,0 +1,16 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.mapper; + + +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjBusinessBidRequirements; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjBusinessBidRequirementsVo; + +/** + * 投标文件-商务标要求Mapper接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface XzdTbwjBusinessBidRequirementsMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjQualificationRequirementsMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjQualificationRequirementsMapper.java new file mode 100644 index 00000000..aa866702 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjQualificationRequirementsMapper.java @@ -0,0 +1,16 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.mapper; + + +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjQualificationRequirements; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjQualificationRequirementsVo; + +/** + * 投标文件-资审要求Mapper接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface XzdTbwjQualificationRequirementsMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjTechnicalBidMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjTechnicalBidMapper.java new file mode 100644 index 00000000..32f82660 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjTechnicalBidMapper.java @@ -0,0 +1,16 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.mapper; + + +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjTechnicalBid; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjTechnicalBidVo; + +/** + * 投标文件-技术标Mapper接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface XzdTbwjTechnicalBidMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjTechnicalBidRequirementsMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjTechnicalBidRequirementsMapper.java new file mode 100644 index 00000000..61d4a5fa --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/mapper/XzdTbwjTechnicalBidRequirementsMapper.java @@ -0,0 +1,17 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjTechnicalBidRequirements; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjTechnicalBidRequirementsVo; + +/** + * 投标文件-技术标要求Mapper接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface XzdTbwjTechnicalBidRequirementsMapper extends BaseMapperPlus, BaseMapper { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdBiddingDocumentService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdBiddingDocumentService.java new file mode 100644 index 00000000..42485ac0 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdBiddingDocumentService.java @@ -0,0 +1,74 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.service; + + +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdBiddingDocument; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdBiddingDocumentBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdBiddingDocumentBoBylist; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdBiddingDocumentVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdBiddingDocumentVoBylist; + +import java.util.Collection; +import java.util.List; + +/** + * 投标文件Service接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface IXzdBiddingDocumentService extends IService{ + + /** + * 查询投标文件 + * + * @param id 主键 + * @return 投标文件 + */ + XzdBiddingDocumentVoBylist queryById(Long id); + + /** + * 分页查询投标文件列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件分页列表 + */ + TableDataInfo queryPageList(XzdBiddingDocumentBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的投标文件列表 + * + * @param bo 查询条件 + * @return 投标文件列表 + */ + List queryList(XzdBiddingDocumentBo bo); + + /** + * 新增投标文件 + * + * @param bo 投标文件 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdBiddingDocumentBoBylist bo); + + /** + * 修改投标文件 + * + * @param bo 投标文件 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdBiddingDocumentBoBylist 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/biddingDocumentList/service/IXzdTbwjBusinessBidRequirementsService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjBusinessBidRequirementsService.java new file mode 100644 index 00000000..09f9445e --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjBusinessBidRequirementsService.java @@ -0,0 +1,72 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.service; + + +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjBusinessBidRequirements; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjBusinessBidRequirementsBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjBusinessBidRequirementsVo; + +import java.util.Collection; +import java.util.List; + +/** + * 投标文件-商务标要求Service接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface IXzdTbwjBusinessBidRequirementsService extends IService{ + + /** + * 查询投标文件-商务标要求 + * + * @param id 主键 + * @return 投标文件-商务标要求 + */ + XzdTbwjBusinessBidRequirementsVo queryById(Long id); + + /** + * 分页查询投标文件-商务标要求列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件-商务标要求分页列表 + */ + TableDataInfo queryPageList(XzdTbwjBusinessBidRequirementsBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的投标文件-商务标要求列表 + * + * @param bo 查询条件 + * @return 投标文件-商务标要求列表 + */ + List queryList(XzdTbwjBusinessBidRequirementsBo bo); + + /** + * 新增投标文件-商务标要求 + * + * @param bo 投标文件-商务标要求 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdTbwjBusinessBidRequirementsBo bo); + + /** + * 修改投标文件-商务标要求 + * + * @param bo 投标文件-商务标要求 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdTbwjBusinessBidRequirementsBo 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/biddingDocumentList/service/IXzdTbwjBusinessBidService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjBusinessBidService.java new file mode 100644 index 00000000..90427b90 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjBusinessBidService.java @@ -0,0 +1,72 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.service; + + +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjBusinessBid; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjBusinessBidBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjBusinessBidVo; + +import java.util.Collection; +import java.util.List; + +/** + * 投标文件-商务标Service接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface IXzdTbwjBusinessBidService extends IService{ + + /** + * 查询投标文件-商务标 + * + * @param id 主键 + * @return 投标文件-商务标 + */ + XzdTbwjBusinessBidVo queryById(Long id); + + /** + * 分页查询投标文件-商务标列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件-商务标分页列表 + */ + TableDataInfo queryPageList(XzdTbwjBusinessBidBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的投标文件-商务标列表 + * + * @param bo 查询条件 + * @return 投标文件-商务标列表 + */ + List queryList(XzdTbwjBusinessBidBo bo); + + /** + * 新增投标文件-商务标 + * + * @param bo 投标文件-商务标 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdTbwjBusinessBidBo bo); + + /** + * 修改投标文件-商务标 + * + * @param bo 投标文件-商务标 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdTbwjBusinessBidBo 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/biddingDocumentList/service/IXzdTbwjQualificationRequirementsService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjQualificationRequirementsService.java new file mode 100644 index 00000000..6ce01912 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjQualificationRequirementsService.java @@ -0,0 +1,72 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.service; + + +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjQualificationRequirements; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjQualificationRequirementsBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjQualificationRequirementsVo; + +import java.util.Collection; +import java.util.List; + +/** + * 投标文件-资审要求Service接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface IXzdTbwjQualificationRequirementsService extends IService{ + + /** + * 查询投标文件-资审要求 + * + * @param id 主键 + * @return 投标文件-资审要求 + */ + XzdTbwjQualificationRequirementsVo queryById(Long id); + + /** + * 分页查询投标文件-资审要求列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件-资审要求分页列表 + */ + TableDataInfo queryPageList(XzdTbwjQualificationRequirementsBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的投标文件-资审要求列表 + * + * @param bo 查询条件 + * @return 投标文件-资审要求列表 + */ + List queryList(XzdTbwjQualificationRequirementsBo bo); + + /** + * 新增投标文件-资审要求 + * + * @param bo 投标文件-资审要求 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdTbwjQualificationRequirementsBo bo); + + /** + * 修改投标文件-资审要求 + * + * @param bo 投标文件-资审要求 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdTbwjQualificationRequirementsBo 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/biddingDocumentList/service/IXzdTbwjTechnicalBidRequirementsService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjTechnicalBidRequirementsService.java new file mode 100644 index 00000000..aec3fbba --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjTechnicalBidRequirementsService.java @@ -0,0 +1,72 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.service; + + +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjTechnicalBidRequirements; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjTechnicalBidRequirementsBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjTechnicalBidRequirementsVo; + +import java.util.Collection; +import java.util.List; + +/** + * 投标文件-技术标要求Service接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface IXzdTbwjTechnicalBidRequirementsService extends IService{ + + /** + * 查询投标文件-技术标要求 + * + * @param id 主键 + * @return 投标文件-技术标要求 + */ + XzdTbwjTechnicalBidRequirementsVo queryById(Long id); + + /** + * 分页查询投标文件-技术标要求列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件-技术标要求分页列表 + */ + TableDataInfo queryPageList(XzdTbwjTechnicalBidRequirementsBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的投标文件-技术标要求列表 + * + * @param bo 查询条件 + * @return 投标文件-技术标要求列表 + */ + List queryList(XzdTbwjTechnicalBidRequirementsBo bo); + + /** + * 新增投标文件-技术标要求 + * + * @param bo 投标文件-技术标要求 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdTbwjTechnicalBidRequirementsBo bo); + + /** + * 修改投标文件-技术标要求 + * + * @param bo 投标文件-技术标要求 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdTbwjTechnicalBidRequirementsBo 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/biddingDocumentList/service/IXzdTbwjTechnicalBidService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjTechnicalBidService.java new file mode 100644 index 00000000..36f81a23 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/IXzdTbwjTechnicalBidService.java @@ -0,0 +1,72 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.service; + + +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjTechnicalBid; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjTechnicalBidBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjTechnicalBidVo; + +import java.util.Collection; +import java.util.List; + +/** + * 投标文件-技术标Service接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface IXzdTbwjTechnicalBidService extends IService{ + + /** + * 查询投标文件-技术标 + * + * @param id 主键 + * @return 投标文件-技术标 + */ + XzdTbwjTechnicalBidVo queryById(Long id); + + /** + * 分页查询投标文件-技术标列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件-技术标分页列表 + */ + TableDataInfo queryPageList(XzdTbwjTechnicalBidBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的投标文件-技术标列表 + * + * @param bo 查询条件 + * @return 投标文件-技术标列表 + */ + List queryList(XzdTbwjTechnicalBidBo bo); + + /** + * 新增投标文件-技术标 + * + * @param bo 投标文件-技术标 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdTbwjTechnicalBidBo bo); + + /** + * 修改投标文件-技术标 + * + * @param bo 投标文件-技术标 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdTbwjTechnicalBidBo 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/biddingDocumentList/service/impl/XzdBiddingDocumentServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdBiddingDocumentServiceImpl.java new file mode 100644 index 00000000..7dc50217 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdBiddingDocumentServiceImpl.java @@ -0,0 +1,218 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.biaoqianlixiang.domain.XzdBidPreProject; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdBiddingDocument; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjBusinessBid; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.XzdTbwjTechnicalBid; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdBiddingDocumentBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdBiddingDocumentBoBylist; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjBusinessBidBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjTechnicalBidBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdBiddingDocumentVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdBiddingDocumentVoBylist; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjBusinessBidVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.mapper.XzdBiddingDocumentMapper; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdBiddingDocumentService; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjBusinessBidService; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjTechnicalBidService; +import org.dromara.xzd.utilS.AreaUtil; +import org.locationtech.jts.edgegraph.HalfEdge; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + + +import java.time.LocalDate; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 投标文件Service业务层处理 + * + * @author Lion Li + * @date 2025-10-11 + */ +@RequiredArgsConstructor +@Service +public class XzdBiddingDocumentServiceImpl extends ServiceImpl implements IXzdBiddingDocumentService { + + private final XzdBiddingDocumentMapper baseMapper; + + private final AreaUtil areaUtil; + + // 投标文件-技术标 + private final IXzdTbwjTechnicalBidService xzdTbwjTechnicalBidService; + + // 投标文件-商务标 + private final IXzdTbwjBusinessBidService xzdTbwjBusinessBidService; + + /** + * 查询投标文件 + * + * @param id 主键 + * @return 投标文件 + */ + @Override + public XzdBiddingDocumentVoBylist queryById(Long id){ + XzdBiddingDocumentVoBylist bylist = new XzdBiddingDocumentVoBylist(); + + XzdBiddingDocumentVo xzdBiddingDocumentVo = baseMapper.selectVoById(id); + XzdTbwjTechnicalBid xzdTbwjTechnicalBid = xzdTbwjTechnicalBidService.getBaseMapper().selectOne(new LambdaQueryWrapper().eq(XzdTbwjTechnicalBid::getBiddingDocumentId, id)); + XzdTbwjBusinessBid xzdTbwjBusinessBid = xzdTbwjBusinessBidService.getBaseMapper().selectOne(new LambdaQueryWrapper().eq(XzdTbwjBusinessBid::getBiddingDocumentId, id)); + + bylist.setXzdBiddingDocument(xzdBiddingDocumentVo); + bylist.setXzdTbwjTechnicalBidVo(xzdTbwjTechnicalBid); + bylist.setXzdTbwjBusinessBidVo(xzdTbwjBusinessBid); + + return bylist; + } + + /** + * 分页查询投标文件列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdBiddingDocumentBo 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(XzdBiddingDocumentBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdBiddingDocumentBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdBiddingDocument::getId); + lqw.eq(StringUtils.isNotBlank(bo.getDocumentNumber()), XzdBiddingDocument::getDocumentNumber, bo.getDocumentNumber()); + lqw.eq(StringUtils.isNotBlank(bo.getTitle()), XzdBiddingDocument::getTitle, bo.getTitle()); + lqw.eq(bo.getBiddingTime() != null, XzdBiddingDocument::getBiddingTime, bo.getBiddingTime()); + lqw.like(StringUtils.isNotBlank(bo.getProjectName()), XzdBiddingDocument::getProjectName, bo.getProjectName()); + lqw.eq(bo.getProjectType() != null, XzdBiddingDocument::getProjectType, bo.getProjectType()); + lqw.eq(StringUtils.isNotBlank(bo.getBidUnit()), XzdBiddingDocument::getBidUnit, bo.getBidUnit()); + lqw.eq(bo.getDocumentDate() != null, XzdBiddingDocument::getDocumentDate, bo.getDocumentDate()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectManager()), XzdBiddingDocument::getProjectManager, bo.getProjectManager()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectOverview()), XzdBiddingDocument::getProjectOverview, bo.getProjectOverview()); + lqw.eq(StringUtils.isNotBlank(bo.getOrganization()), XzdBiddingDocument::getOrganization, bo.getOrganization()); + lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdBiddingDocument::getFileId, bo.getFileId()); + lqw.eq(StringUtils.isNotBlank(bo.getAuditStatus()), XzdBiddingDocument::getAuditStatus, bo.getAuditStatus()); + return lqw; + } + + /** + * 新增投标文件 + * + * @param bo 投标文件 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdBiddingDocumentBoBylist bo) { + // 投标文件 + XzdBiddingDocumentBo xzdBiddingDocumentbo = bo.getXzdBiddingDocument(); + if (xzdBiddingDocumentbo == null) { + return false; + } + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdBiddingDocument::getCreateTime, LocalDate.now())); + String s = areaUtil.generateDateBasedNumber(); + + XzdBiddingDocument xzdBiddingDocument = new XzdBiddingDocument(); + BeanUtils.copyProperties(xzdBiddingDocumentbo, xzdBiddingDocument); + +// 单据编号 + xzdBiddingDocument.setDocumentNumber(s+"-"+(l+1)); + this.save(xzdBiddingDocument); + + // 投标文件-技术标 + XzdTbwjTechnicalBidBo xzdTbwjTechnicalBidVo = bo.getXzdTbwjTechnicalBidVo(); + XzdTbwjTechnicalBid xzdTbwjTechnicalBid = new XzdTbwjTechnicalBid(); + if (xzdTbwjTechnicalBidVo != null){ + BeanUtils.copyProperties(xzdTbwjTechnicalBidVo, xzdTbwjTechnicalBid); + + } + xzdTbwjTechnicalBid.setBiddingDocumentId(xzdBiddingDocument.getId()); + xzdTbwjTechnicalBidService.save(xzdTbwjTechnicalBid); + + // 投标文件-商务标 + XzdTbwjBusinessBidBo xzdTbwjBusinessBidVo = bo.getXzdTbwjBusinessBidVo(); + XzdTbwjBusinessBid xzdTbwjBusinessBid = new XzdTbwjBusinessBid(); + BeanUtils.copyProperties(xzdTbwjBusinessBidVo, xzdTbwjBusinessBid); + xzdTbwjBusinessBid.setBiddingDocumentId(xzdBiddingDocument.getId()); + xzdTbwjBusinessBidService.save(xzdTbwjBusinessBid); + + + return true; + } + + /** + * 修改投标文件 + * + * @param bo 投标文件 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdBiddingDocumentBoBylist bo) { + XzdBiddingDocument update = MapstructUtils.convert(bo.getXzdBiddingDocument(), XzdBiddingDocument.class); + // 投标文件-技术标 + XzdTbwjTechnicalBid xzdTbwjTechnicalBid = MapstructUtils.convert(bo.getXzdTbwjTechnicalBidVo(), XzdTbwjTechnicalBid.class); + xzdTbwjTechnicalBidService.updateById(xzdTbwjTechnicalBid); + + // 投标文件-商务标 + XzdTbwjBusinessBid xzdTbwjBusinessBid = MapstructUtils.convert(bo.getXzdTbwjBusinessBidVo(), XzdTbwjBusinessBid.class); + xzdTbwjBusinessBidService.updateById(xzdTbwjBusinessBid); + + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdBiddingDocument entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除投标文件信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + + if(isValid){ + ids.forEach(id->{ + HashMap hashMap = new HashMap<>(); + hashMap.put("bidding_document_id", id); +// 删除技术标 + xzdTbwjTechnicalBidService.removeByMap(hashMap); +// 删除商务标 + xzdTbwjBusinessBidService.removeByMap(hashMap); + }); + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjBusinessBidRequirementsServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjBusinessBidRequirementsServiceImpl.java new file mode 100644 index 00000000..59c172db --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjBusinessBidRequirementsServiceImpl.java @@ -0,0 +1,134 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.biddingDocumentList.domain.XzdTbwjBusinessBidRequirements; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjBusinessBidRequirementsBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjBusinessBidRequirementsVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.mapper.XzdTbwjBusinessBidRequirementsMapper; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjBusinessBidRequirementsService; +import org.springframework.stereotype.Service; + + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 投标文件-商务标要求Service业务层处理 + * + * @author Lion Li + * @date 2025-10-11 + */ +@RequiredArgsConstructor +@Service +public class XzdTbwjBusinessBidRequirementsServiceImpl extends ServiceImpl implements IXzdTbwjBusinessBidRequirementsService { + + private final XzdTbwjBusinessBidRequirementsMapper baseMapper; + + /** + * 查询投标文件-商务标要求 + * + * @param id 主键 + * @return 投标文件-商务标要求 + */ + @Override + public XzdTbwjBusinessBidRequirementsVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询投标文件-商务标要求列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件-商务标要求分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdTbwjBusinessBidRequirementsBo 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(XzdTbwjBusinessBidRequirementsBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdTbwjBusinessBidRequirementsBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdTbwjBusinessBidRequirements::getId); + lqw.eq(StringUtils.isNotBlank(bo.getBusinessBidRequirement()), XzdTbwjBusinessBidRequirements::getBusinessBidRequirement, bo.getBusinessBidRequirement()); + lqw.eq(StringUtils.isNotBlank(bo.getCompilationPoints()), XzdTbwjBusinessBidRequirements::getCompilationPoints, bo.getCompilationPoints()); + lqw.eq(bo.getProvideTime() != null, XzdTbwjBusinessBidRequirements::getProvideTime, bo.getProvideTime()); + return lqw; + } + + /** + * 新增投标文件-商务标要求 + * + * @param bo 投标文件-商务标要求 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdTbwjBusinessBidRequirementsBo bo) { + XzdTbwjBusinessBidRequirements add = MapstructUtils.convert(bo, XzdTbwjBusinessBidRequirements.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改投标文件-商务标要求 + * + * @param bo 投标文件-商务标要求 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdTbwjBusinessBidRequirementsBo bo) { + XzdTbwjBusinessBidRequirements update = MapstructUtils.convert(bo, XzdTbwjBusinessBidRequirements.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdTbwjBusinessBidRequirements 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/biddingDocumentList/service/impl/XzdTbwjBusinessBidServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjBusinessBidServiceImpl.java new file mode 100644 index 00000000..b3c8fef6 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjBusinessBidServiceImpl.java @@ -0,0 +1,141 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.biddingDocumentList.domain.XzdTbwjBusinessBid; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjBusinessBidBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjBusinessBidVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.mapper.XzdTbwjBusinessBidMapper; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjBusinessBidService; +import org.springframework.stereotype.Service; + + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 投标文件-商务标Service业务层处理 + * + * @author Lion Li + * @date 2025-10-11 + */ +@RequiredArgsConstructor +@Service +public class XzdTbwjBusinessBidServiceImpl extends ServiceImpl implements IXzdTbwjBusinessBidService { + + private final XzdTbwjBusinessBidMapper baseMapper; + + /** + * 查询投标文件-商务标 + * + * @param id 主键 + * @return 投标文件-商务标 + */ + @Override + public XzdTbwjBusinessBidVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询投标文件-商务标列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件-商务标分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdTbwjBusinessBidBo 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(XzdTbwjBusinessBidBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdTbwjBusinessBidBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdTbwjBusinessBid::getId); + lqw.eq(bo.getBidPrice() != null, XzdTbwjBusinessBid::getBidPrice, bo.getBidPrice()); + lqw.eq(bo.getDiscountRate() != null, XzdTbwjBusinessBid::getDiscountRate, bo.getDiscountRate()); + lqw.eq(bo.getCeilingPrice() != null, XzdTbwjBusinessBid::getCeilingPrice, bo.getCeilingPrice()); + lqw.eq(bo.getCostPrice() != null, XzdTbwjBusinessBid::getCostPrice, bo.getCostPrice()); + lqw.eq(bo.getTotalBidPrice() != null, XzdTbwjBusinessBid::getTotalBidPrice, bo.getTotalBidPrice()); + lqw.eq(bo.getFeeRate() != null, XzdTbwjBusinessBid::getFeeRate, bo.getFeeRate()); + lqw.eq(bo.getBidTaxRate() != null, XzdTbwjBusinessBid::getBidTaxRate, bo.getBidTaxRate()); + lqw.eq(bo.getPettyCash() != null, XzdTbwjBusinessBid::getPettyCash, bo.getPettyCash()); + lqw.eq(StringUtils.isNotBlank(bo.getCompilationDept()), XzdTbwjBusinessBid::getCompilationDept, bo.getCompilationDept()); + lqw.eq(StringUtils.isNotBlank(bo.getEstimatedProfit()), XzdTbwjBusinessBid::getEstimatedProfit, bo.getEstimatedProfit()); + return lqw; + } + + /** + * 新增投标文件-商务标 + * + * @param bo 投标文件-商务标 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdTbwjBusinessBidBo bo) { + XzdTbwjBusinessBid add = MapstructUtils.convert(bo, XzdTbwjBusinessBid.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改投标文件-商务标 + * + * @param bo 投标文件-商务标 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdTbwjBusinessBidBo bo) { + XzdTbwjBusinessBid update = MapstructUtils.convert(bo, XzdTbwjBusinessBid.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdTbwjBusinessBid 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/biddingDocumentList/service/impl/XzdTbwjQualificationRequirementsServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjQualificationRequirementsServiceImpl.java new file mode 100644 index 00000000..98ecc25b --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjQualificationRequirementsServiceImpl.java @@ -0,0 +1,134 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.biddingDocumentList.domain.XzdTbwjQualificationRequirements; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjQualificationRequirementsBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjQualificationRequirementsVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.mapper.XzdTbwjQualificationRequirementsMapper; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjQualificationRequirementsService; +import org.springframework.stereotype.Service; + + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 投标文件-资审要求Service业务层处理 + * + * @author Lion Li + * @date 2025-10-11 + */ +@RequiredArgsConstructor +@Service +public class XzdTbwjQualificationRequirementsServiceImpl extends ServiceImpl implements IXzdTbwjQualificationRequirementsService { + + private final XzdTbwjQualificationRequirementsMapper baseMapper; + + /** + * 查询投标文件-资审要求 + * + * @param id 主键 + * @return 投标文件-资审要求 + */ + @Override + public XzdTbwjQualificationRequirementsVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询投标文件-资审要求列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件-资审要求分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdTbwjQualificationRequirementsBo 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(XzdTbwjQualificationRequirementsBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdTbwjQualificationRequirementsBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdTbwjQualificationRequirements::getId); + lqw.eq(StringUtils.isNotBlank(bo.getQualificationRequirement()), XzdTbwjQualificationRequirements::getQualificationRequirement, bo.getQualificationRequirement()); + lqw.eq(StringUtils.isNotBlank(bo.getCompilationPoints()), XzdTbwjQualificationRequirements::getCompilationPoints, bo.getCompilationPoints()); + lqw.eq(bo.getProvideTime() != null, XzdTbwjQualificationRequirements::getProvideTime, bo.getProvideTime()); + return lqw; + } + + /** + * 新增投标文件-资审要求 + * + * @param bo 投标文件-资审要求 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdTbwjQualificationRequirementsBo bo) { + XzdTbwjQualificationRequirements add = MapstructUtils.convert(bo, XzdTbwjQualificationRequirements.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改投标文件-资审要求 + * + * @param bo 投标文件-资审要求 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdTbwjQualificationRequirementsBo bo) { + XzdTbwjQualificationRequirements update = MapstructUtils.convert(bo, XzdTbwjQualificationRequirements.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdTbwjQualificationRequirements 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/biddingDocumentList/service/impl/XzdTbwjTechnicalBidRequirementsServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjTechnicalBidRequirementsServiceImpl.java new file mode 100644 index 00000000..fb57d305 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjTechnicalBidRequirementsServiceImpl.java @@ -0,0 +1,134 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.biddingDocumentList.domain.XzdTbwjTechnicalBidRequirements; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjTechnicalBidRequirementsBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjTechnicalBidRequirementsVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.mapper.XzdTbwjTechnicalBidRequirementsMapper; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjTechnicalBidRequirementsService; +import org.springframework.stereotype.Service; + + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 投标文件-技术标要求Service业务层处理 + * + * @author Lion Li + * @date 2025-10-11 + */ +@RequiredArgsConstructor +@Service +public class XzdTbwjTechnicalBidRequirementsServiceImpl extends ServiceImpl implements IXzdTbwjTechnicalBidRequirementsService { + + private final XzdTbwjTechnicalBidRequirementsMapper baseMapper; + + /** + * 查询投标文件-技术标要求 + * + * @param id 主键 + * @return 投标文件-技术标要求 + */ + @Override + public XzdTbwjTechnicalBidRequirementsVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询投标文件-技术标要求列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件-技术标要求分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdTbwjTechnicalBidRequirementsBo 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(XzdTbwjTechnicalBidRequirementsBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdTbwjTechnicalBidRequirementsBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdTbwjTechnicalBidRequirements::getId); + lqw.eq(StringUtils.isNotBlank(bo.getTechnicalBidRequirement()), XzdTbwjTechnicalBidRequirements::getTechnicalBidRequirement, bo.getTechnicalBidRequirement()); + lqw.eq(StringUtils.isNotBlank(bo.getCompilationPoints()), XzdTbwjTechnicalBidRequirements::getCompilationPoints, bo.getCompilationPoints()); + lqw.eq(bo.getProvideTime() != null, XzdTbwjTechnicalBidRequirements::getProvideTime, bo.getProvideTime()); + return lqw; + } + + /** + * 新增投标文件-技术标要求 + * + * @param bo 投标文件-技术标要求 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdTbwjTechnicalBidRequirementsBo bo) { + XzdTbwjTechnicalBidRequirements add = MapstructUtils.convert(bo, XzdTbwjTechnicalBidRequirements.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改投标文件-技术标要求 + * + * @param bo 投标文件-技术标要求 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdTbwjTechnicalBidRequirementsBo bo) { + XzdTbwjTechnicalBidRequirements update = MapstructUtils.convert(bo, XzdTbwjTechnicalBidRequirements.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdTbwjTechnicalBidRequirements 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/biddingDocumentList/service/impl/XzdTbwjTechnicalBidServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjTechnicalBidServiceImpl.java new file mode 100644 index 00000000..b237c747 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/biddingDocumentList/service/impl/XzdTbwjTechnicalBidServiceImpl.java @@ -0,0 +1,135 @@ +package org.dromara.xzd.biddingManagement.biddingDocumentList.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.biddingDocumentList.domain.XzdTbwjTechnicalBid; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.bo.XzdTbwjTechnicalBidBo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.domain.vo.XzdTbwjTechnicalBidVo; +import org.dromara.xzd.biddingManagement.biddingDocumentList.mapper.XzdTbwjTechnicalBidMapper; +import org.dromara.xzd.biddingManagement.biddingDocumentList.service.IXzdTbwjTechnicalBidService; +import org.springframework.stereotype.Service; + + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 投标文件-技术标Service业务层处理 + * + * @author Lion Li + * @date 2025-10-11 + */ +@RequiredArgsConstructor +@Service +public class XzdTbwjTechnicalBidServiceImpl extends ServiceImpl implements IXzdTbwjTechnicalBidService { + + private final XzdTbwjTechnicalBidMapper baseMapper; + + /** + * 查询投标文件-技术标 + * + * @param id 主键 + * @return 投标文件-技术标 + */ + @Override + public XzdTbwjTechnicalBidVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询投标文件-技术标列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标文件-技术标分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdTbwjTechnicalBidBo 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(XzdTbwjTechnicalBidBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdTbwjTechnicalBidBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdTbwjTechnicalBid::getId); + lqw.eq(StringUtils.isNotBlank(bo.getQualityRequirements()), XzdTbwjTechnicalBid::getQualityRequirements, bo.getQualityRequirements()); + lqw.eq(StringUtils.isNotBlank(bo.getTechnicalRequirements()), XzdTbwjTechnicalBid::getTechnicalRequirements, bo.getTechnicalRequirements()); + lqw.eq(StringUtils.isNotBlank(bo.getCompilationDept()), XzdTbwjTechnicalBid::getCompilationDept, bo.getCompilationDept()); + lqw.eq(StringUtils.isNotBlank(bo.getCompilationExplain()), XzdTbwjTechnicalBid::getCompilationExplain, bo.getCompilationExplain()); + return lqw; + } + + /** + * 新增投标文件-技术标 + * + * @param bo 投标文件-技术标 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdTbwjTechnicalBidBo bo) { + XzdTbwjTechnicalBid add = MapstructUtils.convert(bo, XzdTbwjTechnicalBid.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改投标文件-技术标 + * + * @param bo 投标文件-技术标 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdTbwjTechnicalBidBo bo) { + XzdTbwjTechnicalBid update = MapstructUtils.convert(bo, XzdTbwjTechnicalBid.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdTbwjTechnicalBid 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/earnestMoney/controller/XzdBidDepositPaymentController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/controller/XzdBidDepositPaymentController.java new file mode 100644 index 00000000..6c652157 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/controller/XzdBidDepositPaymentController.java @@ -0,0 +1,107 @@ +package org.dromara.xzd.biddingManagement.earnestMoney.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.dromara.xzd.biddingManagement.earnestMoney.domain.bo.XzdBidDepositPaymentBo; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.vo.XzdBidDepositPaymentByBqlx; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.vo.XzdBidDepositPaymentVo; +import org.dromara.xzd.biddingManagement.earnestMoney.service.IXzdBidDepositPaymentService; +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.common.mybatis.core.page.TableDataInfo; + +/** + * 投标保证金缴纳 + * + * @author Lion Li + * @date 2025-10-11 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/earnestMoney/bidDepositPayment") +public class XzdBidDepositPaymentController extends BaseController { + + private final IXzdBidDepositPaymentService xzdBidDepositPaymentService; + + /** + * 查询投标保证金缴纳列表 + */ + @SaCheckPermission("earnestMoney:bidDepositPayment:list") + @GetMapping("/list") + public TableDataInfo list(XzdBidDepositPaymentBo bo, PageQuery pageQuery) { + return xzdBidDepositPaymentService.queryPageList(bo, pageQuery); + } + + /** + * 导出投标保证金缴纳列表 + */ + @SaCheckPermission("earnestMoney:bidDepositPayment:export") + @Log(title = "投标保证金缴纳", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdBidDepositPaymentBo bo, HttpServletResponse response) { + List list = xzdBidDepositPaymentService.queryList(bo); + ExcelUtil.exportExcel(list, "投标保证金缴纳", XzdBidDepositPaymentVo.class, response); + } + + /** + * 获取投标保证金缴纳详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("earnestMoney:bidDepositPayment:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdBidDepositPaymentService.queryById(id)); + } + + /** + * 新增投标保证金缴纳 + */ + @SaCheckPermission("earnestMoney:bidDepositPayment:add") + @Log(title = "投标保证金缴纳", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdBidDepositPaymentBo bo) { + return toAjax(xzdBidDepositPaymentService.insertByBo(bo)); + } + + /** + * 修改投标保证金缴纳 + */ + @SaCheckPermission("earnestMoney:bidDepositPayment:edit") + @Log(title = "投标保证金缴纳", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdBidDepositPaymentBo bo) { + return toAjax(xzdBidDepositPaymentService.updateByBo(bo)); + } + + /** + * 删除投标保证金缴纳 + * + * @param ids 主键串 + */ + @SaCheckPermission("earnestMoney:bidDepositPayment:remove") + @Log(title = "投标保证金缴纳", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdBidDepositPaymentService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/XzdBidDepositPayment.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/XzdBidDepositPayment.java new file mode 100644 index 00000000..fa639651 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/XzdBidDepositPayment.java @@ -0,0 +1,154 @@ +package org.dromara.xzd.biddingManagement.earnestMoney.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 投标保证金缴纳对象 xzd_bid_deposit_payment + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_bid_deposit_payment") +public class XzdBidDepositPayment extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 单据编码 + */ + private String documentCode; + + /** + * 单据日期 + */ + private Date documentDate; + + /** + * 项目名称 + */ + private String projectName; + + /** + * 工程造价(万元) + */ + private Long projectCost; + + /** + * 经营模式 + */ + private String businessMode; + + /** + * 保证金金额 + */ + private Long depositAmount; + + /** + * 保证金金额大写 + */ + private String depositAmountCapital; + + /** + * 汇款方式 + */ + private String remittanceMethod; + + /** + * 支付截止时间 + */ + private Date paymentDeadline; + + /** + * 收款单位 + */ + private String receivingUnit; + /** + * 收款单位ID + */ + private Long receivingUnitId; + + /** + * 收款账户名称 + */ + private String receivingAccountName; + + /** + * 收款账户银行 + */ + private String receivingBank; + + /** + * 收款银行账号 + */ + private String receivingBankAccount; + + /** + * 招标结束后要求工作日收回 + */ + private Long requestRecoveryDays; + + /** + * 保证金类型 + */ + private String depositType; + + /** + * 回单要求 + */ + private String receiptRequirement; + + /** + * 是否邮寄(0否 1是) + */ + private Long isMail; + + /** + * 保证金比例 + */ + private Long depositRatio; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + + /** + * 申请事项 + */ + private String itemsOfApplication; + + + /** + * 标前立项ID + */ + private Long bqlxId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/bo/XzdBidDepositPaymentBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/bo/XzdBidDepositPaymentBo.java new file mode 100644 index 00000000..d926ea7a --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/bo/XzdBidDepositPaymentBo.java @@ -0,0 +1,159 @@ +package org.dromara.xzd.biddingManagement.earnestMoney.domain.bo; + +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 java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.XzdBidDepositPayment; + +/** + * 投标保证金缴纳业务对象 xzd_bid_deposit_payment + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdBidDepositPayment.class, reverseConvertGenerate = false) +public class XzdBidDepositPaymentBo extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 单据编码 + */ + private String documentCode; + + /** + * 单据日期 + */ + @NotNull(message = "单据日期不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date documentDate; + + /** + * 项目名称 + */ + @NotBlank(message = "项目名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectName; + + /** + * 工程造价(万元) + */ + private Long projectCost; + + /** + * 经营模式 + */ + private String businessMode; + + /** + * 保证金金额 + */ + @NotNull(message = "保证金金额不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long depositAmount; + + /** + * 保证金金额大写 + */ + @NotBlank(message = "保证金金额大写不能为空", groups = { AddGroup.class, EditGroup.class }) + private String depositAmountCapital; + + /** + * 汇款方式 + */ + private String remittanceMethod; + + /** + * 支付截止时间 + */ + private Date paymentDeadline; + + /** + * 收款单位 + */ + private String receivingUnit; + + /** + * 收款单位ID + */ + private Long receivingUnitId; + + /** + * 收款账户名称 + */ + private String receivingAccountName; + + /** + * 收款账户银行 + */ + private String receivingBank; + + /** + * 收款银行账号 + */ + private String receivingBankAccount; + + /** + * 招标结束后要求工作日收回 + */ + private Long requestRecoveryDays; + + /** + * 保证金类型 + */ + @NotBlank(message = "保证金类型不能为空", groups = { AddGroup.class, EditGroup.class }) + private String depositType; + + /** + * 回单要求 + */ + private String receiptRequirement; + + /** + * 是否邮寄(0否 1是) + */ + private Long isMail; + + /** + * 保证金比例 + */ + private Long depositRatio; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + + + /** + * 申请事项 + */ + private String itemsOfApplication; + + + /** + * 标前立项ID + */ + private Long bqlxId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/vo/XzdBidDepositPaymentByBqlx.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/vo/XzdBidDepositPaymentByBqlx.java new file mode 100644 index 00000000..5e77a895 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/vo/XzdBidDepositPaymentByBqlx.java @@ -0,0 +1,17 @@ +package org.dromara.xzd.biddingManagement.earnestMoney.domain.vo; + + +import lombok.Data; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QuerListXzdBidPreVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QueryListXzdVo; + +@Data +public class XzdBidDepositPaymentByBqlx { + + + + + private XzdBidDepositPaymentVo xzdBidDepositPaymentVo; + + private QuerListXzdBidPreVo queryListXzdVo; +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/vo/XzdBidDepositPaymentVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/vo/XzdBidDepositPaymentVo.java new file mode 100644 index 00000000..06bd6914 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/domain/vo/XzdBidDepositPaymentVo.java @@ -0,0 +1,203 @@ +package org.dromara.xzd.biddingManagement.earnestMoney.domain.vo; + +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +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.common.translation.annotation.Translation; +import org.dromara.common.translation.constant.TransConstant; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.XzdBidDepositPayment; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 投标保证金缴纳视图对象 xzd_bid_deposit_payment + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdBidDepositPayment.class) +public class XzdBidDepositPaymentVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 单据编码 + */ + @ExcelProperty(value = "单据编码") + private String documentCode; + + /** + * 单据日期 + */ + @ExcelProperty(value = "单据日期") + private Date documentDate; + + /** + * 项目名称 + */ + @ExcelProperty(value = "项目名称") + private String projectName; + + /** + * 工程造价(万元) + */ + @ExcelProperty(value = "工程造价(万元)") + private Long projectCost; + + /** + * 经营模式 + */ + @ExcelProperty(value = "经营模式") + private String businessMode; + + /** + * 保证金金额 + */ + @ExcelProperty(value = "保证金金额") + private Long depositAmount; + + /** + * 保证金金额大写 + */ + @ExcelProperty(value = "保证金金额大写") + private String depositAmountCapital; + + /** + * 汇款方式 + */ + @ExcelProperty(value = "汇款方式") + private String remittanceMethod; + + /** + * 支付截止时间 + */ + @ExcelProperty(value = "支付截止时间") + private Date paymentDeadline; + + /** + * 收款单位 + */ + @ExcelProperty(value = "收款单位") + private String receivingUnit; + + /** + * 收款单位ID + */ + private Long receivingUnitId; + + /** + * 收款账户名称 + */ + @ExcelProperty(value = "收款账户名称") + private String receivingAccountName; + + /** + * 收款账户银行 + */ + @ExcelProperty(value = "收款账户银行") + private String receivingBank; + + /** + * 收款银行账号 + */ + @ExcelProperty(value = "收款银行账号") + private String receivingBankAccount; + + /** + * 招标结束后要求工作日收回 + */ + @ExcelProperty(value = "招标结束后要求工作日收回") + private Long requestRecoveryDays; + + /** + * 保证金类型 + */ + @ExcelProperty(value = "保证金类型") + private String depositType; + + /** + * 回单要求 + */ + @ExcelProperty(value = "回单要求") + private String receiptRequirement; + + /** + * 是否邮寄(0否 1是) + */ + @ExcelProperty(value = "是否邮寄(0否 1是)") + private Long isMail; + + /** + * 保证金比例 + */ + @ExcelProperty(value = "保证金比例") + private Long depositRatio; + + /** + * 文件ID + */ + @ExcelProperty(value = "文件ID") + private String fileId; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + /** + * 审核状态 + */ + @ExcelProperty(value = "审核状态") + private String auditStatus; + + + /** + * 申请事项 + */ + @ExcelProperty(value = "申请事项") + private String itemsOfApplication; + + + + + private Long createBy; + + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "createBy") + private String createName; + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private Date createTime; + + /** + * 标前立项ID + */ + private Long bqlxId; + + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/mapper/XzdBidDepositPaymentMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/mapper/XzdBidDepositPaymentMapper.java new file mode 100644 index 00000000..75ff800a --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/mapper/XzdBidDepositPaymentMapper.java @@ -0,0 +1,16 @@ +package org.dromara.xzd.biddingManagement.earnestMoney.mapper; + + +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.XzdBidDepositPayment; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.vo.XzdBidDepositPaymentVo; + +/** + * 投标保证金缴纳Mapper接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface XzdBidDepositPaymentMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/service/IXzdBidDepositPaymentService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/service/IXzdBidDepositPaymentService.java new file mode 100644 index 00000000..02d263df --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/service/IXzdBidDepositPaymentService.java @@ -0,0 +1,72 @@ +package org.dromara.xzd.biddingManagement.earnestMoney.service; + +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.XzdBidDepositPayment; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.bo.XzdBidDepositPaymentBo; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.vo.XzdBidDepositPaymentByBqlx; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.vo.XzdBidDepositPaymentVo; + +import java.util.Collection; +import java.util.List; + +/** + * 投标保证金缴纳Service接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface IXzdBidDepositPaymentService extends IService{ + + /** + * 查询投标保证金缴纳 + * + * @param id 主键 + * @return 投标保证金缴纳 + */ + XzdBidDepositPaymentByBqlx queryById(Long id); + + /** + * 分页查询投标保证金缴纳列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标保证金缴纳分页列表 + */ + TableDataInfo queryPageList(XzdBidDepositPaymentBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的投标保证金缴纳列表 + * + * @param bo 查询条件 + * @return 投标保证金缴纳列表 + */ + List queryList(XzdBidDepositPaymentBo bo); + + /** + * 新增投标保证金缴纳 + * + * @param bo 投标保证金缴纳 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdBidDepositPaymentBo bo); + + /** + * 修改投标保证金缴纳 + * + * @param bo 投标保证金缴纳 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdBidDepositPaymentBo 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/earnestMoney/service/impl/XzdBidDepositPaymentServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/service/impl/XzdBidDepositPaymentServiceImpl.java new file mode 100644 index 00000000..f440dbf2 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoney/service/impl/XzdBidDepositPaymentServiceImpl.java @@ -0,0 +1,192 @@ +package org.dromara.xzd.biddingManagement.earnestMoney.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.system.service.impl.SysOssServiceImpl; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBidPreProject; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.QuerListXzdBidPreVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBidPreProjectVo; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.service.IXzdBidPreProjectService; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.XzdBidDepositPayment; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.bo.XzdBidDepositPaymentBo; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.vo.XzdBidDepositPaymentByBqlx; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.vo.XzdBidDepositPaymentVo; +import org.dromara.xzd.biddingManagement.earnestMoney.mapper.XzdBidDepositPaymentMapper; +import org.dromara.xzd.biddingManagement.earnestMoney.service.IXzdBidDepositPaymentService; +import org.dromara.xzd.utilS.AreaUtil; +import org.springframework.stereotype.Service; + +import java.time.LocalDate; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.Collection; +import java.util.stream.Collectors; + +/** + * 投标保证金缴纳Service业务层处理 + * + * @author Lion Li + * @date 2025-10-11 + */ +@RequiredArgsConstructor +@Service +public class XzdBidDepositPaymentServiceImpl extends ServiceImpl implements IXzdBidDepositPaymentService { + + private final XzdBidDepositPaymentMapper baseMapper; + + private final AreaUtil areaUtil; + private final SysOssServiceImpl sysOssService; + + private final IXzdBidPreProjectService xzdBidPreProjectService; + + /** + * 查询投标保证金缴纳 + * + * @param id 主键 + * @return 投标保证金缴纳 + */ + @Override + public XzdBidDepositPaymentByBqlx queryById(Long id){ + XzdBidDepositPaymentByBqlx res = new XzdBidDepositPaymentByBqlx(); + + XzdBidDepositPaymentVo xzdBidDepositPaymentVo = baseMapper.selectVoById(id); + res.setXzdBidDepositPaymentVo(xzdBidDepositPaymentVo); + + + if (xzdBidDepositPaymentVo.getBqlxId() != null){ + QuerListXzdBidPreVo vo = xzdBidPreProjectService.queryById(xzdBidDepositPaymentVo.getBqlxId()); + res.setQueryListXzdVo(vo); + + } + + return res; + } + + /** + * 分页查询投标保证金缴纳列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标保证金缴纳分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdBidDepositPaymentBo 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(XzdBidDepositPaymentBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdBidDepositPaymentBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdBidDepositPayment::getId); + lqw.eq(StringUtils.isNotBlank(bo.getDocumentCode()), XzdBidDepositPayment::getDocumentCode, bo.getDocumentCode()); + lqw.eq(bo.getDocumentDate() != null, XzdBidDepositPayment::getDocumentDate, bo.getDocumentDate()); + lqw.like(StringUtils.isNotBlank(bo.getProjectName()), XzdBidDepositPayment::getProjectName, bo.getProjectName()); + lqw.eq(bo.getProjectCost() != null, XzdBidDepositPayment::getProjectCost, bo.getProjectCost()); + lqw.eq(StringUtils.isNotBlank(bo.getBusinessMode()), XzdBidDepositPayment::getBusinessMode, bo.getBusinessMode()); + lqw.eq(bo.getDepositAmount() != null, XzdBidDepositPayment::getDepositAmount, bo.getDepositAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getDepositAmountCapital()), XzdBidDepositPayment::getDepositAmountCapital, bo.getDepositAmountCapital()); + lqw.eq(StringUtils.isNotBlank(bo.getRemittanceMethod()), XzdBidDepositPayment::getRemittanceMethod, bo.getRemittanceMethod()); + lqw.eq(bo.getPaymentDeadline() != null, XzdBidDepositPayment::getPaymentDeadline, bo.getPaymentDeadline()); + lqw.eq(StringUtils.isNotBlank(bo.getReceivingUnit()), XzdBidDepositPayment::getReceivingUnit, bo.getReceivingUnit()); + lqw.like(StringUtils.isNotBlank(bo.getReceivingAccountName()), XzdBidDepositPayment::getReceivingAccountName, bo.getReceivingAccountName()); + lqw.eq(StringUtils.isNotBlank(bo.getReceivingBank()), XzdBidDepositPayment::getReceivingBank, bo.getReceivingBank()); + lqw.eq(StringUtils.isNotBlank(bo.getReceivingBankAccount()), XzdBidDepositPayment::getReceivingBankAccount, bo.getReceivingBankAccount()); + lqw.eq(bo.getRequestRecoveryDays() != null, XzdBidDepositPayment::getRequestRecoveryDays, bo.getRequestRecoveryDays()); + lqw.eq(StringUtils.isNotBlank(bo.getDepositType()), XzdBidDepositPayment::getDepositType, bo.getDepositType()); + lqw.eq(StringUtils.isNotBlank(bo.getReceiptRequirement()), XzdBidDepositPayment::getReceiptRequirement, bo.getReceiptRequirement()); + lqw.eq(bo.getIsMail() != null, XzdBidDepositPayment::getIsMail, bo.getIsMail()); + lqw.eq(bo.getDepositRatio() != null, XzdBidDepositPayment::getDepositRatio, bo.getDepositRatio()); + lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdBidDepositPayment::getFileId, bo.getFileId()); + lqw.eq(StringUtils.isNotBlank(bo.getAuditStatus()), XzdBidDepositPayment::getAuditStatus, bo.getAuditStatus()); + lqw.eq(StringUtils.isNotBlank(bo.getItemsOfApplication()), XzdBidDepositPayment::getItemsOfApplication, bo.getItemsOfApplication()); + return lqw; + } + + /** + * 新增投标保证金缴纳 + * + * @param bo 投标保证金缴纳 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdBidDepositPaymentBo bo) { + XzdBidDepositPayment add = MapstructUtils.convert(bo, XzdBidDepositPayment.class); + validEntityBeforeSave(add); + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdBidDepositPayment::getCreateTime, LocalDate.now())); + String s = areaUtil.generateDateBasedNumber(); + add.setDocumentCode(s+"-"+(l+1)); + + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改投标保证金缴纳 + * + * @param bo 投标保证金缴纳 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdBidDepositPaymentBo bo) { + XzdBidDepositPayment update = MapstructUtils.convert(bo, XzdBidDepositPayment.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdBidDepositPayment entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除投标保证金缴纳信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + for (Long id : ids) { + XzdBidDepositPaymentVo xzdBidDepositPaymentVo = baseMapper.selectVoById(id); + + // 删除附件 + if (!StringUtils.isEmpty(xzdBidDepositPaymentVo.getFileId())){ + List collect = Arrays.stream(xzdBidDepositPaymentVo.getFileId().split(",")).map(item -> { + return Long.parseLong(item); + }).collect(Collectors.toList()); + sysOssService.deleteWithValidByIds(collect, false); + } + } + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/controller/XzdBidDepositRecoveryController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/controller/XzdBidDepositRecoveryController.java new file mode 100644 index 00000000..8fa4c8a8 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/controller/XzdBidDepositRecoveryController.java @@ -0,0 +1,107 @@ +package org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.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.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.bo.XzdBidDepositRecoveryBo; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.vo.XzdBidDepositRecoveryVo; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.vo.XzdBidDepositRecoveryXqVo; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.service.IXzdBidDepositRecoveryService; +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.common.mybatis.core.page.TableDataInfo; + +/** + * 投标保证金收回 + * + * @author Lion Li + * @date 2025-10-11 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/biddingManagement/bidDepositRecovery") +public class XzdBidDepositRecoveryController extends BaseController { + + private final IXzdBidDepositRecoveryService xzdBidDepositRecoveryService; + + /** + * 查询投标保证金收回列表 + */ + @SaCheckPermission("biddingManagement:bidDepositRecovery:list") + @GetMapping("/list") + public TableDataInfo list(XzdBidDepositRecoveryBo bo, PageQuery pageQuery) { + return xzdBidDepositRecoveryService.queryPageList(bo, pageQuery); + } + + /** + * 导出投标保证金收回列表 + */ + @SaCheckPermission("biddingManagement:bidDepositRecovery:export") + @Log(title = "投标保证金收回", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdBidDepositRecoveryBo bo, HttpServletResponse response) { + List list = xzdBidDepositRecoveryService.queryList(bo); + ExcelUtil.exportExcel(list, "投标保证金收回", XzdBidDepositRecoveryVo.class, response); + } + + /** + * 获取投标保证金收回详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("biddingManagement:bidDepositRecovery:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdBidDepositRecoveryService.queryById(id)); + } + + /** + * 新增投标保证金收回 + */ + @SaCheckPermission("biddingManagement:bidDepositRecovery:add") + @Log(title = "投标保证金收回", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdBidDepositRecoveryBo bo) { + return toAjax(xzdBidDepositRecoveryService.insertByBo(bo)); + } + + /** + * 修改投标保证金收回 + */ + @SaCheckPermission("biddingManagement:bidDepositRecovery:edit") + @Log(title = "投标保证金收回", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdBidDepositRecoveryBo bo) { + return toAjax(xzdBidDepositRecoveryService.updateByBo(bo)); + } + + /** + * 删除投标保证金收回 + * + * @param ids 主键串 + */ + @SaCheckPermission("biddingManagement:bidDepositRecovery:remove") + @Log(title = "投标保证金收回", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdBidDepositRecoveryService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/XzdBidDepositRecovery.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/XzdBidDepositRecovery.java new file mode 100644 index 00000000..b6a351b6 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/XzdBidDepositRecovery.java @@ -0,0 +1,196 @@ +package org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 投标保证金收回对象 xzd_bid_deposit_recovery + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_bid_deposit_recovery") +public class XzdBidDepositRecovery extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 单据编码 + */ + private String documentCode; + + /** + * 单据日期 + */ + private Date documentDate; + + /** + * 项目名称 + */ + private String projectName; + + /** + * 项目类型 + */ + private Long projectType; + + /** + * 经营模式 + */ + private String businessMode; + + /** + * 工程造价 + */ + private Long projectCost; + + /** + * 收回金额 + */ + private Long recoveryAmount; + + /** + * 收回金额大写 + */ + private String recoveryAmountCapital; + + /** + * 资料费 + */ + private Long dataFee; + + /** + * 资料费大写 + */ + private String dataFeeCapital; + + /** + * 退款金额 + */ + private Long refundAmount; + + /** + * 收回日期 + */ + private Date recoveryDate; + + /** + * 保证金状态 + */ + private String depositStatus; + + /** + * 保证金金额 + */ + private Long depositAmount; + + /** + * 保证金金额大写 + */ + private String depositAmountCapital; + + /** + * 保证金汇款方式 + */ + private String depositRemittanceMethod; + + /** + * 支付截止时间 + */ + private Date paymentDeadline; + + /** + * 收款单位 + */ + private String receivingUnit; + + /** + * 保证金收款账户名称 + */ + private String depositReceivingAccountName; + + /** + * 收款账户银行 + */ + private String receivingBank; + + /** + * 收款账户账号 + */ + private String receivingBankAccount; + + /** + * 申请人 + */ + private String applicant; + + /** + * 申请单位 + */ + private String applicationUnit; + + /** + * 申请日期 + */ + private Date applicationDate; + + /** + * 标题 + */ + private String title; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + + /** + * 收款账户银行 + */ + private Long payeeBank; + /** + * 收款账户名称 + */ + private Long payeeName; + /** + * 收款单位(供应商信息) + */ + private Long payeeId; + /** + * 缴纳id + */ + private Long paymentId; + + /** + * 汇款方式 + */ + private String methodOfRemittance; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/bo/XzdBidDepositRecoveryBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/bo/XzdBidDepositRecoveryBo.java new file mode 100644 index 00000000..1c4f993d --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/bo/XzdBidDepositRecoveryBo.java @@ -0,0 +1,207 @@ +package org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.bo; + +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 java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.XzdBidDepositRecovery; + +/** + * 投标保证金收回业务对象 xzd_bid_deposit_recovery + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdBidDepositRecovery.class, reverseConvertGenerate = false) +public class XzdBidDepositRecoveryBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 单据编码 + */ + @NotBlank(message = "单据编码不能为空", groups = { AddGroup.class, EditGroup.class }) + private String documentCode; + + /** + * 单据日期 + */ + @NotNull(message = "单据日期不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date documentDate; + + /** + * 项目名称 + */ + @NotBlank(message = "项目名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectName; + + /** + * 项目类型 + */ + private Long projectType; + + /** + * 经营模式 + */ + private String businessMode; + + /** + * 工程造价 + */ + private Long projectCost; + + /** + * 收回金额 + */ + @NotNull(message = "收回金额不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long recoveryAmount; + + /** + * 收回金额大写 + */ + @NotBlank(message = "收回金额大写不能为空", groups = { AddGroup.class, EditGroup.class }) + private String recoveryAmountCapital; + + /** + * 资料费 + */ + private Long dataFee; + + /** + * 资料费大写 + */ + private String dataFeeCapital; + + /** + * 退款金额 + */ + private Long refundAmount; + + /** + * 收回日期 + */ + private Date recoveryDate; + + /** + * 保证金状态 + */ + private String depositStatus; + + /** + * 保证金金额 + */ + private Long depositAmount; + + /** + * 保证金金额大写 + */ + private String depositAmountCapital; + + /** + * 保证金汇款方式 + */ + private String depositRemittanceMethod; + + /** + * 支付截止时间 + */ + private Date paymentDeadline; + + /** + * 收款单位 + */ + private String receivingUnit; + + /** + * 保证金收款账户名称 + */ + private String depositReceivingAccountName; + + /** + * 收款账户银行 + */ + private String receivingBank; + + /** + * 收款账户账号 + */ + private String receivingBankAccount; + + /** + * 申请人 + */ + private String applicant; + + /** + * 申请单位 + */ + private String applicationUnit; + + /** + * 申请日期 + */ + private Date applicationDate; + + /** + * 标题 + */ + private String title; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + /** + * 收款账户 + */ + private Integer gatheringNumber; + + /** + * 收款账户银行 + */ + private Long payeeBank; + /** + * 收款账户名称 + */ + private Long payeeName; + /** + * 收款单位(供应商信息) + */ + private Long payeeId; + /** + * 缴纳id + */ + private Long paymentId; + + /** + * 汇款方式 + */ + private String methodOfRemittance; + + + + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/vo/XzdBidDepositRecoveryVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/vo/XzdBidDepositRecoveryVo.java new file mode 100644 index 00000000..f64a7eb0 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/vo/XzdBidDepositRecoveryVo.java @@ -0,0 +1,248 @@ +package org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.vo; + +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +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.common.translation.annotation.Translation; +import org.dromara.common.translation.constant.TransConstant; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.XzdBidDepositRecovery; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 投标保证金收回视图对象 xzd_bid_deposit_recovery + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdBidDepositRecovery.class) +public class XzdBidDepositRecoveryVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 单据编码 + */ + @ExcelProperty(value = "单据编码") + private String documentCode; + + /** + * 单据日期 + */ + @ExcelProperty(value = "单据日期") + private Date documentDate; + + /** + * 项目名称 + */ + @ExcelProperty(value = "项目名称") + private String projectName; + + /** + * 项目类型 + */ + @ExcelProperty(value = "项目类型") + private Long projectType; + + /** + * 经营模式 + */ + @ExcelProperty(value = "经营模式") + private String businessMode; + + /** + * 工程造价 + */ + @ExcelProperty(value = "工程造价") + private Long projectCost; + + /** + * 收回金额 + */ + @ExcelProperty(value = "收回金额") + private Long recoveryAmount; + + /** + * 收回金额大写 + */ + @ExcelProperty(value = "收回金额大写") + private String recoveryAmountCapital; + + /** + * 资料费 + */ + @ExcelProperty(value = "资料费") + private Long dataFee; + + /** + * 资料费大写 + */ + @ExcelProperty(value = "资料费大写") + private String dataFeeCapital; + + /** + * 退款金额 + */ + @ExcelProperty(value = "退款金额") + private Long refundAmount; + + /** + * 收回日期 + */ + @ExcelProperty(value = "收回日期") + private Date recoveryDate; + + /** + * 保证金状态 + */ + @ExcelProperty(value = "保证金状态") + private String depositStatus; + + /** + * 保证金金额 + */ + @ExcelProperty(value = "保证金金额") + private Long depositAmount; + + /** + * 保证金金额大写 + */ + @ExcelProperty(value = "保证金金额大写") + private String depositAmountCapital; + + /** + * 保证金汇款方式 + */ + @ExcelProperty(value = "保证金汇款方式") + private String depositRemittanceMethod; + + /** + * 支付截止时间 + */ + @ExcelProperty(value = "支付截止时间") + private Date paymentDeadline; + + /** + * 收款单位 + */ + @ExcelProperty(value = "收款单位") + private String receivingUnit; + + /** + * 保证金收款账户名称 + */ + @ExcelProperty(value = "保证金收款账户名称") + private String depositReceivingAccountName; + + /** + * 收款账户银行 + */ + @ExcelProperty(value = "收款账户银行") + private String receivingBank; + + /** + * 收款账户账号 + */ + @ExcelProperty(value = "收款账户账号") + private String receivingBankAccount; + + /** + * 申请人 + */ + @ExcelProperty(value = "申请人") + private String applicant; + + /** + * 申请单位 + */ + @ExcelProperty(value = "申请单位") + private String applicationUnit; + + /** + * 申请日期 + */ + @ExcelProperty(value = "申请日期") + private Date applicationDate; + + /** + * 标题 + */ + @ExcelProperty(value = "标题") + private String title; + + /** + * 文件ID + */ + @ExcelProperty(value = "文件ID") + private String fileId; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + /** + * 审核状态 + */ + @ExcelProperty(value = "审核状态") + private String auditStatus; + + private Long createBy; + + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "createBy") + private String createName; + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private Date createTime; + + /** + * 收款账户银行 + */ + private Long payeeBank; + /** + * 收款账户名称 + */ + private Long payeeName; + /** + * 收款单位(供应商信息) + */ + private Long payeeId; + /** + * 缴纳id + */ + private Long paymentId; + + + + /** + * 汇款方式 + */ + private String methodOfRemittance; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/vo/XzdBidDepositRecoveryXqVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/vo/XzdBidDepositRecoveryXqVo.java new file mode 100644 index 00000000..18417047 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/domain/vo/XzdBidDepositRecoveryXqVo.java @@ -0,0 +1,21 @@ +package org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.vo; + + +import lombok.Data; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.vo.XzdBidDepositPaymentByBqlx; +import org.dromara.xzd.domain.vo.XzdSupplierInfoVo; + +@Data +public class XzdBidDepositRecoveryXqVo { + +// 保证金收回信息 + private XzdBidDepositRecoveryVo xzdBidDepositRecoveryVo; + +// 保证金缴纳信息 + private XzdBidDepositPaymentByBqlx xzdBidDepositPaymentByBqlx; + +// 供应商信息 + private XzdSupplierInfoVo xzdSupplierInfoVo; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/mapper/XzdBidDepositRecoveryMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/mapper/XzdBidDepositRecoveryMapper.java new file mode 100644 index 00000000..95e2b900 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/mapper/XzdBidDepositRecoveryMapper.java @@ -0,0 +1,17 @@ +package org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.XzdBidDepositRecovery; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.vo.XzdBidDepositRecoveryVo; + +/** + * 投标保证金收回Mapper接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface XzdBidDepositRecoveryMapper extends BaseMapperPlus, BaseMapper { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/service/IXzdBidDepositRecoveryService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/service/IXzdBidDepositRecoveryService.java new file mode 100644 index 00000000..dcd3f827 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/service/IXzdBidDepositRecoveryService.java @@ -0,0 +1,73 @@ +package org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.service; + + +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.XzdBidDepositRecovery; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.bo.XzdBidDepositRecoveryBo; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.vo.XzdBidDepositRecoveryVo; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.vo.XzdBidDepositRecoveryXqVo; + +import java.util.Collection; +import java.util.List; + +/** + * 投标保证金收回Service接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface IXzdBidDepositRecoveryService extends IService{ + + /** + * 查询投标保证金收回 + * + * @param id 主键 + * @return 投标保证金收回 + */ + XzdBidDepositRecoveryXqVo queryById(Long id); + + /** + * 分页查询投标保证金收回列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标保证金收回分页列表 + */ + TableDataInfo queryPageList(XzdBidDepositRecoveryBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的投标保证金收回列表 + * + * @param bo 查询条件 + * @return 投标保证金收回列表 + */ + List queryList(XzdBidDepositRecoveryBo bo); + + /** + * 新增投标保证金收回 + * + * @param bo 投标保证金收回 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdBidDepositRecoveryBo bo); + + /** + * 修改投标保证金收回 + * + * @param bo 投标保证金收回 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdBidDepositRecoveryBo 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/earnestMoneyWithdraw/service/impl/XzdBidDepositRecoveryServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/service/impl/XzdBidDepositRecoveryServiceImpl.java new file mode 100644 index 00000000..6efc8766 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/earnestMoneyWithdraw/service/impl/XzdBidDepositRecoveryServiceImpl.java @@ -0,0 +1,201 @@ +package org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.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.system.service.impl.SysOssServiceImpl; +import org.dromara.xzd.biddingManagement.earnestMoney.domain.vo.XzdBidDepositPaymentByBqlx; +import org.dromara.xzd.biddingManagement.earnestMoney.service.IXzdBidDepositPaymentService; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.XzdBidDepositRecovery; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.bo.XzdBidDepositRecoveryBo; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.vo.XzdBidDepositRecoveryVo; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.domain.vo.XzdBidDepositRecoveryXqVo; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.mapper.XzdBidDepositRecoveryMapper; +import org.dromara.xzd.biddingManagement.earnestMoneyWithdraw.service.IXzdBidDepositRecoveryService; +import org.dromara.xzd.domain.vo.XzdSupplierInfoVo; +import org.dromara.xzd.service.IXzdSupplierInfoService; +import org.dromara.xzd.utilS.AreaUtil; +import org.springframework.stereotype.Service; +import java.time.LocalDate; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.Collection; +import java.util.stream.Collectors; + +/** + * 投标保证金收回Service业务层处理 + * + * @author Lion Li + * @date 2025-10-11 + */ +@RequiredArgsConstructor +@Service +public class XzdBidDepositRecoveryServiceImpl extends ServiceImpl implements IXzdBidDepositRecoveryService { + + private final XzdBidDepositRecoveryMapper baseMapper; + private final AreaUtil areaUtil; + + private final SysOssServiceImpl sysOssService; + private final IXzdBidDepositPaymentService xzdBidDepositRecoveryXqVo; + private final IXzdSupplierInfoService xzdSupplierInfoService; + + + /** + * 查询投标保证金收回 + * + * @param id 主键 + * @return 投标保证金收回 + */ + @Override + public XzdBidDepositRecoveryXqVo queryById(Long id){ + + if (id == null){ + return null; + } + XzdBidDepositRecoveryXqVo vo = new XzdBidDepositRecoveryXqVo(); + XzdBidDepositRecoveryVo xzdBidDepositRecoveryVo = baseMapper.selectVoById(id); + XzdBidDepositPaymentByBqlx xzdBidDepositPaymentByBqlx = xzdBidDepositRecoveryXqVo.queryById(xzdBidDepositRecoveryVo.getPaymentId()); + XzdSupplierInfoVo xzdSupplierInfoVo = xzdSupplierInfoService.queryById(xzdBidDepositRecoveryVo.getPayeeId()); + + vo.setXzdBidDepositRecoveryVo(xzdBidDepositRecoveryVo); + vo.setXzdBidDepositPaymentByBqlx(xzdBidDepositPaymentByBqlx); + vo.setXzdSupplierInfoVo(xzdSupplierInfoVo); + + + return vo; + } + + /** + * 分页查询投标保证金收回列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 投标保证金收回分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdBidDepositRecoveryBo 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(XzdBidDepositRecoveryBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdBidDepositRecoveryBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdBidDepositRecovery::getId); + lqw.eq(StringUtils.isNotBlank(bo.getDocumentCode()), XzdBidDepositRecovery::getDocumentCode, bo.getDocumentCode()); + lqw.eq(bo.getDocumentDate() != null, XzdBidDepositRecovery::getDocumentDate, bo.getDocumentDate()); + lqw.like(StringUtils.isNotBlank(bo.getProjectName()), XzdBidDepositRecovery::getProjectName, bo.getProjectName()); + lqw.eq(bo.getProjectType() != null, XzdBidDepositRecovery::getProjectType, bo.getProjectType()); + lqw.eq(StringUtils.isNotBlank(bo.getBusinessMode()), XzdBidDepositRecovery::getBusinessMode, bo.getBusinessMode()); + lqw.eq(bo.getProjectCost() != null, XzdBidDepositRecovery::getProjectCost, bo.getProjectCost()); + lqw.eq(bo.getRecoveryAmount() != null, XzdBidDepositRecovery::getRecoveryAmount, bo.getRecoveryAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getRecoveryAmountCapital()), XzdBidDepositRecovery::getRecoveryAmountCapital, bo.getRecoveryAmountCapital()); + lqw.eq(bo.getDataFee() != null, XzdBidDepositRecovery::getDataFee, bo.getDataFee()); + lqw.eq(StringUtils.isNotBlank(bo.getDataFeeCapital()), XzdBidDepositRecovery::getDataFeeCapital, bo.getDataFeeCapital()); + lqw.eq(bo.getRefundAmount() != null, XzdBidDepositRecovery::getRefundAmount, bo.getRefundAmount()); + lqw.eq(bo.getRecoveryDate() != null, XzdBidDepositRecovery::getRecoveryDate, bo.getRecoveryDate()); + lqw.eq(StringUtils.isNotBlank(bo.getDepositStatus()), XzdBidDepositRecovery::getDepositStatus, bo.getDepositStatus()); + lqw.eq(bo.getDepositAmount() != null, XzdBidDepositRecovery::getDepositAmount, bo.getDepositAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getDepositAmountCapital()), XzdBidDepositRecovery::getDepositAmountCapital, bo.getDepositAmountCapital()); + lqw.eq(StringUtils.isNotBlank(bo.getDepositRemittanceMethod()), XzdBidDepositRecovery::getDepositRemittanceMethod, bo.getDepositRemittanceMethod()); + lqw.eq(bo.getPaymentDeadline() != null, XzdBidDepositRecovery::getPaymentDeadline, bo.getPaymentDeadline()); + lqw.eq(StringUtils.isNotBlank(bo.getReceivingUnit()), XzdBidDepositRecovery::getReceivingUnit, bo.getReceivingUnit()); + lqw.like(StringUtils.isNotBlank(bo.getDepositReceivingAccountName()), XzdBidDepositRecovery::getDepositReceivingAccountName, bo.getDepositReceivingAccountName()); + lqw.eq(StringUtils.isNotBlank(bo.getReceivingBank()), XzdBidDepositRecovery::getReceivingBank, bo.getReceivingBank()); + lqw.eq(StringUtils.isNotBlank(bo.getReceivingBankAccount()), XzdBidDepositRecovery::getReceivingBankAccount, bo.getReceivingBankAccount()); + lqw.eq(StringUtils.isNotBlank(bo.getApplicant()), XzdBidDepositRecovery::getApplicant, bo.getApplicant()); + lqw.eq(StringUtils.isNotBlank(bo.getApplicationUnit()), XzdBidDepositRecovery::getApplicationUnit, bo.getApplicationUnit()); + lqw.eq(bo.getApplicationDate() != null, XzdBidDepositRecovery::getApplicationDate, bo.getApplicationDate()); + lqw.eq(StringUtils.isNotBlank(bo.getTitle()), XzdBidDepositRecovery::getTitle, bo.getTitle()); + lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdBidDepositRecovery::getFileId, bo.getFileId()); + lqw.eq(StringUtils.isNotBlank(bo.getAuditStatus()), XzdBidDepositRecovery::getAuditStatus, bo.getAuditStatus()); + return lqw; + } + + /** + * 新增投标保证金收回 + * + * @param bo 投标保证金收回 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdBidDepositRecoveryBo bo) { + XzdBidDepositRecovery add = MapstructUtils.convert(bo, XzdBidDepositRecovery.class); + validEntityBeforeSave(add); + + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdBidDepositRecovery::getCreateTime, LocalDate.now())); + String s = areaUtil.generateDateBasedNumber(); + add.setDocumentCode(s+"-"+(l+1)); + + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改投标保证金收回 + * + * @param bo 投标保证金收回 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdBidDepositRecoveryBo bo) { + XzdBidDepositRecovery update = MapstructUtils.convert(bo, XzdBidDepositRecovery.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdBidDepositRecovery entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除投标保证金收回信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + for (Long id : ids) { + XzdBidDepositRecoveryVo xzdBidDepositRecoveryVo = baseMapper.selectVoById(id); + + // 删除附件 + if (!StringUtils.isEmpty(xzdBidDepositRecoveryVo.getFileId())){ + List collect = Arrays.stream(xzdBidDepositRecoveryVo.getFileId().split(",")).map(item -> { + return Long.parseLong(item); + }).collect(Collectors.toList()); + sysOssService.deleteWithValidByIds(collect, false); + } + } + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/vo/XzdBiddingAgencyFeePaymentVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/vo/XzdBiddingAgencyFeePaymentVo.java index 0f7d55ad..8072b9b9 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/vo/XzdBiddingAgencyFeePaymentVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/domain/vo/XzdBiddingAgencyFeePaymentVo.java @@ -2,6 +2,10 @@ package org.dromara.xzd.biddingManagement.paymentapplication.domain.vo; import java.util.Date; +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import org.dromara.common.translation.annotation.Translation; +import org.dromara.common.translation.constant.TransConstant; import org.dromara.xzd.biddingManagement.paymentapplication.domain.XzdBiddingAgencyFeePayment; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; @@ -138,4 +142,16 @@ public class XzdBiddingAgencyFeePaymentVo implements Serializable { private String auditStatus; + + private Long createBy; + + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "createBy") + private String createName; + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private Date createTime; + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/impl/XzdBiddingAgencyFeePaymentServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/impl/XzdBiddingAgencyFeePaymentServiceImpl.java index 055816b3..20f58caf 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/impl/XzdBiddingAgencyFeePaymentServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/paymentapplication/service/impl/XzdBiddingAgencyFeePaymentServiceImpl.java @@ -9,6 +9,8 @@ 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.system.service.impl.SysOssServiceImpl; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBidPreProjectVo; import org.dromara.xzd.utilS.AreaUtil; import org.springframework.stereotype.Service; import org.dromara.xzd.biddingManagement.paymentapplication.domain.bo.XzdBiddingAgencyFeePaymentBo; @@ -17,10 +19,13 @@ import org.dromara.xzd.biddingManagement.paymentapplication.domain.XzdBiddingAge import org.dromara.xzd.biddingManagement.paymentapplication.mapper.XzdBiddingAgencyFeePaymentMapper; import org.dromara.xzd.biddingManagement.paymentapplication.service.IXzdBiddingAgencyFeePaymentService; +import java.time.LocalDate; import java.time.LocalDateTime; +import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.Collection; +import java.util.stream.Collectors; /** * 招标代理服务费支付申请Service业务层处理 @@ -34,6 +39,9 @@ public class XzdBiddingAgencyFeePaymentServiceImpl extends ServiceImpl().gt(XzdBiddingAgencyFeePayment::getCreateTime, LocalDateTime.now())); + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdBiddingAgencyFeePayment::getCreateTime, LocalDate .now())); String s = areaUtil.generateDateBasedNumber(); @@ -151,7 +159,16 @@ public class XzdBiddingAgencyFeePaymentServiceImpl extends ServiceImpl ids, Boolean isValid) { if(isValid){ - //TODO 做一些业务上的校验,判断是否需要校验 + for (Long id : ids) { + XzdBiddingAgencyFeePaymentVo xzdBiddingAgencyFeePaymentVo = baseMapper.selectVoById(id); + // 删除附件 + if (!StringUtils.isEmpty(xzdBiddingAgencyFeePaymentVo.getFileId())){ + List collect = Arrays.stream(xzdBiddingAgencyFeePaymentVo.getFileId().split(",")).map(item -> { + return Long.parseLong(item); + }).collect(Collectors.toList()); + sysOssService.deleteWithValidByIds(collect, false); + } + } } return baseMapper.deleteByIds(ids) > 0; } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/controller/XzdPostBidAnalysisController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/controller/XzdPostBidAnalysisController.java new file mode 100644 index 00000000..6f0a8e22 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/controller/XzdPostBidAnalysisController.java @@ -0,0 +1,106 @@ +package org.dromara.xzd.biddingManagement.postAnalysis.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.dromara.xzd.biddingManagement.postAnalysis.domain.bo.XzdPostBidAnalysisBo; +import org.dromara.xzd.biddingManagement.postAnalysis.domain.vo.XzdPostBidAnalysisVo; +import org.dromara.xzd.biddingManagement.postAnalysis.service.IXzdPostBidAnalysisService; +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.common.mybatis.core.page.TableDataInfo; + +/** + * 标后分析 + * + * @author Lion Li + * @date 2025-10-11 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/postAnalysis/postBidAnalysis") +public class XzdPostBidAnalysisController extends BaseController { + + private final IXzdPostBidAnalysisService xzdPostBidAnalysisService; + + /** + * 查询标后分析列表 + */ + @SaCheckPermission("postAnalysis:postBidAnalysis:list") + @GetMapping("/list") + public TableDataInfo list(XzdPostBidAnalysisBo bo, PageQuery pageQuery) { + return xzdPostBidAnalysisService.queryPageList(bo, pageQuery); + } + + /** + * 导出标后分析列表 + */ + @SaCheckPermission("postAnalysis:postBidAnalysis:export") + @Log(title = "标后分析", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdPostBidAnalysisBo bo, HttpServletResponse response) { + List list = xzdPostBidAnalysisService.queryList(bo); + ExcelUtil.exportExcel(list, "标后分析", XzdPostBidAnalysisVo.class, response); + } + + /** + * 获取标后分析详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("postAnalysis:postBidAnalysis:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdPostBidAnalysisService.queryById(id)); + } + + /** + * 新增标后分析 + */ + @SaCheckPermission("postAnalysis:postBidAnalysis:add") + @Log(title = "标后分析", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdPostBidAnalysisBo bo) { + return toAjax(xzdPostBidAnalysisService.insertByBo(bo)); + } + + /** + * 修改标后分析 + */ + @SaCheckPermission("postAnalysis:postBidAnalysis:edit") + @Log(title = "标后分析", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdPostBidAnalysisBo bo) { + return toAjax(xzdPostBidAnalysisService.updateByBo(bo)); + } + + /** + * 删除标后分析 + * + * @param ids 主键串 + */ + @SaCheckPermission("postAnalysis:postBidAnalysis:remove") + @Log(title = "标后分析", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdPostBidAnalysisService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/XzdPostBidAnalysis.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/XzdPostBidAnalysis.java new file mode 100644 index 00000000..98d1118a --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/XzdPostBidAnalysis.java @@ -0,0 +1,128 @@ +package org.dromara.xzd.biddingManagement.postAnalysis.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 标后分析对象 xzd_post_bid_analysis + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_post_bid_analysis") +public class XzdPostBidAnalysis extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 项目编码 + */ + private String projectCode; + + /** + * 项目名称 + */ + private String projectName; + + /** + * 工程造价(万元) + */ + private Long projectCost; + + /** + * 项目类型 + */ + private String projectType; + + /** + * 项目地址 + */ + private String projectAddress; + + /** + * 工程概况 + */ + private String projectOverview; + + /** + * 建设单位 + */ + private String constructionUnit; + + /** + * 开标日期 + */ + private Date bidOpeningDate; + + /** + * 经营模式 + */ + private String businessModel; + + /** + * 招标控制价(万元) + */ + private Long controlPrice; + + /** + * 最终报价(万元) + */ + private Long finalQuote; + + /** + * 投标结果 + */ + private String biddingResult; + + /** + * 开标记录链接 + */ + private String bidRecordLink; + + /** + * 投标分析与总结 + */ + private String analysisSummary; + + /** + * 最终报价(元) + */ + private Long finalQuoteYuan; + + /** + * 最终报价(大写) + */ + private String finalQuoteChinese; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/bo/XzdPostBidAnalysisBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/bo/XzdPostBidAnalysisBo.java new file mode 100644 index 00000000..ced69ac9 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/bo/XzdPostBidAnalysisBo.java @@ -0,0 +1,128 @@ +package org.dromara.xzd.biddingManagement.postAnalysis.domain.bo; + +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 java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.biddingManagement.postAnalysis.domain.XzdPostBidAnalysis; + +/** + * 标后分析业务对象 xzd_post_bid_analysis + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdPostBidAnalysis.class, reverseConvertGenerate = false) +public class XzdPostBidAnalysisBo extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 项目编码 + */ + private String projectCode; + + /** + * 项目名称 + */ + @NotBlank(message = "项目名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectName; + + /** + * 工程造价(万元) + */ + private Long projectCost; + + /** + * 项目类型 + */ + private String projectType; + + /** + * 项目地址 + */ + private String projectAddress; + + /** + * 工程概况 + */ + private String projectOverview; + + /** + * 建设单位 + */ + private String constructionUnit; + + /** + * 开标日期 + */ + private Date bidOpeningDate; + + /** + * 经营模式 + */ + private String businessModel; + + /** + * 招标控制价(万元) + */ + private Long controlPrice; + + /** + * 最终报价(万元) + */ + private Long finalQuote; + + /** + * 投标结果 + */ + @NotBlank(message = "投标结果不能为空", groups = { AddGroup.class, EditGroup.class }) + private String biddingResult; + + /** + * 开标记录链接 + */ + private String bidRecordLink; + + /** + * 投标分析与总结 + */ + private String analysisSummary; + + /** + * 最终报价(元) + */ + private Long finalQuoteYuan; + + /** + * 最终报价(大写) + */ + private String finalQuoteChinese; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/vo/XzdPostBidAnalysisVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/vo/XzdPostBidAnalysisVo.java new file mode 100644 index 00000000..d8b6ab9b --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/domain/vo/XzdPostBidAnalysisVo.java @@ -0,0 +1,155 @@ +package org.dromara.xzd.biddingManagement.postAnalysis.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +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.postAnalysis.domain.XzdPostBidAnalysis; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 标后分析视图对象 xzd_post_bid_analysis + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdPostBidAnalysis.class) +public class XzdPostBidAnalysisVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 项目编码 + */ + @ExcelProperty(value = "项目编码") + private String projectCode; + + /** + * 项目名称 + */ + @ExcelProperty(value = "项目名称") + private String projectName; + + /** + * 工程造价(万元) + */ + @ExcelProperty(value = "工程造价(万元)") + private Long projectCost; + + /** + * 项目类型 + */ + @ExcelProperty(value = "项目类型") + private String projectType; + + /** + * 项目地址 + */ + @ExcelProperty(value = "项目地址") + private String projectAddress; + + /** + * 工程概况 + */ + @ExcelProperty(value = "工程概况") + private String projectOverview; + + /** + * 建设单位 + */ + @ExcelProperty(value = "建设单位") + private String constructionUnit; + + /** + * 开标日期 + */ + @ExcelProperty(value = "开标日期") + private Date bidOpeningDate; + + /** + * 经营模式 + */ + @ExcelProperty(value = "经营模式") + private String businessModel; + + /** + * 招标控制价(万元) + */ + @ExcelProperty(value = "招标控制价(万元)") + private Long controlPrice; + + /** + * 最终报价(万元) + */ + @ExcelProperty(value = "最终报价(万元)") + private Long finalQuote; + + /** + * 投标结果 + */ + @ExcelProperty(value = "投标结果", converter = ExcelDictConvert.class) + @ExcelDictFormat(dictType = "xzd_bidding_result") + private String biddingResult; + + /** + * 开标记录链接 + */ + @ExcelProperty(value = "开标记录链接") + private String bidRecordLink; + + /** + * 投标分析与总结 + */ + @ExcelProperty(value = "投标分析与总结") + private String analysisSummary; + + /** + * 最终报价(元) + */ + @ExcelProperty(value = "最终报价(元)") + private Long finalQuoteYuan; + + /** + * 最终报价(大写) + */ + @ExcelProperty(value = "最终报价(大写)") + private String finalQuoteChinese; + + /** + * 文件ID + */ + @ExcelProperty(value = "文件ID") + private String fileId; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + /** + * 审核状态 + */ + @ExcelProperty(value = "审核状态") + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/mapper/XzdPostBidAnalysisMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/mapper/XzdPostBidAnalysisMapper.java new file mode 100644 index 00000000..5ff6d206 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/mapper/XzdPostBidAnalysisMapper.java @@ -0,0 +1,17 @@ +package org.dromara.xzd.biddingManagement.postAnalysis.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.xzd.biddingManagement.postAnalysis.domain.XzdPostBidAnalysis; +import org.dromara.xzd.biddingManagement.postAnalysis.domain.vo.XzdPostBidAnalysisVo; + +/** + * 标后分析Mapper接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface XzdPostBidAnalysisMapper extends BaseMapperPlus, BaseMapper { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/service/IXzdPostBidAnalysisService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/service/IXzdPostBidAnalysisService.java new file mode 100644 index 00000000..04de06b2 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/service/IXzdPostBidAnalysisService.java @@ -0,0 +1,72 @@ +package org.dromara.xzd.biddingManagement.postAnalysis.service; + + +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.dromara.xzd.biddingManagement.postAnalysis.domain.XzdPostBidAnalysis; +import org.dromara.xzd.biddingManagement.postAnalysis.domain.bo.XzdPostBidAnalysisBo; +import org.dromara.xzd.biddingManagement.postAnalysis.domain.vo.XzdPostBidAnalysisVo; + +import java.util.Collection; +import java.util.List; + +/** + * 标后分析Service接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface IXzdPostBidAnalysisService extends IService{ + + /** + * 查询标后分析 + * + * @param id 主键 + * @return 标后分析 + */ + XzdPostBidAnalysisVo queryById(Long id); + + /** + * 分页查询标后分析列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 标后分析分页列表 + */ + TableDataInfo queryPageList(XzdPostBidAnalysisBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的标后分析列表 + * + * @param bo 查询条件 + * @return 标后分析列表 + */ + List queryList(XzdPostBidAnalysisBo bo); + + /** + * 新增标后分析 + * + * @param bo 标后分析 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdPostBidAnalysisBo bo); + + /** + * 修改标后分析 + * + * @param bo 标后分析 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdPostBidAnalysisBo 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/postAnalysis/service/impl/XzdPostBidAnalysisServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/service/impl/XzdPostBidAnalysisServiceImpl.java new file mode 100644 index 00000000..327d7a38 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/biddingManagement/postAnalysis/service/impl/XzdPostBidAnalysisServiceImpl.java @@ -0,0 +1,149 @@ +package org.dromara.xzd.biddingManagement.postAnalysis.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.postAnalysis.domain.XzdPostBidAnalysis; +import org.dromara.xzd.biddingManagement.postAnalysis.domain.bo.XzdPostBidAnalysisBo; +import org.dromara.xzd.biddingManagement.postAnalysis.domain.vo.XzdPostBidAnalysisVo; +import org.dromara.xzd.biddingManagement.postAnalysis.mapper.XzdPostBidAnalysisMapper; +import org.dromara.xzd.biddingManagement.postAnalysis.service.IXzdPostBidAnalysisService; +import org.springframework.stereotype.Service; + + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 标后分析Service业务层处理 + * + * @author Lion Li + * @date 2025-10-11 + */ +@RequiredArgsConstructor +@Service +public class XzdPostBidAnalysisServiceImpl extends ServiceImpl implements IXzdPostBidAnalysisService { + + private final XzdPostBidAnalysisMapper baseMapper; + + /** + * 查询标后分析 + * + * @param id 主键 + * @return 标后分析 + */ + @Override + public XzdPostBidAnalysisVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询标后分析列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 标后分析分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdPostBidAnalysisBo 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(XzdPostBidAnalysisBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdPostBidAnalysisBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdPostBidAnalysis::getId); + lqw.eq(StringUtils.isNotBlank(bo.getProjectCode()), XzdPostBidAnalysis::getProjectCode, bo.getProjectCode()); + lqw.like(StringUtils.isNotBlank(bo.getProjectName()), XzdPostBidAnalysis::getProjectName, bo.getProjectName()); + lqw.eq(bo.getProjectCost() != null, XzdPostBidAnalysis::getProjectCost, bo.getProjectCost()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectType()), XzdPostBidAnalysis::getProjectType, bo.getProjectType()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectAddress()), XzdPostBidAnalysis::getProjectAddress, bo.getProjectAddress()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectOverview()), XzdPostBidAnalysis::getProjectOverview, bo.getProjectOverview()); + lqw.eq(StringUtils.isNotBlank(bo.getConstructionUnit()), XzdPostBidAnalysis::getConstructionUnit, bo.getConstructionUnit()); + lqw.eq(bo.getBidOpeningDate() != null, XzdPostBidAnalysis::getBidOpeningDate, bo.getBidOpeningDate()); + lqw.eq(StringUtils.isNotBlank(bo.getBusinessModel()), XzdPostBidAnalysis::getBusinessModel, bo.getBusinessModel()); + lqw.eq(bo.getControlPrice() != null, XzdPostBidAnalysis::getControlPrice, bo.getControlPrice()); + lqw.eq(bo.getFinalQuote() != null, XzdPostBidAnalysis::getFinalQuote, bo.getFinalQuote()); + lqw.eq(StringUtils.isNotBlank(bo.getBiddingResult()), XzdPostBidAnalysis::getBiddingResult, bo.getBiddingResult()); + lqw.eq(StringUtils.isNotBlank(bo.getBidRecordLink()), XzdPostBidAnalysis::getBidRecordLink, bo.getBidRecordLink()); + lqw.eq(StringUtils.isNotBlank(bo.getAnalysisSummary()), XzdPostBidAnalysis::getAnalysisSummary, bo.getAnalysisSummary()); + lqw.eq(bo.getFinalQuoteYuan() != null, XzdPostBidAnalysis::getFinalQuoteYuan, bo.getFinalQuoteYuan()); + lqw.eq(StringUtils.isNotBlank(bo.getFinalQuoteChinese()), XzdPostBidAnalysis::getFinalQuoteChinese, bo.getFinalQuoteChinese()); + lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdPostBidAnalysis::getFileId, bo.getFileId()); + lqw.eq(StringUtils.isNotBlank(bo.getAuditStatus()), XzdPostBidAnalysis::getAuditStatus, bo.getAuditStatus()); + return lqw; + } + + /** + * 新增标后分析 + * + * @param bo 标后分析 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdPostBidAnalysisBo bo) { + XzdPostBidAnalysis add = MapstructUtils.convert(bo, XzdPostBidAnalysis.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改标后分析 + * + * @param bo 标后分析 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdPostBidAnalysisBo bo) { + XzdPostBidAnalysis update = MapstructUtils.convert(bo, XzdPostBidAnalysis.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdPostBidAnalysis 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/deposit/earnestMoney/controller/XzdDepositApplicationController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/controller/XzdDepositApplicationController.java new file mode 100644 index 00000000..4f233be7 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/controller/XzdDepositApplicationController.java @@ -0,0 +1,106 @@ +package org.dromara.xzd.deposit.earnestMoney.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.dromara.xzd.deposit.earnestMoney.domain.bo.XzdDepositApplicationBo; +import org.dromara.xzd.deposit.earnestMoney.domain.vo.XzdDepositApplicationVo; +import org.dromara.xzd.deposit.earnestMoney.service.IXzdDepositApplicationService; +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.common.mybatis.core.page.TableDataInfo; + +/** + * 保证金缴纳审批 + * + * @author Lion Li + * @date 2025-10-11 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/earnestMoney/depositApplication") +public class XzdDepositApplicationController extends BaseController { + + private final IXzdDepositApplicationService xzdDepositApplicationService; + + /** + * 查询保证金缴纳审批列表 + */ + @SaCheckPermission("earnestMoney:depositApplication:list") + @GetMapping("/list") + public TableDataInfo list(XzdDepositApplicationBo bo, PageQuery pageQuery) { + return xzdDepositApplicationService.queryPageList(bo, pageQuery); + } + + /** + * 导出保证金缴纳审批列表 + */ + @SaCheckPermission("earnestMoney:depositApplication:export") + @Log(title = "保证金缴纳审批", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdDepositApplicationBo bo, HttpServletResponse response) { + List list = xzdDepositApplicationService.queryList(bo); + ExcelUtil.exportExcel(list, "保证金缴纳审批", XzdDepositApplicationVo.class, response); + } + + /** + * 获取保证金缴纳审批详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("earnestMoney:depositApplication:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdDepositApplicationService.queryById(id)); + } + + /** + * 新增保证金缴纳审批 + */ + @SaCheckPermission("earnestMoney:depositApplication:add") + @Log(title = "保证金缴纳审批", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdDepositApplicationBo bo) { + return toAjax(xzdDepositApplicationService.insertByBo(bo)); + } + + /** + * 修改保证金缴纳审批 + */ + @SaCheckPermission("earnestMoney:depositApplication:edit") + @Log(title = "保证金缴纳审批", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdDepositApplicationBo bo) { + return toAjax(xzdDepositApplicationService.updateByBo(bo)); + } + + /** + * 删除保证金缴纳审批 + * + * @param ids 主键串 + */ + @SaCheckPermission("earnestMoney:depositApplication:remove") + @Log(title = "保证金缴纳审批", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdDepositApplicationService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/XzdDepositApplication.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/XzdDepositApplication.java new file mode 100644 index 00000000..c09500e7 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/XzdDepositApplication.java @@ -0,0 +1,131 @@ +package org.dromara.xzd.deposit.earnestMoney.domain; + +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 保证金缴纳审批对象 xzd_deposit_application + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_deposit_application") +public class XzdDepositApplication extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * + */ + @TableId(value = "id") + private Long id; + + /** + * 申请时间 + */ + private Date applicationTime; + + /** + * 单据流水号 + */ + private String documentSerialNumber; + + /** + * 申请人所属组织 + */ + private Long applicantOrganization; + + /** + * 申请人所属部门 + */ + private Long applicantDepartment; + + /** + * 备案部门 + */ + private Long recordDepartment; + + /** + * 部门下属 + */ + private String departmentSubordinate; + + /** + * 项目名称 + */ + private String projectName; + + /** + * 缴纳方式(0:现金,1:转账) + */ + private Long paymentMethod; + + /** + * 保证金类型(字典) + */ + private String depositType; + + /** + * 开户银行 + */ + private String bankName; + + /** + * 收取保证金单位 + */ + private String depositReceivingUnit; + + /** + * 账号 + */ + private String accountNumber; + + /** + * 金额小写(元) + */ + private Long amountLower; + + /** + * 占合同比例(%) + */ + private Long contractProportion; + + /** + * 金额大写 + */ + private String amountUpper; + + /** + * 保证金到期日 + */ + private Date depositDueDate; + + /** + * 要求到账日期 + */ + private Date requiredArrivalDate; + + /** + * 备注 + */ + private String remarks; + + + /** + * 文件 + */ + @ExcelProperty(value = "文件") + private String fileId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/bo/XzdDepositApplicationBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/bo/XzdDepositApplicationBo.java new file mode 100644 index 00000000..f07f5185 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/bo/XzdDepositApplicationBo.java @@ -0,0 +1,130 @@ +package org.dromara.xzd.deposit.earnestMoney.domain.bo; + +import com.alibaba.excel.annotation.ExcelProperty; +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 java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.deposit.earnestMoney.domain.XzdDepositApplication; + +/** + * 保证金缴纳审批业务对象 xzd_deposit_application + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdDepositApplication.class, reverseConvertGenerate = false) +public class XzdDepositApplicationBo extends BaseEntity { + + /** + * + */ + @NotNull(message = "不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 申请时间 + */ + @NotNull(message = "申请时间不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date applicationTime; + + /** + * 单据流水号 + */ + private String documentSerialNumber; + + /** + * 申请人所属组织 + */ + private Long applicantOrganization; + + /** + * 申请人所属部门 + */ + private Long applicantDepartment; + + /** + * 备案部门 + */ + private Long recordDepartment; + + /** + * 部门下属 + */ + private String departmentSubordinate; + + /** + * 项目名称 + */ + private String projectName; + + /** + * 缴纳方式(0:现金,1:转账) + */ + private Long paymentMethod; + + /** + * 保证金类型(字典) + */ + private String depositType; + + /** + * 开户银行 + */ + private String bankName; + + /** + * 收取保证金单位 + */ + private String depositReceivingUnit; + + /** + * 账号 + */ + private String accountNumber; + + /** + * 金额小写(元) + */ + private Long amountLower; + + /** + * 占合同比例(%) + */ + private Long contractProportion; + + /** + * 金额大写 + */ + private String amountUpper; + + /** + * 保证金到期日 + */ + private Date depositDueDate; + + /** + * 要求到账日期 + */ + private Date requiredArrivalDate; + + /** + * 备注 + */ + private String remarks; + + /** + * 文件 + */ + @ExcelProperty(value = "文件") + private String fileId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/vo/XzdDepositApplicationVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/vo/XzdDepositApplicationVo.java new file mode 100644 index 00000000..07ee3080 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/domain/vo/XzdDepositApplicationVo.java @@ -0,0 +1,155 @@ +package org.dromara.xzd.deposit.earnestMoney.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +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.deposit.earnestMoney.domain.XzdDepositApplication; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 保证金缴纳审批视图对象 xzd_deposit_application + * + * @author Lion Li + * @date 2025-10-11 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdDepositApplication.class) +public class XzdDepositApplicationVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private Long id; + + /** + * 申请时间 + */ + @ExcelProperty(value = "申请时间") + private Date applicationTime; + + /** + * 单据流水号 + */ + @ExcelProperty(value = "单据流水号") + private String documentSerialNumber; + + /** + * 申请人所属组织 + */ + @ExcelProperty(value = "申请人所属组织") + private Long applicantOrganization; + + /** + * 申请人所属部门 + */ + @ExcelProperty(value = "申请人所属部门") + private Long applicantDepartment; + + /** + * 备案部门 + */ + @ExcelProperty(value = "备案部门") + private Long recordDepartment; + + /** + * 部门下属 + */ + @ExcelProperty(value = "部门下属") + private String departmentSubordinate; + + /** + * 项目名称 + */ + @ExcelProperty(value = "项目名称") + private String projectName; + + /** + * 缴纳方式(0:现金,1:转账) + */ + @ExcelProperty(value = "缴纳方式", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "0=:现金,1:转账") + private Long paymentMethod; + + /** + * 保证金类型(字典) + */ + @ExcelProperty(value = "保证金类型", converter = ExcelDictConvert.class) + @ExcelDictFormat(dictType = "xzd_deposit_type") + private String depositType; + + /** + * 开户银行 + */ + @ExcelProperty(value = "开户银行") + private String bankName; + + /** + * 收取保证金单位 + */ + @ExcelProperty(value = "收取保证金单位") + private String depositReceivingUnit; + + /** + * 账号 + */ + @ExcelProperty(value = "账号") + private String accountNumber; + + /** + * 金额小写(元) + */ + @ExcelProperty(value = "金额小写(元)") + private Long amountLower; + + /** + * 占合同比例(%) + */ + @ExcelProperty(value = "占合同比例(%)") + private Long contractProportion; + + /** + * 金额大写 + */ + @ExcelProperty(value = "金额大写") + private String amountUpper; + + /** + * 保证金到期日 + */ + @ExcelProperty(value = "保证金到期日") + private Date depositDueDate; + + /** + * 要求到账日期 + */ + @ExcelProperty(value = "要求到账日期") + private Date requiredArrivalDate; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remarks; + /** + * 文件 + */ + @ExcelProperty(value = "文件") + private String fileId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/mapper/XzdDepositApplicationMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/mapper/XzdDepositApplicationMapper.java new file mode 100644 index 00000000..61a9e8bd --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/mapper/XzdDepositApplicationMapper.java @@ -0,0 +1,16 @@ +package org.dromara.xzd.deposit.earnestMoney.mapper; + + +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.xzd.deposit.earnestMoney.domain.XzdDepositApplication; +import org.dromara.xzd.deposit.earnestMoney.domain.vo.XzdDepositApplicationVo; + +/** + * 保证金缴纳审批Mapper接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface XzdDepositApplicationMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/service/IXzdDepositApplicationService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/service/IXzdDepositApplicationService.java new file mode 100644 index 00000000..dc2ec56f --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/service/IXzdDepositApplicationService.java @@ -0,0 +1,72 @@ +package org.dromara.xzd.deposit.earnestMoney.service; + + +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.dromara.xzd.deposit.earnestMoney.domain.XzdDepositApplication; +import org.dromara.xzd.deposit.earnestMoney.domain.bo.XzdDepositApplicationBo; +import org.dromara.xzd.deposit.earnestMoney.domain.vo.XzdDepositApplicationVo; + +import java.util.Collection; +import java.util.List; + +/** + * 保证金缴纳审批Service接口 + * + * @author Lion Li + * @date 2025-10-11 + */ +public interface IXzdDepositApplicationService extends IService{ + + /** + * 查询保证金缴纳审批 + * + * @param id 主键 + * @return 保证金缴纳审批 + */ + XzdDepositApplicationVo queryById(Long id); + + /** + * 分页查询保证金缴纳审批列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 保证金缴纳审批分页列表 + */ + TableDataInfo queryPageList(XzdDepositApplicationBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的保证金缴纳审批列表 + * + * @param bo 查询条件 + * @return 保证金缴纳审批列表 + */ + List queryList(XzdDepositApplicationBo bo); + + /** + * 新增保证金缴纳审批 + * + * @param bo 保证金缴纳审批 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdDepositApplicationBo bo); + + /** + * 修改保证金缴纳审批 + * + * @param bo 保证金缴纳审批 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdDepositApplicationBo 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/deposit/earnestMoney/service/impl/XzdDepositApplicationServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/service/impl/XzdDepositApplicationServiceImpl.java new file mode 100644 index 00000000..a2dc895f --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/deposit/earnestMoney/service/impl/XzdDepositApplicationServiceImpl.java @@ -0,0 +1,175 @@ +package org.dromara.xzd.deposit.earnestMoney.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.system.service.impl.SysOssServiceImpl; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.XzdBidPreProject; +import org.dromara.xzd.biddingManagement.biaoqianlixiang.domain.vo.XzdBidPreProjectVo; +import org.dromara.xzd.deposit.earnestMoney.domain.XzdDepositApplication; +import org.dromara.xzd.deposit.earnestMoney.domain.bo.XzdDepositApplicationBo; +import org.dromara.xzd.deposit.earnestMoney.domain.vo.XzdDepositApplicationVo; +import org.dromara.xzd.deposit.earnestMoney.mapper.XzdDepositApplicationMapper; +import org.dromara.xzd.deposit.earnestMoney.service.IXzdDepositApplicationService; +import org.dromara.xzd.utilS.AreaUtil; +import org.springframework.stereotype.Service; + + +import java.time.LocalDate; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.Collection; +import java.util.stream.Collectors; + +/** + * 保证金缴纳审批Service业务层处理 + * + * @author Lion Li + * @date 2025-10-11 + */ +@RequiredArgsConstructor +@Service +public class XzdDepositApplicationServiceImpl extends ServiceImpl implements IXzdDepositApplicationService { + + private final XzdDepositApplicationMapper baseMapper; + private final AreaUtil areaUtil; + private final SysOssServiceImpl sysOssService; + + + /** + * 查询保证金缴纳审批 + * + * @param id 主键 + * @return 保证金缴纳审批 + */ + @Override + public XzdDepositApplicationVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询保证金缴纳审批列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 保证金缴纳审批分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdDepositApplicationBo 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(XzdDepositApplicationBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdDepositApplicationBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdDepositApplication::getId); + lqw.eq(bo.getApplicationTime() != null, XzdDepositApplication::getApplicationTime, bo.getApplicationTime()); + lqw.eq(StringUtils.isNotBlank(bo.getDocumentSerialNumber()), XzdDepositApplication::getDocumentSerialNumber, bo.getDocumentSerialNumber()); + lqw.eq(bo.getApplicantOrganization() != null, XzdDepositApplication::getApplicantOrganization, bo.getApplicantOrganization()); + lqw.eq(bo.getApplicantDepartment() != null, XzdDepositApplication::getApplicantDepartment, bo.getApplicantDepartment()); + lqw.eq(bo.getRecordDepartment() != null, XzdDepositApplication::getRecordDepartment, bo.getRecordDepartment()); + lqw.eq(StringUtils.isNotBlank(bo.getDepartmentSubordinate()), XzdDepositApplication::getDepartmentSubordinate, bo.getDepartmentSubordinate()); + lqw.like(StringUtils.isNotBlank(bo.getProjectName()), XzdDepositApplication::getProjectName, bo.getProjectName()); + lqw.eq(bo.getPaymentMethod() != null, XzdDepositApplication::getPaymentMethod, bo.getPaymentMethod()); + lqw.eq(StringUtils.isNotBlank(bo.getDepositType()), XzdDepositApplication::getDepositType, bo.getDepositType()); + lqw.like(StringUtils.isNotBlank(bo.getBankName()), XzdDepositApplication::getBankName, bo.getBankName()); + lqw.eq(StringUtils.isNotBlank(bo.getDepositReceivingUnit()), XzdDepositApplication::getDepositReceivingUnit, bo.getDepositReceivingUnit()); + lqw.eq(StringUtils.isNotBlank(bo.getAccountNumber()), XzdDepositApplication::getAccountNumber, bo.getAccountNumber()); + lqw.eq(bo.getAmountLower() != null, XzdDepositApplication::getAmountLower, bo.getAmountLower()); + lqw.eq(bo.getContractProportion() != null, XzdDepositApplication::getContractProportion, bo.getContractProportion()); + lqw.eq(StringUtils.isNotBlank(bo.getAmountUpper()), XzdDepositApplication::getAmountUpper, bo.getAmountUpper()); + lqw.eq(bo.getDepositDueDate() != null, XzdDepositApplication::getDepositDueDate, bo.getDepositDueDate()); + lqw.eq(bo.getRequiredArrivalDate() != null, XzdDepositApplication::getRequiredArrivalDate, bo.getRequiredArrivalDate()); + lqw.eq(StringUtils.isNotBlank(bo.getRemarks()), XzdDepositApplication::getRemarks, bo.getRemarks()); + return lqw; + } + + /** + * 新增保证金缴纳审批 + * + * @param bo 保证金缴纳审批 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdDepositApplicationBo bo) { + XzdDepositApplication add = MapstructUtils.convert(bo, XzdDepositApplication.class); + validEntityBeforeSave(add); + + Long l = baseMapper.selectCount(new LambdaQueryWrapper().gt(XzdDepositApplication::getCreateTime, LocalDate.now())); + String s = areaUtil.generateDateBasedNumber(); + add.setDocumentSerialNumber(s+"-"+(l+1)); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改保证金缴纳审批 + * + * @param bo 保证金缴纳审批 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdDepositApplicationBo bo) { + XzdDepositApplication update = MapstructUtils.convert(bo, XzdDepositApplication.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdDepositApplication entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除保证金缴纳审批信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + + for (Long id : ids) { + XzdDepositApplicationVo xzdDepositApplicationVo = baseMapper.selectVoById(id); + + // 删除附件 + if (!StringUtils.isEmpty(xzdDepositApplicationVo.getFileId())){ + List collect = Arrays.stream(xzdDepositApplicationVo.getFileId().split(",")).map(item -> { + return Long.parseLong(item); + }).collect(Collectors.toList()); + sysOssService.deleteWithValidByIds(collect, false); + } + } + + } + return baseMapper.deleteByIds(ids) > 0; + } +}