platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CurrentOverdueQueryDTO.java
New file @@ -0,0 +1,12 @@ package com.by4cloud.platformx.business.dto; import lombok.Data; @Data public class CurrentOverdueQueryDTO { private String contractName; private String busGuestName; } platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/CurrentOverdue.java
New file @@ -0,0 +1,53 @@ package com.by4cloud.platformx.business.entity; import com.by4cloud.platformx.common.data.mybatis.BaseModel; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.persistence.Column; import jakarta.persistence.Entity; import lombok.Data; import org.hibernate.annotations.Table; import java.math.BigDecimal; import java.util.Date; /** * 2026年4月29日 10:46:07 * syt */ @Data @Entity//加了才能自动生成表 @Table(appliesTo="current_overdue",comment = "未关闭合同(当前逾期)")//给表加注释 @jakarta.persistence.Table(name = "current_overdue")//数据库创建的表明 public class CurrentOverdue extends BaseModel<CurrentOverdue> { @Schema(description = "客商名称") @Column(columnDefinition="VARCHAR(64) comment '客商名称'") private String busGuestName; @Schema(description = "客商ID") @Column(columnDefinition="bigint comment '客商ID'") private Long busGuestId; @Schema(description = "合同名称") @Column(columnDefinition="VARCHAR(64) comment '合同名称'") private String contractName; @Schema(description = "合同ID") @Column(columnDefinition="bigint comment '合同ID'") private Long contractId; @Schema(description = "应收金额") @Column(columnDefinition="decimal(10,2) comment '应收金额 /元 两位小数'") private BigDecimal receivableAmount; @Schema(description = "合同到期时间") @Column(columnDefinition="datetime comment '合同到期时间'") @JsonFormat(pattern = "yyyy-MM-dd") private Date contractExpirTime; @Schema(description = "逾期时长") @Column(columnDefinition="decimal(10,0) comment '逾期时长 /天'") private BigDecimal overdueDuration; } platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/HistoryOverdue.java
New file @@ -0,0 +1,58 @@ package com.by4cloud.platformx.business.entity; import com.by4cloud.platformx.common.data.mybatis.BaseModel; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.persistence.Column; import jakarta.persistence.Entity; import lombok.Data; import org.hibernate.annotations.Table; import java.math.BigDecimal; import java.util.Date; /** * 2026年4月29日 10:46:07 * syt */ @Data @Entity//加了才能自动生成表 @Table(appliesTo="history_overdue",comment = "历史逾期")//给表加注释 @jakarta.persistence.Table(name = "history_overdue")//数据库创建的表明 public class HistoryOverdue extends BaseModel<HistoryOverdue> { @Schema(description = "客商名称") @Column(columnDefinition="VARCHAR(64) comment '客商名称'") private String busGuestName; @Schema(description = "客商ID") @Column(columnDefinition="bigint comment '客商ID'") private Long busGuestId; @Schema(description = "合同名称") @Column(columnDefinition="VARCHAR(64) comment '合同名称'") private String contractName; @Schema(description = "合同ID") @Column(columnDefinition="bigint comment '合同ID'") private Long contractId; @Schema(description = "应收金额") @Column(columnDefinition="decimal(10,2) comment '应收金额 /元 两位小数'") private BigDecimal receivableAmount; @Schema(description = "合同到期时间") @Column(columnDefinition="datetime comment '合同到期时间'") @JsonFormat(pattern = "yyyy-MM-dd") private Date contractExpirTime; @Schema(description = "付款时间") @Column(columnDefinition="datetime comment '付款时间'") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date paymentTime; @Schema(description = "逾期时长") @Column(columnDefinition="decimal(10,0) comment '逾期时长 /天'") private BigDecimal overdueDuration; } platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/OutBound.java
New file @@ -0,0 +1,51 @@ package com.by4cloud.platformx.business.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.by4cloud.platformx.common.data.mybatis.BaseModel; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.Transient; import lombok.Data; import org.hibernate.annotations.Table; import org.springframework.format.annotation.DateTimeFormat; import java.math.BigDecimal; import java.util.Date; /** * 2026年4月29日 10:46:07 * syt */ @Data @Entity//加了才能自动生成表 @Table(appliesTo="out_bound",comment = "EPR出库记录")//给表加注释 @jakarta.persistence.Table(name = "out_bound")//数据库创建的表明 public class OutBound extends BaseModel<OutBound> { @Schema(description = "客商名称") @Column(columnDefinition="VARCHAR(64) comment '客商名称'") private String busGuestName; @Schema(description = "客商ID") @Column(columnDefinition="bigint comment '客商ID'") private Long busGuestId; @Schema(description = "标的物名称") @Column(columnDefinition="VARCHAR(64) comment '标的物名称'") private String subjectMatterName; @Schema(description = "标的物编码") @Column(columnDefinition="VARCHAR(64) comment '标的物编码'") private String subjectMatterCode; @Schema(description = "出库数量") @Column(columnDefinition="decimal(10,0) comment '出库数量'") private BigDecimal outBoundNum; @Schema(description = "出库时间") @Column(columnDefinition="datetime comment '出库时间'") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date outBoundTime; } platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/OutBoundAtt.java
New file @@ -0,0 +1,34 @@ package com.by4cloud.platformx.business.entity; import com.by4cloud.platformx.common.data.mybatis.BaseModel; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.persistence.Column; import jakarta.persistence.Entity; import lombok.Data; import org.hibernate.annotations.Table; import java.math.BigDecimal; import java.util.Date; /** * 2026年4月29日 10:46:07 * syt */ @Data @Entity//加了才能自动生成表 @Table(appliesTo="out_bound_att",comment = "出库附件")//给表加注释 @jakarta.persistence.Table(name = "out_bound_att")//数据库创建的表明 public class OutBoundAtt extends BaseModel<OutBoundAtt> { @Schema(description = "出库记录ID") @Column(columnDefinition="bigint comment '出库记录ID'") private Long outBoundId; @Schema(description = "出库业务单据文件名称") @Column(columnDefinition="VARCHAR(255) comment '出库业务单据文件名称'") private String outBoundAtt; @Schema(description = "出库业务单据文件地址") @Column(columnDefinition="VARCHAR(255) comment '出库业务单据文件地址'") private String outBoundAttPath; } platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/PaymentConfirm.java
New file @@ -0,0 +1,66 @@ package com.by4cloud.platformx.business.entity; import com.by4cloud.platformx.common.data.mybatis.BaseModel; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.persistence.Column; import jakarta.persistence.Entity; import lombok.Data; import org.hibernate.annotations.Table; import java.math.BigDecimal; import java.util.Date; /** * 2026年4月29日 10:46:07 * syt */ @Data @Entity//加了才能自动生成表 @Table(appliesTo="payment_confirm",comment = "收款确认")//给表加注释 @jakarta.persistence.Table(name = "payment_confirm")//数据库创建的表明 public class PaymentConfirm extends BaseModel<PaymentConfirm> { @Schema(description = "客商名称") @Column(columnDefinition="VARCHAR(64) comment '客商名称'") private String busGuestName; @Schema(description = "客商ID") @Column(columnDefinition="bigint comment '客商ID'") private Long busGuestId; @Schema(description = "合同名称") @Column(columnDefinition="VARCHAR(64) comment '合同名称'") private String contractName; @Schema(description = "合同ID") @Column(columnDefinition="bigint comment '合同ID'") private Long contractId; @Schema(description = "收到总公司通知时间") @Column(columnDefinition="datetime comment '收到总公司通知时间'") private Date confirmTime; @Schema(description = "业务类型") @Column(columnDefinition="VARCHAR(255) comment '业务类型'") private String businessType; @Schema(description = "发生金额") @Column(columnDefinition="decimal(10,2) comment '发生金额 /元 两位小数'") private BigDecimal transationAmount; @Schema(description = "预收金额") @Column(columnDefinition="decimal(10,2) comment '预收金额 /元 两位小数'") private BigDecimal advanceAmount; @Schema(description = "应收金额") @Column(columnDefinition="decimal(10,2) comment '应收金额 /元 两位小数'") private BigDecimal receivableAmount; @Schema(description = "逾期金额") @Column(columnDefinition="decimal(10,2) comment '逾期金额 /元 两位小数'") private BigDecimal overdueAmount; @Schema(description = "总额") @Column(columnDefinition="decimal(10,2) comment '总额 /元 两位小数'") private BigDecimal totalAmount; } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/CurrentOverdueController.java
New file @@ -0,0 +1,125 @@ package com.by4cloud.platformx.business.controller; import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.by4cloud.platformx.business.dto.CurrentOverdueQueryDTO; import com.by4cloud.platformx.business.entity.HistoryOverdue; import com.by4cloud.platformx.common.core.util.R; import com.by4cloud.platformx.common.log.annotation.SysLog; import com.by4cloud.platformx.business.entity.CurrentOverdue; import com.by4cloud.platformx.business.service.CurrentOverdueService; import org.springframework.security.access.prepost.PreAuthorize; import com.by4cloud.platformx.common.excel.annotation.ResponseExcel; import io.swagger.v3.oas.annotations.security.SecurityRequirement; import org.springdoc.core.annotations.ParameterObject; import org.springframework.http.HttpHeaders; import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Objects; /** * 未关闭合同(当前逾期) * * @author syt * @date 2026-04-29 11:30:20 */ @RestController @RequiredArgsConstructor @RequestMapping("/currentOverdue" ) @Tag(description = "currentOverdue" , name = "未关闭合同(当前逾期)管理" ) @SecurityRequirement(name = HttpHeaders.AUTHORIZATION) public class CurrentOverdueController { private final CurrentOverdueService currentOverdueService; /** * 分页查询 * @param page 分页对象 * @param currentOverdue 未关闭合同(当前逾期) * @return */ @Operation(summary = "分页查询" , description = "分页查询" ) @GetMapping("/page" ) @PreAuthorize("@pms.hasPermission('business_currentOverdue_view')" ) public R getCurrentOverduePage(@ParameterObject Page page, @ParameterObject CurrentOverdue currentOverdue) { LambdaQueryWrapper<CurrentOverdue> wrapper = Wrappers.lambdaQuery(); wrapper.like(StrUtil.isNotBlank(currentOverdue.getBusGuestName()),CurrentOverdue::getBusGuestName,currentOverdue.getBusGuestName()); wrapper.like(StrUtil.isNotBlank(currentOverdue.getContractName()),CurrentOverdue::getContractName,currentOverdue.getContractName()); wrapper.orderByDesc(CurrentOverdue::getCreateTime); return R.ok(currentOverdueService.page(page, wrapper)); } /** * 通过id查询未关闭合同(当前逾期) * @param id id * @return R */ @Operation(summary = "通过id查询" , description = "通过id查询" ) @GetMapping("/{id}" ) @PreAuthorize("@pms.hasPermission('business_currentOverdue_view')" ) public R getById(@PathVariable("id" ) Long id) { return R.ok(currentOverdueService.getById(id)); } /** * 新增未关闭合同(当前逾期) * @param currentOverdue 未关闭合同(当前逾期) * @return R */ @Operation(summary = "新增未关闭合同(当前逾期)" , description = "新增未关闭合同(当前逾期)" ) @SysLog("新增未关闭合同(当前逾期)" ) @PostMapping @PreAuthorize("@pms.hasPermission('business_currentOverdue_add')" ) public R save(@RequestBody CurrentOverdue currentOverdue) { return R.ok(currentOverdueService.save(currentOverdue)); } /** * 修改未关闭合同(当前逾期) * @param currentOverdue 未关闭合同(当前逾期) * @return R */ @Operation(summary = "修改未关闭合同(当前逾期)" , description = "修改未关闭合同(当前逾期)" ) @SysLog("修改未关闭合同(当前逾期)" ) @PutMapping @PreAuthorize("@pms.hasPermission('business_currentOverdue_edit')" ) public R updateById(@RequestBody CurrentOverdue currentOverdue) { return R.ok(currentOverdueService.updateById(currentOverdue)); } /** * 通过id删除未关闭合同(当前逾期) * @param ids id列表 * @return R */ @Operation(summary = "通过id删除未关闭合同(当前逾期)" , description = "通过id删除未关闭合同(当前逾期)" ) @SysLog("通过id删除未关闭合同(当前逾期)" ) @DeleteMapping @PreAuthorize("@pms.hasPermission('business_currentOverdue_del')" ) public R removeById(@RequestBody Long[] ids) { return R.ok(currentOverdueService.removeBatchByIds(CollUtil.toList(ids))); } /** * 导出excel 表格 * @param currentOverdue 查询条件 * @param ids 导出指定ID * @return excel 文件流 */ @ResponseExcel @GetMapping("/export") @PreAuthorize("@pms.hasPermission('business_currentOverdue_export')" ) public List<CurrentOverdue> export(CurrentOverdue currentOverdue,Long[] ids) { return currentOverdueService.list(Wrappers.lambdaQuery(currentOverdue).in(ArrayUtil.isNotEmpty(ids), CurrentOverdue::getId, ids)); } } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/HistoryOverdueController.java
New file @@ -0,0 +1,123 @@ package com.by4cloud.platformx.business.controller; import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.by4cloud.platformx.common.core.util.R; import com.by4cloud.platformx.common.log.annotation.SysLog; import com.by4cloud.platformx.business.entity.HistoryOverdue; import com.by4cloud.platformx.business.service.HistoryOverdueService; import org.springframework.security.access.prepost.PreAuthorize; import com.by4cloud.platformx.common.excel.annotation.ResponseExcel; import io.swagger.v3.oas.annotations.security.SecurityRequirement; import org.springdoc.core.annotations.ParameterObject; import org.springframework.http.HttpHeaders; import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Objects; /** * 历史逾期 * * @author syt * @date 2026-04-29 11:31:18 */ @RestController @RequiredArgsConstructor @RequestMapping("/historyOverdue" ) @Tag(description = "historyOverdue" , name = "历史逾期管理" ) @SecurityRequirement(name = HttpHeaders.AUTHORIZATION) public class HistoryOverdueController { private final HistoryOverdueService historyOverdueService; /** * 分页查询 * @param page 分页对象 * @param historyOverdue 历史逾期 * @return */ @Operation(summary = "分页查询" , description = "分页查询" ) @GetMapping("/page" ) @PreAuthorize("@pms.hasPermission('business_historyOverdue_view')" ) public R getHistoryOverduePage(@ParameterObject Page page, @ParameterObject HistoryOverdue historyOverdue) { LambdaQueryWrapper<HistoryOverdue> wrapper = Wrappers.lambdaQuery(); wrapper.like(StrUtil.isNotBlank(historyOverdue.getBusGuestName()),HistoryOverdue::getBusGuestName,historyOverdue.getBusGuestName()); wrapper.like(StrUtil.isNotBlank(historyOverdue.getContractName()),HistoryOverdue::getContractName,historyOverdue.getContractName()); wrapper.orderByDesc(HistoryOverdue::getCreateTime); return R.ok(historyOverdueService.page(page, wrapper)); } /** * 通过id查询历史逾期 * @param id id * @return R */ @Operation(summary = "通过id查询" , description = "通过id查询" ) @GetMapping("/{id}" ) @PreAuthorize("@pms.hasPermission('business_historyOverdue_view')" ) public R getById(@PathVariable("id" ) Long id) { return R.ok(historyOverdueService.getById(id)); } /** * 新增历史逾期 * @param historyOverdue 历史逾期 * @return R */ @Operation(summary = "新增历史逾期" , description = "新增历史逾期" ) @SysLog("新增历史逾期" ) @PostMapping @PreAuthorize("@pms.hasPermission('business_historyOverdue_add')" ) public R save(@RequestBody HistoryOverdue historyOverdue) { return R.ok(historyOverdueService.save(historyOverdue)); } /** * 修改历史逾期 * @param historyOverdue 历史逾期 * @return R */ @Operation(summary = "修改历史逾期" , description = "修改历史逾期" ) @SysLog("修改历史逾期" ) @PutMapping @PreAuthorize("@pms.hasPermission('business_historyOverdue_edit')" ) public R updateById(@RequestBody HistoryOverdue historyOverdue) { return R.ok(historyOverdueService.updateById(historyOverdue)); } /** * 通过id删除历史逾期 * @param ids id列表 * @return R */ @Operation(summary = "通过id删除历史逾期" , description = "通过id删除历史逾期" ) @SysLog("通过id删除历史逾期" ) @DeleteMapping @PreAuthorize("@pms.hasPermission('business_historyOverdue_del')" ) public R removeById(@RequestBody Long[] ids) { return R.ok(historyOverdueService.removeBatchByIds(CollUtil.toList(ids))); } /** * 导出excel 表格 * @param historyOverdue 查询条件 * @param ids 导出指定ID * @return excel 文件流 */ @ResponseExcel @GetMapping("/export") @PreAuthorize("@pms.hasPermission('business_historyOverdue_export')" ) public List<HistoryOverdue> export(HistoryOverdue historyOverdue,Long[] ids) { return historyOverdueService.list(Wrappers.lambdaQuery(historyOverdue).in(ArrayUtil.isNotEmpty(ids), HistoryOverdue::getId, ids)); } } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/OutBoundController.java
New file @@ -0,0 +1,123 @@ package com.by4cloud.platformx.business.controller; import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.by4cloud.platformx.common.core.util.R; import com.by4cloud.platformx.common.log.annotation.SysLog; import com.by4cloud.platformx.business.entity.OutBound; import com.by4cloud.platformx.business.service.OutBoundService; import org.springframework.security.access.prepost.PreAuthorize; import com.by4cloud.platformx.common.excel.annotation.ResponseExcel; import io.swagger.v3.oas.annotations.security.SecurityRequirement; import org.springdoc.core.annotations.ParameterObject; import org.springframework.http.HttpHeaders; import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Objects; /** * EPR出库记录 * * @author syt * @date 2026-04-29 11:32:05 */ @RestController @RequiredArgsConstructor @RequestMapping("/outBound" ) @Tag(description = "outBound" , name = "EPR出库记录管理" ) @SecurityRequirement(name = HttpHeaders.AUTHORIZATION) public class OutBoundController { private final OutBoundService outBoundService; /** * 分页查询 * @param page 分页对象 * @param outBound EPR出库记录 * @return */ @Operation(summary = "分页查询" , description = "分页查询" ) @GetMapping("/page" ) @PreAuthorize("@pms.hasPermission('business_outBound_view')" ) public R getOutBoundPage(@ParameterObject Page page, @ParameterObject OutBound outBound) { LambdaQueryWrapper<OutBound> wrapper = Wrappers.lambdaQuery(); wrapper.like(StrUtil.isNotBlank(outBound.getBusGuestName()),OutBound::getBusGuestName,outBound.getBusGuestName()); wrapper.like(StrUtil.isNotBlank(outBound.getSubjectMatterName()),OutBound::getSubjectMatterName,outBound.getSubjectMatterName()); wrapper.orderByDesc(OutBound::getCreateTime); return R.ok(outBoundService.page(page, wrapper)); } /** * 通过id查询EPR出库记录 * @param id id * @return R */ @Operation(summary = "通过id查询" , description = "通过id查询" ) @GetMapping("/{id}" ) @PreAuthorize("@pms.hasPermission('business_outBound_view')" ) public R getById(@PathVariable("id" ) Long id) { return R.ok(outBoundService.getById(id)); } /** * 新增EPR出库记录 * @param outBound EPR出库记录 * @return R */ @Operation(summary = "新增EPR出库记录" , description = "新增EPR出库记录" ) @SysLog("新增EPR出库记录" ) @PostMapping @PreAuthorize("@pms.hasPermission('business_outBound_add')" ) public R save(@RequestBody OutBound outBound) { return R.ok(outBoundService.save(outBound)); } /** * 修改EPR出库记录 * @param outBound EPR出库记录 * @return R */ @Operation(summary = "修改EPR出库记录" , description = "修改EPR出库记录" ) @SysLog("修改EPR出库记录" ) @PutMapping @PreAuthorize("@pms.hasPermission('business_outBound_edit')" ) public R updateById(@RequestBody OutBound outBound) { return R.ok(outBoundService.updateById(outBound)); } /** * 通过id删除EPR出库记录 * @param ids id列表 * @return R */ @Operation(summary = "通过id删除EPR出库记录" , description = "通过id删除EPR出库记录" ) @SysLog("通过id删除EPR出库记录" ) @DeleteMapping @PreAuthorize("@pms.hasPermission('business_outBound_del')" ) public R removeById(@RequestBody Long[] ids) { return R.ok(outBoundService.removeBatchByIds(CollUtil.toList(ids))); } /** * 导出excel 表格 * @param outBound 查询条件 * @param ids 导出指定ID * @return excel 文件流 */ @ResponseExcel @GetMapping("/export") @PreAuthorize("@pms.hasPermission('business_outBound_export')" ) public List<OutBound> export(OutBound outBound,Long[] ids) { return outBoundService.list(Wrappers.lambdaQuery(outBound).in(ArrayUtil.isNotEmpty(ids), OutBound::getId, ids)); } } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/PaymentConfirmController.java
New file @@ -0,0 +1,123 @@ package com.by4cloud.platformx.business.controller; import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.by4cloud.platformx.common.core.util.R; import com.by4cloud.platformx.common.log.annotation.SysLog; import com.by4cloud.platformx.business.entity.PaymentConfirm; import com.by4cloud.platformx.business.service.PaymentConfirmService; import org.springframework.security.access.prepost.PreAuthorize; import com.by4cloud.platformx.common.excel.annotation.ResponseExcel; import io.swagger.v3.oas.annotations.security.SecurityRequirement; import org.springdoc.core.annotations.ParameterObject; import org.springframework.http.HttpHeaders; import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Objects; /** * 收款确认 * * @author syt * @date 2026-04-29 11:33:26 */ @RestController @RequiredArgsConstructor @RequestMapping("/paymentConfirm" ) @Tag(description = "paymentConfirm" , name = "收款确认管理" ) @SecurityRequirement(name = HttpHeaders.AUTHORIZATION) public class PaymentConfirmController { private final PaymentConfirmService paymentConfirmService; /** * 分页查询 * @param page 分页对象 * @param paymentConfirm 收款确认 * @return */ @Operation(summary = "分页查询" , description = "分页查询" ) @GetMapping("/page" ) @PreAuthorize("@pms.hasPermission('business_paymentConfirm_view')" ) public R getPaymentConfirmPage(@ParameterObject Page page, @ParameterObject PaymentConfirm paymentConfirm) { LambdaQueryWrapper<PaymentConfirm> wrapper = Wrappers.lambdaQuery(); wrapper.like(StrUtil.isNotBlank(paymentConfirm.getBusGuestName()),PaymentConfirm::getBusGuestName,paymentConfirm.getBusGuestName()); wrapper.like(StrUtil.isNotBlank(paymentConfirm.getContractName()),PaymentConfirm::getContractName,paymentConfirm.getContractName()); wrapper.orderByDesc(PaymentConfirm::getCreateTime); return R.ok(paymentConfirmService.page(page, wrapper)); } /** * 通过id查询收款确认 * @param id id * @return R */ @Operation(summary = "通过id查询" , description = "通过id查询" ) @GetMapping("/{id}" ) @PreAuthorize("@pms.hasPermission('business_paymentConfirm_view')" ) public R getById(@PathVariable("id" ) Long id) { return R.ok(paymentConfirmService.getById(id)); } /** * 新增收款确认 * @param paymentConfirm 收款确认 * @return R */ @Operation(summary = "新增收款确认" , description = "新增收款确认" ) @SysLog("新增收款确认" ) @PostMapping @PreAuthorize("@pms.hasPermission('business_paymentConfirm_add')" ) public R save(@RequestBody PaymentConfirm paymentConfirm) { return R.ok(paymentConfirmService.save(paymentConfirm)); } /** * 修改收款确认 * @param paymentConfirm 收款确认 * @return R */ @Operation(summary = "修改收款确认" , description = "修改收款确认" ) @SysLog("修改收款确认" ) @PutMapping @PreAuthorize("@pms.hasPermission('business_paymentConfirm_edit')" ) public R updateById(@RequestBody PaymentConfirm paymentConfirm) { return R.ok(paymentConfirmService.updateById(paymentConfirm)); } /** * 通过id删除收款确认 * @param ids id列表 * @return R */ @Operation(summary = "通过id删除收款确认" , description = "通过id删除收款确认" ) @SysLog("通过id删除收款确认" ) @DeleteMapping @PreAuthorize("@pms.hasPermission('business_paymentConfirm_del')" ) public R removeById(@RequestBody Long[] ids) { return R.ok(paymentConfirmService.removeBatchByIds(CollUtil.toList(ids))); } /** * 导出excel 表格 * @param paymentConfirm 查询条件 * @param ids 导出指定ID * @return excel 文件流 */ @ResponseExcel @GetMapping("/export") @PreAuthorize("@pms.hasPermission('business_paymentConfirm_export')" ) public List<PaymentConfirm> export(PaymentConfirm paymentConfirm,Long[] ids) { return paymentConfirmService.list(Wrappers.lambdaQuery(paymentConfirm).in(ArrayUtil.isNotEmpty(ids), PaymentConfirm::getId, ids)); } } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/TestController.java
New file @@ -0,0 +1,19 @@ package com.by4cloud.platformx.business.controller; import com.by4cloud.platformx.common.core.util.R; import com.by4cloud.platformx.common.security.annotation.Inner; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/test") public class TestController { @Inner(value = false) @GetMapping("/test") public R test() { return R.ok(); } } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/CurrentOverdueMapper.java
New file @@ -0,0 +1,11 @@ package com.by4cloud.platformx.business.mapper; import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper; import com.by4cloud.platformx.business.entity.CurrentOverdue; import org.apache.ibatis.annotations.Mapper; @Mapper public interface CurrentOverdueMapper extends PlatformxBaseMapper<CurrentOverdue> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/HistoryOverdueMapper.java
New file @@ -0,0 +1,11 @@ package com.by4cloud.platformx.business.mapper; import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper; import com.by4cloud.platformx.business.entity.HistoryOverdue; import org.apache.ibatis.annotations.Mapper; @Mapper public interface HistoryOverdueMapper extends PlatformxBaseMapper<HistoryOverdue> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/OutBoundAttMapper.java
New file @@ -0,0 +1,11 @@ package com.by4cloud.platformx.business.mapper; import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper; import com.by4cloud.platformx.business.entity.OutBoundAtt; import org.apache.ibatis.annotations.Mapper; @Mapper public interface OutBoundAttMapper extends PlatformxBaseMapper<OutBoundAtt> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/OutBoundMapper.java
New file @@ -0,0 +1,11 @@ package com.by4cloud.platformx.business.mapper; import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper; import com.by4cloud.platformx.business.entity.OutBound; import org.apache.ibatis.annotations.Mapper; @Mapper public interface OutBoundMapper extends PlatformxBaseMapper<OutBound> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/PaymentConfirmMapper.java
New file @@ -0,0 +1,11 @@ package com.by4cloud.platformx.business.mapper; import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper; import com.by4cloud.platformx.business.entity.PaymentConfirm; import org.apache.ibatis.annotations.Mapper; @Mapper public interface PaymentConfirmMapper extends PlatformxBaseMapper<PaymentConfirm> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/CurrentOverdueService.java
New file @@ -0,0 +1,8 @@ package com.by4cloud.platformx.business.service; import com.baomidou.mybatisplus.extension.service.IService; import com.by4cloud.platformx.business.entity.CurrentOverdue; public interface CurrentOverdueService extends IService<CurrentOverdue> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/HistoryOverdueService.java
New file @@ -0,0 +1,8 @@ package com.by4cloud.platformx.business.service; import com.baomidou.mybatisplus.extension.service.IService; import com.by4cloud.platformx.business.entity.HistoryOverdue; public interface HistoryOverdueService extends IService<HistoryOverdue> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/OutBoundAttService.java
New file @@ -0,0 +1,8 @@ package com.by4cloud.platformx.business.service; import com.baomidou.mybatisplus.extension.service.IService; import com.by4cloud.platformx.business.entity.OutBoundAtt; public interface OutBoundAttService extends IService<OutBoundAtt> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/OutBoundService.java
New file @@ -0,0 +1,8 @@ package com.by4cloud.platformx.business.service; import com.baomidou.mybatisplus.extension.service.IService; import com.by4cloud.platformx.business.entity.OutBound; public interface OutBoundService extends IService<OutBound> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/PaymentConfirmService.java
New file @@ -0,0 +1,8 @@ package com.by4cloud.platformx.business.service; import com.baomidou.mybatisplus.extension.service.IService; import com.by4cloud.platformx.business.entity.PaymentConfirm; public interface PaymentConfirmService extends IService<PaymentConfirm> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CurrentOverdueServiceImpl.java
New file @@ -0,0 +1,24 @@ package com.by4cloud.platformx.business.service.impl; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.by4cloud.platformx.business.entity.CurrentOverdue; import com.by4cloud.platformx.business.mapper.CurrentOverdueMapper; import com.by4cloud.platformx.business.service.CurrentOverdueService; import org.springframework.stereotype.Service; /** * 未关闭合同(当前逾期) * * @author syt * @date 2026-04-29 11:30:20 */ @Service public class CurrentOverdueServiceImpl extends ServiceImpl<CurrentOverdueMapper, CurrentOverdue> implements CurrentOverdueService { @Override public boolean save(CurrentOverdue entity) { return super.save(entity); } } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/HistoryOverdueServiceImpl.java
New file @@ -0,0 +1,16 @@ package com.by4cloud.platformx.business.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.by4cloud.platformx.business.entity.HistoryOverdue; import com.by4cloud.platformx.business.mapper.HistoryOverdueMapper; import com.by4cloud.platformx.business.service.HistoryOverdueService; import org.springframework.stereotype.Service; /** * 历史逾期 * * @author syt * @date 2026-04-29 11:31:18 */ @Service public class HistoryOverdueServiceImpl extends ServiceImpl<HistoryOverdueMapper, HistoryOverdue> implements HistoryOverdueService { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundAttServiceImpl.java
New file @@ -0,0 +1,16 @@ package com.by4cloud.platformx.business.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.by4cloud.platformx.business.entity.OutBoundAtt; import com.by4cloud.platformx.business.mapper.OutBoundAttMapper; import com.by4cloud.platformx.business.service.OutBoundAttService; import org.springframework.stereotype.Service; /** * 出库附件 * * @author syt * @date 2026-04-29 11:32:47 */ @Service public class OutBoundAttServiceImpl extends ServiceImpl<OutBoundAttMapper, OutBoundAtt> implements OutBoundAttService { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java
New file @@ -0,0 +1,25 @@ package com.by4cloud.platformx.business.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.by4cloud.platformx.business.entity.OutBound; import com.by4cloud.platformx.business.mapper.OutBoundMapper; import com.by4cloud.platformx.business.service.OutBoundService; import org.springframework.stereotype.Service; import java.util.Date; /** * EPR出库记录 * * @author syt * @date 2026-04-29 11:32:05 */ @Service public class OutBoundServiceImpl extends ServiceImpl<OutBoundMapper, OutBound> implements OutBoundService { @Override public boolean save(OutBound entity) { entity.setOutBoundTime(new Date()); return super.save(entity); } } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java
New file @@ -0,0 +1,25 @@ package com.by4cloud.platformx.business.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.by4cloud.platformx.business.entity.PaymentConfirm; import com.by4cloud.platformx.business.mapper.PaymentConfirmMapper; import com.by4cloud.platformx.business.service.PaymentConfirmService; import org.springframework.stereotype.Service; import java.util.Date; /** * 收款确认 * * @author syt * @date 2026-04-29 11:33:26 */ @Service public class PaymentConfirmServiceImpl extends ServiceImpl<PaymentConfirmMapper, PaymentConfirm> implements PaymentConfirmService { @Override public boolean save(PaymentConfirm entity) { entity.setConfirmTime(new Date()); return super.save(entity); } } platformx-business-finance-biz/src/main/resources/mapper/CurrentOverdueMapper.xml
New file @@ -0,0 +1,22 @@ <?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="com.by4cloud.platformx.business.mapper.CurrentOverdueMapper"> <resultMap id="currentOverdueMap" type="com.by4cloud.platformx.business.entity.CurrentOverdue"> <id property="id" column="id"/> <result property="compId" column="comp_id"/> <result property="busGuestId" column="bus_guest_id"/> <result property="busGuestName" column="bus_guest_name"/> <result property="contractExpirTime" column="contract_expir_time"/> <result property="contractId" column="contract_id"/> <result property="contractName" column="contract_name"/> <result property="overdueDuration" column="overdue_duration"/> <result property="receivableAmount" column="receivable_amount"/> <result property="createBy" column="create_by"/> <result property="createTime" column="create_time"/> <result property="updateBy" column="update_by"/> <result property="updateTime" column="update_time"/> <result property="delFlag" column="del_flag"/> </resultMap> </mapper> platformx-business-finance-biz/src/main/resources/mapper/HistoryOverdueMapper.xml
New file @@ -0,0 +1,23 @@ <?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="com.by4cloud.platformx.business.mapper.HistoryOverdueMapper"> <resultMap id="historyOverdueMap" type="com.by4cloud.platformx.business.entity.HistoryOverdue"> <id property="id" column="id"/> <result property="compId" column="comp_id"/> <result property="busGuestId" column="bus_guest_id"/> <result property="busGuestName" column="bus_guest_name"/> <result property="contractExpirTime" column="contract_expir_time"/> <result property="contractId" column="contract_id"/> <result property="contractName" column="contract_name"/> <result property="overdueDuration" column="overdue_duration"/> <result property="paymentTime" column="payment_time"/> <result property="receivableAmount" column="receivable_amount"/> <result property="createBy" column="create_by"/> <result property="createTime" column="create_time"/> <result property="updateBy" column="update_by"/> <result property="updateTime" column="update_time"/> <result property="delFlag" column="del_flag"/> </resultMap> </mapper> platformx-business-finance-biz/src/main/resources/mapper/OutBoundAttMapper.xml
New file @@ -0,0 +1,18 @@ <?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="com.by4cloud.platformx.business.mapper.OutBoundAttMapper"> <resultMap id="outBoundAttMap" type="com.by4cloud.platformx.business.entity.OutBoundAtt"> <id property="id" column="id"/> <result property="compId" column="comp_id"/> <result property="outBoundAtt" column="out_bound_att"/> <result property="outBoundAttPath" column="out_bound_att_path"/> <result property="outBoundId" column="out_bound_id"/> <result property="createBy" column="create_by"/> <result property="createTime" column="create_time"/> <result property="updateBy" column="update_by"/> <result property="updateTime" column="update_time"/> <result property="delFlag" column="del_flag"/> </resultMap> </mapper> platformx-business-finance-biz/src/main/resources/mapper/OutBoundMapper.xml
New file @@ -0,0 +1,21 @@ <?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="com.by4cloud.platformx.business.mapper.OutBoundMapper"> <resultMap id="outBoundMap" type="com.by4cloud.platformx.business.entity.OutBound"> <id property="id" column="id"/> <result property="compId" column="comp_id"/> <result property="busGuestId" column="bus_guest_id"/> <result property="busGuestName" column="bus_guest_name"/> <result property="outBoundNum" column="out_bound_num"/> <result property="outBoundTime" column="out_bound_time"/> <result property="subjectMatterCode" column="subject_matter_code"/> <result property="subjectMatterName" column="subject_matter_name"/> <result property="createBy" column="create_by"/> <result property="createTime" column="create_time"/> <result property="updateBy" column="update_by"/> <result property="updateTime" column="update_time"/> <result property="delFlag" column="del_flag"/> </resultMap> </mapper> platformx-business-finance-biz/src/main/resources/mapper/PaymentConfirmMapper.xml
New file @@ -0,0 +1,26 @@ <?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="com.by4cloud.platformx.business.mapper.PaymentConfirmMapper"> <resultMap id="paymentConfirmMap" type="com.by4cloud.platformx.business.entity.PaymentConfirm"> <id property="id" column="id"/> <result property="compId" column="comp_id"/> <result property="advanceAmount" column="advance_amount"/> <result property="busGuestId" column="bus_guest_id"/> <result property="busGuestName" column="bus_guest_name"/> <result property="businessType" column="business_type"/> <result property="confirmTime" column="confirm_time"/> <result property="contractId" column="contract_id"/> <result property="contractName" column="contract_name"/> <result property="overdueAmount" column="overdue_amount"/> <result property="receivableAmount" column="receivable_amount"/> <result property="totalAmount" column="total_amount"/> <result property="transationAmount" column="transation_amount"/> <result property="createBy" column="create_by"/> <result property="createTime" column="create_time"/> <result property="updateBy" column="update_by"/> <result property="updateTime" column="update_time"/> <result property="delFlag" column="del_flag"/> </resultMap> </mapper>