收款与付款-采购、综合服务付款初始化

This commit is contained in:
2025-10-16 14:40:31 +08:00
parent 6808057111
commit bca9745e60
36 changed files with 3466 additions and 1 deletions

View File

@ -0,0 +1,105 @@
package org.dromara.xzd.paymentsReceipts.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.paymentsReceipts.domain.vo.XzdSfkCaigouFkVo;
import org.dromara.xzd.paymentsReceipts.domain.bo.XzdSfkCaigouFkBo;
import org.dromara.xzd.paymentsReceipts.service.IXzdSfkCaigouFkService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 采购合同付款
*
* @author Lion Li
* @date 2025-10-16
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/paymentsReceipts/sfkCaigouFk")
public class XzdSfkCaigouFkController extends BaseController {
private final IXzdSfkCaigouFkService xzdSfkCaigouFkService;
/**
* 查询采购合同付款列表
*/
@SaCheckPermission("paymentsReceipts:sfkCaigouFk:list")
@GetMapping("/list")
public TableDataInfo<XzdSfkCaigouFkVo> list(XzdSfkCaigouFkBo bo, PageQuery pageQuery) {
return xzdSfkCaigouFkService.queryPageList(bo, pageQuery);
}
/**
* 导出采购合同付款列表
*/
@SaCheckPermission("paymentsReceipts:sfkCaigouFk:export")
@Log(title = "采购合同付款", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(XzdSfkCaigouFkBo bo, HttpServletResponse response) {
List<XzdSfkCaigouFkVo> list = xzdSfkCaigouFkService.queryList(bo);
ExcelUtil.exportExcel(list, "采购合同付款", XzdSfkCaigouFkVo.class, response);
}
/**
* 获取采购合同付款详细信息
*
* @param id 主键
*/
@SaCheckPermission("paymentsReceipts:sfkCaigouFk:query")
@GetMapping("/{id}")
public R<XzdSfkCaigouFkVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(xzdSfkCaigouFkService.queryById(id));
}
/**
* 新增采购合同付款
*/
@SaCheckPermission("paymentsReceipts:sfkCaigouFk:add")
@Log(title = "采购合同付款", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody XzdSfkCaigouFkBo bo) {
return toAjax(xzdSfkCaigouFkService.insertByBo(bo));
}
/**
* 修改采购合同付款
*/
@SaCheckPermission("paymentsReceipts:sfkCaigouFk:edit")
@Log(title = "采购合同付款", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody XzdSfkCaigouFkBo bo) {
return toAjax(xzdSfkCaigouFkService.updateByBo(bo));
}
/**
* 删除采购合同付款
*
* @param ids 主键串
*/
@SaCheckPermission("paymentsReceipts:sfkCaigouFk:remove")
@Log(title = "采购合同付款", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(xzdSfkCaigouFkService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,105 @@
package org.dromara.xzd.paymentsReceipts.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.paymentsReceipts.domain.vo.XzdSfkFapiaoVo;
import org.dromara.xzd.paymentsReceipts.domain.bo.XzdSfkFapiaoBo;
import org.dromara.xzd.paymentsReceipts.service.IXzdSfkFapiaoService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 收款与付款-发票明细
*
* @author Lion Li
* @date 2025-10-16
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/paymentsReceipts/sfkFapiao")
public class XzdSfkFapiaoController extends BaseController {
private final IXzdSfkFapiaoService xzdSfkFapiaoService;
/**
* 查询收款与付款-发票明细列表
*/
@SaCheckPermission("paymentsReceipts:sfkFapiao:list")
@GetMapping("/list")
public TableDataInfo<XzdSfkFapiaoVo> list(XzdSfkFapiaoBo bo, PageQuery pageQuery) {
return xzdSfkFapiaoService.queryPageList(bo, pageQuery);
}
/**
* 导出收款与付款-发票明细列表
*/
@SaCheckPermission("paymentsReceipts:sfkFapiao:export")
@Log(title = "收款与付款-发票明细", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(XzdSfkFapiaoBo bo, HttpServletResponse response) {
List<XzdSfkFapiaoVo> list = xzdSfkFapiaoService.queryList(bo);
ExcelUtil.exportExcel(list, "收款与付款-发票明细", XzdSfkFapiaoVo.class, response);
}
/**
* 获取收款与付款-发票明细详细信息
*
* @param id 主键
*/
@SaCheckPermission("paymentsReceipts:sfkFapiao:query")
@GetMapping("/{id}")
public R<XzdSfkFapiaoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(xzdSfkFapiaoService.queryById(id));
}
/**
* 新增收款与付款-发票明细
*/
@SaCheckPermission("paymentsReceipts:sfkFapiao:add")
@Log(title = "收款与付款-发票明细", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody XzdSfkFapiaoBo bo) {
return toAjax(xzdSfkFapiaoService.insertByBo(bo));
}
/**
* 修改收款与付款-发票明细
*/
@SaCheckPermission("paymentsReceipts:sfkFapiao:edit")
@Log(title = "收款与付款-发票明细", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody XzdSfkFapiaoBo bo) {
return toAjax(xzdSfkFapiaoService.updateByBo(bo));
}
/**
* 删除收款与付款-发票明细
*
* @param ids 主键串
*/
@SaCheckPermission("paymentsReceipts:sfkFapiao:remove")
@Log(title = "收款与付款-发票明细", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(xzdSfkFapiaoService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,105 @@
package org.dromara.xzd.paymentsReceipts.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.paymentsReceipts.domain.vo.XzdSfkFukuanVo;
import org.dromara.xzd.paymentsReceipts.domain.bo.XzdSfkFukuanBo;
import org.dromara.xzd.paymentsReceipts.service.IXzdSfkFukuanService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 收款与付款-付款明细
*
* @author Lion Li
* @date 2025-10-16
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/paymentsReceipts/sfkFukuan")
public class XzdSfkFukuanController extends BaseController {
private final IXzdSfkFukuanService xzdSfkFukuanService;
/**
* 查询收款与付款-付款明细列表
*/
@SaCheckPermission("paymentsReceipts:sfkFukuan:list")
@GetMapping("/list")
public TableDataInfo<XzdSfkFukuanVo> list(XzdSfkFukuanBo bo, PageQuery pageQuery) {
return xzdSfkFukuanService.queryPageList(bo, pageQuery);
}
/**
* 导出收款与付款-付款明细列表
*/
@SaCheckPermission("paymentsReceipts:sfkFukuan:export")
@Log(title = "收款与付款-付款明细", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(XzdSfkFukuanBo bo, HttpServletResponse response) {
List<XzdSfkFukuanVo> list = xzdSfkFukuanService.queryList(bo);
ExcelUtil.exportExcel(list, "收款与付款-付款明细", XzdSfkFukuanVo.class, response);
}
/**
* 获取收款与付款-付款明细详细信息
*
* @param id 主键
*/
@SaCheckPermission("paymentsReceipts:sfkFukuan:query")
@GetMapping("/{id}")
public R<XzdSfkFukuanVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(xzdSfkFukuanService.queryById(id));
}
/**
* 新增收款与付款-付款明细
*/
@SaCheckPermission("paymentsReceipts:sfkFukuan:add")
@Log(title = "收款与付款-付款明细", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody XzdSfkFukuanBo bo) {
return toAjax(xzdSfkFukuanService.insertByBo(bo));
}
/**
* 修改收款与付款-付款明细
*/
@SaCheckPermission("paymentsReceipts:sfkFukuan:edit")
@Log(title = "收款与付款-付款明细", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody XzdSfkFukuanBo bo) {
return toAjax(xzdSfkFukuanService.updateByBo(bo));
}
/**
* 删除收款与付款-付款明细
*
* @param ids 主键串
*/
@SaCheckPermission("paymentsReceipts:sfkFukuan:remove")
@Log(title = "收款与付款-付款明细", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(xzdSfkFukuanService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,105 @@
package org.dromara.xzd.paymentsReceipts.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.paymentsReceipts.domain.vo.XzdSfkZonhefuwuFkVo;
import org.dromara.xzd.paymentsReceipts.domain.bo.XzdSfkZonhefuwuFkBo;
import org.dromara.xzd.paymentsReceipts.service.IXzdSfkZonhefuwuFkService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 综合服务合同付款
*
* @author Lion Li
* @date 2025-10-16
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/paymentsReceipts/sfkZonhefuwuFk")
public class XzdSfkZonhefuwuFkController extends BaseController {
private final IXzdSfkZonhefuwuFkService xzdSfkZonhefuwuFkService;
/**
* 查询综合服务合同付款列表
*/
@SaCheckPermission("paymentsReceipts:sfkZonhefuwuFk:list")
@GetMapping("/list")
public TableDataInfo<XzdSfkZonhefuwuFkVo> list(XzdSfkZonhefuwuFkBo bo, PageQuery pageQuery) {
return xzdSfkZonhefuwuFkService.queryPageList(bo, pageQuery);
}
/**
* 导出综合服务合同付款列表
*/
@SaCheckPermission("paymentsReceipts:sfkZonhefuwuFk:export")
@Log(title = "综合服务合同付款", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(XzdSfkZonhefuwuFkBo bo, HttpServletResponse response) {
List<XzdSfkZonhefuwuFkVo> list = xzdSfkZonhefuwuFkService.queryList(bo);
ExcelUtil.exportExcel(list, "综合服务合同付款", XzdSfkZonhefuwuFkVo.class, response);
}
/**
* 获取综合服务合同付款详细信息
*
* @param id 主键
*/
@SaCheckPermission("paymentsReceipts:sfkZonhefuwuFk:query")
@GetMapping("/{id}")
public R<XzdSfkZonhefuwuFkVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(xzdSfkZonhefuwuFkService.queryById(id));
}
/**
* 新增综合服务合同付款
*/
@SaCheckPermission("paymentsReceipts:sfkZonhefuwuFk:add")
@Log(title = "综合服务合同付款", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody XzdSfkZonhefuwuFkBo bo) {
return toAjax(xzdSfkZonhefuwuFkService.insertByBo(bo));
}
/**
* 修改综合服务合同付款
*/
@SaCheckPermission("paymentsReceipts:sfkZonhefuwuFk:edit")
@Log(title = "综合服务合同付款", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody XzdSfkZonhefuwuFkBo bo) {
return toAjax(xzdSfkZonhefuwuFkService.updateByBo(bo));
}
/**
* 删除综合服务合同付款
*
* @param ids 主键串
*/
@SaCheckPermission("paymentsReceipts:sfkZonhefuwuFk:remove")
@Log(title = "综合服务合同付款", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(xzdSfkZonhefuwuFkService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,223 @@
package org.dromara.xzd.paymentsReceipts.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.io.Serial;
import java.time.LocalDate;
/**
* 采购合同付款对象 xzd_sfk_caigou_fk
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_sfk_caigou_fk")
public class XzdSfkCaigouFk extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID自增
*/
@TableId(value = "id")
private Long id;
/**
* 单据编码(带*,必填)
*/
private String docCode;
/**
* 标题(带*,必填)
*/
private String title;
/**
* 单据日期(带*,必填)
*/
private LocalDate docDate;
/**
* 合同编码(带*,必填)
*/
private Long contractCode;
/**
* 合同名称
*/
private String contractName;
/**
* 付款性质(带*,必填)
*/
private Long paymentProperty;
/**
* 支出合同金额
*/
private BigDecimal expendContractAmount;
/**
* 本期审批金额
*/
private BigDecimal currentApproveAmount;
/**
* 项目
*/
private Long project;
/**
* 付款单位
*/
private Long paymentUnit;
/**
* 收款单位(带*,必填)
*/
private Long receiptUnit;
/**
* 收款银行
*/
private Long receiptBank;
/**
* 收款银行账号
*/
private String receiptBankAccount;
/**
* 统计周期(带*,必填)
*/
private String statCycle;
/**
* 是否是研发类
*/
private Long isYanfa;
/**
* 税率(带*,必填)
*/
private BigDecimal taxRate;
/**
* 项目大类
*/
private String projectCategory;
/**
* 备注
*/
private String remark;
/**
* 本期进度支付金额
*/
private BigDecimal currentProgressPayment;
/**
* 累计进度支付金额
*/
private BigDecimal totalProgressPayment;
/**
* 预付款金额
*/
private BigDecimal advancePayment;
/**
* 累计支付金额
*/
private BigDecimal totalPaymentAmount;
/**
* 本期进度应付金额(带*,必填)
*/
private BigDecimal currentProgressPayable;
/**
* 累计进度应付金额
*/
private BigDecimal totalProgressPayable;
/**
* 预付款扣回金额
*/
private BigDecimal advanceDeductionAmount;
/**
* 累计进度结算占合同比例(%
*/
private BigDecimal totalProgressSettlementRatio;
/**
* 本期进度支付占本期进度应付(%
*/
private BigDecimal currentPaymentRatio;
/**
* 累计进度支付占累计进度应付(%
*/
private BigDecimal totalPaymentRatio;
/**
* 预付款剩余未抵扣金额
*/
private BigDecimal advanceRemainingDeduction;
/**
* 累计支付占合同比例(%
*/
private BigDecimal totalPaymentContractRatio;
/**
* 剩余进度应付未付金额
*/
private BigDecimal remainingProgressPayable;
/**
* 累计进度结算金额
*/
private BigDecimal totalProgressSettlementAmount;
/**
* 实时刷新0=未勾选1=勾选)
*/
private Long realTimeRefresh;
/**
* 合同含税金额
*/
private BigDecimal contractTaxInclAmount;
/**
* 合同累计实际付款金额
*/
private BigDecimal contractTotalActualPayment;
/**
* 累计结算金额
*/
private BigDecimal totalSettlementAmount;
/**
* 单据引用
*/
private String documentReference;
/**
* 文件ID
*/
private String fileId;
}

View File

@ -0,0 +1,93 @@
package org.dromara.xzd.paymentsReceipts.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.io.Serial;
import java.time.LocalDate;
/**
* 收款与付款-发票明细对象 xzd_sfk_fapiao
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_sfk_fapiao")
public class XzdSfkFapiao extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID自增
*/
@TableId(value = "id")
private Long id;
/**
* 关联主单据的ID外键指向付款单/结算单等主表)
*/
private Long mainDocumentId;
/**
* 发票类型
*/
private String invoiceType;
/**
* 发票号码
*/
private String invoiceNumber;
/**
* 发票代码
*/
private String invoiceCode;
/**
* 开票日期
*/
private LocalDate invoiceDate;
/**
* 金额(不含税)
*/
private BigDecimal amount;
/**
* 税额
*/
private BigDecimal taxAmount;
/**
* 价税合计
*/
private BigDecimal totalAmountWithTax;
/**
* 引用金额
*/
private BigDecimal referenceAmount;
/**
* 备注
*/
private String remark;
/**
* 单据引用
*/
private String documentReference;
/**
* 文件ID
*/
private String fileId;
}

View File

@ -0,0 +1,88 @@
package org.dromara.xzd.paymentsReceipts.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.io.Serial;
import java.time.LocalDate;
/**
* 收款与付款-付款明细对象 xzd_sfk_fukuan
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_sfk_fukuan")
public class XzdSfkFukuan extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private Long id;
/**
* 关联主单据的ID外键指向付款单等主表
*/
private Long mainDocumentId;
/**
* 类型(带*,必填)
*/
private String type;
/**
* 方向
*/
private String direction;
/**
* 款项类别
*/
private String itemCategory;
/**
* 款项属性(带*,必填)
*/
private String itemProperty;
/**
* 本期申请金额
*/
private BigDecimal currentApplyAmount;
/**
* 本期审批金额(带*,必填)
*/
private BigDecimal currentApproveAmount;
/**
* 归还日期
*/
private LocalDate returnDate;
/**
* 备注
*/
private String remark;
/**
* 单据引用
*/
private String documentReference;
/**
* 文件ID
*/
private String fileId;
}

View File

@ -0,0 +1,218 @@
package org.dromara.xzd.paymentsReceipts.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.io.Serial;
import java.time.LocalDate;
/**
* 综合服务合同付款对象 xzd_sfk_zonhefuwu_fk
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_sfk_zonhefuwu_fk")
public class XzdSfkZonhefuwuFk extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID自增
*/
@TableId(value = "id")
private Long id;
/**
* 单据编码(带*,必填)
*/
private String docCode;
/**
* 标题(带*,必填)
*/
private String title;
/**
* 单据日期(带*,必填)
*/
private LocalDate docDate;
/**
* 合同编码(带*,必填)
*/
private Long contractCode;
/**
* 合同名称
*/
private String contractName;
/**
* 付款性质(带*,必填)
*/
private Long paymentProperty;
/**
* 支出合同金额
*/
private BigDecimal expendContractAmount;
/**
* 本期审批金额
*/
private BigDecimal currentApproveAmount;
/**
* 项目
*/
private Long projectId;
/**
* 付款单位
*/
private Long paymentUnit;
/**
* 收款单位(带*,必填)
*/
private Long receiptUnit;
/**
* 收款银行
*/
private Long receiptBank;
/**
* 收款银行账号
*/
private String receiptBankAccount;
/**
* 统计周期(带*,必填)
*/
private String statCycle;
/**
* 是否研发类0=否1=是)
*/
private Long isResearch;
/**
* 税率(带*,必填)
*/
private BigDecimal taxRate;
/**
* 项目大类
*/
private String projectCategory;
/**
* 备注
*/
private String remark;
/**
* 本期进度支付金额
*/
private BigDecimal currentProgressPayment;
/**
* 累计进度支付金额
*/
private BigDecimal totalProgressPayment;
/**
* 预付款金额
*/
private BigDecimal advancePayment;
/**
* 累计支付金额
*/
private BigDecimal totalPaymentAmount;
/**
* 本期进度应付金额(带*,必填)
*/
private BigDecimal currentProgressPayable;
/**
* 累计进度应付金额
*/
private BigDecimal totalProgressPayable;
/**
* 预付款扣回金额
*/
private BigDecimal advanceDeductionAmount;
/**
* 累计进度结算占合同比例(%
*/
private BigDecimal totalProgressSettlementRatio;
/**
* 本期进度支付占本期进度应付(%
*/
private BigDecimal currentPaymentRatio;
/**
* 累计支付占合同比例(%
*/
private BigDecimal totalPaymentContractRatio;
/**
* 预付款剩余未抵扣金额
*/
private BigDecimal advanceRemainingDeduction;
/**
* 剩余进度应付未付金额
*/
private BigDecimal remainingProgressPayable;
/**
* 累计进度结算金额
*/
private BigDecimal totalProgressSettlementAmount;
/**
* 实时刷新0=未勾选1=勾选)
*/
private Long realTimeRefresh;
/**
* 合同累计实际付款金额
*/
private BigDecimal contractTotalActualPayment;
/**
* 合同含税金额
*/
private BigDecimal contractTaxInclAmount;
/**
* 累计结算金额
*/
private BigDecimal totalSettlementAmount;
/**
* 单据引用
*/
private String documentReference;
/**
* 文件ID
*/
private String fileId;
}

View File

@ -0,0 +1,231 @@
package org.dromara.xzd.paymentsReceipts.domain.bo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkCaigouFk;
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.time.LocalDate;
/**
* 采购合同付款业务对象 xzd_sfk_caigou_fk
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdSfkCaigouFk.class, reverseConvertGenerate = false)
public class XzdSfkCaigouFkBo extends BaseEntity {
/**
* 主键ID自增
*/
@NotNull(message = "主键ID自增不能为空", groups = { EditGroup.class })
private Long id;
/**
* 单据编码(带*,必填)
*/
@NotBlank(message = "单据编码(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private String docCode;
/**
* 标题(带*,必填)
*/
@NotBlank(message = "标题(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private String title;
/**
* 单据日期(带*,必填)
*/
@NotNull(message = "单据日期(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private LocalDate docDate;
/**
* 合同编码(带*,必填)
*/
@NotNull(message = "合同编码(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long contractCode;
/**
* 合同名称
*/
private String contractName;
/**
* 付款性质(带*,必填)
*/
@NotNull(message = "付款性质(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long paymentProperty;
/**
* 支出合同金额
*/
private BigDecimal expendContractAmount;
/**
* 本期审批金额
*/
private BigDecimal currentApproveAmount;
/**
* 项目
*/
private Long project;
/**
* 付款单位
*/
private Long paymentUnit;
/**
* 收款单位(带*,必填)
*/
@NotNull(message = "收款单位(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long receiptUnit;
/**
* 收款银行
*/
private Long receiptBank;
/**
* 收款银行账号
*/
private String receiptBankAccount;
/**
* 统计周期(带*,必填)
*/
@NotBlank(message = "统计周期(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private String statCycle;
/**
* 是否是研发类
*/
private Long isYanfa;
/**
* 税率(带*,必填)
*/
@NotNull(message = "税率(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal taxRate;
/**
* 项目大类
*/
private String projectCategory;
/**
* 备注
*/
private String remark;
/**
* 本期进度支付金额
*/
private BigDecimal currentProgressPayment;
/**
* 累计进度支付金额
*/
private BigDecimal totalProgressPayment;
/**
* 预付款金额
*/
private BigDecimal advancePayment;
/**
* 累计支付金额
*/
private BigDecimal totalPaymentAmount;
/**
* 本期进度应付金额(带*,必填)
*/
@NotNull(message = "本期进度应付金额(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal currentProgressPayable;
/**
* 累计进度应付金额
*/
private BigDecimal totalProgressPayable;
/**
* 预付款扣回金额
*/
private BigDecimal advanceDeductionAmount;
/**
* 累计进度结算占合同比例(%
*/
private BigDecimal totalProgressSettlementRatio;
/**
* 本期进度支付占本期进度应付(%
*/
private BigDecimal currentPaymentRatio;
/**
* 累计进度支付占累计进度应付(%
*/
private BigDecimal totalPaymentRatio;
/**
* 预付款剩余未抵扣金额
*/
private BigDecimal advanceRemainingDeduction;
/**
* 累计支付占合同比例(%
*/
private BigDecimal totalPaymentContractRatio;
/**
* 剩余进度应付未付金额
*/
private BigDecimal remainingProgressPayable;
/**
* 累计进度结算金额
*/
private BigDecimal totalProgressSettlementAmount;
/**
* 实时刷新0=未勾选1=勾选)
*/
private Long realTimeRefresh;
/**
* 合同含税金额
*/
private BigDecimal contractTaxInclAmount;
/**
* 合同累计实际付款金额
*/
private BigDecimal contractTotalActualPayment;
/**
* 累计结算金额
*/
private BigDecimal totalSettlementAmount;
/**
* 单据引用
*/
private String documentReference;
/**
* 文件ID
*/
private String fileId;
}

View File

@ -0,0 +1,92 @@
package org.dromara.xzd.paymentsReceipts.domain.bo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFapiao;
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.time.LocalDate;
/**
* 收款与付款-发票明细业务对象 xzd_sfk_fapiao
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdSfkFapiao.class, reverseConvertGenerate = false)
public class XzdSfkFapiaoBo extends BaseEntity {
/**
* 主键ID自增
*/
@NotNull(message = "主键ID自增不能为空", groups = { EditGroup.class })
private Long id;
/**
* 关联主单据的ID外键指向付款单/结算单等主表)
*/
private Long mainDocumentId;
/**
* 发票类型
*/
private String invoiceType;
/**
* 发票号码
*/
private String invoiceNumber;
/**
* 发票代码
*/
private String invoiceCode;
/**
* 开票日期
*/
private LocalDate invoiceDate;
/**
* 金额(不含税)
*/
private BigDecimal amount;
/**
* 税额
*/
private BigDecimal taxAmount;
/**
* 价税合计
*/
private BigDecimal totalAmountWithTax;
/**
* 引用金额
*/
private BigDecimal referenceAmount;
/**
* 备注
*/
private String remark;
/**
* 单据引用
*/
private String documentReference;
/**
* 文件ID
*/
private String fileId;
}

View File

@ -0,0 +1,90 @@
package org.dromara.xzd.paymentsReceipts.domain.bo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFukuan;
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.time.LocalDate;
/**
* 收款与付款-付款明细业务对象 xzd_sfk_fukuan
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdSfkFukuan.class, reverseConvertGenerate = false)
public class XzdSfkFukuanBo extends BaseEntity {
/**
* 主键ID
*/
@NotNull(message = "主键ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 关联主单据的ID外键指向付款单等主表
*/
private Long mainDocumentId;
/**
* 类型(带*,必填)
*/
@NotBlank(message = "类型(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private String type;
/**
* 方向
*/
private String direction;
/**
* 款项类别
*/
private String itemCategory;
/**
* 款项属性(带*,必填)
*/
@NotBlank(message = "款项属性(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private String itemProperty;
/**
* 本期申请金额
*/
private BigDecimal currentApplyAmount;
/**
* 本期审批金额(带*,必填)
*/
@NotNull(message = "本期审批金额(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal currentApproveAmount;
/**
* 归还日期
*/
private LocalDate returnDate;
/**
* 备注
*/
private String remark;
/**
* 单据引用
*/
private String documentReference;
/**
* 文件ID
*/
private String fileId;
}

View File

@ -0,0 +1,226 @@
package org.dromara.xzd.paymentsReceipts.domain.bo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkZonhefuwuFk;
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.time.LocalDate;
/**
* 综合服务合同付款业务对象 xzd_sfk_zonhefuwu_fk
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdSfkZonhefuwuFk.class, reverseConvertGenerate = false)
public class XzdSfkZonhefuwuFkBo extends BaseEntity {
/**
* 主键ID自增
*/
@NotNull(message = "主键ID自增不能为空", groups = { EditGroup.class })
private Long id;
/**
* 单据编码(带*,必填)
*/
@NotBlank(message = "单据编码(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private String docCode;
/**
* 标题(带*,必填)
*/
@NotBlank(message = "标题(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private String title;
/**
* 单据日期(带*,必填)
*/
@NotNull(message = "单据日期(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private LocalDate docDate;
/**
* 合同编码(带*,必填)
*/
@NotNull(message = "合同编码(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long contractCode;
/**
* 合同名称
*/
private String contractName;
/**
* 付款性质(带*,必填)
*/
@NotNull(message = "付款性质(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long paymentProperty;
/**
* 支出合同金额
*/
private BigDecimal expendContractAmount;
/**
* 本期审批金额
*/
private BigDecimal currentApproveAmount;
/**
* 项目
*/
private Long projectId;
/**
* 付款单位
*/
private Long paymentUnit;
/**
* 收款单位(带*,必填)
*/
@NotNull(message = "收款单位(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long receiptUnit;
/**
* 收款银行
*/
private Long receiptBank;
/**
* 收款银行账号
*/
private String receiptBankAccount;
/**
* 统计周期(带*,必填)
*/
@NotBlank(message = "统计周期(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private String statCycle;
/**
* 是否研发类0=否1=是)
*/
private Long isResearch;
/**
* 税率(带*,必填)
*/
@NotNull(message = "税率(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal taxRate;
/**
* 项目大类
*/
private String projectCategory;
/**
* 备注
*/
private String remark;
/**
* 本期进度支付金额
*/
private BigDecimal currentProgressPayment;
/**
* 累计进度支付金额
*/
private BigDecimal totalProgressPayment;
/**
* 预付款金额
*/
private BigDecimal advancePayment;
/**
* 累计支付金额
*/
private BigDecimal totalPaymentAmount;
/**
* 本期进度应付金额(带*,必填)
*/
@NotNull(message = "本期进度应付金额(带*,必填)不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal currentProgressPayable;
/**
* 累计进度应付金额
*/
private BigDecimal totalProgressPayable;
/**
* 预付款扣回金额
*/
private BigDecimal advanceDeductionAmount;
/**
* 累计进度结算占合同比例(%
*/
private BigDecimal totalProgressSettlementRatio;
/**
* 本期进度支付占本期进度应付(%
*/
private BigDecimal currentPaymentRatio;
/**
* 累计支付占合同比例(%
*/
private BigDecimal totalPaymentContractRatio;
/**
* 预付款剩余未抵扣金额
*/
private BigDecimal advanceRemainingDeduction;
/**
* 剩余进度应付未付金额
*/
private BigDecimal remainingProgressPayable;
/**
* 累计进度结算金额
*/
private BigDecimal totalProgressSettlementAmount;
/**
* 实时刷新0=未勾选1=勾选)
*/
private Long realTimeRefresh;
/**
* 合同累计实际付款金额
*/
private BigDecimal contractTotalActualPayment;
/**
* 合同含税金额
*/
private BigDecimal contractTaxInclAmount;
/**
* 累计结算金额
*/
private BigDecimal totalSettlementAmount;
/**
* 单据引用
*/
private String documentReference;
/**
* 文件ID
*/
private String fileId;
}

View File

@ -0,0 +1,282 @@
package org.dromara.xzd.paymentsReceipts.domain.vo;
import java.math.BigDecimal;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkCaigouFk;
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.time.LocalDate;
import java.util.Date;
/**
* 采购合同付款视图对象 xzd_sfk_caigou_fk
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdSfkCaigouFk.class)
public class XzdSfkCaigouFkVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID自增
*/
@ExcelProperty(value = "主键ID自增")
private Long id;
/**
* 单据编码(带*,必填)
*/
@ExcelProperty(value = "单据编码", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private String docCode;
/**
* 标题(带*,必填)
*/
@ExcelProperty(value = "标题", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private String title;
/**
* 单据日期(带*,必填)
*/
@ExcelProperty(value = "单据日期", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private LocalDate docDate;
/**
* 合同编码(带*,必填)
*/
@ExcelProperty(value = "合同编码", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private Long contractCode;
/**
* 合同名称
*/
@ExcelProperty(value = "合同名称")
private String contractName;
/**
* 付款性质(带*,必填)
*/
@ExcelProperty(value = "付款性质", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private Long paymentProperty;
/**
* 支出合同金额
*/
@ExcelProperty(value = "支出合同金额")
private BigDecimal expendContractAmount;
/**
* 本期审批金额
*/
@ExcelProperty(value = "本期审批金额")
private BigDecimal currentApproveAmount;
/**
* 项目
*/
@ExcelProperty(value = "项目")
private Long project;
/**
* 付款单位
*/
@ExcelProperty(value = "付款单位")
private Long paymentUnit;
/**
* 收款单位(带*,必填)
*/
@ExcelProperty(value = "收款单位", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private Long receiptUnit;
/**
* 收款银行
*/
@ExcelProperty(value = "收款银行")
private Long receiptBank;
/**
* 收款银行账号
*/
@ExcelProperty(value = "收款银行账号")
private String receiptBankAccount;
/**
* 统计周期(带*,必填)
*/
@ExcelProperty(value = "统计周期", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private String statCycle;
/**
* 是否是研发类
*/
@ExcelProperty(value = "是否是研发类")
private Long isYanfa;
/**
* 税率(带*,必填)
*/
@ExcelProperty(value = "税率", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private BigDecimal taxRate;
/**
* 项目大类
*/
@ExcelProperty(value = "项目大类")
private String projectCategory;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
/**
* 本期进度支付金额
*/
@ExcelProperty(value = "本期进度支付金额")
private BigDecimal currentProgressPayment;
/**
* 累计进度支付金额
*/
@ExcelProperty(value = "累计进度支付金额")
private BigDecimal totalProgressPayment;
/**
* 预付款金额
*/
@ExcelProperty(value = "预付款金额")
private BigDecimal advancePayment;
/**
* 累计支付金额
*/
@ExcelProperty(value = "累计支付金额")
private BigDecimal totalPaymentAmount;
/**
* 本期进度应付金额(带*,必填)
*/
@ExcelProperty(value = "本期进度应付金额", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private BigDecimal currentProgressPayable;
/**
* 累计进度应付金额
*/
@ExcelProperty(value = "累计进度应付金额")
private BigDecimal totalProgressPayable;
/**
* 预付款扣回金额
*/
@ExcelProperty(value = "预付款扣回金额")
private BigDecimal advanceDeductionAmount;
/**
* 累计进度结算占合同比例(%
*/
@ExcelProperty(value = "累计进度结算占合同比例", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "%=")
private BigDecimal totalProgressSettlementRatio;
/**
* 本期进度支付占本期进度应付(%
*/
@ExcelProperty(value = "本期进度支付占本期进度应付", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "%=")
private BigDecimal currentPaymentRatio;
/**
* 累计进度支付占累计进度应付(%
*/
@ExcelProperty(value = "累计进度支付占累计进度应付", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "%=")
private BigDecimal totalPaymentRatio;
/**
* 预付款剩余未抵扣金额
*/
@ExcelProperty(value = "预付款剩余未抵扣金额")
private BigDecimal advanceRemainingDeduction;
/**
* 累计支付占合同比例(%
*/
@ExcelProperty(value = "累计支付占合同比例", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "%=")
private BigDecimal totalPaymentContractRatio;
/**
* 剩余进度应付未付金额
*/
@ExcelProperty(value = "剩余进度应付未付金额")
private BigDecimal remainingProgressPayable;
/**
* 累计进度结算金额
*/
@ExcelProperty(value = "累计进度结算金额")
private BigDecimal totalProgressSettlementAmount;
/**
* 实时刷新0=未勾选1=勾选)
*/
@ExcelProperty(value = "实时刷新", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "0==未勾选1=勾选")
private Long realTimeRefresh;
/**
* 合同含税金额
*/
@ExcelProperty(value = "合同含税金额")
private BigDecimal contractTaxInclAmount;
/**
* 合同累计实际付款金额
*/
@ExcelProperty(value = "合同累计实际付款金额")
private BigDecimal contractTotalActualPayment;
/**
* 累计结算金额
*/
@ExcelProperty(value = "累计结算金额")
private BigDecimal totalSettlementAmount;
/**
* 单据引用
*/
@ExcelProperty(value = "单据引用")
private String documentReference;
/**
* 文件ID
*/
@ExcelProperty(value = "文件ID")
private String fileId;
}

View File

@ -0,0 +1,114 @@
package org.dromara.xzd.paymentsReceipts.domain.vo;
import java.math.BigDecimal;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFapiao;
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.time.LocalDate;
import java.util.Date;
/**
* 收款与付款-发票明细视图对象 xzd_sfk_fapiao
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdSfkFapiao.class)
public class XzdSfkFapiaoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID自增
*/
@ExcelProperty(value = "主键ID自增")
private Long id;
/**
* 关联主单据的ID外键指向付款单/结算单等主表)
*/
@ExcelProperty(value = "关联主单据的ID", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "外=键,指向付款单/结算单等主表")
private Long mainDocumentId;
/**
* 发票类型
*/
@ExcelProperty(value = "发票类型")
private String invoiceType;
/**
* 发票号码
*/
@ExcelProperty(value = "发票号码")
private String invoiceNumber;
/**
* 发票代码
*/
@ExcelProperty(value = "发票代码")
private String invoiceCode;
/**
* 开票日期
*/
@ExcelProperty(value = "开票日期")
private LocalDate invoiceDate;
/**
* 金额(不含税)
*/
@ExcelProperty(value = "金额", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "不=含税")
private BigDecimal amount;
/**
* 税额
*/
@ExcelProperty(value = "税额")
private BigDecimal taxAmount;
/**
* 价税合计
*/
@ExcelProperty(value = "价税合计")
private BigDecimal totalAmountWithTax;
/**
* 引用金额
*/
@ExcelProperty(value = "引用金额")
private BigDecimal referenceAmount;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
/**
* 单据引用
*/
@ExcelProperty(value = "单据引用")
private String documentReference;
/**
* 文件ID
*/
@ExcelProperty(value = "文件ID")
private String fileId;
}

View File

@ -0,0 +1,110 @@
package org.dromara.xzd.paymentsReceipts.domain.vo;
import java.math.BigDecimal;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFukuan;
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.time.LocalDate;
import java.util.Date;
/**
* 收款与付款-付款明细视图对象 xzd_sfk_fukuan
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdSfkFukuan.class)
public class XzdSfkFukuanVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private Long id;
/**
* 关联主单据的ID外键指向付款单等主表
*/
@ExcelProperty(value = "关联主单据的ID", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "外=键,指向付款单等主表")
private Long mainDocumentId;
/**
* 类型(带*,必填)
*/
@ExcelProperty(value = "类型", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private String type;
/**
* 方向
*/
@ExcelProperty(value = "方向")
private String direction;
/**
* 款项类别
*/
@ExcelProperty(value = "款项类别")
private String itemCategory;
/**
* 款项属性(带*,必填)
*/
@ExcelProperty(value = "款项属性", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private String itemProperty;
/**
* 本期申请金额
*/
@ExcelProperty(value = "本期申请金额")
private BigDecimal currentApplyAmount;
/**
* 本期审批金额(带*,必填)
*/
@ExcelProperty(value = "本期审批金额", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private BigDecimal currentApproveAmount;
/**
* 归还日期
*/
@ExcelProperty(value = "归还日期")
private LocalDate returnDate;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
/**
* 单据引用
*/
@ExcelProperty(value = "单据引用")
private String documentReference;
/**
* 文件ID
*/
@ExcelProperty(value = "文件ID")
private String fileId;
}

View File

@ -0,0 +1,276 @@
package org.dromara.xzd.paymentsReceipts.domain.vo;
import java.math.BigDecimal;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkZonhefuwuFk;
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.time.LocalDate;
import java.util.Date;
/**
* 综合服务合同付款视图对象 xzd_sfk_zonhefuwu_fk
*
* @author Lion Li
* @date 2025-10-16
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdSfkZonhefuwuFk.class)
public class XzdSfkZonhefuwuFkVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID自增
*/
@ExcelProperty(value = "主键ID自增")
private Long id;
/**
* 单据编码(带*,必填)
*/
@ExcelProperty(value = "单据编码", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private String docCode;
/**
* 标题(带*,必填)
*/
@ExcelProperty(value = "标题", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private String title;
/**
* 单据日期(带*,必填)
*/
@ExcelProperty(value = "单据日期", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private LocalDate docDate;
/**
* 合同编码(带*,必填)
*/
@ExcelProperty(value = "合同编码", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private Long contractCode;
/**
* 合同名称
*/
@ExcelProperty(value = "合同名称")
private String contractName;
/**
* 付款性质(带*,必填)
*/
@ExcelProperty(value = "付款性质", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private Long paymentProperty;
/**
* 支出合同金额
*/
@ExcelProperty(value = "支出合同金额")
private BigDecimal expendContractAmount;
/**
* 本期审批金额
*/
@ExcelProperty(value = "本期审批金额")
private BigDecimal currentApproveAmount;
/**
* 项目
*/
@ExcelProperty(value = "项目")
private Long projectId;
/**
* 付款单位
*/
@ExcelProperty(value = "付款单位")
private Long paymentUnit;
/**
* 收款单位(带*,必填)
*/
@ExcelProperty(value = "收款单位", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private Long receiptUnit;
/**
* 收款银行
*/
@ExcelProperty(value = "收款银行")
private Long receiptBank;
/**
* 收款银行账号
*/
@ExcelProperty(value = "收款银行账号")
private String receiptBankAccount;
/**
* 统计周期(带*,必填)
*/
@ExcelProperty(value = "统计周期", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private String statCycle;
/**
* 是否研发类0=否1=是)
*/
@ExcelProperty(value = "是否研发类", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "0==否1=是")
private Long isResearch;
/**
* 税率(带*,必填)
*/
@ExcelProperty(value = "税率", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private BigDecimal taxRate;
/**
* 项目大类
*/
@ExcelProperty(value = "项目大类")
private String projectCategory;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
/**
* 本期进度支付金额
*/
@ExcelProperty(value = "本期进度支付金额")
private BigDecimal currentProgressPayment;
/**
* 累计进度支付金额
*/
@ExcelProperty(value = "累计进度支付金额")
private BigDecimal totalProgressPayment;
/**
* 预付款金额
*/
@ExcelProperty(value = "预付款金额")
private BigDecimal advancePayment;
/**
* 累计支付金额
*/
@ExcelProperty(value = "累计支付金额")
private BigDecimal totalPaymentAmount;
/**
* 本期进度应付金额(带*,必填)
*/
@ExcelProperty(value = "本期进度应付金额", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private BigDecimal currentProgressPayable;
/**
* 累计进度应付金额
*/
@ExcelProperty(value = "累计进度应付金额")
private BigDecimal totalProgressPayable;
/**
* 预付款扣回金额
*/
@ExcelProperty(value = "预付款扣回金额")
private BigDecimal advanceDeductionAmount;
/**
* 累计进度结算占合同比例(%
*/
@ExcelProperty(value = "累计进度结算占合同比例", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "%=")
private BigDecimal totalProgressSettlementRatio;
/**
* 本期进度支付占本期进度应付(%
*/
@ExcelProperty(value = "本期进度支付占本期进度应付", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "%=")
private BigDecimal currentPaymentRatio;
/**
* 累计支付占合同比例(%
*/
@ExcelProperty(value = "累计支付占合同比例", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "%=")
private BigDecimal totalPaymentContractRatio;
/**
* 预付款剩余未抵扣金额
*/
@ExcelProperty(value = "预付款剩余未抵扣金额")
private BigDecimal advanceRemainingDeduction;
/**
* 剩余进度应付未付金额
*/
@ExcelProperty(value = "剩余进度应付未付金额")
private BigDecimal remainingProgressPayable;
/**
* 累计进度结算金额
*/
@ExcelProperty(value = "累计进度结算金额")
private BigDecimal totalProgressSettlementAmount;
/**
* 实时刷新0=未勾选1=勾选)
*/
@ExcelProperty(value = "实时刷新", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "0==未勾选1=勾选")
private Long realTimeRefresh;
/**
* 合同累计实际付款金额
*/
@ExcelProperty(value = "合同累计实际付款金额")
private BigDecimal contractTotalActualPayment;
/**
* 合同含税金额
*/
@ExcelProperty(value = "合同含税金额")
private BigDecimal contractTaxInclAmount;
/**
* 累计结算金额
*/
@ExcelProperty(value = "累计结算金额")
private BigDecimal totalSettlementAmount;
/**
* 单据引用
*/
@ExcelProperty(value = "单据引用")
private String documentReference;
/**
* 文件ID
*/
@ExcelProperty(value = "文件ID")
private String fileId;
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.paymentsReceipts.mapper;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkCaigouFk;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkCaigouFkVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 采购合同付款Mapper接口
*
* @author Lion Li
* @date 2025-10-16
*/
public interface XzdSfkCaigouFkMapper extends BaseMapperPlus<XzdSfkCaigouFk, XzdSfkCaigouFkVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.paymentsReceipts.mapper;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFapiao;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkFapiaoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 收款与付款-发票明细Mapper接口
*
* @author Lion Li
* @date 2025-10-16
*/
public interface XzdSfkFapiaoMapper extends BaseMapperPlus<XzdSfkFapiao, XzdSfkFapiaoVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.paymentsReceipts.mapper;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFukuan;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkFukuanVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 收款与付款-付款明细Mapper接口
*
* @author Lion Li
* @date 2025-10-16
*/
public interface XzdSfkFukuanMapper extends BaseMapperPlus<XzdSfkFukuan, XzdSfkFukuanVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.paymentsReceipts.mapper;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkZonhefuwuFk;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkZonhefuwuFkVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 综合服务合同付款Mapper接口
*
* @author Lion Li
* @date 2025-10-16
*/
public interface XzdSfkZonhefuwuFkMapper extends BaseMapperPlus<XzdSfkZonhefuwuFk, XzdSfkZonhefuwuFkVo> {
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.paymentsReceipts.service;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkCaigouFkVo;
import org.dromara.xzd.paymentsReceipts.domain.bo.XzdSfkCaigouFkBo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkCaigouFk;
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-16
*/
public interface IXzdSfkCaigouFkService extends IService<XzdSfkCaigouFk>{
/**
* 查询采购合同付款
*
* @param id 主键
* @return 采购合同付款
*/
XzdSfkCaigouFkVo queryById(Long id);
/**
* 分页查询采购合同付款列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 采购合同付款分页列表
*/
TableDataInfo<XzdSfkCaigouFkVo> queryPageList(XzdSfkCaigouFkBo bo, PageQuery pageQuery);
/**
* 查询符合条件的采购合同付款列表
*
* @param bo 查询条件
* @return 采购合同付款列表
*/
List<XzdSfkCaigouFkVo> queryList(XzdSfkCaigouFkBo bo);
/**
* 新增采购合同付款
*
* @param bo 采购合同付款
* @return 是否新增成功
*/
Boolean insertByBo(XzdSfkCaigouFkBo bo);
/**
* 修改采购合同付款
*
* @param bo 采购合同付款
* @return 是否修改成功
*/
Boolean updateByBo(XzdSfkCaigouFkBo bo);
/**
* 校验并批量删除采购合同付款信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.paymentsReceipts.service;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkFapiaoVo;
import org.dromara.xzd.paymentsReceipts.domain.bo.XzdSfkFapiaoBo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFapiao;
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-16
*/
public interface IXzdSfkFapiaoService extends IService<XzdSfkFapiao>{
/**
* 查询收款与付款-发票明细
*
* @param id 主键
* @return 收款与付款-发票明细
*/
XzdSfkFapiaoVo queryById(Long id);
/**
* 分页查询收款与付款-发票明细列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 收款与付款-发票明细分页列表
*/
TableDataInfo<XzdSfkFapiaoVo> queryPageList(XzdSfkFapiaoBo bo, PageQuery pageQuery);
/**
* 查询符合条件的收款与付款-发票明细列表
*
* @param bo 查询条件
* @return 收款与付款-发票明细列表
*/
List<XzdSfkFapiaoVo> queryList(XzdSfkFapiaoBo bo);
/**
* 新增收款与付款-发票明细
*
* @param bo 收款与付款-发票明细
* @return 是否新增成功
*/
Boolean insertByBo(XzdSfkFapiaoBo bo);
/**
* 修改收款与付款-发票明细
*
* @param bo 收款与付款-发票明细
* @return 是否修改成功
*/
Boolean updateByBo(XzdSfkFapiaoBo bo);
/**
* 校验并批量删除收款与付款-发票明细信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.paymentsReceipts.service;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkFukuanVo;
import org.dromara.xzd.paymentsReceipts.domain.bo.XzdSfkFukuanBo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFukuan;
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-16
*/
public interface IXzdSfkFukuanService extends IService<XzdSfkFukuan>{
/**
* 查询收款与付款-付款明细
*
* @param id 主键
* @return 收款与付款-付款明细
*/
XzdSfkFukuanVo queryById(Long id);
/**
* 分页查询收款与付款-付款明细列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 收款与付款-付款明细分页列表
*/
TableDataInfo<XzdSfkFukuanVo> queryPageList(XzdSfkFukuanBo bo, PageQuery pageQuery);
/**
* 查询符合条件的收款与付款-付款明细列表
*
* @param bo 查询条件
* @return 收款与付款-付款明细列表
*/
List<XzdSfkFukuanVo> queryList(XzdSfkFukuanBo bo);
/**
* 新增收款与付款-付款明细
*
* @param bo 收款与付款-付款明细
* @return 是否新增成功
*/
Boolean insertByBo(XzdSfkFukuanBo bo);
/**
* 修改收款与付款-付款明细
*
* @param bo 收款与付款-付款明细
* @return 是否修改成功
*/
Boolean updateByBo(XzdSfkFukuanBo bo);
/**
* 校验并批量删除收款与付款-付款明细信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.paymentsReceipts.service;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkZonhefuwuFkVo;
import org.dromara.xzd.paymentsReceipts.domain.bo.XzdSfkZonhefuwuFkBo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkZonhefuwuFk;
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-16
*/
public interface IXzdSfkZonhefuwuFkService extends IService<XzdSfkZonhefuwuFk>{
/**
* 查询综合服务合同付款
*
* @param id 主键
* @return 综合服务合同付款
*/
XzdSfkZonhefuwuFkVo queryById(Long id);
/**
* 分页查询综合服务合同付款列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 综合服务合同付款分页列表
*/
TableDataInfo<XzdSfkZonhefuwuFkVo> queryPageList(XzdSfkZonhefuwuFkBo bo, PageQuery pageQuery);
/**
* 查询符合条件的综合服务合同付款列表
*
* @param bo 查询条件
* @return 综合服务合同付款列表
*/
List<XzdSfkZonhefuwuFkVo> queryList(XzdSfkZonhefuwuFkBo bo);
/**
* 新增综合服务合同付款
*
* @param bo 综合服务合同付款
* @return 是否新增成功
*/
Boolean insertByBo(XzdSfkZonhefuwuFkBo bo);
/**
* 修改综合服务合同付款
*
* @param bo 综合服务合同付款
* @return 是否修改成功
*/
Boolean updateByBo(XzdSfkZonhefuwuFkBo bo);
/**
* 校验并批量删除综合服务合同付款信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,167 @@
package org.dromara.xzd.paymentsReceipts.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.paymentsReceipts.domain.bo.XzdSfkCaigouFkBo;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkCaigouFkVo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkCaigouFk;
import org.dromara.xzd.paymentsReceipts.mapper.XzdSfkCaigouFkMapper;
import org.dromara.xzd.paymentsReceipts.service.IXzdSfkCaigouFkService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 采购合同付款Service业务层处理
*
* @author Lion Li
* @date 2025-10-16
*/
@RequiredArgsConstructor
@Service
public class XzdSfkCaigouFkServiceImpl extends ServiceImpl<XzdSfkCaigouFkMapper, XzdSfkCaigouFk> implements IXzdSfkCaigouFkService {
private final XzdSfkCaigouFkMapper baseMapper;
/**
* 查询采购合同付款
*
* @param id 主键
* @return 采购合同付款
*/
@Override
public XzdSfkCaigouFkVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询采购合同付款列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 采购合同付款分页列表
*/
@Override
public TableDataInfo<XzdSfkCaigouFkVo> queryPageList(XzdSfkCaigouFkBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdSfkCaigouFk> lqw = buildQueryWrapper(bo);
Page<XzdSfkCaigouFkVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的采购合同付款列表
*
* @param bo 查询条件
* @return 采购合同付款列表
*/
@Override
public List<XzdSfkCaigouFkVo> queryList(XzdSfkCaigouFkBo bo) {
LambdaQueryWrapper<XzdSfkCaigouFk> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdSfkCaigouFk> buildQueryWrapper(XzdSfkCaigouFkBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdSfkCaigouFk> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdSfkCaigouFk::getId);
lqw.eq(StringUtils.isNotBlank(bo.getDocCode()), XzdSfkCaigouFk::getDocCode, bo.getDocCode());
lqw.eq(StringUtils.isNotBlank(bo.getTitle()), XzdSfkCaigouFk::getTitle, bo.getTitle());
lqw.eq(bo.getDocDate() != null, XzdSfkCaigouFk::getDocDate, bo.getDocDate());
lqw.eq(bo.getContractCode() != null, XzdSfkCaigouFk::getContractCode, bo.getContractCode());
lqw.like(StringUtils.isNotBlank(bo.getContractName()), XzdSfkCaigouFk::getContractName, bo.getContractName());
lqw.eq(bo.getPaymentProperty() != null, XzdSfkCaigouFk::getPaymentProperty, bo.getPaymentProperty());
lqw.eq(bo.getExpendContractAmount() != null, XzdSfkCaigouFk::getExpendContractAmount, bo.getExpendContractAmount());
lqw.eq(bo.getCurrentApproveAmount() != null, XzdSfkCaigouFk::getCurrentApproveAmount, bo.getCurrentApproveAmount());
lqw.eq(bo.getProject() != null, XzdSfkCaigouFk::getProject, bo.getProject());
lqw.eq(bo.getPaymentUnit() != null, XzdSfkCaigouFk::getPaymentUnit, bo.getPaymentUnit());
lqw.eq(bo.getReceiptUnit() != null, XzdSfkCaigouFk::getReceiptUnit, bo.getReceiptUnit());
lqw.eq(bo.getReceiptBank() != null, XzdSfkCaigouFk::getReceiptBank, bo.getReceiptBank());
lqw.eq(StringUtils.isNotBlank(bo.getReceiptBankAccount()), XzdSfkCaigouFk::getReceiptBankAccount, bo.getReceiptBankAccount());
lqw.eq(StringUtils.isNotBlank(bo.getStatCycle()), XzdSfkCaigouFk::getStatCycle, bo.getStatCycle());
lqw.eq(bo.getIsYanfa() != null, XzdSfkCaigouFk::getIsYanfa, bo.getIsYanfa());
lqw.eq(bo.getTaxRate() != null, XzdSfkCaigouFk::getTaxRate, bo.getTaxRate());
lqw.eq(StringUtils.isNotBlank(bo.getProjectCategory()), XzdSfkCaigouFk::getProjectCategory, bo.getProjectCategory());
lqw.eq(bo.getCurrentProgressPayment() != null, XzdSfkCaigouFk::getCurrentProgressPayment, bo.getCurrentProgressPayment());
lqw.eq(bo.getTotalProgressPayment() != null, XzdSfkCaigouFk::getTotalProgressPayment, bo.getTotalProgressPayment());
lqw.eq(bo.getAdvancePayment() != null, XzdSfkCaigouFk::getAdvancePayment, bo.getAdvancePayment());
lqw.eq(bo.getTotalPaymentAmount() != null, XzdSfkCaigouFk::getTotalPaymentAmount, bo.getTotalPaymentAmount());
lqw.eq(bo.getCurrentProgressPayable() != null, XzdSfkCaigouFk::getCurrentProgressPayable, bo.getCurrentProgressPayable());
lqw.eq(bo.getTotalProgressPayable() != null, XzdSfkCaigouFk::getTotalProgressPayable, bo.getTotalProgressPayable());
lqw.eq(bo.getAdvanceDeductionAmount() != null, XzdSfkCaigouFk::getAdvanceDeductionAmount, bo.getAdvanceDeductionAmount());
lqw.eq(bo.getTotalProgressSettlementRatio() != null, XzdSfkCaigouFk::getTotalProgressSettlementRatio, bo.getTotalProgressSettlementRatio());
lqw.eq(bo.getCurrentPaymentRatio() != null, XzdSfkCaigouFk::getCurrentPaymentRatio, bo.getCurrentPaymentRatio());
lqw.eq(bo.getTotalPaymentRatio() != null, XzdSfkCaigouFk::getTotalPaymentRatio, bo.getTotalPaymentRatio());
lqw.eq(bo.getAdvanceRemainingDeduction() != null, XzdSfkCaigouFk::getAdvanceRemainingDeduction, bo.getAdvanceRemainingDeduction());
lqw.eq(bo.getTotalPaymentContractRatio() != null, XzdSfkCaigouFk::getTotalPaymentContractRatio, bo.getTotalPaymentContractRatio());
lqw.eq(bo.getRemainingProgressPayable() != null, XzdSfkCaigouFk::getRemainingProgressPayable, bo.getRemainingProgressPayable());
lqw.eq(bo.getTotalProgressSettlementAmount() != null, XzdSfkCaigouFk::getTotalProgressSettlementAmount, bo.getTotalProgressSettlementAmount());
lqw.eq(bo.getRealTimeRefresh() != null, XzdSfkCaigouFk::getRealTimeRefresh, bo.getRealTimeRefresh());
lqw.eq(bo.getContractTaxInclAmount() != null, XzdSfkCaigouFk::getContractTaxInclAmount, bo.getContractTaxInclAmount());
lqw.eq(bo.getContractTotalActualPayment() != null, XzdSfkCaigouFk::getContractTotalActualPayment, bo.getContractTotalActualPayment());
lqw.eq(bo.getTotalSettlementAmount() != null, XzdSfkCaigouFk::getTotalSettlementAmount, bo.getTotalSettlementAmount());
lqw.eq(StringUtils.isNotBlank(bo.getDocumentReference()), XzdSfkCaigouFk::getDocumentReference, bo.getDocumentReference());
lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdSfkCaigouFk::getFileId, bo.getFileId());
return lqw;
}
/**
* 新增采购合同付款
*
* @param bo 采购合同付款
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(XzdSfkCaigouFkBo bo) {
XzdSfkCaigouFk add = MapstructUtils.convert(bo, XzdSfkCaigouFk.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改采购合同付款
*
* @param bo 采购合同付款
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdSfkCaigouFkBo bo) {
XzdSfkCaigouFk update = MapstructUtils.convert(bo, XzdSfkCaigouFk.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdSfkCaigouFk entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除采购合同付款信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,141 @@
package org.dromara.xzd.paymentsReceipts.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.paymentsReceipts.domain.bo.XzdSfkFapiaoBo;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkFapiaoVo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFapiao;
import org.dromara.xzd.paymentsReceipts.mapper.XzdSfkFapiaoMapper;
import org.dromara.xzd.paymentsReceipts.service.IXzdSfkFapiaoService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 收款与付款-发票明细Service业务层处理
*
* @author Lion Li
* @date 2025-10-16
*/
@RequiredArgsConstructor
@Service
public class XzdSfkFapiaoServiceImpl extends ServiceImpl<XzdSfkFapiaoMapper, XzdSfkFapiao> implements IXzdSfkFapiaoService {
private final XzdSfkFapiaoMapper baseMapper;
/**
* 查询收款与付款-发票明细
*
* @param id 主键
* @return 收款与付款-发票明细
*/
@Override
public XzdSfkFapiaoVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询收款与付款-发票明细列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 收款与付款-发票明细分页列表
*/
@Override
public TableDataInfo<XzdSfkFapiaoVo> queryPageList(XzdSfkFapiaoBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdSfkFapiao> lqw = buildQueryWrapper(bo);
Page<XzdSfkFapiaoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的收款与付款-发票明细列表
*
* @param bo 查询条件
* @return 收款与付款-发票明细列表
*/
@Override
public List<XzdSfkFapiaoVo> queryList(XzdSfkFapiaoBo bo) {
LambdaQueryWrapper<XzdSfkFapiao> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdSfkFapiao> buildQueryWrapper(XzdSfkFapiaoBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdSfkFapiao> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdSfkFapiao::getId);
lqw.eq(bo.getMainDocumentId() != null, XzdSfkFapiao::getMainDocumentId, bo.getMainDocumentId());
lqw.eq(StringUtils.isNotBlank(bo.getInvoiceType()), XzdSfkFapiao::getInvoiceType, bo.getInvoiceType());
lqw.eq(StringUtils.isNotBlank(bo.getInvoiceNumber()), XzdSfkFapiao::getInvoiceNumber, bo.getInvoiceNumber());
lqw.eq(StringUtils.isNotBlank(bo.getInvoiceCode()), XzdSfkFapiao::getInvoiceCode, bo.getInvoiceCode());
lqw.eq(bo.getInvoiceDate() != null, XzdSfkFapiao::getInvoiceDate, bo.getInvoiceDate());
lqw.eq(bo.getAmount() != null, XzdSfkFapiao::getAmount, bo.getAmount());
lqw.eq(bo.getTaxAmount() != null, XzdSfkFapiao::getTaxAmount, bo.getTaxAmount());
lqw.eq(bo.getTotalAmountWithTax() != null, XzdSfkFapiao::getTotalAmountWithTax, bo.getTotalAmountWithTax());
lqw.eq(bo.getReferenceAmount() != null, XzdSfkFapiao::getReferenceAmount, bo.getReferenceAmount());
lqw.eq(StringUtils.isNotBlank(bo.getDocumentReference()), XzdSfkFapiao::getDocumentReference, bo.getDocumentReference());
lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdSfkFapiao::getFileId, bo.getFileId());
return lqw;
}
/**
* 新增收款与付款-发票明细
*
* @param bo 收款与付款-发票明细
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(XzdSfkFapiaoBo bo) {
XzdSfkFapiao add = MapstructUtils.convert(bo, XzdSfkFapiao.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改收款与付款-发票明细
*
* @param bo 收款与付款-发票明细
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdSfkFapiaoBo bo) {
XzdSfkFapiao update = MapstructUtils.convert(bo, XzdSfkFapiao.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdSfkFapiao entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除收款与付款-发票明细信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,140 @@
package org.dromara.xzd.paymentsReceipts.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.paymentsReceipts.domain.bo.XzdSfkFukuanBo;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkFukuanVo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFukuan;
import org.dromara.xzd.paymentsReceipts.mapper.XzdSfkFukuanMapper;
import org.dromara.xzd.paymentsReceipts.service.IXzdSfkFukuanService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 收款与付款-付款明细Service业务层处理
*
* @author Lion Li
* @date 2025-10-16
*/
@RequiredArgsConstructor
@Service
public class XzdSfkFukuanServiceImpl extends ServiceImpl<XzdSfkFukuanMapper, XzdSfkFukuan> implements IXzdSfkFukuanService {
private final XzdSfkFukuanMapper baseMapper;
/**
* 查询收款与付款-付款明细
*
* @param id 主键
* @return 收款与付款-付款明细
*/
@Override
public XzdSfkFukuanVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询收款与付款-付款明细列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 收款与付款-付款明细分页列表
*/
@Override
public TableDataInfo<XzdSfkFukuanVo> queryPageList(XzdSfkFukuanBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdSfkFukuan> lqw = buildQueryWrapper(bo);
Page<XzdSfkFukuanVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的收款与付款-付款明细列表
*
* @param bo 查询条件
* @return 收款与付款-付款明细列表
*/
@Override
public List<XzdSfkFukuanVo> queryList(XzdSfkFukuanBo bo) {
LambdaQueryWrapper<XzdSfkFukuan> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdSfkFukuan> buildQueryWrapper(XzdSfkFukuanBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdSfkFukuan> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdSfkFukuan::getId);
lqw.eq(bo.getMainDocumentId() != null, XzdSfkFukuan::getMainDocumentId, bo.getMainDocumentId());
lqw.eq(StringUtils.isNotBlank(bo.getType()), XzdSfkFukuan::getType, bo.getType());
lqw.eq(StringUtils.isNotBlank(bo.getDirection()), XzdSfkFukuan::getDirection, bo.getDirection());
lqw.eq(StringUtils.isNotBlank(bo.getItemCategory()), XzdSfkFukuan::getItemCategory, bo.getItemCategory());
lqw.eq(StringUtils.isNotBlank(bo.getItemProperty()), XzdSfkFukuan::getItemProperty, bo.getItemProperty());
lqw.eq(bo.getCurrentApplyAmount() != null, XzdSfkFukuan::getCurrentApplyAmount, bo.getCurrentApplyAmount());
lqw.eq(bo.getCurrentApproveAmount() != null, XzdSfkFukuan::getCurrentApproveAmount, bo.getCurrentApproveAmount());
lqw.eq(bo.getReturnDate() != null, XzdSfkFukuan::getReturnDate, bo.getReturnDate());
lqw.eq(StringUtils.isNotBlank(bo.getDocumentReference()), XzdSfkFukuan::getDocumentReference, bo.getDocumentReference());
lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdSfkFukuan::getFileId, bo.getFileId());
return lqw;
}
/**
* 新增收款与付款-付款明细
*
* @param bo 收款与付款-付款明细
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(XzdSfkFukuanBo bo) {
XzdSfkFukuan add = MapstructUtils.convert(bo, XzdSfkFukuan.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改收款与付款-付款明细
*
* @param bo 收款与付款-付款明细
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdSfkFukuanBo bo) {
XzdSfkFukuan update = MapstructUtils.convert(bo, XzdSfkFukuan.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdSfkFukuan entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除收款与付款-付款明细信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,166 @@
package org.dromara.xzd.paymentsReceipts.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.paymentsReceipts.domain.bo.XzdSfkZonhefuwuFkBo;
import org.dromara.xzd.paymentsReceipts.domain.vo.XzdSfkZonhefuwuFkVo;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkZonhefuwuFk;
import org.dromara.xzd.paymentsReceipts.mapper.XzdSfkZonhefuwuFkMapper;
import org.dromara.xzd.paymentsReceipts.service.IXzdSfkZonhefuwuFkService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 综合服务合同付款Service业务层处理
*
* @author Lion Li
* @date 2025-10-16
*/
@RequiredArgsConstructor
@Service
public class XzdSfkZonhefuwuFkServiceImpl extends ServiceImpl<XzdSfkZonhefuwuFkMapper, XzdSfkZonhefuwuFk> implements IXzdSfkZonhefuwuFkService {
private final XzdSfkZonhefuwuFkMapper baseMapper;
/**
* 查询综合服务合同付款
*
* @param id 主键
* @return 综合服务合同付款
*/
@Override
public XzdSfkZonhefuwuFkVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询综合服务合同付款列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 综合服务合同付款分页列表
*/
@Override
public TableDataInfo<XzdSfkZonhefuwuFkVo> queryPageList(XzdSfkZonhefuwuFkBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdSfkZonhefuwuFk> lqw = buildQueryWrapper(bo);
Page<XzdSfkZonhefuwuFkVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的综合服务合同付款列表
*
* @param bo 查询条件
* @return 综合服务合同付款列表
*/
@Override
public List<XzdSfkZonhefuwuFkVo> queryList(XzdSfkZonhefuwuFkBo bo) {
LambdaQueryWrapper<XzdSfkZonhefuwuFk> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdSfkZonhefuwuFk> buildQueryWrapper(XzdSfkZonhefuwuFkBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdSfkZonhefuwuFk> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdSfkZonhefuwuFk::getId);
lqw.eq(StringUtils.isNotBlank(bo.getDocCode()), XzdSfkZonhefuwuFk::getDocCode, bo.getDocCode());
lqw.eq(StringUtils.isNotBlank(bo.getTitle()), XzdSfkZonhefuwuFk::getTitle, bo.getTitle());
lqw.eq(bo.getDocDate() != null, XzdSfkZonhefuwuFk::getDocDate, bo.getDocDate());
lqw.eq(bo.getContractCode() != null, XzdSfkZonhefuwuFk::getContractCode, bo.getContractCode());
lqw.like(StringUtils.isNotBlank(bo.getContractName()), XzdSfkZonhefuwuFk::getContractName, bo.getContractName());
lqw.eq(bo.getPaymentProperty() != null, XzdSfkZonhefuwuFk::getPaymentProperty, bo.getPaymentProperty());
lqw.eq(bo.getExpendContractAmount() != null, XzdSfkZonhefuwuFk::getExpendContractAmount, bo.getExpendContractAmount());
lqw.eq(bo.getCurrentApproveAmount() != null, XzdSfkZonhefuwuFk::getCurrentApproveAmount, bo.getCurrentApproveAmount());
lqw.eq(bo.getProjectId() != null, XzdSfkZonhefuwuFk::getProjectId, bo.getProjectId());
lqw.eq(bo.getPaymentUnit() != null, XzdSfkZonhefuwuFk::getPaymentUnit, bo.getPaymentUnit());
lqw.eq(bo.getReceiptUnit() != null, XzdSfkZonhefuwuFk::getReceiptUnit, bo.getReceiptUnit());
lqw.eq(bo.getReceiptBank() != null, XzdSfkZonhefuwuFk::getReceiptBank, bo.getReceiptBank());
lqw.eq(StringUtils.isNotBlank(bo.getReceiptBankAccount()), XzdSfkZonhefuwuFk::getReceiptBankAccount, bo.getReceiptBankAccount());
lqw.eq(StringUtils.isNotBlank(bo.getStatCycle()), XzdSfkZonhefuwuFk::getStatCycle, bo.getStatCycle());
lqw.eq(bo.getIsResearch() != null, XzdSfkZonhefuwuFk::getIsResearch, bo.getIsResearch());
lqw.eq(bo.getTaxRate() != null, XzdSfkZonhefuwuFk::getTaxRate, bo.getTaxRate());
lqw.eq(StringUtils.isNotBlank(bo.getProjectCategory()), XzdSfkZonhefuwuFk::getProjectCategory, bo.getProjectCategory());
lqw.eq(bo.getCurrentProgressPayment() != null, XzdSfkZonhefuwuFk::getCurrentProgressPayment, bo.getCurrentProgressPayment());
lqw.eq(bo.getTotalProgressPayment() != null, XzdSfkZonhefuwuFk::getTotalProgressPayment, bo.getTotalProgressPayment());
lqw.eq(bo.getAdvancePayment() != null, XzdSfkZonhefuwuFk::getAdvancePayment, bo.getAdvancePayment());
lqw.eq(bo.getTotalPaymentAmount() != null, XzdSfkZonhefuwuFk::getTotalPaymentAmount, bo.getTotalPaymentAmount());
lqw.eq(bo.getCurrentProgressPayable() != null, XzdSfkZonhefuwuFk::getCurrentProgressPayable, bo.getCurrentProgressPayable());
lqw.eq(bo.getTotalProgressPayable() != null, XzdSfkZonhefuwuFk::getTotalProgressPayable, bo.getTotalProgressPayable());
lqw.eq(bo.getAdvanceDeductionAmount() != null, XzdSfkZonhefuwuFk::getAdvanceDeductionAmount, bo.getAdvanceDeductionAmount());
lqw.eq(bo.getTotalProgressSettlementRatio() != null, XzdSfkZonhefuwuFk::getTotalProgressSettlementRatio, bo.getTotalProgressSettlementRatio());
lqw.eq(bo.getCurrentPaymentRatio() != null, XzdSfkZonhefuwuFk::getCurrentPaymentRatio, bo.getCurrentPaymentRatio());
lqw.eq(bo.getTotalPaymentContractRatio() != null, XzdSfkZonhefuwuFk::getTotalPaymentContractRatio, bo.getTotalPaymentContractRatio());
lqw.eq(bo.getAdvanceRemainingDeduction() != null, XzdSfkZonhefuwuFk::getAdvanceRemainingDeduction, bo.getAdvanceRemainingDeduction());
lqw.eq(bo.getRemainingProgressPayable() != null, XzdSfkZonhefuwuFk::getRemainingProgressPayable, bo.getRemainingProgressPayable());
lqw.eq(bo.getTotalProgressSettlementAmount() != null, XzdSfkZonhefuwuFk::getTotalProgressSettlementAmount, bo.getTotalProgressSettlementAmount());
lqw.eq(bo.getRealTimeRefresh() != null, XzdSfkZonhefuwuFk::getRealTimeRefresh, bo.getRealTimeRefresh());
lqw.eq(bo.getContractTotalActualPayment() != null, XzdSfkZonhefuwuFk::getContractTotalActualPayment, bo.getContractTotalActualPayment());
lqw.eq(bo.getContractTaxInclAmount() != null, XzdSfkZonhefuwuFk::getContractTaxInclAmount, bo.getContractTaxInclAmount());
lqw.eq(bo.getTotalSettlementAmount() != null, XzdSfkZonhefuwuFk::getTotalSettlementAmount, bo.getTotalSettlementAmount());
lqw.eq(StringUtils.isNotBlank(bo.getDocumentReference()), XzdSfkZonhefuwuFk::getDocumentReference, bo.getDocumentReference());
lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdSfkZonhefuwuFk::getFileId, bo.getFileId());
return lqw;
}
/**
* 新增综合服务合同付款
*
* @param bo 综合服务合同付款
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(XzdSfkZonhefuwuFkBo bo) {
XzdSfkZonhefuwuFk add = MapstructUtils.convert(bo, XzdSfkZonhefuwuFk.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改综合服务合同付款
*
* @param bo 综合服务合同付款
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdSfkZonhefuwuFkBo bo) {
XzdSfkZonhefuwuFk update = MapstructUtils.convert(bo, XzdSfkZonhefuwuFk.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdSfkZonhefuwuFk entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除综合服务合同付款信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -64,6 +64,8 @@ public class XzdJsCgJungonEditVo implements Serializable {
@ExcelProperty(value = "决算单号", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "带=*,必填")
private Long finalAccountCode;
private String finalAccountCodeName;
/**
* 合同名称

View File

@ -67,4 +67,6 @@ public interface IXzdJsCgJungonService extends IService<XzdJsCgJungon>{
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
String queryNameById(Long contractCode);
}

View File

@ -22,6 +22,7 @@ import org.dromara.xzd.service.impl.XzdSupplierInfoServiceImpl;
import org.dromara.xzd.settlement.domain.XzdJsDeductionItems;
import org.dromara.xzd.settlement.domain.vo.XzdJsCgJinduVo;
import org.dromara.xzd.settlement.domain.vo.XzdJsCgJungonVo;
import org.dromara.xzd.settlement.service.IXzdJsCgJungonService;
import org.dromara.xzd.settlement.service.IXzdJsDeductionItemsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -62,6 +63,9 @@ public class XzdJsCgJungonEditServiceImpl extends ServiceImpl<XzdJsCgJungonEditM
@Autowired
private IXzdJsDeductionItemsService deductionItemsService;
@Autowired
private IXzdJsCgJungonService jungonService;
/**
* 查询采购合同竣工结算调整
*
@ -172,7 +176,7 @@ public class XzdJsCgJungonEditServiceImpl extends ServiceImpl<XzdJsCgJungonEditM
//合同条款-扣款与奖励项
for (XzdJsDeductionItems kkyjlx : bo.getKkyjlx()) {
kkyjlx.setTableName(tableName);
kkyjlx.setMainDocId(update.getFinalAccountCode());
kkyjlx.setMainDocId(update.getId());
}
//新增奖励与扣款数据
deductionItemsService.saveBatch(bo.getKkyjlx());
@ -227,6 +231,13 @@ public class XzdJsCgJungonEditServiceImpl extends ServiceImpl<XzdJsCgJungonEditM
item.setProjectName(projectName);
}
}
//决算单据名称
if (item.getContractCode() != null){
String codeName = jungonService.queryNameById(item.getContractCode());
if (codeName != null){
item.setContractCodeName(codeName);
}
}
//合同编码
if (item.getContractCode() != null){
String code = xzdPurchaseContractInformationService.queryCodeById(item.getContractCode());

View File

@ -229,6 +229,11 @@ public class XzdJsCgJungonServiceImpl extends ServiceImpl<XzdJsCgJungonMapper, X
return baseMapper.deleteByIds(ids) > 0;
}
@Override
public String queryNameById(Long contractCode) {
return baseMapper.selectVoById(contractCode).getDocCode();
}
/**
* 获取部分字段名称
* @param item

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.dromara.xzd.paymentsReceipts.mapper.XzdSfkCaigouFkMapper">
</mapper>

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.dromara.xzd.paymentsReceipts.mapper.XzdSfkFapiaoMapper">
</mapper>

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.dromara.xzd.paymentsReceipts.mapper.XzdSfkFukuanMapper">
</mapper>

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.dromara.xzd.paymentsReceipts.mapper.XzdSfkZonhefuwuFkMapper">
</mapper>