From 33d051164ec9189086c6ac7331f10530e4a70b9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=88=E5=B1=95=E8=88=AA?= <2426745133@qq.com> Date: Fri, 10 Oct 2025 18:25:22 +0800 Subject: [PATCH] =?UTF-8?q?10-10-=E9=A1=B9=E7=9B=AE=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xzd/controller/XzdProjectController.java | 105 +++++++ .../org/dromara/xzd/domain/XzdProject.java | 218 +++++++++++++ .../xzd/domain/XzdProjectAccountingInfo.java | 56 ++++ .../domain/XzdProjectInternalAccounts.java | 46 +++ .../domain/XzdProjectParticipatingUnits.java | 51 +++ .../xzd/domain/XzdProjectPersonnel.java | 116 +++++++ .../dromara/xzd/domain/XzdProjectProfile.java | 111 +++++++ .../dromara/xzd/domain/XzdProjectTaxInfo.java | 101 ++++++ .../xzd/domain/XzdProjectWarehouses.java | 56 ++++ .../domain/bo/XzdProjectAccountingInfoBo.java | 54 ++++ .../dromara/xzd/domain/bo/XzdProjectBo.java | 266 ++++++++++++++++ .../bo/XzdProjectInternalAccountsBo.java | 44 +++ .../bo/XzdProjectParticipatingUnitsBo.java | 49 +++ .../xzd/domain/bo/XzdProjectPersonnelBo.java | 115 +++++++ .../xzd/domain/bo/XzdProjectProfileBo.java | 111 +++++++ .../xzd/domain/bo/XzdProjectTaxInfoBo.java | 99 ++++++ .../xzd/domain/bo/XzdProjectWarehousesBo.java | 54 ++++ .../domain/vo/XzdProjectAccountingInfoVo.java | 68 ++++ .../vo/XzdProjectInternalAccountsVo.java | 56 ++++ .../vo/XzdProjectParticipatingUnitsVo.java | 62 ++++ .../xzd/domain/vo/XzdProjectPersonnelVo.java | 140 +++++++++ .../xzd/domain/vo/XzdProjectProfileVo.java | 134 ++++++++ .../xzd/domain/vo/XzdProjectTaxInfoVo.java | 122 +++++++ .../dromara/xzd/domain/vo/XzdProjectVo.java | 297 ++++++++++++++++++ .../xzd/domain/vo/XzdProjectWarehousesVo.java | 68 ++++ .../XzdProjectAccountingInfoMapper.java | 15 + .../XzdProjectInternalAccountsMapper.java | 15 + .../dromara/xzd/mapper/XzdProjectMapper.java | 26 +- .../XzdProjectParticipatingUnitsMapper.java | 15 + .../xzd/mapper/XzdProjectPersonnelMapper.java | 15 + .../xzd/mapper/XzdProjectProfileMapper.java | 15 + .../xzd/mapper/XzdProjectTaxInfoMapper.java | 15 + .../mapper/XzdProjectWarehousesMapper.java | 15 + .../IXzdProjectAccountingInfoService.java | 70 +++++ .../IXzdProjectInternalAccountsService.java | 70 +++++ .../IXzdProjectParticipatingUnitsService.java | 70 +++++ .../service/IXzdProjectPersonnelService.java | 70 +++++ .../service/IXzdProjectProfileService.java | 70 +++++ .../xzd/service/IXzdProjectService.java | 70 +++++ .../service/IXzdProjectTaxInfoService.java | 70 +++++ .../service/IXzdProjectWarehousesService.java | 70 +++++ .../XzdProjectAccountingInfoServiceImpl.java | 135 ++++++++ ...XzdProjectInternalAccountsServiceImpl.java | 133 ++++++++ ...dProjectParticipatingUnitsServiceImpl.java | 134 ++++++++ .../impl/XzdProjectPersonnelServiceImpl.java | 147 +++++++++ .../impl/XzdProjectProfileServiceImpl.java | 149 +++++++++ .../service/impl/XzdProjectServiceImpl.java | 284 +++++++++++++++++ .../impl/XzdProjectTaxInfoServiceImpl.java | 130 ++++++++ .../impl/XzdProjectWarehousesServiceImpl.java | 130 ++++++++ .../resources/mapper/xzd/XzdProjectMapper.xml | 11 + 50 files changed, 4530 insertions(+), 13 deletions(-) create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/controller/XzdProjectController.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProject.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectAccountingInfo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectInternalAccounts.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectParticipatingUnits.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectPersonnel.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectProfile.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectTaxInfo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectWarehouses.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectAccountingInfoBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectInternalAccountsBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectParticipatingUnitsBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectPersonnelBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectProfileBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectTaxInfoBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectWarehousesBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectAccountingInfoVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectInternalAccountsVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectParticipatingUnitsVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectPersonnelVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectProfileVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectTaxInfoVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectWarehousesVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectAccountingInfoMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectInternalAccountsMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectParticipatingUnitsMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectPersonnelMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectProfileMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectTaxInfoMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectWarehousesMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectAccountingInfoService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectInternalAccountsService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectParticipatingUnitsService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectPersonnelService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectProfileService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectTaxInfoService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectWarehousesService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectAccountingInfoServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectInternalAccountsServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectParticipatingUnitsServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectPersonnelServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectProfileServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectTaxInfoServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectWarehousesServiceImpl.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/XzdProjectMapper.xml diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/controller/XzdProjectController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/controller/XzdProjectController.java new file mode 100644 index 00000000..b7b33d45 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/controller/XzdProjectController.java @@ -0,0 +1,105 @@ +package org.dromara.xzd.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.domain.vo.XzdProjectVo; +import org.dromara.xzd.domain.bo.XzdProjectBo; +import org.dromara.xzd.service.IXzdProjectService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 项目信息 + * + * @author Lion Li + * @date 2025-10-10 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/xzd/project") +public class XzdProjectController extends BaseController { + + private final IXzdProjectService xzdProjectService; + + /** + * 查询项目信息列表 + */ + @SaCheckPermission("xzd:project:list") + @GetMapping("/list") + public TableDataInfo list(XzdProjectBo bo, PageQuery pageQuery) { + return xzdProjectService.queryPageList(bo, pageQuery); + } + + /** + * 导出项目信息列表 + */ + @SaCheckPermission("xzd:project:export") + @Log(title = "项目信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(XzdProjectBo bo, HttpServletResponse response) { + List list = xzdProjectService.queryList(bo); + ExcelUtil.exportExcel(list, "项目信息", XzdProjectVo.class, response); + } + + /** + * 获取项目信息详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("xzd:project:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(xzdProjectService.queryById(id)); + } + + /** + * 新增项目信息 + */ + @SaCheckPermission("xzd:project:add") + @Log(title = "项目信息", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody XzdProjectBo bo) { + return toAjax(xzdProjectService.insertByBo(bo)); + } + + /** + * 修改项目信息 + */ + @SaCheckPermission("xzd:project:edit") + @Log(title = "项目信息", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody XzdProjectBo bo) { + return toAjax(xzdProjectService.updateByBo(bo)); + } + + /** + * 删除项目信息 + * + * @param ids 主键串 + */ + @SaCheckPermission("xzd:project:remove") + @Log(title = "项目信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(xzdProjectService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProject.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProject.java new file mode 100644 index 00000000..c513e2ae --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProject.java @@ -0,0 +1,218 @@ +package org.dromara.xzd.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_project + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_project") +public class XzdProject extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 项目编号 + */ + private String projectNumber; + + /** + * 项目名称 + */ + private String projectName; + + /** + * 项目简称 + */ + private String projectAbbreviation; + + /** + * 项目类型 + */ + private Long projectType; + + /** + * 项目状态 + */ + private String projectStatus; + + /** + * 计划开工日期 + */ + private Date plannedStartDate; + + /** + * 计划竣工日期 + */ + private Date plannedCompletionDate; + + /** + * 实际开工日期 + */ + private Date actualStartDate; + + /** + * 实际竣工日期 + */ + private Date actualCompletionDate; + + /** + * 管理组织 + */ + private String managementOrganization; + + /** + * 项目金额 + */ + private Long projectAmount; + + /** + * 项目备案经理 + */ + private Long filingManager; + + /** + * 项目执行经理 + */ + private Long managerExecution; + + /** + * 项目责任人 + */ + private Long managerResponsible; + + /** + * 项目中标金额 + */ + private Long winningBidAmount; + + /** + * 计划工期 + */ + private Long plannedDuration; + + /** + * 实际工期 + */ + private Long actualDuration; + + /** + * 默认财务组织 + */ + private String defaultFinancialOrganization; + + /** + * 承包方式 + */ + private String contractingMethod; + + /** + * 涉及财务组织 + */ + private String involvedFinancialOrganization; + + /** + * 经营模式 + */ + private String businessModel; + + /** + * 建设单位 + */ + private String constructionUnit; + + /** + * 项目属性 + */ + private String projectAttribute; + + /** + * 集团项目 + */ + private String groupProject; + + /** + * 说明 + */ + private String description; + + /** + * 立项日期 + */ + private Date projectEstablishmentDate; + + /** + * 计划总投资 + */ + private Long plannedTotalInvestment; + + /** + * 政府备案项目名称 + */ + private String govFilingProjectName; + + /** + * 项目执行经理电话 + */ + private String managerExecutionPhone; + + /** + * 共享组织 + */ + private String sharingOrganization; + + /** + * 目标中标金额 + */ + private Long targetWinningBidAmount; + + /** + * 目标合同金额 + */ + private Long targetContractAmount; + + /** + * 目标产值金额 + */ + private Long targetOutputValueAmount; + + /** + * 目标收款金额 + */ + private Long targetCollectionAmount; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectAccountingInfo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectAccountingInfo.java new file mode 100644 index 00000000..d847ae59 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectAccountingInfo.java @@ -0,0 +1,56 @@ +package org.dromara.xzd.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_project_accounting_info + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_project_accounting_info") +public class XzdProjectAccountingInfo extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @TableId(value = "id") + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 填报模式 + */ + private String fillMode; + + /** + * 承包合同启用工程量清单模式控制 + */ + private String boqMode; + + /** + * 工程量清单管控到定额子目 + */ + private String boqControlSubitem; + + /** + * 是否启用成本测算 + */ + private String costCalculation; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectInternalAccounts.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectInternalAccounts.java new file mode 100644 index 00000000..8f5077c7 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectInternalAccounts.java @@ -0,0 +1,46 @@ +package org.dromara.xzd.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_project_internal_accounts + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_project_internal_accounts") +public class XzdProjectInternalAccounts extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @TableId(value = "id") + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 内部资金账户编码 + */ + private String accountCode; + + /** + * 内部资金账户名称 + */ + private String accountName; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectParticipatingUnits.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectParticipatingUnits.java new file mode 100644 index 00000000..78273e25 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectParticipatingUnits.java @@ -0,0 +1,51 @@ +package org.dromara.xzd.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_project_participating_units + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_project_participating_units") +public class XzdProjectParticipatingUnits extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @TableId(value = "id") + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 单位性质 + */ + private String unitType; + + /** + * 单位名称 + */ + private String unitName; + + /** + * 投资总额 + */ + private Long totalInvestment; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectPersonnel.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectPersonnel.java new file mode 100644 index 00000000..bb4e9a9a --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectPersonnel.java @@ -0,0 +1,116 @@ +package org.dromara.xzd.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_project_personnel + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_project_personnel") +public class XzdProjectPersonnel extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @TableId(value = "id") + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 员工号 + */ + private String employeeId; + + /** + * 人员姓名 + */ + private String employeeName; + + /** + * 性别 + */ + private String gender; + + /** + * 项目角色 + */ + private String projectRole; + + /** + * 项目岗位 + */ + private String projectPost; + + /** + * 备案岗位 + */ + private String archivalPost; + + /** + * 部门 + */ + private String dept; + + /** + * 手机 + */ + private String mobilePhone; + + /** + * 身份证 + */ + private String idCardNumber; + + /** + * 员工证书编号 + */ + private String certificateNumber; + + /** + * 员工证书名称 + */ + private String certificateName; + + /** + * 发证机关 + */ + private String issuingAuthority; + + /** + * 调离标志 + */ + private String isSummaryFlag; + + /** + * 是否发薪 + */ + private String isSalaryPaid; + + /** + * 组织 + */ + private String organization; + + /** + * 文件ID + */ + private String fileId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectProfile.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectProfile.java new file mode 100644 index 00000000..760babdc --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectProfile.java @@ -0,0 +1,111 @@ +package org.dromara.xzd.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_project_profile + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_project_profile") +public class XzdProjectProfile extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @TableId(value = "id") + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 国家 + */ + private String country; + + /** + * 省 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 区县 + */ + private String district; + + /** + * 项目地址 + */ + private String projectAddress; + + /** + * 建筑面积 + */ + private Long buildingArea; + + /** + * 建筑面积单位 + */ + private String buildingAreaUnit; + + /** + * 层数 + */ + private Long floorCount; + + /** + * 高度(米) + */ + private Long height; + + /** + * 所属父级项目 + */ + private Long parentProjectId; + + /** + * 合同金额 + */ + private Long contractAmount; + + /** + * 质量评价等级 + */ + private String qualityEvaluationGrade; + + /** + * 安全生产等级 + */ + private String safetyProductionGrade; + + /** + * 工程合同备案号 + */ + private String projectContractRecordNumber; + + /** + * 项目概括 + */ + private String projectProfile; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectTaxInfo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectTaxInfo.java new file mode 100644 index 00000000..937d496b --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectTaxInfo.java @@ -0,0 +1,101 @@ +package org.dromara.xzd.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_project_tax_info + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_project_tax_info") +public class XzdProjectTaxInfo extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @TableId(value = "id") + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 计征方式 + */ + private String taxLevyMethod; + + /** + * 计征区域 + */ + private String taxLevyArea; + + /** + * 预征率 + */ + private Long advanceLevyRate; + + /** + * 预缴税务机构 + */ + private String prepayTaxOrganization; + + /** + * 税务机构 + */ + private String taxOrganization; + + /** + * 开具发票类型 + */ + private String invoiceTypeIssued; + + /** + * 收票邮箱账号 + */ + private String receivingEmailAccount; + + /** + * 收票邮箱密码 + */ + private String receivingEmailPassword; + + /** + * 房地产项目 + */ + private String isRealtyProject; + + /** + * 累计开票 + */ + private Long cumulativeInvoicing; + + /** + * 累计销项税额 + */ + private Long cumulativeOutputTaxAmount; + + /** + * 已抵扣进项 + */ + private Long alreadyDeducted; + + /** + * 应缴纳增值税 + */ + private Long valueAddTax; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectWarehouses.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectWarehouses.java new file mode 100644 index 00000000..1a413f7f --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProjectWarehouses.java @@ -0,0 +1,56 @@ +package org.dromara.xzd.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_project_warehouses + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_project_warehouses") +public class XzdProjectWarehouses extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @TableId(value = "id") + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 编号 + */ + private String warehouseCode; + + /** + * 仓库名称 + */ + private String warehouseName; + + /** + * 是否默认 + */ + private String isDefault; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectAccountingInfoBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectAccountingInfoBo.java new file mode 100644 index 00000000..fe0e960a --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectAccountingInfoBo.java @@ -0,0 +1,54 @@ +package org.dromara.xzd.domain.bo; + +import org.dromara.xzd.domain.XzdProjectAccountingInfo; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 项目信息-核算信息业务对象 xzd_project_accounting_info + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdProjectAccountingInfo.class, reverseConvertGenerate = false) +public class XzdProjectAccountingInfoBo extends BaseEntity { + + /** + * 唯一ID + */ + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 填报模式 + */ + private String fillMode; + + /** + * 承包合同启用工程量清单模式控制 + */ + private String boqMode; + + /** + * 工程量清单管控到定额子目 + */ + private String boqControlSubitem; + + /** + * 是否启用成本测算 + */ + private String costCalculation; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectBo.java new file mode 100644 index 00000000..bb4c42cf --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectBo.java @@ -0,0 +1,266 @@ +package org.dromara.xzd.domain.bo; + +import org.dromara.xzd.domain.XzdProject; +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 java.util.List; + +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.domain.XzdProjectInternalAccounts; +import org.dromara.xzd.domain.vo.XzdProjectPersonnelVo; +import org.dromara.xzd.domain.vo.XzdProjectProfileVo; +import org.dromara.xzd.domain.vo.XzdProjectTaxInfoVo; +import org.dromara.xzd.domain.vo.XzdProjectWarehousesVo; + +/** + * 项目信息业务对象 xzd_project + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdProject.class, reverseConvertGenerate = false) +public class XzdProjectBo extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 项目编号 + */ + @NotBlank(message = "项目编号不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectNumber; + + /** + * 项目名称 + */ + @NotBlank(message = "项目名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectName; + + /** + * 项目简称 + */ + private String projectAbbreviation; + + /** + * 项目类型 + */ + @NotNull(message = "项目类型不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long projectType; + + /** + * 项目状态 + */ + @NotBlank(message = "项目状态不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectStatus; + + /** + * 计划开工日期 + */ + private Date plannedStartDate; + + /** + * 计划竣工日期 + */ + private Date plannedCompletionDate; + + /** + * 实际开工日期 + */ + private Date actualStartDate; + + /** + * 实际竣工日期 + */ + private Date actualCompletionDate; + + /** + * 管理组织 + */ + private String managementOrganization; + + /** + * 项目金额 + */ + private Long projectAmount; + + /** + * 项目备案经理 + */ + private Long filingManager; + + /** + * 项目执行经理 + */ + private Long managerExecution; + + /** + * 项目责任人 + */ + private Long managerResponsible; + + /** + * 项目中标金额 + */ + private Long winningBidAmount; + + /** + * 计划工期 + */ + private Long plannedDuration; + + /** + * 实际工期 + */ + private Long actualDuration; + + /** + * 默认财务组织 + */ + private String defaultFinancialOrganization; + + /** + * 承包方式 + */ + private String contractingMethod; + + /** + * 涉及财务组织 + */ + private String involvedFinancialOrganization; + + /** + * 经营模式 + */ + private String businessModel; + + /** + * 建设单位 + */ + @NotBlank(message = "建设单位不能为空", groups = { AddGroup.class, EditGroup.class }) + private String constructionUnit; + + /** + * 项目属性 + */ + private String projectAttribute; + + /** + * 集团项目 + */ + private String groupProject; + + /** + * 说明 + */ + private String description; + + /** + * 立项日期 + */ + private Date projectEstablishmentDate; + + /** + * 计划总投资 + */ + private Long plannedTotalInvestment; + + /** + * 政府备案项目名称 + */ + @NotBlank(message = "政府备案项目名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String govFilingProjectName; + + /** + * 项目执行经理电话 + */ + private String managerExecutionPhone; + + /** + * 共享组织 + */ + private String sharingOrganization; + + /** + * 目标中标金额 + */ + private Long targetWinningBidAmount; + + /** + * 目标合同金额 + */ + private Long targetContractAmount; + + /** + * 目标产值金额 + */ + private Long targetOutputValueAmount; + + /** + * 目标收款金额 + */ + private Long targetCollectionAmount; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + + //工程建设新增 + + /** + * 项目概况 + */ + XzdProjectProfileBo xmgk; + + /** + * 项目人员 + */ + List xmry; + + /** + * 税务信息 + */ + XzdProjectTaxInfoBo swxx; + + /** + * 核算信息 + */ + XzdProjectAccountingInfoBo hsxx; + + /** + * 项目仓库 + */ + List xmck; + + /** + * 内部资金 + */ + List nbzj; + + /** + * 参建单位 + */ + List cjdw; + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectInternalAccountsBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectInternalAccountsBo.java new file mode 100644 index 00000000..0911205c --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectInternalAccountsBo.java @@ -0,0 +1,44 @@ +package org.dromara.xzd.domain.bo; + +import org.dromara.xzd.domain.XzdProjectInternalAccounts; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 项目信息-内部资金账户业务对象 xzd_project_internal_accounts + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdProjectInternalAccounts.class, reverseConvertGenerate = false) +public class XzdProjectInternalAccountsBo extends BaseEntity { + + /** + * 唯一ID + */ + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 内部资金账户编码 + */ + private String accountCode; + + /** + * 内部资金账户名称 + */ + private String accountName; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectParticipatingUnitsBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectParticipatingUnitsBo.java new file mode 100644 index 00000000..1a1fad65 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectParticipatingUnitsBo.java @@ -0,0 +1,49 @@ +package org.dromara.xzd.domain.bo; + +import org.dromara.xzd.domain.XzdProjectParticipatingUnits; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 项目信息-参建单位业务对象 xzd_project_participating_units + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdProjectParticipatingUnits.class, reverseConvertGenerate = false) +public class XzdProjectParticipatingUnitsBo extends BaseEntity { + + /** + * 唯一ID + */ + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 单位性质 + */ + private String unitType; + + /** + * 单位名称 + */ + private String unitName; + + /** + * 投资总额 + */ + private Long totalInvestment; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectPersonnelBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectPersonnelBo.java new file mode 100644 index 00000000..75618190 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectPersonnelBo.java @@ -0,0 +1,115 @@ +package org.dromara.xzd.domain.bo; + +import org.dromara.xzd.domain.XzdProjectPersonnel; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 项目信息-项目人员业务对象 xzd_project_personnel + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdProjectPersonnel.class, reverseConvertGenerate = false) +public class XzdProjectPersonnelBo extends BaseEntity { + + /** + * 唯一ID + */ + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 员工号 + */ + private String employeeId; + + /** + * 人员姓名 + */ + private String employeeName; + + /** + * 性别 + */ + private String gender; + + /** + * 项目角色 + */ + @NotBlank(message = "项目角色不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectRole; + + /** + * 项目岗位 + */ + private String projectPost; + + /** + * 备案岗位 + */ + private String archivalPost; + + /** + * 部门 + */ + private String dept; + + /** + * 手机 + */ + private String mobilePhone; + + /** + * 身份证 + */ + private String idCardNumber; + + /** + * 员工证书编号 + */ + private String certificateNumber; + + /** + * 员工证书名称 + */ + private String certificateName; + + /** + * 发证机关 + */ + private String issuingAuthority; + + /** + * 调离标志 + */ + private String isSummaryFlag; + + /** + * 是否发薪 + */ + private String isSalaryPaid; + + /** + * 组织 + */ + private String organization; + + /** + * 文件ID + */ + private String fileId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectProfileBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectProfileBo.java new file mode 100644 index 00000000..5cea67e6 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectProfileBo.java @@ -0,0 +1,111 @@ +package org.dromara.xzd.domain.bo; + +import org.dromara.xzd.domain.XzdProjectProfile; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 项目信息-项目概况业务对象 xzd_project_profile + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdProjectProfile.class, reverseConvertGenerate = false) +public class XzdProjectProfileBo extends BaseEntity { + + /** + * 唯一ID + */ + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 国家 + */ + @NotBlank(message = "国家不能为空", groups = { AddGroup.class, EditGroup.class }) + private String country; + + /** + * 省 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 区县 + */ + private String district; + + /** + * 项目地址 + */ + @NotBlank(message = "项目地址不能为空", groups = { AddGroup.class, EditGroup.class }) + private String projectAddress; + + /** + * 建筑面积 + */ + private Long buildingArea; + + /** + * 建筑面积单位 + */ + private String buildingAreaUnit; + + /** + * 层数 + */ + private Long floorCount; + + /** + * 高度(米) + */ + private Long height; + + /** + * 所属父级项目 + */ + private Long parentProjectId; + + /** + * 合同金额 + */ + private Long contractAmount; + + /** + * 质量评价等级 + */ + private String qualityEvaluationGrade; + + /** + * 安全生产等级 + */ + private String safetyProductionGrade; + + /** + * 工程合同备案号 + */ + private String projectContractRecordNumber; + + /** + * 项目概括 + */ + private String projectProfile; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectTaxInfoBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectTaxInfoBo.java new file mode 100644 index 00000000..6bc56af2 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectTaxInfoBo.java @@ -0,0 +1,99 @@ +package org.dromara.xzd.domain.bo; + +import org.dromara.xzd.domain.XzdProjectTaxInfo; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 项目信息-税务信息业务对象 xzd_project_tax_info + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdProjectTaxInfo.class, reverseConvertGenerate = false) +public class XzdProjectTaxInfoBo extends BaseEntity { + + /** + * 唯一ID + */ + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 计征方式 + */ + private String taxLevyMethod; + + /** + * 计征区域 + */ + private String taxLevyArea; + + /** + * 预征率 + */ + private Long advanceLevyRate; + + /** + * 预缴税务机构 + */ + private String prepayTaxOrganization; + + /** + * 税务机构 + */ + private String taxOrganization; + + /** + * 开具发票类型 + */ + private String invoiceTypeIssued; + + /** + * 收票邮箱账号 + */ + private String receivingEmailAccount; + + /** + * 收票邮箱密码 + */ + private String receivingEmailPassword; + + /** + * 房地产项目 + */ + private String isRealtyProject; + + /** + * 累计开票 + */ + private Long cumulativeInvoicing; + + /** + * 累计销项税额 + */ + private Long cumulativeOutputTaxAmount; + + /** + * 已抵扣进项 + */ + private Long alreadyDeducted; + + /** + * 应缴纳增值税 + */ + private Long valueAddTax; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectWarehousesBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectWarehousesBo.java new file mode 100644 index 00000000..dc822a76 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectWarehousesBo.java @@ -0,0 +1,54 @@ +package org.dromara.xzd.domain.bo; + +import org.dromara.xzd.domain.XzdProjectWarehouses; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 项目信息-项目仓库业务对象 xzd_project_warehouses + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdProjectWarehouses.class, reverseConvertGenerate = false) +public class XzdProjectWarehousesBo extends BaseEntity { + + /** + * 唯一ID + */ + private Long id; + + /** + * 关联的项目表ID + */ + private Long xzdProjectId; + + /** + * 编号 + */ + private String warehouseCode; + + /** + * 仓库名称 + */ + private String warehouseName; + + /** + * 是否默认 + */ + private String isDefault; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectAccountingInfoVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectAccountingInfoVo.java new file mode 100644 index 00000000..eab251ce --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectAccountingInfoVo.java @@ -0,0 +1,68 @@ +package org.dromara.xzd.domain.vo; + +import org.dromara.xzd.domain.XzdProjectAccountingInfo; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 项目信息-核算信息视图对象 xzd_project_accounting_info + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdProjectAccountingInfo.class) +public class XzdProjectAccountingInfoVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @ExcelProperty(value = "唯一ID") + private Long id; + + /** + * 关联的项目表ID + */ + @ExcelProperty(value = "关联的项目表ID") + private Long xzdProjectId; + + /** + * 填报模式 + */ + @ExcelProperty(value = "填报模式") + private String fillMode; + + /** + * 承包合同启用工程量清单模式控制 + */ + @ExcelProperty(value = "承包合同启用工程量清单模式控制") + private String boqMode; + + /** + * 工程量清单管控到定额子目 + */ + @ExcelProperty(value = "工程量清单管控到定额子目") + private String boqControlSubitem; + + /** + * 是否启用成本测算 + */ + @ExcelProperty(value = "是否启用成本测算") + private String costCalculation; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectInternalAccountsVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectInternalAccountsVo.java new file mode 100644 index 00000000..2b0b9416 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectInternalAccountsVo.java @@ -0,0 +1,56 @@ +package org.dromara.xzd.domain.vo; + +import org.dromara.xzd.domain.XzdProjectInternalAccounts; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 项目信息-内部资金账户视图对象 xzd_project_internal_accounts + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdProjectInternalAccounts.class) +public class XzdProjectInternalAccountsVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @ExcelProperty(value = "唯一ID") + private Long id; + + /** + * 关联的项目表ID + */ + @ExcelProperty(value = "关联的项目表ID") + private Long xzdProjectId; + + /** + * 内部资金账户编码 + */ + @ExcelProperty(value = "内部资金账户编码") + private String accountCode; + + /** + * 内部资金账户名称 + */ + @ExcelProperty(value = "内部资金账户名称") + private String accountName; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectParticipatingUnitsVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectParticipatingUnitsVo.java new file mode 100644 index 00000000..8add2a64 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectParticipatingUnitsVo.java @@ -0,0 +1,62 @@ +package org.dromara.xzd.domain.vo; + +import org.dromara.xzd.domain.XzdProjectParticipatingUnits; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 项目信息-参建单位视图对象 xzd_project_participating_units + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdProjectParticipatingUnits.class) +public class XzdProjectParticipatingUnitsVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @ExcelProperty(value = "唯一ID") + private Long id; + + /** + * 关联的项目表ID + */ + @ExcelProperty(value = "关联的项目表ID") + private Long xzdProjectId; + + /** + * 单位性质 + */ + @ExcelProperty(value = "单位性质") + private String unitType; + + /** + * 单位名称 + */ + @ExcelProperty(value = "单位名称") + private String unitName; + + /** + * 投资总额 + */ + @ExcelProperty(value = "投资总额") + private Long totalInvestment; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectPersonnelVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectPersonnelVo.java new file mode 100644 index 00000000..fa85ca5d --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectPersonnelVo.java @@ -0,0 +1,140 @@ +package org.dromara.xzd.domain.vo; + +import org.dromara.xzd.domain.XzdProjectPersonnel; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 项目信息-项目人员视图对象 xzd_project_personnel + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdProjectPersonnel.class) +public class XzdProjectPersonnelVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @ExcelProperty(value = "唯一ID") + private Long id; + + /** + * 关联的项目表ID + */ + @ExcelProperty(value = "关联的项目表ID") + private Long xzdProjectId; + + /** + * 员工号 + */ + @ExcelProperty(value = "员工号") + private String employeeId; + + /** + * 人员姓名 + */ + @ExcelProperty(value = "人员姓名") + private String employeeName; + + /** + * 性别 + */ + @ExcelProperty(value = "性别") + private String gender; + + /** + * 项目角色 + */ + @ExcelProperty(value = "项目角色") + private String projectRole; + + /** + * 项目岗位 + */ + @ExcelProperty(value = "项目岗位") + private String projectPost; + + /** + * 备案岗位 + */ + @ExcelProperty(value = "备案岗位") + private String archivalPost; + + /** + * 部门 + */ + @ExcelProperty(value = "部门") + private String dept; + + /** + * 手机 + */ + @ExcelProperty(value = "手机") + private String mobilePhone; + + /** + * 身份证 + */ + @ExcelProperty(value = "身份证") + private String idCardNumber; + + /** + * 员工证书编号 + */ + @ExcelProperty(value = "员工证书编号") + private String certificateNumber; + + /** + * 员工证书名称 + */ + @ExcelProperty(value = "员工证书名称") + private String certificateName; + + /** + * 发证机关 + */ + @ExcelProperty(value = "发证机关") + private String issuingAuthority; + + /** + * 调离标志 + */ + @ExcelProperty(value = "调离标志") + private String isSummaryFlag; + + /** + * 是否发薪 + */ + @ExcelProperty(value = "是否发薪") + private String isSalaryPaid; + + /** + * 组织 + */ + @ExcelProperty(value = "组织") + private String organization; + + /** + * 文件ID + */ + @ExcelProperty(value = "文件ID") + private String fileId; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectProfileVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectProfileVo.java new file mode 100644 index 00000000..f90e15a4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectProfileVo.java @@ -0,0 +1,134 @@ +package org.dromara.xzd.domain.vo; + +import org.dromara.xzd.domain.XzdProjectProfile; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 项目信息-项目概况视图对象 xzd_project_profile + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdProjectProfile.class) +public class XzdProjectProfileVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @ExcelProperty(value = "唯一ID") + private Long id; + + /** + * 关联的项目表ID + */ + @ExcelProperty(value = "关联的项目表ID") + private Long xzdProjectId; + + /** + * 国家 + */ + @ExcelProperty(value = "国家") + private String country; + + /** + * 省 + */ + @ExcelProperty(value = "省") + private String province; + + /** + * 城市 + */ + @ExcelProperty(value = "城市") + private String city; + + /** + * 区县 + */ + @ExcelProperty(value = "区县") + private String district; + + /** + * 项目地址 + */ + @ExcelProperty(value = "项目地址") + private String projectAddress; + + /** + * 建筑面积 + */ + @ExcelProperty(value = "建筑面积") + private Long buildingArea; + + /** + * 建筑面积单位 + */ + @ExcelProperty(value = "建筑面积单位") + private String buildingAreaUnit; + + /** + * 层数 + */ + @ExcelProperty(value = "层数") + private Long floorCount; + + /** + * 高度(米) + */ + @ExcelProperty(value = "高度(米)") + private Long height; + + /** + * 所属父级项目 + */ + @ExcelProperty(value = "所属父级项目") + private Long parentProjectId; + + /** + * 合同金额 + */ + @ExcelProperty(value = "合同金额") + private Long contractAmount; + + /** + * 质量评价等级 + */ + @ExcelProperty(value = "质量评价等级") + private String qualityEvaluationGrade; + + /** + * 安全生产等级 + */ + @ExcelProperty(value = "安全生产等级") + private String safetyProductionGrade; + + /** + * 工程合同备案号 + */ + @ExcelProperty(value = "工程合同备案号") + private String projectContractRecordNumber; + + /** + * 项目概括 + */ + @ExcelProperty(value = "项目概括") + private String projectProfile; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectTaxInfoVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectTaxInfoVo.java new file mode 100644 index 00000000..9f2edbcf --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectTaxInfoVo.java @@ -0,0 +1,122 @@ +package org.dromara.xzd.domain.vo; + +import org.dromara.xzd.domain.XzdProjectTaxInfo; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 项目信息-税务信息视图对象 xzd_project_tax_info + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdProjectTaxInfo.class) +public class XzdProjectTaxInfoVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @ExcelProperty(value = "唯一ID") + private Long id; + + /** + * 关联的项目表ID + */ + @ExcelProperty(value = "关联的项目表ID") + private Long xzdProjectId; + + /** + * 计征方式 + */ + @ExcelProperty(value = "计征方式") + private String taxLevyMethod; + + /** + * 计征区域 + */ + @ExcelProperty(value = "计征区域") + private String taxLevyArea; + + /** + * 预征率 + */ + @ExcelProperty(value = "预征率") + private Long advanceLevyRate; + + /** + * 预缴税务机构 + */ + @ExcelProperty(value = "预缴税务机构") + private String prepayTaxOrganization; + + /** + * 税务机构 + */ + @ExcelProperty(value = "税务机构") + private String taxOrganization; + + /** + * 开具发票类型 + */ + @ExcelProperty(value = "开具发票类型") + private String invoiceTypeIssued; + + /** + * 收票邮箱账号 + */ + @ExcelProperty(value = "收票邮箱账号") + private String receivingEmailAccount; + + /** + * 收票邮箱密码 + */ + @ExcelProperty(value = "收票邮箱密码") + private String receivingEmailPassword; + + /** + * 房地产项目 + */ + @ExcelProperty(value = "房地产项目") + private String isRealtyProject; + + /** + * 累计开票 + */ + @ExcelProperty(value = "累计开票") + private Long cumulativeInvoicing; + + /** + * 累计销项税额 + */ + @ExcelProperty(value = "累计销项税额") + private Long cumulativeOutputTaxAmount; + + /** + * 已抵扣进项 + */ + @ExcelProperty(value = "已抵扣进项") + private Long alreadyDeducted; + + /** + * 应缴纳增值税 + */ + @ExcelProperty(value = "应缴纳增值税") + private Long valueAddTax; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectVo.java new file mode 100644 index 00000000..3ca81328 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectVo.java @@ -0,0 +1,297 @@ +package org.dromara.xzd.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.domain.XzdProject; +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.domain.bo.*; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; +import java.util.List; + + +/** + * 项目信息视图对象 xzd_project + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdProject.class) +public class XzdProjectVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 项目编号 + */ + @ExcelProperty(value = "项目编号") + private String projectNumber; + + /** + * 项目名称 + */ + @ExcelProperty(value = "项目名称") + private String projectName; + + /** + * 项目简称 + */ + @ExcelProperty(value = "项目简称") + private String projectAbbreviation; + + /** + * 项目类型 + */ + @ExcelProperty(value = "项目类型") + private Long projectType; + + /** + * 项目状态 + */ + @ExcelProperty(value = "项目状态") + private String projectStatus; + + /** + * 计划开工日期 + */ + @ExcelProperty(value = "计划开工日期") + private Date plannedStartDate; + + /** + * 计划竣工日期 + */ + @ExcelProperty(value = "计划竣工日期") + private Date plannedCompletionDate; + + /** + * 实际开工日期 + */ + @ExcelProperty(value = "实际开工日期") + private Date actualStartDate; + + /** + * 实际竣工日期 + */ + @ExcelProperty(value = "实际竣工日期") + private Date actualCompletionDate; + + /** + * 管理组织 + */ + @ExcelProperty(value = "管理组织") + private String managementOrganization; + + /** + * 项目金额 + */ + @ExcelProperty(value = "项目金额") + private Long projectAmount; + + /** + * 项目备案经理 + */ + @ExcelProperty(value = "项目备案经理") + private Long filingManager; + + /** + * 项目执行经理 + */ + @ExcelProperty(value = "项目执行经理") + private Long managerExecution; + + /** + * 项目责任人 + */ + @ExcelProperty(value = "项目责任人") + private Long managerResponsible; + + /** + * 项目中标金额 + */ + @ExcelProperty(value = "项目中标金额") + private Long winningBidAmount; + + /** + * 计划工期 + */ + @ExcelProperty(value = "计划工期") + private Long plannedDuration; + + /** + * 实际工期 + */ + @ExcelProperty(value = "实际工期") + private Long actualDuration; + + /** + * 默认财务组织 + */ + @ExcelProperty(value = "默认财务组织") + private String defaultFinancialOrganization; + + /** + * 承包方式 + */ + @ExcelProperty(value = "承包方式") + private String contractingMethod; + + /** + * 涉及财务组织 + */ + @ExcelProperty(value = "涉及财务组织") + private String involvedFinancialOrganization; + + /** + * 经营模式 + */ + @ExcelProperty(value = "经营模式") + private String businessModel; + + /** + * 建设单位 + */ + @ExcelProperty(value = "建设单位") + private String constructionUnit; + + /** + * 项目属性 + */ + @ExcelProperty(value = "项目属性") + private String projectAttribute; + + /** + * 集团项目 + */ + @ExcelProperty(value = "集团项目") + private String groupProject; + + /** + * 说明 + */ + @ExcelProperty(value = "说明") + private String description; + + /** + * 立项日期 + */ + @ExcelProperty(value = "立项日期") + private Date projectEstablishmentDate; + + /** + * 计划总投资 + */ + @ExcelProperty(value = "计划总投资") + private Long plannedTotalInvestment; + + /** + * 政府备案项目名称 + */ + @ExcelProperty(value = "政府备案项目名称") + private String govFilingProjectName; + + /** + * 项目执行经理电话 + */ + @ExcelProperty(value = "项目执行经理电话") + private String managerExecutionPhone; + + /** + * 共享组织 + */ + @ExcelProperty(value = "共享组织") + private String sharingOrganization; + + /** + * 目标中标金额 + */ + @ExcelProperty(value = "目标中标金额") + private Long targetWinningBidAmount; + + /** + * 目标合同金额 + */ + @ExcelProperty(value = "目标合同金额") + private Long targetContractAmount; + + /** + * 目标产值金额 + */ + @ExcelProperty(value = "目标产值金额") + private Long targetOutputValueAmount; + + /** + * 目标收款金额 + */ + @ExcelProperty(value = "目标收款金额") + private Long targetCollectionAmount; + + /** + * 文件ID + */ + @ExcelProperty(value = "文件ID") + private String fileId; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + /** + * 审核状态 + */ + @ExcelProperty(value = "审核状态") + private String auditStatus; + + /** + * 项目概况 + */ + XzdProjectProfileVo xmgk; + + /** + * 项目人员 + */ + List xmry; + + /** + * 税务信息 + */ + XzdProjectTaxInfoVo swxx; + + /** + * 核算信息 + */ + XzdProjectAccountingInfoVo hsxx; + + /** + * 项目仓库 + */ + List xmck; + + /** + * 内部资金 + */ + List nbzj; + + /** + * 参建单位 + */ + List cjdw; + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectWarehousesVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectWarehousesVo.java new file mode 100644 index 00000000..b9aa9be8 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectWarehousesVo.java @@ -0,0 +1,68 @@ +package org.dromara.xzd.domain.vo; + +import org.dromara.xzd.domain.XzdProjectWarehouses; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 项目信息-项目仓库视图对象 xzd_project_warehouses + * + * @author Lion Li + * @date 2025-10-10 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdProjectWarehouses.class) +public class XzdProjectWarehousesVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 唯一ID + */ + @ExcelProperty(value = "唯一ID") + private Long id; + + /** + * 关联的项目表ID + */ + @ExcelProperty(value = "关联的项目表ID") + private Long xzdProjectId; + + /** + * 编号 + */ + @ExcelProperty(value = "编号") + private String warehouseCode; + + /** + * 仓库名称 + */ + @ExcelProperty(value = "仓库名称") + private String warehouseName; + + /** + * 是否默认 + */ + @ExcelProperty(value = "是否默认") + private String isDefault; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectAccountingInfoMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectAccountingInfoMapper.java new file mode 100644 index 00000000..b288d7f6 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectAccountingInfoMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.mapper; + +import org.dromara.xzd.domain.XzdProjectAccountingInfo; +import org.dromara.xzd.domain.vo.XzdProjectAccountingInfoVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 项目信息-核算信息Mapper接口 + * + * @author Lion Li + * @date 2025-10-10 + */ +public interface XzdProjectAccountingInfoMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectInternalAccountsMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectInternalAccountsMapper.java new file mode 100644 index 00000000..d3512b12 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectInternalAccountsMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.mapper; + +import org.dromara.xzd.domain.XzdProjectInternalAccounts; +import org.dromara.xzd.domain.vo.XzdProjectInternalAccountsVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 项目信息-内部资金账户Mapper接口 + * + * @author Lion Li + * @date 2025-10-10 + */ +public interface XzdProjectInternalAccountsMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectMapper.java index b7fb71bd..2f032906 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectMapper.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectMapper.java @@ -1,15 +1,15 @@ package org.dromara.xzd.mapper; -//import org.dromara.xzd.domain.XzdProject; -//import org.dromara.xzd.domain.vo.XzdProjectVo; -//import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; -// -///** -// * 项目信息Mapper接口 -// * -// * @author Lion Li -// * @date 2025-10-10 -// */ -//public interface XzdProjectMapper extends BaseMapperPlus { -// -//} +import org.dromara.xzd.domain.XzdProject; +import org.dromara.xzd.domain.vo.XzdProjectVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 项目信息Mapper接口 + * + * @author Lion Li + * @date 2025-10-10 + */ +public interface XzdProjectMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectParticipatingUnitsMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectParticipatingUnitsMapper.java new file mode 100644 index 00000000..9c0e5686 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectParticipatingUnitsMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.mapper; + +import org.dromara.xzd.domain.XzdProjectParticipatingUnits; +import org.dromara.xzd.domain.vo.XzdProjectParticipatingUnitsVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 项目信息-参建单位Mapper接口 + * + * @author Lion Li + * @date 2025-10-10 + */ +public interface XzdProjectParticipatingUnitsMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectPersonnelMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectPersonnelMapper.java new file mode 100644 index 00000000..459613e2 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectPersonnelMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.mapper; + +import org.dromara.xzd.domain.XzdProjectPersonnel; +import org.dromara.xzd.domain.vo.XzdProjectPersonnelVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 项目信息-项目人员Mapper接口 + * + * @author Lion Li + * @date 2025-10-10 + */ +public interface XzdProjectPersonnelMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectProfileMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectProfileMapper.java new file mode 100644 index 00000000..89f21885 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectProfileMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.mapper; + +import org.dromara.xzd.domain.XzdProjectProfile; +import org.dromara.xzd.domain.vo.XzdProjectProfileVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 项目信息-项目概况Mapper接口 + * + * @author Lion Li + * @date 2025-10-10 + */ +public interface XzdProjectProfileMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectTaxInfoMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectTaxInfoMapper.java new file mode 100644 index 00000000..468a591e --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectTaxInfoMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.mapper; + +import org.dromara.xzd.domain.XzdProjectTaxInfo; +import org.dromara.xzd.domain.vo.XzdProjectTaxInfoVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 项目信息-税务信息Mapper接口 + * + * @author Lion Li + * @date 2025-10-10 + */ +public interface XzdProjectTaxInfoMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectWarehousesMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectWarehousesMapper.java new file mode 100644 index 00000000..3660ed94 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdProjectWarehousesMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.mapper; + +import org.dromara.xzd.domain.XzdProjectWarehouses; +import org.dromara.xzd.domain.vo.XzdProjectWarehousesVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 项目信息-项目仓库Mapper接口 + * + * @author Lion Li + * @date 2025-10-10 + */ +public interface XzdProjectWarehousesMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectAccountingInfoService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectAccountingInfoService.java new file mode 100644 index 00000000..25a4287f --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectAccountingInfoService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.service; + +import org.dromara.xzd.domain.vo.XzdProjectAccountingInfoVo; +import org.dromara.xzd.domain.bo.XzdProjectAccountingInfoBo; +import org.dromara.xzd.domain.XzdProjectAccountingInfo; +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 IXzdProjectAccountingInfoService extends IService{ + + /** + * 查询项目信息-核算信息 + * + * @param id 主键 + * @return 项目信息-核算信息 + */ + XzdProjectAccountingInfoVo queryById(Long id); + + /** + * 分页查询项目信息-核算信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-核算信息分页列表 + */ + TableDataInfo queryPageList(XzdProjectAccountingInfoBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的项目信息-核算信息列表 + * + * @param bo 查询条件 + * @return 项目信息-核算信息列表 + */ + List queryList(XzdProjectAccountingInfoBo bo); + + /** + * 新增项目信息-核算信息 + * + * @param bo 项目信息-核算信息 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdProjectAccountingInfoBo bo); + + /** + * 修改项目信息-核算信息 + * + * @param bo 项目信息-核算信息 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdProjectAccountingInfoBo 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/service/IXzdProjectInternalAccountsService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectInternalAccountsService.java new file mode 100644 index 00000000..aa148974 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectInternalAccountsService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.service; + +import org.dromara.xzd.domain.vo.XzdProjectInternalAccountsVo; +import org.dromara.xzd.domain.bo.XzdProjectInternalAccountsBo; +import org.dromara.xzd.domain.XzdProjectInternalAccounts; +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 IXzdProjectInternalAccountsService extends IService{ + + /** + * 查询项目信息-内部资金账户 + * + * @param id 主键 + * @return 项目信息-内部资金账户 + */ + XzdProjectInternalAccountsVo queryById(Long id); + + /** + * 分页查询项目信息-内部资金账户列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-内部资金账户分页列表 + */ + TableDataInfo queryPageList(XzdProjectInternalAccountsBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的项目信息-内部资金账户列表 + * + * @param bo 查询条件 + * @return 项目信息-内部资金账户列表 + */ + List queryList(XzdProjectInternalAccountsBo bo); + + /** + * 新增项目信息-内部资金账户 + * + * @param bo 项目信息-内部资金账户 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdProjectInternalAccountsBo bo); + + /** + * 修改项目信息-内部资金账户 + * + * @param bo 项目信息-内部资金账户 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdProjectInternalAccountsBo 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/service/IXzdProjectParticipatingUnitsService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectParticipatingUnitsService.java new file mode 100644 index 00000000..0e7f21f0 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectParticipatingUnitsService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.service; + +import org.dromara.xzd.domain.vo.XzdProjectParticipatingUnitsVo; +import org.dromara.xzd.domain.bo.XzdProjectParticipatingUnitsBo; +import org.dromara.xzd.domain.XzdProjectParticipatingUnits; +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 IXzdProjectParticipatingUnitsService extends IService{ + + /** + * 查询项目信息-参建单位 + * + * @param id 主键 + * @return 项目信息-参建单位 + */ + XzdProjectParticipatingUnitsVo queryById(Long id); + + /** + * 分页查询项目信息-参建单位列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-参建单位分页列表 + */ + TableDataInfo queryPageList(XzdProjectParticipatingUnitsBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的项目信息-参建单位列表 + * + * @param bo 查询条件 + * @return 项目信息-参建单位列表 + */ + List queryList(XzdProjectParticipatingUnitsBo bo); + + /** + * 新增项目信息-参建单位 + * + * @param bo 项目信息-参建单位 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdProjectParticipatingUnitsBo bo); + + /** + * 修改项目信息-参建单位 + * + * @param bo 项目信息-参建单位 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdProjectParticipatingUnitsBo 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/service/IXzdProjectPersonnelService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectPersonnelService.java new file mode 100644 index 00000000..ae6971ef --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectPersonnelService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.service; + +import org.dromara.xzd.domain.vo.XzdProjectPersonnelVo; +import org.dromara.xzd.domain.bo.XzdProjectPersonnelBo; +import org.dromara.xzd.domain.XzdProjectPersonnel; +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 IXzdProjectPersonnelService extends IService{ + + /** + * 查询项目信息-项目人员 + * + * @param id 主键 + * @return 项目信息-项目人员 + */ + XzdProjectPersonnelVo queryById(Long id); + + /** + * 分页查询项目信息-项目人员列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-项目人员分页列表 + */ + TableDataInfo queryPageList(XzdProjectPersonnelBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的项目信息-项目人员列表 + * + * @param bo 查询条件 + * @return 项目信息-项目人员列表 + */ + List queryList(XzdProjectPersonnelBo bo); + + /** + * 新增项目信息-项目人员 + * + * @param bo 项目信息-项目人员 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdProjectPersonnelBo bo); + + /** + * 修改项目信息-项目人员 + * + * @param bo 项目信息-项目人员 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdProjectPersonnelBo 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/service/IXzdProjectProfileService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectProfileService.java new file mode 100644 index 00000000..5c9ba10b --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectProfileService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.service; + +import org.dromara.xzd.domain.vo.XzdProjectProfileVo; +import org.dromara.xzd.domain.bo.XzdProjectProfileBo; +import org.dromara.xzd.domain.XzdProjectProfile; +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 IXzdProjectProfileService extends IService{ + + /** + * 查询项目信息-项目概况 + * + * @param id 主键 + * @return 项目信息-项目概况 + */ + XzdProjectProfileVo queryById(Long id); + + /** + * 分页查询项目信息-项目概况列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-项目概况分页列表 + */ + TableDataInfo queryPageList(XzdProjectProfileBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的项目信息-项目概况列表 + * + * @param bo 查询条件 + * @return 项目信息-项目概况列表 + */ + List queryList(XzdProjectProfileBo bo); + + /** + * 新增项目信息-项目概况 + * + * @param bo 项目信息-项目概况 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdProjectProfileBo bo); + + /** + * 修改项目信息-项目概况 + * + * @param bo 项目信息-项目概况 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdProjectProfileBo 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/service/IXzdProjectService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectService.java new file mode 100644 index 00000000..6edaee6e --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.service; + +import org.dromara.xzd.domain.vo.XzdProjectVo; +import org.dromara.xzd.domain.bo.XzdProjectBo; +import org.dromara.xzd.domain.XzdProject; +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 IXzdProjectService extends IService{ + + /** + * 查询项目信息 + * + * @param id 主键 + * @return 项目信息 + */ + XzdProjectVo queryById(Long id); + + /** + * 分页查询项目信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息分页列表 + */ + TableDataInfo queryPageList(XzdProjectBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的项目信息列表 + * + * @param bo 查询条件 + * @return 项目信息列表 + */ + List queryList(XzdProjectBo bo); + + /** + * 新增项目信息 + * + * @param bo 项目信息 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdProjectBo bo); + + /** + * 修改项目信息 + * + * @param bo 项目信息 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdProjectBo 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/service/IXzdProjectTaxInfoService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectTaxInfoService.java new file mode 100644 index 00000000..ac7634d2 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectTaxInfoService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.service; + +import org.dromara.xzd.domain.vo.XzdProjectTaxInfoVo; +import org.dromara.xzd.domain.bo.XzdProjectTaxInfoBo; +import org.dromara.xzd.domain.XzdProjectTaxInfo; +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 IXzdProjectTaxInfoService extends IService{ + + /** + * 查询项目信息-税务信息 + * + * @param id 主键 + * @return 项目信息-税务信息 + */ + XzdProjectTaxInfoVo queryById(Long id); + + /** + * 分页查询项目信息-税务信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-税务信息分页列表 + */ + TableDataInfo queryPageList(XzdProjectTaxInfoBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的项目信息-税务信息列表 + * + * @param bo 查询条件 + * @return 项目信息-税务信息列表 + */ + List queryList(XzdProjectTaxInfoBo bo); + + /** + * 新增项目信息-税务信息 + * + * @param bo 项目信息-税务信息 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdProjectTaxInfoBo bo); + + /** + * 修改项目信息-税务信息 + * + * @param bo 项目信息-税务信息 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdProjectTaxInfoBo 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/service/IXzdProjectWarehousesService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectWarehousesService.java new file mode 100644 index 00000000..c26709f6 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdProjectWarehousesService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.service; + +import org.dromara.xzd.domain.vo.XzdProjectWarehousesVo; +import org.dromara.xzd.domain.bo.XzdProjectWarehousesBo; +import org.dromara.xzd.domain.XzdProjectWarehouses; +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 IXzdProjectWarehousesService extends IService{ + + /** + * 查询项目信息-项目仓库 + * + * @param id 主键 + * @return 项目信息-项目仓库 + */ + XzdProjectWarehousesVo queryById(Long id); + + /** + * 分页查询项目信息-项目仓库列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-项目仓库分页列表 + */ + TableDataInfo queryPageList(XzdProjectWarehousesBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的项目信息-项目仓库列表 + * + * @param bo 查询条件 + * @return 项目信息-项目仓库列表 + */ + List queryList(XzdProjectWarehousesBo bo); + + /** + * 新增项目信息-项目仓库 + * + * @param bo 项目信息-项目仓库 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdProjectWarehousesBo bo); + + /** + * 修改项目信息-项目仓库 + * + * @param bo 项目信息-项目仓库 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdProjectWarehousesBo 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/service/impl/XzdProjectAccountingInfoServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectAccountingInfoServiceImpl.java new file mode 100644 index 00000000..8437a834 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectAccountingInfoServiceImpl.java @@ -0,0 +1,135 @@ +package org.dromara.xzd.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.xzd.domain.bo.XzdProjectAccountingInfoBo; +import org.dromara.xzd.domain.vo.XzdProjectAccountingInfoVo; +import org.dromara.xzd.domain.XzdProjectAccountingInfo; +import org.dromara.xzd.mapper.XzdProjectAccountingInfoMapper; +import org.dromara.xzd.service.IXzdProjectAccountingInfoService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 项目信息-核算信息Service业务层处理 + * + * @author Lion Li + * @date 2025-10-10 + */ +@RequiredArgsConstructor +@Service +public class XzdProjectAccountingInfoServiceImpl extends ServiceImpl implements IXzdProjectAccountingInfoService { + + private final XzdProjectAccountingInfoMapper baseMapper; + + /** + * 查询项目信息-核算信息 + * + * @param id 主键 + * @return 项目信息-核算信息 + */ + @Override + public XzdProjectAccountingInfoVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询项目信息-核算信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-核算信息分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdProjectAccountingInfoBo 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(XzdProjectAccountingInfoBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdProjectAccountingInfoBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdProjectAccountingInfo::getId); + lqw.eq(bo.getXzdProjectId() != null, XzdProjectAccountingInfo::getXzdProjectId, bo.getXzdProjectId()); + lqw.eq(StringUtils.isNotBlank(bo.getFillMode()), XzdProjectAccountingInfo::getFillMode, bo.getFillMode()); + lqw.eq(StringUtils.isNotBlank(bo.getBoqMode()), XzdProjectAccountingInfo::getBoqMode, bo.getBoqMode()); + lqw.eq(StringUtils.isNotBlank(bo.getBoqControlSubitem()), XzdProjectAccountingInfo::getBoqControlSubitem, bo.getBoqControlSubitem()); + lqw.eq(StringUtils.isNotBlank(bo.getCostCalculation()), XzdProjectAccountingInfo::getCostCalculation, bo.getCostCalculation()); + return lqw; + } + + /** + * 新增项目信息-核算信息 + * + * @param bo 项目信息-核算信息 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdProjectAccountingInfoBo bo) { + XzdProjectAccountingInfo add = MapstructUtils.convert(bo, XzdProjectAccountingInfo.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改项目信息-核算信息 + * + * @param bo 项目信息-核算信息 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdProjectAccountingInfoBo bo) { + XzdProjectAccountingInfo update = MapstructUtils.convert(bo, XzdProjectAccountingInfo.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdProjectAccountingInfo 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/service/impl/XzdProjectInternalAccountsServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectInternalAccountsServiceImpl.java new file mode 100644 index 00000000..fd12cb12 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectInternalAccountsServiceImpl.java @@ -0,0 +1,133 @@ +package org.dromara.xzd.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.xzd.domain.bo.XzdProjectInternalAccountsBo; +import org.dromara.xzd.domain.vo.XzdProjectInternalAccountsVo; +import org.dromara.xzd.domain.XzdProjectInternalAccounts; +import org.dromara.xzd.mapper.XzdProjectInternalAccountsMapper; +import org.dromara.xzd.service.IXzdProjectInternalAccountsService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 项目信息-内部资金账户Service业务层处理 + * + * @author Lion Li + * @date 2025-10-10 + */ +@RequiredArgsConstructor +@Service +public class XzdProjectInternalAccountsServiceImpl extends ServiceImpl implements IXzdProjectInternalAccountsService { + + private final XzdProjectInternalAccountsMapper baseMapper; + + /** + * 查询项目信息-内部资金账户 + * + * @param id 主键 + * @return 项目信息-内部资金账户 + */ + @Override + public XzdProjectInternalAccountsVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询项目信息-内部资金账户列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-内部资金账户分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdProjectInternalAccountsBo 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(XzdProjectInternalAccountsBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdProjectInternalAccountsBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdProjectInternalAccounts::getId); + lqw.eq(bo.getXzdProjectId() != null, XzdProjectInternalAccounts::getXzdProjectId, bo.getXzdProjectId()); + lqw.eq(StringUtils.isNotBlank(bo.getAccountCode()), XzdProjectInternalAccounts::getAccountCode, bo.getAccountCode()); + lqw.like(StringUtils.isNotBlank(bo.getAccountName()), XzdProjectInternalAccounts::getAccountName, bo.getAccountName()); + return lqw; + } + + /** + * 新增项目信息-内部资金账户 + * + * @param bo 项目信息-内部资金账户 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdProjectInternalAccountsBo bo) { + XzdProjectInternalAccounts add = MapstructUtils.convert(bo, XzdProjectInternalAccounts.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改项目信息-内部资金账户 + * + * @param bo 项目信息-内部资金账户 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdProjectInternalAccountsBo bo) { + XzdProjectInternalAccounts update = MapstructUtils.convert(bo, XzdProjectInternalAccounts.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdProjectInternalAccounts 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/service/impl/XzdProjectParticipatingUnitsServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectParticipatingUnitsServiceImpl.java new file mode 100644 index 00000000..d31bdef4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectParticipatingUnitsServiceImpl.java @@ -0,0 +1,134 @@ +package org.dromara.xzd.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.xzd.domain.bo.XzdProjectParticipatingUnitsBo; +import org.dromara.xzd.domain.vo.XzdProjectParticipatingUnitsVo; +import org.dromara.xzd.domain.XzdProjectParticipatingUnits; +import org.dromara.xzd.mapper.XzdProjectParticipatingUnitsMapper; +import org.dromara.xzd.service.IXzdProjectParticipatingUnitsService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 项目信息-参建单位Service业务层处理 + * + * @author Lion Li + * @date 2025-10-10 + */ +@RequiredArgsConstructor +@Service +public class XzdProjectParticipatingUnitsServiceImpl extends ServiceImpl implements IXzdProjectParticipatingUnitsService { + + private final XzdProjectParticipatingUnitsMapper baseMapper; + + /** + * 查询项目信息-参建单位 + * + * @param id 主键 + * @return 项目信息-参建单位 + */ + @Override + public XzdProjectParticipatingUnitsVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询项目信息-参建单位列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-参建单位分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdProjectParticipatingUnitsBo 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(XzdProjectParticipatingUnitsBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdProjectParticipatingUnitsBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdProjectParticipatingUnits::getId); + lqw.eq(bo.getXzdProjectId() != null, XzdProjectParticipatingUnits::getXzdProjectId, bo.getXzdProjectId()); + lqw.eq(StringUtils.isNotBlank(bo.getUnitType()), XzdProjectParticipatingUnits::getUnitType, bo.getUnitType()); + lqw.like(StringUtils.isNotBlank(bo.getUnitName()), XzdProjectParticipatingUnits::getUnitName, bo.getUnitName()); + lqw.eq(bo.getTotalInvestment() != null, XzdProjectParticipatingUnits::getTotalInvestment, bo.getTotalInvestment()); + return lqw; + } + + /** + * 新增项目信息-参建单位 + * + * @param bo 项目信息-参建单位 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdProjectParticipatingUnitsBo bo) { + XzdProjectParticipatingUnits add = MapstructUtils.convert(bo, XzdProjectParticipatingUnits.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改项目信息-参建单位 + * + * @param bo 项目信息-参建单位 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdProjectParticipatingUnitsBo bo) { + XzdProjectParticipatingUnits update = MapstructUtils.convert(bo, XzdProjectParticipatingUnits.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdProjectParticipatingUnits 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/service/impl/XzdProjectPersonnelServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectPersonnelServiceImpl.java new file mode 100644 index 00000000..21279ab4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectPersonnelServiceImpl.java @@ -0,0 +1,147 @@ +package org.dromara.xzd.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.xzd.domain.bo.XzdProjectPersonnelBo; +import org.dromara.xzd.domain.vo.XzdProjectPersonnelVo; +import org.dromara.xzd.domain.XzdProjectPersonnel; +import org.dromara.xzd.mapper.XzdProjectPersonnelMapper; +import org.dromara.xzd.service.IXzdProjectPersonnelService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 项目信息-项目人员Service业务层处理 + * + * @author Lion Li + * @date 2025-10-10 + */ +@RequiredArgsConstructor +@Service +public class XzdProjectPersonnelServiceImpl extends ServiceImpl implements IXzdProjectPersonnelService { + + private final XzdProjectPersonnelMapper baseMapper; + + /** + * 查询项目信息-项目人员 + * + * @param id 主键 + * @return 项目信息-项目人员 + */ + @Override + public XzdProjectPersonnelVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询项目信息-项目人员列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-项目人员分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdProjectPersonnelBo 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(XzdProjectPersonnelBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdProjectPersonnelBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdProjectPersonnel::getId); + lqw.eq(bo.getXzdProjectId() != null, XzdProjectPersonnel::getXzdProjectId, bo.getXzdProjectId()); + lqw.eq(StringUtils.isNotBlank(bo.getEmployeeId()), XzdProjectPersonnel::getEmployeeId, bo.getEmployeeId()); + lqw.like(StringUtils.isNotBlank(bo.getEmployeeName()), XzdProjectPersonnel::getEmployeeName, bo.getEmployeeName()); + lqw.eq(StringUtils.isNotBlank(bo.getGender()), XzdProjectPersonnel::getGender, bo.getGender()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectRole()), XzdProjectPersonnel::getProjectRole, bo.getProjectRole()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectPost()), XzdProjectPersonnel::getProjectPost, bo.getProjectPost()); + lqw.eq(StringUtils.isNotBlank(bo.getArchivalPost()), XzdProjectPersonnel::getArchivalPost, bo.getArchivalPost()); + lqw.eq(StringUtils.isNotBlank(bo.getDept()), XzdProjectPersonnel::getDept, bo.getDept()); + lqw.eq(StringUtils.isNotBlank(bo.getMobilePhone()), XzdProjectPersonnel::getMobilePhone, bo.getMobilePhone()); + lqw.eq(StringUtils.isNotBlank(bo.getIdCardNumber()), XzdProjectPersonnel::getIdCardNumber, bo.getIdCardNumber()); + lqw.eq(StringUtils.isNotBlank(bo.getCertificateNumber()), XzdProjectPersonnel::getCertificateNumber, bo.getCertificateNumber()); + lqw.like(StringUtils.isNotBlank(bo.getCertificateName()), XzdProjectPersonnel::getCertificateName, bo.getCertificateName()); + lqw.eq(StringUtils.isNotBlank(bo.getIssuingAuthority()), XzdProjectPersonnel::getIssuingAuthority, bo.getIssuingAuthority()); + lqw.eq(StringUtils.isNotBlank(bo.getIsSummaryFlag()), XzdProjectPersonnel::getIsSummaryFlag, bo.getIsSummaryFlag()); + lqw.eq(StringUtils.isNotBlank(bo.getIsSalaryPaid()), XzdProjectPersonnel::getIsSalaryPaid, bo.getIsSalaryPaid()); + lqw.eq(StringUtils.isNotBlank(bo.getOrganization()), XzdProjectPersonnel::getOrganization, bo.getOrganization()); + lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdProjectPersonnel::getFileId, bo.getFileId()); + return lqw; + } + + /** + * 新增项目信息-项目人员 + * + * @param bo 项目信息-项目人员 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdProjectPersonnelBo bo) { + XzdProjectPersonnel add = MapstructUtils.convert(bo, XzdProjectPersonnel.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改项目信息-项目人员 + * + * @param bo 项目信息-项目人员 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdProjectPersonnelBo bo) { + XzdProjectPersonnel update = MapstructUtils.convert(bo, XzdProjectPersonnel.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdProjectPersonnel 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/service/impl/XzdProjectProfileServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectProfileServiceImpl.java new file mode 100644 index 00000000..36ac31e4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectProfileServiceImpl.java @@ -0,0 +1,149 @@ +package org.dromara.xzd.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.xzd.domain.bo.XzdProjectProfileBo; +import org.dromara.xzd.domain.vo.XzdProjectProfileVo; +import org.dromara.xzd.domain.XzdProjectProfile; +import org.dromara.xzd.mapper.XzdProjectProfileMapper; +import org.dromara.xzd.service.IXzdProjectProfileService; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 项目信息-项目概况Service业务层处理 + * + * @author Lion Li + * @date 2025-10-10 + */ +@RequiredArgsConstructor +@Service +public class XzdProjectProfileServiceImpl extends ServiceImpl implements IXzdProjectProfileService { + + private final XzdProjectProfileMapper baseMapper; + + /** + * 查询项目信息-项目概况 + * + * @param id 主键 + * @return 项目信息-项目概况 + */ + @Override + public XzdProjectProfileVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询项目信息-项目概况列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-项目概况分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdProjectProfileBo 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(XzdProjectProfileBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdProjectProfileBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdProjectProfile::getId); + lqw.eq(bo.getXzdProjectId() != null, XzdProjectProfile::getXzdProjectId, bo.getXzdProjectId()); + lqw.eq(StringUtils.isNotBlank(bo.getCountry()), XzdProjectProfile::getCountry, bo.getCountry()); + lqw.eq(StringUtils.isNotBlank(bo.getProvince()), XzdProjectProfile::getProvince, bo.getProvince()); + lqw.eq(StringUtils.isNotBlank(bo.getCity()), XzdProjectProfile::getCity, bo.getCity()); + lqw.eq(StringUtils.isNotBlank(bo.getDistrict()), XzdProjectProfile::getDistrict, bo.getDistrict()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectAddress()), XzdProjectProfile::getProjectAddress, bo.getProjectAddress()); + lqw.eq(bo.getBuildingArea() != null, XzdProjectProfile::getBuildingArea, bo.getBuildingArea()); + lqw.eq(StringUtils.isNotBlank(bo.getBuildingAreaUnit()), XzdProjectProfile::getBuildingAreaUnit, bo.getBuildingAreaUnit()); + lqw.eq(bo.getFloorCount() != null, XzdProjectProfile::getFloorCount, bo.getFloorCount()); + lqw.eq(bo.getHeight() != null, XzdProjectProfile::getHeight, bo.getHeight()); + lqw.eq(bo.getParentProjectId() != null, XzdProjectProfile::getParentProjectId, bo.getParentProjectId()); + lqw.eq(bo.getContractAmount() != null, XzdProjectProfile::getContractAmount, bo.getContractAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getQualityEvaluationGrade()), XzdProjectProfile::getQualityEvaluationGrade, bo.getQualityEvaluationGrade()); + lqw.eq(StringUtils.isNotBlank(bo.getSafetyProductionGrade()), XzdProjectProfile::getSafetyProductionGrade, bo.getSafetyProductionGrade()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectContractRecordNumber()), XzdProjectProfile::getProjectContractRecordNumber, bo.getProjectContractRecordNumber()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectProfile()), XzdProjectProfile::getProjectProfile, bo.getProjectProfile()); + return lqw; + } + + /** + * 新增项目信息-项目概况 + * + * @param bo 项目信息-项目概况 + * @return 是否新增成功 + */ + @Transactional + @Override + public Boolean insertByBo(XzdProjectProfileBo bo) { + XzdProjectProfile add = MapstructUtils.convert(bo, XzdProjectProfile.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + + return flag; + } + + /** + * 修改项目信息-项目概况 + * + * @param bo 项目信息-项目概况 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdProjectProfileBo bo) { + XzdProjectProfile update = MapstructUtils.convert(bo, XzdProjectProfile.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdProjectProfile 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/service/impl/XzdProjectServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectServiceImpl.java new file mode 100644 index 00000000..5430990f --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectServiceImpl.java @@ -0,0 +1,284 @@ +package org.dromara.xzd.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.domain.*; +import org.dromara.xzd.domain.bo.*; +import org.dromara.xzd.domain.vo.XzdProjectAccountingInfoVo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.dromara.xzd.domain.vo.XzdProjectVo; +import org.dromara.xzd.mapper.XzdProjectMapper; +import org.dromara.xzd.service.IXzdProjectService; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 项目信息Service业务层处理 + * + * @author Lion Li + * @date 2025-10-10 + */ +@RequiredArgsConstructor +@Service +public class XzdProjectServiceImpl extends ServiceImpl implements IXzdProjectService { + + private final XzdProjectMapper baseMapper; + + @Autowired + private XzdProjectProfileServiceImpl xzdProjectProfileService; + @Autowired + private XzdProjectPersonnelServiceImpl xzdProjectPersonnelService; + @Autowired + private XzdProjectTaxInfoServiceImpl xzdProjectTaxInfoService; + @Autowired + private XzdProjectAccountingInfoServiceImpl xzdProjectAccountingInfoService; + @Autowired + private XzdProjectWarehousesServiceImpl xzdProjectWarehousesService; + @Autowired + private XzdProjectInternalAccountsServiceImpl xzdProjectInternalAccountsService; + @Autowired + private XzdProjectParticipatingUnitsServiceImpl xzdProjectParticipatingUnitsService; + + @Autowired + private SysOssServiceImpl sysOssService; + + /** + * 查询项目信息 + * + * @param id 主键 + * @return 项目信息 + */ + @Override + public XzdProjectVo queryById(Long id){ + XzdProjectVo projectVo = baseMapper.selectVoById(id); + setValue(projectVo); + return projectVo; + } + + /** + * 分页查询项目信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdProjectBo 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(XzdProjectBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdProjectBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdProject::getId); + lqw.eq(StringUtils.isNotBlank(bo.getProjectNumber()), XzdProject::getProjectNumber, bo.getProjectNumber()); + lqw.like(StringUtils.isNotBlank(bo.getProjectName()), XzdProject::getProjectName, bo.getProjectName()); + lqw.eq(bo.getProjectType() != null, XzdProject::getProjectType, bo.getProjectType()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectStatus()), XzdProject::getProjectStatus, bo.getProjectStatus()); + lqw.eq(bo.getPlannedStartDate() != null, XzdProject::getPlannedStartDate, bo.getPlannedStartDate()); + lqw.eq(bo.getPlannedCompletionDate() != null, XzdProject::getPlannedCompletionDate, bo.getPlannedCompletionDate()); + lqw.eq(bo.getActualStartDate() != null, XzdProject::getActualStartDate, bo.getActualStartDate()); + lqw.eq(bo.getActualCompletionDate() != null, XzdProject::getActualCompletionDate, bo.getActualCompletionDate()); + lqw.eq(StringUtils.isNotBlank(bo.getManagementOrganization()), XzdProject::getManagementOrganization, bo.getManagementOrganization()); + lqw.eq(bo.getProjectAmount() != null, XzdProject::getProjectAmount, bo.getProjectAmount()); + lqw.eq(bo.getFilingManager() != null, XzdProject::getFilingManager, bo.getFilingManager()); + lqw.eq(bo.getManagerExecution() != null, XzdProject::getManagerExecution, bo.getManagerExecution()); + lqw.eq(bo.getManagerResponsible() != null, XzdProject::getManagerResponsible, bo.getManagerResponsible()); + lqw.eq(bo.getWinningBidAmount() != null, XzdProject::getWinningBidAmount, bo.getWinningBidAmount()); + lqw.eq(bo.getPlannedDuration() != null, XzdProject::getPlannedDuration, bo.getPlannedDuration()); + lqw.eq(bo.getActualDuration() != null, XzdProject::getActualDuration, bo.getActualDuration()); + lqw.eq(StringUtils.isNotBlank(bo.getDefaultFinancialOrganization()), XzdProject::getDefaultFinancialOrganization, bo.getDefaultFinancialOrganization()); + lqw.eq(StringUtils.isNotBlank(bo.getContractingMethod()), XzdProject::getContractingMethod, bo.getContractingMethod()); + lqw.eq(StringUtils.isNotBlank(bo.getInvolvedFinancialOrganization()), XzdProject::getInvolvedFinancialOrganization, bo.getInvolvedFinancialOrganization()); + lqw.eq(StringUtils.isNotBlank(bo.getBusinessModel()), XzdProject::getBusinessModel, bo.getBusinessModel()); + lqw.eq(StringUtils.isNotBlank(bo.getConstructionUnit()), XzdProject::getConstructionUnit, bo.getConstructionUnit()); + lqw.eq(StringUtils.isNotBlank(bo.getProjectAttribute()), XzdProject::getProjectAttribute, bo.getProjectAttribute()); + lqw.eq(StringUtils.isNotBlank(bo.getGroupProject()), XzdProject::getGroupProject, bo.getGroupProject()); + lqw.eq(StringUtils.isNotBlank(bo.getDescription()), XzdProject::getDescription, bo.getDescription()); + lqw.eq(bo.getProjectEstablishmentDate() != null, XzdProject::getProjectEstablishmentDate, bo.getProjectEstablishmentDate()); + lqw.eq(bo.getPlannedTotalInvestment() != null, XzdProject::getPlannedTotalInvestment, bo.getPlannedTotalInvestment()); + lqw.like(StringUtils.isNotBlank(bo.getGovFilingProjectName()), XzdProject::getGovFilingProjectName, bo.getGovFilingProjectName()); + lqw.eq(StringUtils.isNotBlank(bo.getManagerExecutionPhone()), XzdProject::getManagerExecutionPhone, bo.getManagerExecutionPhone()); + lqw.eq(StringUtils.isNotBlank(bo.getSharingOrganization()), XzdProject::getSharingOrganization, bo.getSharingOrganization()); + lqw.eq(bo.getTargetWinningBidAmount() != null, XzdProject::getTargetWinningBidAmount, bo.getTargetWinningBidAmount()); + lqw.eq(bo.getTargetContractAmount() != null, XzdProject::getTargetContractAmount, bo.getTargetContractAmount()); + lqw.eq(bo.getTargetOutputValueAmount() != null, XzdProject::getTargetOutputValueAmount, bo.getTargetOutputValueAmount()); + lqw.eq(bo.getTargetCollectionAmount() != null, XzdProject::getTargetCollectionAmount, bo.getTargetCollectionAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdProject::getFileId, bo.getFileId()); + lqw.eq(StringUtils.isNotBlank(bo.getAuditStatus()), XzdProject::getAuditStatus, bo.getAuditStatus()); + return lqw; + } + + /** + * 新增项目信息 + * + * @param bo 项目信息 + * @return 是否新增成功 + */ + @Transactional + @Override + public Boolean insertByBo(XzdProjectBo bo) { + XzdProject add = MapstructUtils.convert(bo, XzdProject.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + }else { + return false; + } + + //项目概况处理 + if (bo.getXmgk() != null){ + bo.getXmgk().setXzdProjectId(add.getId()); + xzdProjectProfileService.insertByBo(bo.getXmgk()); + } + + //项目人员处理 + if (bo.getXmry() != null && !bo.getXmry().isEmpty()){ + for (XzdProjectPersonnelBo personnelBo : bo.getXmry()) { + personnelBo.setXzdProjectId(add.getId()); + xzdProjectPersonnelService.insertByBo(personnelBo); + } + } + + //税务信息处理 + if (bo.getSwxx() != null){ + bo.getSwxx().setXzdProjectId(add.getId()); + xzdProjectTaxInfoService.insertByBo(bo.getSwxx()); + } + + //核算信息 + if (bo.getHsxx() != null){ + bo.getHsxx().setXzdProjectId(add.getId()); + xzdProjectAccountingInfoService.insertByBo(bo.getHsxx()); + } + + //仓库信息 + if (bo.getXmck() != null && !bo.getXmck().isEmpty()){ + for (XzdProjectWarehousesBo warehousesBo : bo.getXmck()) { + warehousesBo.setXzdProjectId(add.getId()); + xzdProjectWarehousesService.insertByBo(warehousesBo); + } + } + + //内部账户信息 + if (bo.getNbzj() != null && !bo.getNbzj().isEmpty()){ + for (XzdProjectInternalAccountsBo internalAccountsBo : bo.getNbzj()) { + internalAccountsBo.setXzdProjectId(add.getId()); + xzdProjectInternalAccountsService.insertByBo(internalAccountsBo); + } + } + + //参与单位信息 + if (bo.getCjdw() != null && !bo.getCjdw().isEmpty()){ + for (XzdProjectParticipatingUnitsBo participatingUnitsBo : bo.getCjdw()) { + participatingUnitsBo.setXzdProjectId(add.getId()); + xzdProjectParticipatingUnitsService.insertByBo(participatingUnitsBo); + } + } + + return true; + } + + /** + * 修改项目信息 + * + * @param bo 项目信息 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdProjectBo bo) { + XzdProject update = MapstructUtils.convert(bo, XzdProject.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdProject entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除项目信息信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } + + private void setValue(XzdProjectVo entity){ + + //项目概况 + LambdaQueryWrapper profileLambdaQueryWrapper = new LambdaQueryWrapper<>(); + profileLambdaQueryWrapper.eq(XzdProjectProfile::getXzdProjectId, entity.getId()); + entity.setXmgk(xzdProjectProfileService.getBaseMapper().selectVoOne(profileLambdaQueryWrapper)); + + //项目人员 + LambdaQueryWrapper personnelLambdaQueryWrapper = new LambdaQueryWrapper<>(); + personnelLambdaQueryWrapper.eq(XzdProjectPersonnel::getXzdProjectId, entity.getId()); + entity.setXmry(xzdProjectPersonnelService.getBaseMapper().selectVoList(personnelLambdaQueryWrapper)); + + //税务信息 + LambdaQueryWrapper taxInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); + taxInfoLambdaQueryWrapper.eq(XzdProjectTaxInfo::getXzdProjectId, entity.getId()); + entity.setSwxx(xzdProjectTaxInfoService.getBaseMapper().selectVoOne(taxInfoLambdaQueryWrapper)); + + //核算信息 + LambdaQueryWrapper accountingInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); + accountingInfoLambdaQueryWrapper.eq(XzdProjectAccountingInfo::getXzdProjectId, entity.getId()); + entity.setHsxx(xzdProjectAccountingInfoService.getBaseMapper().selectVoOne(accountingInfoLambdaQueryWrapper)); + + //仓库信息 + LambdaQueryWrapper warehousesLambdaQueryWrapper = new LambdaQueryWrapper<>(); + warehousesLambdaQueryWrapper.eq(XzdProjectWarehouses::getXzdProjectId, entity.getId()); + entity.setXmck(xzdProjectWarehousesService.getBaseMapper().selectVoList(warehousesLambdaQueryWrapper)); + + //内部账户信息 + LambdaQueryWrapper internalAccountsLambdaQueryWrapper = new LambdaQueryWrapper<>(); + internalAccountsLambdaQueryWrapper.eq(XzdProjectInternalAccounts::getXzdProjectId, entity.getId()); + entity.setNbzj(xzdProjectInternalAccountsService.getBaseMapper().selectVoList(internalAccountsLambdaQueryWrapper)); + + //参与单位信息 + LambdaQueryWrapper participatingUnitsLambdaQueryWrapper = new LambdaQueryWrapper<>(); + participatingUnitsLambdaQueryWrapper.eq(XzdProjectParticipatingUnits::getXzdProjectId, entity.getId()); + entity.setCjdw(xzdProjectParticipatingUnitsService.getBaseMapper().selectVoList(participatingUnitsLambdaQueryWrapper)); + + + } + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectTaxInfoServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectTaxInfoServiceImpl.java new file mode 100644 index 00000000..82e839f2 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectTaxInfoServiceImpl.java @@ -0,0 +1,130 @@ +package org.dromara.xzd.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.xzd.domain.bo.XzdProjectTaxInfoBo; +import org.dromara.xzd.domain.vo.XzdProjectTaxInfoVo; +import org.dromara.xzd.domain.XzdProjectTaxInfo; +import org.dromara.xzd.mapper.XzdProjectTaxInfoMapper; +import org.dromara.xzd.service.IXzdProjectTaxInfoService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 项目信息-税务信息Service业务层处理 + * + * @author Lion Li + * @date 2025-10-10 + */ +@RequiredArgsConstructor +@Service +public class XzdProjectTaxInfoServiceImpl extends ServiceImpl implements IXzdProjectTaxInfoService { + + private final XzdProjectTaxInfoMapper baseMapper; + + /** + * 查询项目信息-税务信息 + * + * @param id 主键 + * @return 项目信息-税务信息 + */ + @Override + public XzdProjectTaxInfoVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询项目信息-税务信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-税务信息分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdProjectTaxInfoBo 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(XzdProjectTaxInfoBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdProjectTaxInfoBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdProjectTaxInfo::getId); + return lqw; + } + + /** + * 新增项目信息-税务信息 + * + * @param bo 项目信息-税务信息 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdProjectTaxInfoBo bo) { + XzdProjectTaxInfo add = MapstructUtils.convert(bo, XzdProjectTaxInfo.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改项目信息-税务信息 + * + * @param bo 项目信息-税务信息 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdProjectTaxInfoBo bo) { + XzdProjectTaxInfo update = MapstructUtils.convert(bo, XzdProjectTaxInfo.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdProjectTaxInfo 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/service/impl/XzdProjectWarehousesServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectWarehousesServiceImpl.java new file mode 100644 index 00000000..96c464d4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectWarehousesServiceImpl.java @@ -0,0 +1,130 @@ +package org.dromara.xzd.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.xzd.domain.bo.XzdProjectWarehousesBo; +import org.dromara.xzd.domain.vo.XzdProjectWarehousesVo; +import org.dromara.xzd.domain.XzdProjectWarehouses; +import org.dromara.xzd.mapper.XzdProjectWarehousesMapper; +import org.dromara.xzd.service.IXzdProjectWarehousesService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 项目信息-项目仓库Service业务层处理 + * + * @author Lion Li + * @date 2025-10-10 + */ +@RequiredArgsConstructor +@Service +public class XzdProjectWarehousesServiceImpl extends ServiceImpl implements IXzdProjectWarehousesService { + + private final XzdProjectWarehousesMapper baseMapper; + + /** + * 查询项目信息-项目仓库 + * + * @param id 主键 + * @return 项目信息-项目仓库 + */ + @Override + public XzdProjectWarehousesVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询项目信息-项目仓库列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 项目信息-项目仓库分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdProjectWarehousesBo 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(XzdProjectWarehousesBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdProjectWarehousesBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdProjectWarehouses::getId); + return lqw; + } + + /** + * 新增项目信息-项目仓库 + * + * @param bo 项目信息-项目仓库 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdProjectWarehousesBo bo) { + XzdProjectWarehouses add = MapstructUtils.convert(bo, XzdProjectWarehouses.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改项目信息-项目仓库 + * + * @param bo 项目信息-项目仓库 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdProjectWarehousesBo bo) { + XzdProjectWarehouses update = MapstructUtils.convert(bo, XzdProjectWarehouses.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdProjectWarehouses 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/XzdProjectMapper.xml b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/XzdProjectMapper.xml new file mode 100644 index 00000000..9ceaf154 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/XzdProjectMapper.xml @@ -0,0 +1,11 @@ + + + + + + +