diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/contractManagement/purchaseManagement/service/IXzdPurchaseContractInformationService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/contractManagement/purchaseManagement/service/IXzdPurchaseContractInformationService.java index 85bdd48f..a777878b 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/contractManagement/purchaseManagement/service/IXzdPurchaseContractInformationService.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/contractManagement/purchaseManagement/service/IXzdPurchaseContractInformationService.java @@ -70,5 +70,6 @@ public interface IXzdPurchaseContractInformationService extends IService ids, Boolean isValid); + String queryCodeById(Long id); } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/fapiaotaizhang/zengzhishui/domain/AppreciationInvoice.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/fapiaotaizhang/zengzhishui/domain/AppreciationInvoice.java index 46703fed..2a471f1c 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/fapiaotaizhang/zengzhishui/domain/AppreciationInvoice.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/fapiaotaizhang/zengzhishui/domain/AppreciationInvoice.java @@ -19,7 +19,7 @@ import java.io.Serial; */ @Data @EqualsAndHashCode(callSuper = true) -@TableName("appreciation_invoice") +@TableName("xzd_appreciation_invoice") public class AppreciationInvoice extends BaseEntity { @Serial diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/fapiaotaizhang/zengzhishui/domain/TaxInfo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/fapiaotaizhang/zengzhishui/domain/TaxInfo.java index c96e2227..8da74b8e 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/fapiaotaizhang/zengzhishui/domain/TaxInfo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/fapiaotaizhang/zengzhishui/domain/TaxInfo.java @@ -14,7 +14,7 @@ import java.io.Serial; * @date 2025-10-17 */ @Data -@TableName("tax_info") +@TableName("xzd_tax_info") public class TaxInfo { @Serial diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/XzdAlterationInventory.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/XzdAlterationInventory.java new file mode 100644 index 00000000..3aca8ff4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/XzdAlterationInventory.java @@ -0,0 +1,169 @@ +package org.dromara.xzd.settlement.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 变更增加清单对象 xzd_alteration_inventory + * + * @author Lion Li + * @date 2025-10-20 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_alteration_inventory") +public class XzdAlterationInventory extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 编码 + */ + private String code; + + /** + * 合同清单名称 + */ + private String contractListName; + + /** + * 项目名称 + */ + private String project; + + /** + * 资源编码 + */ + private String resourceCode; + + /** + * 资源名称 + */ + private String resourceName; + + /** + * 计量单位 + */ + private String unitOfMeasurement; + + /** + * 规格 + */ + private String specs; + + /** + * 单价 + */ + private BigDecimal unitPrice; + + /** + * 含税单价 + */ + private BigDecimal taxInclusiveUnitPrice; + + /** + * 本期结算数量 + */ + private BigDecimal currentPeriodSettlementQuantity; + + /** + * 本期结算不含税金额 + */ + private BigDecimal currentPeriodSettlementExcludingTaxAmount; + + /** + * 本期审批数量 + */ + private BigDecimal currentPeriodApprovalQuantity; + + /** + * 本期结算金额 + */ + private BigDecimal currentPeriodSettlementAmount; + + /** + * 本期审批金额 + */ + private BigDecimal currentPeriodApprovalAmount; + + /** + * 税率 + */ + private BigDecimal taxRate; + + /** + * 税额 + */ + private BigDecimal taxAmount; + + /** + * WBS + */ + private String wbs; + + /** + * 累计结算金额 + */ + private BigDecimal cumulativeSettlementAmount; + + /** + * CBS + */ + private String cbs; + + /** + * CBS预算总额 + */ + private BigDecimal cbsBudgetTotal; + + /** + * CBS余额 + */ + private BigDecimal cbsBalance; + + /** + * 合同累计签订成本预算金额 + */ + private BigDecimal costBudgetAmount; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + /** + * 创建时间 + */ + private Date createdAt; + + /** + * 更新时间 + */ + private Date updatedAt; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/XzdContractInventory.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/XzdContractInventory.java new file mode 100644 index 00000000..b042db0e --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/XzdContractInventory.java @@ -0,0 +1,199 @@ +package org.dromara.xzd.settlement.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 合同内(外)清单对象 xzd_contract_inventory + * + * @author Lion Li + * @date 2025-10-20 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_contract_inventory") +public class XzdContractInventory extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 合同类型(1、承包合同,2、分包合同,3、采购合同,4综合服务合同) + */ + private String contractType; + + /** + * 类型 1合同外清单 2合同内清单 + */ + private String type; + + /** + * 编码 + */ + private String code; + + /** + * 主表id + */ + private Long primaryMeterId; + + /** + * 合同清单名称 + */ + private String contractListName; + + /** + * 项目名称 + */ + private String project; + + /** + * 资源编码 + */ + private String resourceCode; + + /** + * 资源名称 + */ + private String resourceName; + + /** + * 计量单位 + */ + private String unitOfMeasurement; + + /** + * 规格 + */ + private String specs; + + /** + * 单价 + */ + private BigDecimal unitPrice; + + /** + * 含税单价 + */ + private BigDecimal taxInclusiveUnitPrice; + + /** + * 本期结算不含税金额 + */ + private BigDecimal settlementAmountExcludingTax; + + /** + * 本期结算数量 + */ + private BigDecimal currentPeriodSettlementQuantity; + + /** + * 本期结算百分比 + */ + private BigDecimal bqjsbfb; + + /** + * 本期结算 + */ + private BigDecimal currentPeriodSettlement; + + /** + * 本期审批数量 + */ + private BigDecimal currentPeriodApprovalQuantity; + + /** + * 本期结算金额 + */ + private BigDecimal currentPeriodSettlementAmount; + + /** + * 本期审批金额 + */ + private BigDecimal currentPeriodApprovalAmount; + + /** + * 税率 + */ + private BigDecimal taxRate; + + /** + * 税额 + */ + private BigDecimal taxAmount; + + /** + * WBS + */ + private String wbs; + + /** + * 累计结算金额 + */ + private BigDecimal cumulativeSettlementAmount; + + /** + * 累计结算合同占比 + */ + private BigDecimal ljjshtzb; + + /** + * CBS + */ + private String cbs; + + /** + * CBS预算总额 + */ + private BigDecimal cbsBudgetTotal; + + /** + * CBS余额 + */ + private BigDecimal cbsBalance; + + /** + * 合同累计签订成本预算金额 + */ + private BigDecimal costBudgetAmount; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + /** + * 创建时间 + */ + private Date createdAt; + + /** + * 更新时间 + */ + private Date updatedAt; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/bo/XzdAlterationInventoryBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/bo/XzdAlterationInventoryBo.java new file mode 100644 index 00000000..963fd634 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/bo/XzdAlterationInventoryBo.java @@ -0,0 +1,168 @@ +package org.dromara.xzd.settlement.domain.bo; + +import org.dromara.xzd.settlement.domain.XzdAlterationInventory; +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.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 变更增加清单业务对象 xzd_alteration_inventory + * + * @author Lion Li + * @date 2025-10-20 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdAlterationInventory.class, reverseConvertGenerate = false) +public class XzdAlterationInventoryBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 编码 + */ + private String code; + + /** + * 合同清单名称 + */ + private String contractListName; + + /** + * 项目名称 + */ + private String project; + + /** + * 资源编码 + */ + private String resourceCode; + + /** + * 资源名称 + */ + private String resourceName; + + /** + * 计量单位 + */ + private String unitOfMeasurement; + + /** + * 规格 + */ + private String specs; + + /** + * 单价 + */ + private BigDecimal unitPrice; + + /** + * 含税单价 + */ + private BigDecimal taxInclusiveUnitPrice; + + /** + * 本期结算数量 + */ + private BigDecimal currentPeriodSettlementQuantity; + + /** + * 本期结算不含税金额 + */ + private BigDecimal currentPeriodSettlementExcludingTaxAmount; + + /** + * 本期审批数量 + */ + private BigDecimal currentPeriodApprovalQuantity; + + /** + * 本期结算金额 + */ + private BigDecimal currentPeriodSettlementAmount; + + /** + * 本期审批金额 + */ + private BigDecimal currentPeriodApprovalAmount; + + /** + * 税率 + */ + private BigDecimal taxRate; + + /** + * 税额 + */ + private BigDecimal taxAmount; + + /** + * WBS + */ + private String wbs; + + /** + * 累计结算金额 + */ + private BigDecimal cumulativeSettlementAmount; + + /** + * CBS + */ + private String cbs; + + /** + * CBS预算总额 + */ + private BigDecimal cbsBudgetTotal; + + /** + * CBS余额 + */ + private BigDecimal cbsBalance; + + /** + * 合同累计签订成本预算金额 + */ + private BigDecimal costBudgetAmount; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + /** + * 创建时间 + */ + private Date createdAt; + + /** + * 更新时间 + */ + private Date updatedAt; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/bo/XzdContractInventoryBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/bo/XzdContractInventoryBo.java new file mode 100644 index 00000000..25fb5e28 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/bo/XzdContractInventoryBo.java @@ -0,0 +1,198 @@ +package org.dromara.xzd.settlement.domain.bo; + +import org.dromara.xzd.settlement.domain.XzdContractInventory; +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.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 合同内(外)清单业务对象 xzd_contract_inventory + * + * @author Lion Li + * @date 2025-10-20 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdContractInventory.class, reverseConvertGenerate = false) +public class XzdContractInventoryBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 合同类型(1、承包合同,2、分包合同,3、采购合同,4综合服务合同) + */ + private String contractType; + + /** + * 类型 1合同外清单 2合同内清单 + */ + private String type; + + /** + * 编码 + */ + private String code; + + /** + * 主表id + */ + private Long primaryMeterId; + + /** + * 合同清单名称 + */ + private String contractListName; + + /** + * 项目名称 + */ + private String project; + + /** + * 资源编码 + */ + private String resourceCode; + + /** + * 资源名称 + */ + private String resourceName; + + /** + * 计量单位 + */ + private String unitOfMeasurement; + + /** + * 规格 + */ + private String specs; + + /** + * 单价 + */ + private BigDecimal unitPrice; + + /** + * 含税单价 + */ + private BigDecimal taxInclusiveUnitPrice; + + /** + * 本期结算不含税金额 + */ + private BigDecimal settlementAmountExcludingTax; + + /** + * 本期结算数量 + */ + private BigDecimal currentPeriodSettlementQuantity; + + /** + * 本期结算百分比 + */ + private BigDecimal bqjsbfb; + + /** + * 本期结算 + */ + private BigDecimal currentPeriodSettlement; + + /** + * 本期审批数量 + */ + private BigDecimal currentPeriodApprovalQuantity; + + /** + * 本期结算金额 + */ + private BigDecimal currentPeriodSettlementAmount; + + /** + * 本期审批金额 + */ + private BigDecimal currentPeriodApprovalAmount; + + /** + * 税率 + */ + private BigDecimal taxRate; + + /** + * 税额 + */ + private BigDecimal taxAmount; + + /** + * WBS + */ + private String wbs; + + /** + * 累计结算金额 + */ + private BigDecimal cumulativeSettlementAmount; + + /** + * 累计结算合同占比 + */ + private BigDecimal ljjshtzb; + + /** + * CBS + */ + private String cbs; + + /** + * CBS预算总额 + */ + private BigDecimal cbsBudgetTotal; + + /** + * CBS余额 + */ + private BigDecimal cbsBalance; + + /** + * 合同累计签订成本预算金额 + */ + private BigDecimal costBudgetAmount; + + /** + * 文件ID + */ + private String fileId; + + /** + * 备注 + */ + private String remark; + + /** + * 审核状态 + */ + private String auditStatus; + + /** + * 创建时间 + */ + private Date createdAt; + + /** + * 更新时间 + */ + private Date updatedAt; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/vo/XzdAlterationInventoryVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/vo/XzdAlterationInventoryVo.java new file mode 100644 index 00000000..f7cfcd5b --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/vo/XzdAlterationInventoryVo.java @@ -0,0 +1,203 @@ +package org.dromara.xzd.settlement.domain.vo; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.settlement.domain.XzdAlterationInventory; +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_alteration_inventory + * + * @author Lion Li + * @date 2025-10-20 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdAlterationInventory.class) +public class XzdAlterationInventoryVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 编码 + */ + @ExcelProperty(value = "编码") + private String code; + + /** + * 合同清单名称 + */ + @ExcelProperty(value = "合同清单名称") + private String contractListName; + + /** + * 项目名称 + */ + @ExcelProperty(value = "项目名称") + private String project; + + /** + * 资源编码 + */ + @ExcelProperty(value = "资源编码") + private String resourceCode; + + /** + * 资源名称 + */ + @ExcelProperty(value = "资源名称") + private String resourceName; + + /** + * 计量单位 + */ + @ExcelProperty(value = "计量单位") + private String unitOfMeasurement; + + /** + * 规格 + */ + @ExcelProperty(value = "规格") + private String specs; + + /** + * 单价 + */ + @ExcelProperty(value = "单价") + private BigDecimal unitPrice; + + /** + * 含税单价 + */ + @ExcelProperty(value = "含税单价") + private BigDecimal taxInclusiveUnitPrice; + + /** + * 本期结算数量 + */ + @ExcelProperty(value = "本期结算数量") + private BigDecimal currentPeriodSettlementQuantity; + + /** + * 本期结算不含税金额 + */ + @ExcelProperty(value = "本期结算不含税金额") + private BigDecimal currentPeriodSettlementExcludingTaxAmount; + + /** + * 本期审批数量 + */ + @ExcelProperty(value = "本期审批数量") + private BigDecimal currentPeriodApprovalQuantity; + + /** + * 本期结算金额 + */ + @ExcelProperty(value = "本期结算金额") + private BigDecimal currentPeriodSettlementAmount; + + /** + * 本期审批金额 + */ + @ExcelProperty(value = "本期审批金额") + private BigDecimal currentPeriodApprovalAmount; + + /** + * 税率 + */ + @ExcelProperty(value = "税率") + private BigDecimal taxRate; + + /** + * 税额 + */ + @ExcelProperty(value = "税额") + private BigDecimal taxAmount; + + /** + * WBS + */ + @ExcelProperty(value = "WBS") + private String wbs; + + /** + * 累计结算金额 + */ + @ExcelProperty(value = "累计结算金额") + private BigDecimal cumulativeSettlementAmount; + + /** + * CBS + */ + @ExcelProperty(value = "CBS") + private String cbs; + + /** + * CBS预算总额 + */ + @ExcelProperty(value = "CBS预算总额") + private BigDecimal cbsBudgetTotal; + + /** + * CBS余额 + */ + @ExcelProperty(value = "CBS余额") + private BigDecimal cbsBalance; + + /** + * 合同累计签订成本预算金额 + */ + @ExcelProperty(value = "合同累计签订成本预算金额") + private BigDecimal costBudgetAmount; + + /** + * 文件ID + */ + @ExcelProperty(value = "文件ID") + private String fileId; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + /** + * 审核状态 + */ + @ExcelProperty(value = "审核状态") + private String auditStatus; + + /** + * 创建时间 + */ + @ExcelProperty(value = "创建时间") + private Date createdAt; + + /** + * 更新时间 + */ + @ExcelProperty(value = "更新时间") + private Date updatedAt; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/vo/XzdContractInventoryVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/vo/XzdContractInventoryVo.java new file mode 100644 index 00000000..c21a2406 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/domain/vo/XzdContractInventoryVo.java @@ -0,0 +1,240 @@ +package org.dromara.xzd.settlement.domain.vo; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.xzd.settlement.domain.XzdContractInventory; +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_contract_inventory + * + * @author Lion Li + * @date 2025-10-20 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdContractInventory.class) +public class XzdContractInventoryVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 合同类型(1、承包合同,2、分包合同,3、采购合同,4综合服务合同) + */ + @ExcelProperty(value = "合同类型", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "1=、承包合同,2、分包合同,3、采购合同,4综合服务合同") + private String contractType; + + /** + * 类型 1合同外清单 2合同内清单 + */ + @ExcelProperty(value = "类型 1合同外清单 2合同内清单") + private String type; + + /** + * 编码 + */ + @ExcelProperty(value = "编码") + private String code; + + /** + * 主表id + */ + @ExcelProperty(value = "主表id") + private Long primaryMeterId; + + /** + * 合同清单名称 + */ + @ExcelProperty(value = "合同清单名称") + private String contractListName; + + /** + * 项目名称 + */ + @ExcelProperty(value = "项目名称") + private String project; + + /** + * 资源编码 + */ + @ExcelProperty(value = "资源编码") + private String resourceCode; + + /** + * 资源名称 + */ + @ExcelProperty(value = "资源名称") + private String resourceName; + + /** + * 计量单位 + */ + @ExcelProperty(value = "计量单位") + private String unitOfMeasurement; + + /** + * 规格 + */ + @ExcelProperty(value = "规格") + private String specs; + + /** + * 单价 + */ + @ExcelProperty(value = "单价") + private BigDecimal unitPrice; + + /** + * 含税单价 + */ + @ExcelProperty(value = "含税单价") + private BigDecimal taxInclusiveUnitPrice; + + /** + * 本期结算不含税金额 + */ + @ExcelProperty(value = "本期结算不含税金额") + private BigDecimal settlementAmountExcludingTax; + + /** + * 本期结算数量 + */ + @ExcelProperty(value = "本期结算数量") + private BigDecimal currentPeriodSettlementQuantity; + + /** + * 本期结算百分比 + */ + @ExcelProperty(value = "本期结算百分比") + private BigDecimal bqjsbfb; + + /** + * 本期结算 + */ + @ExcelProperty(value = "本期结算") + private BigDecimal currentPeriodSettlement; + + /** + * 本期审批数量 + */ + @ExcelProperty(value = "本期审批数量") + private BigDecimal currentPeriodApprovalQuantity; + + /** + * 本期结算金额 + */ + @ExcelProperty(value = "本期结算金额") + private BigDecimal currentPeriodSettlementAmount; + + /** + * 本期审批金额 + */ + @ExcelProperty(value = "本期审批金额") + private BigDecimal currentPeriodApprovalAmount; + + /** + * 税率 + */ + @ExcelProperty(value = "税率") + private BigDecimal taxRate; + + /** + * 税额 + */ + @ExcelProperty(value = "税额") + private BigDecimal taxAmount; + + /** + * WBS + */ + @ExcelProperty(value = "WBS") + private String wbs; + + /** + * 累计结算金额 + */ + @ExcelProperty(value = "累计结算金额") + private BigDecimal cumulativeSettlementAmount; + + /** + * 累计结算合同占比 + */ + @ExcelProperty(value = "累计结算合同占比") + private BigDecimal ljjshtzb; + + /** + * CBS + */ + @ExcelProperty(value = "CBS") + private String cbs; + + /** + * CBS预算总额 + */ + @ExcelProperty(value = "CBS预算总额") + private BigDecimal cbsBudgetTotal; + + /** + * CBS余额 + */ + @ExcelProperty(value = "CBS余额") + private BigDecimal cbsBalance; + + /** + * 合同累计签订成本预算金额 + */ + @ExcelProperty(value = "合同累计签订成本预算金额") + private BigDecimal costBudgetAmount; + + /** + * 文件ID + */ + @ExcelProperty(value = "文件ID") + private String fileId; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + /** + * 审核状态 + */ + @ExcelProperty(value = "审核状态") + private String auditStatus; + + /** + * 创建时间 + */ + @ExcelProperty(value = "创建时间") + private Date createdAt; + + /** + * 更新时间 + */ + @ExcelProperty(value = "更新时间") + private Date updatedAt; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjingdu/domain/SettlementOfSubcontractingContract.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjingdu/domain/SettlementOfSubcontractingContract.java index 664a61c4..1821ea01 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjingdu/domain/SettlementOfSubcontractingContract.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjingdu/domain/SettlementOfSubcontractingContract.java @@ -17,7 +17,7 @@ import java.time.LocalDate; */ @Data @EqualsAndHashCode(callSuper = true) -@TableName("settlement_of_subcontracting_contract") +@TableName("xzd_settlement_of_subcontracting_contract") public class SettlementOfSubcontractingContract extends BaseEntity { @Serial diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjingdu/service/impl/SettlementOfSubcontractingContractServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjingdu/service/impl/SettlementOfSubcontractingContractServiceImpl.java index d14fb947..9bea0483 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjingdu/service/impl/SettlementOfSubcontractingContractServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjingdu/service/impl/SettlementOfSubcontractingContractServiceImpl.java @@ -14,6 +14,7 @@ import org.dromara.common.utils.BatchNumberGenerator; import org.dromara.system.service.impl.SysOssServiceImpl; import org.dromara.xzd.contractManagement.caigoucontractTermination.domain.XzdPurchaseContractSuspend; import org.dromara.xzd.contractManagement.fenbaohetongxinxi.domain.vo.XzdSubcontractVo; +import org.dromara.xzd.contractManagement.fenbaohetongxinxi.service.IXzdSubcontractService; import org.dromara.xzd.domain.*; import org.dromara.xzd.domain.dto.QuerCorrespondentDto; import org.dromara.xzd.service.IXzdCorrespondentList; @@ -57,6 +58,8 @@ public class SettlementOfSubcontractingContractServiceImpl extends ServiceImpl byid = iXzdCorrespondentList.getCustomerByid(item.getSettlementUnit()); if (byid!=null){ diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjungong/domain/vo/SettlementOfSubcontractingCompletionVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjungong/domain/vo/SettlementOfSubcontractingCompletionVo.java index fa2f84b5..48010507 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjungong/domain/vo/SettlementOfSubcontractingCompletionVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjungong/domain/vo/SettlementOfSubcontractingCompletionVo.java @@ -60,6 +60,12 @@ public class SettlementOfSubcontractingCompletionVo implements Serializable { @ExcelProperty(value = "合同编号") private Long contractCode; + /** + * 合同编号名称 + */ + @ExcelProperty(value = "合同编号名称") + private String contractCodeName; + /** * 合同名称 */ diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjungong/service/impl/SettlementOfSubcontractingCompletionServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjungong/service/impl/SettlementOfSubcontractingCompletionServiceImpl.java index d928b0c1..7531e6c7 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjungong/service/impl/SettlementOfSubcontractingCompletionServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongjungong/service/impl/SettlementOfSubcontractingCompletionServiceImpl.java @@ -13,6 +13,7 @@ import lombok.RequiredArgsConstructor; import org.dromara.common.utils.BatchNumberGenerator; import org.dromara.system.service.impl.SysOssServiceImpl; import org.dromara.xzd.contractManagement.fenbaohetongxinxi.domain.vo.XzdSubcontractVo; +import org.dromara.xzd.contractManagement.fenbaohetongxinxi.service.IXzdSubcontractService; import org.dromara.xzd.domain.*; import org.dromara.xzd.domain.dto.QuerCorrespondentDto; import org.dromara.xzd.domain.vo.XzdSettlementRulesVo; @@ -69,6 +70,9 @@ public class SettlementOfSubcontractingCompletionServiceImpl extends ServiceImpl private final IXzdContractClauseService iXzdContractClauseService; + + private final IXzdSubcontractService iXzdSubcontractService; + /** * 查询分包合同竣工结算 * @@ -111,6 +115,11 @@ public class SettlementOfSubcontractingCompletionServiceImpl extends ServiceImpl item.setEngineeringProjectName(projectName); } } + // 分包合同编码 + XzdSubcontractVo xzdSubcontractVo = iXzdSubcontractService.queryById(item.getContractCode()); + if (xzdSubcontractVo != null){ + item.setContractCodeName(xzdSubcontractVo.getContractCode()); + } //甲方单位(客户信息列表) R byid = iXzdCorrespondentList.getCustomerByid(item.getPartyAUnit()); if (byid!=null){ diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/domain/SettlementOfSubcontractingAdjustment.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/domain/SettlementOfSubcontractingAdjustment.java index d1d29195..0a1a638d 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/domain/SettlementOfSubcontractingAdjustment.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/domain/SettlementOfSubcontractingAdjustment.java @@ -17,7 +17,7 @@ import java.time.LocalDate; */ @Data @EqualsAndHashCode(callSuper = true) -@TableName("settlement_of_subcontracting_adjustment") +@TableName("xzd_settlement_of_subcontracting_adjustment") public class SettlementOfSubcontractingAdjustment extends BaseEntity { @Serial diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/domain/vo/SettlementOfSubcontractingAdjustmentVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/domain/vo/SettlementOfSubcontractingAdjustmentVo.java index 9a5a3404..b213e0f7 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/domain/vo/SettlementOfSubcontractingAdjustmentVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/domain/vo/SettlementOfSubcontractingAdjustmentVo.java @@ -60,6 +60,13 @@ public class SettlementOfSubcontractingAdjustmentVo implements Serializable { @ExcelProperty(value = "决算单编号") private Long finalAccountNo; + + /** + * 决算单编号名称 + */ + @ExcelProperty(value = "决算单编号名称") + private String finalAccountNoName; + /** * 合同名称 */ diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/service/impl/SettlementOfSubcontractingAdjustmentServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/service/impl/SettlementOfSubcontractingAdjustmentServiceImpl.java index 41b313d0..6bab506c 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/service/impl/SettlementOfSubcontractingAdjustmentServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/fenbaohetongtiaozheng/service/impl/SettlementOfSubcontractingAdjustmentServiceImpl.java @@ -13,6 +13,7 @@ import org.dromara.common.utils.BatchNumberGenerator; import org.dromara.system.service.impl.SysOssServiceImpl; import org.dromara.xzd.settlement.fenbaohetongjungong.domain.SettlementOfSubcontractingCompletion; import org.dromara.xzd.settlement.fenbaohetongjungong.domain.vo.SettlementOfSubcontractingCompletionVo; +import org.dromara.xzd.settlement.fenbaohetongjungong.service.ISettlementOfSubcontractingCompletionService; import org.dromara.xzd.utilS.AreaUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -41,6 +42,7 @@ public class SettlementOfSubcontractingAdjustmentServiceImpl extends ServiceImpl private final SettlementOfSubcontractingAdjustmentMapper baseMapper; private final AreaUtil areaUtil; + private final ISettlementOfSubcontractingCompletionService iSettlementOfSubcontractingCompletionService; @Autowired private SysOssServiceImpl sysOssService; @@ -53,7 +55,20 @@ public class SettlementOfSubcontractingAdjustmentServiceImpl extends ServiceImpl */ @Override public SettlementOfSubcontractingAdjustmentVo queryById(Long id){ - return baseMapper.selectVoById(id); + SettlementOfSubcontractingAdjustmentVo vo = baseMapper.selectVoById(id); + getName(vo); + return vo; + } + + private void getName(SettlementOfSubcontractingAdjustmentVo vo) { + if(vo != null){ + SettlementOfSubcontractingCompletionVo temp = iSettlementOfSubcontractingCompletionService.queryById(vo.getFinalAccountNo()); + if (temp != null) { + vo.setFinalAccountNoName(temp.getDocumentCode()); + } + + } + } /** @@ -67,9 +82,12 @@ public class SettlementOfSubcontractingAdjustmentServiceImpl extends ServiceImpl public TableDataInfo queryPageList(SettlementOfSubcontractingAdjustmentBo bo, PageQuery pageQuery) { LambdaQueryWrapper lqw = buildQueryWrapper(bo); Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + result.getRecords().forEach(this::getName); return TableDataInfo.build(result); } + + /** * 查询符合条件的分包合同竣工结算调整列表 * diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/mapper/XzdAlterationInventoryMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/mapper/XzdAlterationInventoryMapper.java new file mode 100644 index 00000000..c1d00c80 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/mapper/XzdAlterationInventoryMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.settlement.mapper; + +import org.dromara.xzd.settlement.domain.XzdAlterationInventory; +import org.dromara.xzd.settlement.domain.vo.XzdAlterationInventoryVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 变更增加清单Mapper接口 + * + * @author Lion Li + * @date 2025-10-20 + */ +public interface XzdAlterationInventoryMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/mapper/XzdContractInventoryMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/mapper/XzdContractInventoryMapper.java new file mode 100644 index 00000000..467e0f45 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/mapper/XzdContractInventoryMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.settlement.mapper; + +import org.dromara.xzd.settlement.domain.XzdContractInventory; +import org.dromara.xzd.settlement.domain.vo.XzdContractInventoryVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 合同内(外)清单Mapper接口 + * + * @author Lion Li + * @date 2025-10-20 + */ +public interface XzdContractInventoryMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/service/IXzdAlterationInventoryService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/service/IXzdAlterationInventoryService.java new file mode 100644 index 00000000..c03e8952 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/service/IXzdAlterationInventoryService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.settlement.service; + +import org.dromara.xzd.settlement.domain.vo.XzdAlterationInventoryVo; +import org.dromara.xzd.settlement.domain.bo.XzdAlterationInventoryBo; +import org.dromara.xzd.settlement.domain.XzdAlterationInventory; +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-20 + */ +public interface IXzdAlterationInventoryService extends IService{ + + /** + * 查询变更增加清单 + * + * @param id 主键 + * @return 变更增加清单 + */ + XzdAlterationInventoryVo queryById(Long id); + + /** + * 分页查询变更增加清单列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 变更增加清单分页列表 + */ + TableDataInfo queryPageList(XzdAlterationInventoryBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的变更增加清单列表 + * + * @param bo 查询条件 + * @return 变更增加清单列表 + */ + List queryList(XzdAlterationInventoryBo bo); + + /** + * 新增变更增加清单 + * + * @param bo 变更增加清单 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdAlterationInventoryBo bo); + + /** + * 修改变更增加清单 + * + * @param bo 变更增加清单 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdAlterationInventoryBo 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/settlement/service/IXzdContractInventoryService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/service/IXzdContractInventoryService.java new file mode 100644 index 00000000..5fd6e600 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/service/IXzdContractInventoryService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.settlement.service; + +import org.dromara.xzd.settlement.domain.vo.XzdContractInventoryVo; +import org.dromara.xzd.settlement.domain.bo.XzdContractInventoryBo; +import org.dromara.xzd.settlement.domain.XzdContractInventory; +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-20 + */ +public interface IXzdContractInventoryService extends IService{ + + /** + * 查询合同内(外)清单 + * + * @param id 主键 + * @return 合同内(外)清单 + */ + XzdContractInventoryVo queryById(Long id); + + /** + * 分页查询合同内(外)清单列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 合同内(外)清单分页列表 + */ + TableDataInfo queryPageList(XzdContractInventoryBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的合同内(外)清单列表 + * + * @param bo 查询条件 + * @return 合同内(外)清单列表 + */ + List queryList(XzdContractInventoryBo bo); + + /** + * 新增合同内(外)清单 + * + * @param bo 合同内(外)清单 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdContractInventoryBo bo); + + /** + * 修改合同内(外)清单 + * + * @param bo 合同内(外)清单 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdContractInventoryBo 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/settlement/service/impl/XzdAlterationInventoryServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/service/impl/XzdAlterationInventoryServiceImpl.java new file mode 100644 index 00000000..a966fc1d --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/service/impl/XzdAlterationInventoryServiceImpl.java @@ -0,0 +1,156 @@ +package org.dromara.xzd.settlement.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.settlement.domain.bo.XzdAlterationInventoryBo; +import org.dromara.xzd.settlement.domain.vo.XzdAlterationInventoryVo; +import org.dromara.xzd.settlement.domain.XzdAlterationInventory; +import org.dromara.xzd.settlement.mapper.XzdAlterationInventoryMapper; +import org.dromara.xzd.settlement.service.IXzdAlterationInventoryService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 变更增加清单Service业务层处理 + * + * @author Lion Li + * @date 2025-10-20 + */ +@RequiredArgsConstructor +@Service +public class XzdAlterationInventoryServiceImpl extends ServiceImpl implements IXzdAlterationInventoryService { + + private final XzdAlterationInventoryMapper baseMapper; + + /** + * 查询变更增加清单 + * + * @param id 主键 + * @return 变更增加清单 + */ + @Override + public XzdAlterationInventoryVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询变更增加清单列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 变更增加清单分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdAlterationInventoryBo 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(XzdAlterationInventoryBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdAlterationInventoryBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdAlterationInventory::getId); + lqw.eq(StringUtils.isNotBlank(bo.getCode()), XzdAlterationInventory::getCode, bo.getCode()); + lqw.like(StringUtils.isNotBlank(bo.getContractListName()), XzdAlterationInventory::getContractListName, bo.getContractListName()); + lqw.eq(StringUtils.isNotBlank(bo.getProject()), XzdAlterationInventory::getProject, bo.getProject()); + lqw.eq(StringUtils.isNotBlank(bo.getResourceCode()), XzdAlterationInventory::getResourceCode, bo.getResourceCode()); + lqw.like(StringUtils.isNotBlank(bo.getResourceName()), XzdAlterationInventory::getResourceName, bo.getResourceName()); + lqw.eq(StringUtils.isNotBlank(bo.getUnitOfMeasurement()), XzdAlterationInventory::getUnitOfMeasurement, bo.getUnitOfMeasurement()); + lqw.eq(StringUtils.isNotBlank(bo.getSpecs()), XzdAlterationInventory::getSpecs, bo.getSpecs()); + lqw.eq(bo.getUnitPrice() != null, XzdAlterationInventory::getUnitPrice, bo.getUnitPrice()); + lqw.eq(bo.getTaxInclusiveUnitPrice() != null, XzdAlterationInventory::getTaxInclusiveUnitPrice, bo.getTaxInclusiveUnitPrice()); + lqw.eq(bo.getCurrentPeriodSettlementQuantity() != null, XzdAlterationInventory::getCurrentPeriodSettlementQuantity, bo.getCurrentPeriodSettlementQuantity()); + lqw.eq(bo.getCurrentPeriodSettlementExcludingTaxAmount() != null, XzdAlterationInventory::getCurrentPeriodSettlementExcludingTaxAmount, bo.getCurrentPeriodSettlementExcludingTaxAmount()); + lqw.eq(bo.getCurrentPeriodApprovalQuantity() != null, XzdAlterationInventory::getCurrentPeriodApprovalQuantity, bo.getCurrentPeriodApprovalQuantity()); + lqw.eq(bo.getCurrentPeriodSettlementAmount() != null, XzdAlterationInventory::getCurrentPeriodSettlementAmount, bo.getCurrentPeriodSettlementAmount()); + lqw.eq(bo.getCurrentPeriodApprovalAmount() != null, XzdAlterationInventory::getCurrentPeriodApprovalAmount, bo.getCurrentPeriodApprovalAmount()); + lqw.eq(bo.getTaxRate() != null, XzdAlterationInventory::getTaxRate, bo.getTaxRate()); + lqw.eq(bo.getTaxAmount() != null, XzdAlterationInventory::getTaxAmount, bo.getTaxAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getWbs()), XzdAlterationInventory::getWbs, bo.getWbs()); + lqw.eq(bo.getCumulativeSettlementAmount() != null, XzdAlterationInventory::getCumulativeSettlementAmount, bo.getCumulativeSettlementAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getCbs()), XzdAlterationInventory::getCbs, bo.getCbs()); + lqw.eq(bo.getCbsBudgetTotal() != null, XzdAlterationInventory::getCbsBudgetTotal, bo.getCbsBudgetTotal()); + lqw.eq(bo.getCbsBalance() != null, XzdAlterationInventory::getCbsBalance, bo.getCbsBalance()); + lqw.eq(bo.getCostBudgetAmount() != null, XzdAlterationInventory::getCostBudgetAmount, bo.getCostBudgetAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdAlterationInventory::getFileId, bo.getFileId()); + lqw.eq(StringUtils.isNotBlank(bo.getAuditStatus()), XzdAlterationInventory::getAuditStatus, bo.getAuditStatus()); + lqw.eq(bo.getCreatedAt() != null, XzdAlterationInventory::getCreatedAt, bo.getCreatedAt()); + lqw.eq(bo.getUpdatedAt() != null, XzdAlterationInventory::getUpdatedAt, bo.getUpdatedAt()); + return lqw; + } + + /** + * 新增变更增加清单 + * + * @param bo 变更增加清单 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdAlterationInventoryBo bo) { + XzdAlterationInventory add = MapstructUtils.convert(bo, XzdAlterationInventory.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改变更增加清单 + * + * @param bo 变更增加清单 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdAlterationInventoryBo bo) { + XzdAlterationInventory update = MapstructUtils.convert(bo, XzdAlterationInventory.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdAlterationInventory 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/settlement/service/impl/XzdContractInventoryServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/service/impl/XzdContractInventoryServiceImpl.java new file mode 100644 index 00000000..d509a0bd --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/settlement/service/impl/XzdContractInventoryServiceImpl.java @@ -0,0 +1,162 @@ +package org.dromara.xzd.settlement.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.settlement.domain.bo.XzdContractInventoryBo; +import org.dromara.xzd.settlement.domain.vo.XzdContractInventoryVo; +import org.dromara.xzd.settlement.domain.XzdContractInventory; +import org.dromara.xzd.settlement.mapper.XzdContractInventoryMapper; +import org.dromara.xzd.settlement.service.IXzdContractInventoryService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 合同内(外)清单Service业务层处理 + * + * @author Lion Li + * @date 2025-10-20 + */ +@RequiredArgsConstructor +@Service +public class XzdContractInventoryServiceImpl extends ServiceImpl implements IXzdContractInventoryService { + + private final XzdContractInventoryMapper baseMapper; + + /** + * 查询合同内(外)清单 + * + * @param id 主键 + * @return 合同内(外)清单 + */ + @Override + public XzdContractInventoryVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询合同内(外)清单列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 合同内(外)清单分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdContractInventoryBo 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(XzdContractInventoryBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdContractInventoryBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdContractInventory::getId); + lqw.eq(StringUtils.isNotBlank(bo.getContractType()), XzdContractInventory::getContractType, bo.getContractType()); + lqw.eq(StringUtils.isNotBlank(bo.getType()), XzdContractInventory::getType, bo.getType()); + lqw.eq(StringUtils.isNotBlank(bo.getCode()), XzdContractInventory::getCode, bo.getCode()); + lqw.eq(bo.getPrimaryMeterId() != null, XzdContractInventory::getPrimaryMeterId, bo.getPrimaryMeterId()); + lqw.like(StringUtils.isNotBlank(bo.getContractListName()), XzdContractInventory::getContractListName, bo.getContractListName()); + lqw.eq(StringUtils.isNotBlank(bo.getProject()), XzdContractInventory::getProject, bo.getProject()); + lqw.eq(StringUtils.isNotBlank(bo.getResourceCode()), XzdContractInventory::getResourceCode, bo.getResourceCode()); + lqw.like(StringUtils.isNotBlank(bo.getResourceName()), XzdContractInventory::getResourceName, bo.getResourceName()); + lqw.eq(StringUtils.isNotBlank(bo.getUnitOfMeasurement()), XzdContractInventory::getUnitOfMeasurement, bo.getUnitOfMeasurement()); + lqw.eq(StringUtils.isNotBlank(bo.getSpecs()), XzdContractInventory::getSpecs, bo.getSpecs()); + lqw.eq(bo.getUnitPrice() != null, XzdContractInventory::getUnitPrice, bo.getUnitPrice()); + lqw.eq(bo.getTaxInclusiveUnitPrice() != null, XzdContractInventory::getTaxInclusiveUnitPrice, bo.getTaxInclusiveUnitPrice()); + lqw.eq(bo.getSettlementAmountExcludingTax() != null, XzdContractInventory::getSettlementAmountExcludingTax, bo.getSettlementAmountExcludingTax()); + lqw.eq(bo.getCurrentPeriodSettlementQuantity() != null, XzdContractInventory::getCurrentPeriodSettlementQuantity, bo.getCurrentPeriodSettlementQuantity()); + lqw.eq(bo.getBqjsbfb() != null, XzdContractInventory::getBqjsbfb, bo.getBqjsbfb()); + lqw.eq(bo.getCurrentPeriodSettlement() != null, XzdContractInventory::getCurrentPeriodSettlement, bo.getCurrentPeriodSettlement()); + lqw.eq(bo.getCurrentPeriodApprovalQuantity() != null, XzdContractInventory::getCurrentPeriodApprovalQuantity, bo.getCurrentPeriodApprovalQuantity()); + lqw.eq(bo.getCurrentPeriodSettlementAmount() != null, XzdContractInventory::getCurrentPeriodSettlementAmount, bo.getCurrentPeriodSettlementAmount()); + lqw.eq(bo.getCurrentPeriodApprovalAmount() != null, XzdContractInventory::getCurrentPeriodApprovalAmount, bo.getCurrentPeriodApprovalAmount()); + lqw.eq(bo.getTaxRate() != null, XzdContractInventory::getTaxRate, bo.getTaxRate()); + lqw.eq(bo.getTaxAmount() != null, XzdContractInventory::getTaxAmount, bo.getTaxAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getWbs()), XzdContractInventory::getWbs, bo.getWbs()); + lqw.eq(bo.getCumulativeSettlementAmount() != null, XzdContractInventory::getCumulativeSettlementAmount, bo.getCumulativeSettlementAmount()); + lqw.eq(bo.getLjjshtzb() != null, XzdContractInventory::getLjjshtzb, bo.getLjjshtzb()); + lqw.eq(StringUtils.isNotBlank(bo.getCbs()), XzdContractInventory::getCbs, bo.getCbs()); + lqw.eq(bo.getCbsBudgetTotal() != null, XzdContractInventory::getCbsBudgetTotal, bo.getCbsBudgetTotal()); + lqw.eq(bo.getCbsBalance() != null, XzdContractInventory::getCbsBalance, bo.getCbsBalance()); + lqw.eq(bo.getCostBudgetAmount() != null, XzdContractInventory::getCostBudgetAmount, bo.getCostBudgetAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdContractInventory::getFileId, bo.getFileId()); + lqw.eq(StringUtils.isNotBlank(bo.getAuditStatus()), XzdContractInventory::getAuditStatus, bo.getAuditStatus()); + lqw.eq(bo.getCreatedAt() != null, XzdContractInventory::getCreatedAt, bo.getCreatedAt()); + lqw.eq(bo.getUpdatedAt() != null, XzdContractInventory::getUpdatedAt, bo.getUpdatedAt()); + return lqw; + } + + /** + * 新增合同内(外)清单 + * + * @param bo 合同内(外)清单 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdContractInventoryBo bo) { + XzdContractInventory add = MapstructUtils.convert(bo, XzdContractInventory.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改合同内(外)清单 + * + * @param bo 合同内(外)清单 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdContractInventoryBo bo) { + XzdContractInventory update = MapstructUtils.convert(bo, XzdContractInventory.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdContractInventory entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除合同内(外)清单信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +}