From 9021b348e60d3386dc48542797bfe9dd69d8f4c2 Mon Sep 17 00:00:00 2001 From: Yen Date: Fri, 13 Jan 2023 17:03:44 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=96=B0=E5=A2=9E=E7=9A=84?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/bms/entity/so/BmsSupplierSo.java | 41 ++++++++++ .../pay/controller/PayPaymentController.java | 57 +++++++++++++- .../serve/modules/pay/entity/PayPayment.java | 15 ++++ .../modules/pay/entity/bo/PayUnPaymentBo.java | 33 ++++++++ .../pay/entity/dto/PaySupplierAmountDto.java | 17 +++++ .../modules/pay/entity/so/PayPaymentSo.java | 15 ++++ .../modules/pay/entity/vo/PaySupplierVo.java | 35 +++++++++ .../modules/pay/mapper/PaySupplierMapper.java | 41 ++++++++++ .../service/impl/PayPaymentServiceImpl.java | 5 +- .../tbs/controller/TbsActivityController.java | 28 ++++--- .../controller/TbsCostApplyController.java | 6 ++ .../serve/modules/tbs/entity/TbsActivity.java | 14 ++++ .../modules/tbs/entity/TbsCostApply.java | 1 + .../TbsActivitySo.java} | 32 +++----- .../controller/VtbVerificationController.java | 8 ++ .../modules/vtb/entity/VtbVerification.java | 35 +++++++++ .../vtb/entity/so/VtbVerificationSo.java | 48 ++++++------ .../service/impl/VtbFundFlowServiceImpl.java | 2 + .../impl/VtbVerificationServiceImpl.java | 6 ++ .../mapper/pay/PaySupplierMapper.xml | 76 +++++++++++++++++++ 20 files changed, 456 insertions(+), 59 deletions(-) create mode 100644 src/main/java/com/qs/serve/modules/bms/entity/so/BmsSupplierSo.java create mode 100644 src/main/java/com/qs/serve/modules/pay/entity/bo/PayUnPaymentBo.java create mode 100644 src/main/java/com/qs/serve/modules/pay/entity/dto/PaySupplierAmountDto.java create mode 100644 src/main/java/com/qs/serve/modules/pay/entity/vo/PaySupplierVo.java create mode 100644 src/main/java/com/qs/serve/modules/pay/mapper/PaySupplierMapper.java rename src/main/java/com/qs/serve/modules/tbs/entity/{vo/TbsActivityVo.java => so/TbsActivitySo.java} (74%) create mode 100644 src/main/resources/mapper/pay/PaySupplierMapper.xml diff --git a/src/main/java/com/qs/serve/modules/bms/entity/so/BmsSupplierSo.java b/src/main/java/com/qs/serve/modules/bms/entity/so/BmsSupplierSo.java new file mode 100644 index 00000000..82ecab50 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/bms/entity/so/BmsSupplierSo.java @@ -0,0 +1,41 @@ +package com.qs.serve.modules.bms.entity.so; + +import com.baomidou.mybatisplus.annotation.*; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.qs.serve.common.framework.mybatis.handler.meta.SplitStringTypeHandler; +import com.qs.serve.modules.his.entity.HisUserSupplier; +import lombok.Data; +import org.apache.ibatis.type.JdbcType; +import org.hibernate.validator.constraints.Length; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.math.BigDecimal; +import java.time.LocalDateTime; +import java.util.List; + +/** + * 供应商 实体类 + * @author YenHex + * @since 2022-10-11 + */ +@Data +public class BmsSupplierSo implements Serializable { + + + /** 名称 */ + @NotBlank(message = "名称不能为空") + @Length(max = 20,message = "名称长度不能超过20字") + private String name; + + /** 客户编码 */ + @NotBlank(message = "客户编码不能为空") + @Length(max = 20,message = "客户编码长度不能超过20字") + private String code; + +} + diff --git a/src/main/java/com/qs/serve/modules/pay/controller/PayPaymentController.java b/src/main/java/com/qs/serve/modules/pay/controller/PayPaymentController.java index 41622b11..288fef63 100644 --- a/src/main/java/com/qs/serve/modules/pay/controller/PayPaymentController.java +++ b/src/main/java/com/qs/serve/modules/pay/controller/PayPaymentController.java @@ -1,16 +1,25 @@ package com.qs.serve.modules.pay.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.github.pagehelper.PageHelper; import com.qs.serve.common.model.annotation.SysLog; import com.qs.serve.common.model.dto.PageVo; import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.enums.BizType; import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.CollectionUtil; import com.qs.serve.common.util.PageUtil; import com.qs.serve.common.util.CopierUtil; import com.qs.serve.common.util.StringUtils; +import com.qs.serve.modules.bms.entity.BmsSupplier; +import com.qs.serve.modules.bms.entity.so.BmsSupplierSo; +import com.qs.serve.modules.bms.service.BmsSupplierService; import com.qs.serve.modules.pay.entity.PayPaymentItem; +import com.qs.serve.modules.pay.entity.bo.PayUnPaymentBo; import com.qs.serve.modules.pay.entity.dto.PayPaymentAmountDto; +import com.qs.serve.modules.pay.entity.dto.PaySupplierAmountDto; +import com.qs.serve.modules.pay.entity.vo.PaySupplierVo; +import com.qs.serve.modules.pay.mapper.PaySupplierMapper; import com.qs.serve.modules.pay.service.PayPaymentItemService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -24,6 +33,7 @@ import com.qs.serve.modules.pay.service.PayPaymentService; import javax.validation.Valid; import java.util.List; +import java.util.stream.Collectors; /** * 【支付】 @@ -38,7 +48,39 @@ public class PayPaymentController { private PayPaymentService payPaymentService; private PayPaymentItemService paymentItemService; + private BmsSupplierService bmsSupplierService; + private PaySupplierMapper paySupplierMapper; + /** + * 客户费用列表 + * @return + */ + @GetMapping("supplierPage") + public R> getSupplierPage(BmsSupplierSo paramSo){ + BmsSupplier param = CopierUtil.copy(paramSo,new BmsSupplier()); + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(param); + PageUtil.startPage(); + List list = bmsSupplierService.list(lqw); + if(CollectionUtil.isNotEmpty(list)){ + List supplierIds = list.stream().map(BmsSupplier::getId).collect(Collectors.toList()); + List costAmountList = paySupplierMapper.sumCostAmount(supplierIds); + List payAmountList = paySupplierMapper.sumPayAmount(supplierIds); + List unPayAmountList = paySupplierMapper.sumUnPayAmount(supplierIds); + List checkAmountList = paySupplierMapper.sumCheckAmount(supplierIds); + List supplierVoList = list.stream().map(supplier -> { + Long supplierId = Long.parseLong(supplier.getId()); + PaySupplierVo supplierVo = new PaySupplierVo(); + supplierVo.setSupplierId(supplierId); + supplierVo.setSupplierCode(supplier.getCode()); + supplierVo.setSupplierName(supplier.getName()); + + return supplierVo; + }).collect(Collectors.toList()); + } + + //return R.byPageHelperList(list); + return null; + } /** * 翻页 @@ -100,7 +142,20 @@ public class PayPaymentController { } /** - * 新增支付 + * 新增不再支付 + * @param param + * @return + */ + @PostMapping("/unPayment") + @SysLog(module = SystemModule.Payment, title = "支付", biz = BizType.INSERT) + @PreAuthorize("hasRole('pay:payment:pay')") + public R save(@RequestBody @Valid PayUnPaymentBo param){ + //TODO + return R.ok(); + } + + /** + * 新增支付(核销调用) * @param param * @return */ diff --git a/src/main/java/com/qs/serve/modules/pay/entity/PayPayment.java b/src/main/java/com/qs/serve/modules/pay/entity/PayPayment.java index b2a08cc1..2a3f3073 100644 --- a/src/main/java/com/qs/serve/modules/pay/entity/PayPayment.java +++ b/src/main/java/com/qs/serve/modules/pay/entity/PayPayment.java @@ -38,6 +38,12 @@ public class PayPayment implements Serializable { **/ private String payType; + /** + * 支付编码 + **/ + @TableField(condition = SqlCondition.LIKE) + private String payCode; + /** 供应商id */ @NotNull(message = "供应商id不能为空") private Long supplierId; @@ -58,9 +64,11 @@ public class PayPayment implements Serializable { @NotNull(message = "支付金额不能为空") private BigDecimal payAmount; + @TableField(condition = SqlCondition.LIKE) private String erpCode; /** 发票编号 */ + @TableField(condition = SqlCondition.LIKE) private String billNumber; /** 支付人id */ @@ -76,6 +84,7 @@ public class PayPayment implements Serializable { /** 支付人 */ @NotBlank(message = "支付人不能为空") @Length(max = 255,message = "支付人长度不能超过255字") + @TableField(condition = SqlCondition.LIKE) private String userName; /** 支付时间 */ @@ -88,6 +97,12 @@ public class PayPayment implements Serializable { /** 取消标识 */ private Integer cancelFlag; + /** 取消时间 */ + @Length(max = 0,message = "支付时间长度不能超过0字") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime cancelTime; + /** 备注 */ @Length(max = 255,message = "备注长度不能超过255字") private String remark; diff --git a/src/main/java/com/qs/serve/modules/pay/entity/bo/PayUnPaymentBo.java b/src/main/java/com/qs/serve/modules/pay/entity/bo/PayUnPaymentBo.java new file mode 100644 index 00000000..43afd3db --- /dev/null +++ b/src/main/java/com/qs/serve/modules/pay/entity/bo/PayUnPaymentBo.java @@ -0,0 +1,33 @@ +package com.qs.serve.modules.pay.entity.bo; + +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.DecimalMin; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * 支付 Bo + * @author YenHex + * @since 2022-12-15 + */ +@Data +public class PayUnPaymentBo implements Serializable { + + /** 供应商id */ + @NotNull(message = "供应商id不能为空") + private Long supplierId; + + /** 支付金额 */ + @DecimalMin(value = "0.01",message = "支付金额必须大于0元") + @NotNull(message = "支付金额不能为空") + private BigDecimal payAmount; + + /** 备注 */ + @Length(max = 255,message = "备注长度不能超过255字") + private String remark; + +} + diff --git a/src/main/java/com/qs/serve/modules/pay/entity/dto/PaySupplierAmountDto.java b/src/main/java/com/qs/serve/modules/pay/entity/dto/PaySupplierAmountDto.java new file mode 100644 index 00000000..26a03f38 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/pay/entity/dto/PaySupplierAmountDto.java @@ -0,0 +1,17 @@ +package com.qs.serve.modules.pay.entity.dto; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author YenHex + * @since 2023/1/13 + */ +@Data +public class PaySupplierAmountDto { + + private Long supplierId; + private BigDecimal sumAmount; + +} diff --git a/src/main/java/com/qs/serve/modules/pay/entity/so/PayPaymentSo.java b/src/main/java/com/qs/serve/modules/pay/entity/so/PayPaymentSo.java index 89fcc72f..2a479e75 100644 --- a/src/main/java/com/qs/serve/modules/pay/entity/so/PayPaymentSo.java +++ b/src/main/java/com/qs/serve/modules/pay/entity/so/PayPaymentSo.java @@ -5,6 +5,8 @@ import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.SqlCondition; +import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; @@ -25,9 +27,20 @@ public class PayPaymentSo implements Serializable { private static final long serialVersionUID = 1L; + private String payType; + /** + * 支付编码 + **/ + private String payCode; + /** 供应商 */ private String supplierName; + private String erpCode; + + /** 支付人 */ + private String userName; + /** 开始时间 */ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime queryStartTime; @@ -36,6 +49,8 @@ public class PayPaymentSo implements Serializable { @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime queryEndTime; + /** 取消标识 */ + private Integer cancelFlag; } diff --git a/src/main/java/com/qs/serve/modules/pay/entity/vo/PaySupplierVo.java b/src/main/java/com/qs/serve/modules/pay/entity/vo/PaySupplierVo.java new file mode 100644 index 00000000..66bafabb --- /dev/null +++ b/src/main/java/com/qs/serve/modules/pay/entity/vo/PaySupplierVo.java @@ -0,0 +1,35 @@ +package com.qs.serve.modules.pay.entity.vo; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author YenHex + * @since 2023/1/13 + */ +@Data +public class PaySupplierVo { + + /** 客户id */ + private Long supplierId; + + /** 客户编号 */ + private String supplierCode; + + /** 客户 */ + private String supplierName; + + /** 已申请费用金额(通过审批) */ + private BigDecimal sumAmountOfCost; + + /** 已核销金额(通过审批)*/ + private BigDecimal sumAmountOfCheck; + + /** 已支付金额 */ + private BigDecimal sumAmountOfPay; + + /** 不再支付金额 */ + private BigDecimal sumAmountOfUnPay; + +} diff --git a/src/main/java/com/qs/serve/modules/pay/mapper/PaySupplierMapper.java b/src/main/java/com/qs/serve/modules/pay/mapper/PaySupplierMapper.java new file mode 100644 index 00000000..20a6f718 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/pay/mapper/PaySupplierMapper.java @@ -0,0 +1,41 @@ +package com.qs.serve.modules.pay.mapper; + +import com.qs.serve.modules.pay.entity.dto.PaySupplierAmountDto; +import org.apache.ibatis.annotations.Param; + +import java.util.List; +/** + * @author YenHex + * @since 2023/1/13 + */ +public interface PaySupplierMapper { + + /** + * 统计费用明细 + * @param supplierIds + * @return + */ + List sumCostAmount(@Param("queryList") List supplierIds); + + /** + * 统计核销金额 + * @param supplierIds + * @return + */ + List sumCheckAmount(@Param("queryList") List supplierIds); + + /** + * 统计支付金额 + * @param supplierIds + * @return + */ + List sumPayAmount(@Param("queryList") List supplierIds); + + /** + * 统计未支付金额 + * @param supplierIds + * @return + */ + List sumUnPayAmount(@Param("queryList") List supplierIds); + +} diff --git a/src/main/java/com/qs/serve/modules/pay/service/impl/PayPaymentServiceImpl.java b/src/main/java/com/qs/serve/modules/pay/service/impl/PayPaymentServiceImpl.java index 3afb7a53..46fd81c0 100644 --- a/src/main/java/com/qs/serve/modules/pay/service/impl/PayPaymentServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/pay/service/impl/PayPaymentServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.qs.serve.common.util.Assert; import com.qs.serve.common.util.AuthContextUtils; +import com.qs.serve.common.util.StringUtils; import com.qs.serve.modules.bms.entity.BmsSupplier; import com.qs.serve.modules.bms.service.BmsSupplierService; import com.qs.serve.modules.pay.common.PaymentType; @@ -52,10 +53,8 @@ public class PayPaymentServiceImpl extends ServiceImpl> getList(TbsActivityVo param){ + public R> getList(TbsActivitySo param){ TbsActivity entity = CopierUtil.copy(param,new TbsActivity()); LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(entity); List list = tbsActivityService.list(lqw); @@ -121,11 +119,23 @@ public class TbsActivityController { */ @GetMapping("/page") @PreAuthorize("hasRole('tbs:activity:query')") - public R> getPage(TbsActivityVo param){ + public R> getPage(TbsActivitySo param){ TbsActivity entity = CopierUtil.copy(param,new TbsActivity()); LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(entity); + if(param.getPassEndTime()!=null){ + lqw.le(TbsActivity::getCostPassTime,param.getPassEndTime()); + } + if(param.getPassStartTime()!=null){ + lqw.ge(TbsActivity::getCostPassTime,param.getPassStartTime()); + } PageUtil.startPage(); List list = tbsActivityService.list(lqw); + for (TbsActivity activity : list) { + SysUser sysUser = sysUserService.getById(activity.getCreateBy()); + if(sysUser!=null){ + activity.setApplyUser(sysUser.toSysUserVo()); + } + } return R.byPageHelperList(list); } diff --git a/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java b/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java index 026c87c7..4a0b9046 100644 --- a/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java +++ b/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java @@ -385,6 +385,12 @@ public class TbsCostApplyController { apply.setId(costApply.getId()); apply.setChargeState(TbsCostApplyState.State_2_actioning.getCode()); tbsCostApplyService.updateById(apply); + //更新活动通过时间 + TbsActivity tbsActivity = new TbsActivity(); + tbsActivity.setCostPassTime(LocalDateTime.now()); + LambdaQueryWrapper actLqw = new LambdaQueryWrapper<>(); + actLqw.eq(TbsActivity::getCostApplyId,costApply.getId()); + tbsActivityService.update(tbsActivity,actLqw); return R.ok(); }else if ("stop".equals(flag)){ if(isBackCommit){ diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivity.java b/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivity.java index 6a728b74..86c00961 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivity.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivity.java @@ -42,6 +42,11 @@ public class TbsActivity implements Serializable { @NotNull(message = "费用申请id不能为空") private Long costApplyId; + /** 费用通过时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime costPassTime; + /** 活动简述及目的 */ @NotBlank(message = "活动简述及目的不能为空") @Length(max = 255,message = "活动简述及目的长度不能超过255字") @@ -125,6 +130,11 @@ public class TbsActivity implements Serializable { /** 完成标识 */ private Integer finishedFlag; + /** 完成时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @TableField(fill = FieldFill.UPDATE) + private LocalDateTime finishedTime; + /** 合计金额 */ private BigDecimal totalAmount; @@ -186,5 +196,9 @@ public class TbsActivity implements Serializable { @TableField(exist = false) List scheduleItemBudgetList; + /** 申请人 */ + @TableField(exist = false) + Object applyUser; + } diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java b/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java index 4c95da42..2093c322 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java @@ -69,6 +69,7 @@ public class TbsCostApply implements Serializable { /** 用户编码 */ @Length(max = 32,message = "长度不能超过32字") + @TableField(condition = SqlCondition.LIKE) private String userCode; /** 用户名称 */ diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/vo/TbsActivityVo.java b/src/main/java/com/qs/serve/modules/tbs/entity/so/TbsActivitySo.java similarity index 74% rename from src/main/java/com/qs/serve/modules/tbs/entity/vo/TbsActivityVo.java rename to src/main/java/com/qs/serve/modules/tbs/entity/so/TbsActivitySo.java index 42e80b54..f83244dc 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/vo/TbsActivityVo.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/so/TbsActivitySo.java @@ -1,4 +1,4 @@ -package com.qs.serve.modules.tbs.entity.vo; +package com.qs.serve.modules.tbs.entity.so; import java.time.LocalDate; import java.io.Serializable; @@ -22,7 +22,7 @@ import java.util.List; * @since 2022-11-09 */ @Data -public class TbsActivityVo implements Serializable { +public class TbsActivitySo implements Serializable { private static final long serialVersionUID = 1L; @@ -47,28 +47,10 @@ public class TbsActivityVo implements Serializable { /** 客户名称 */ private String supplierName; - /** 活动开始时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd") - private LocalDate actStartDate; - - /** 活动结束时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd") - private LocalDate actEndDate; - - /** 预计核销时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd") - private LocalDate preCheckDate; - /** 备注 */ private String remark; - /** 创建时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime createTime; - - /** 最后更新时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime updateTime; + private Integer activityState; /** 所属租户 */ @JsonIgnore @@ -89,5 +71,13 @@ public class TbsActivityVo implements Serializable { @TableField(exist = false) List testids; + /** 生成费用开始时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime passStartTime; + + /** 生成费用结束时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime passEndTime; + } diff --git a/src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationController.java b/src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationController.java index debb967c..9c788af2 100644 --- a/src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationController.java +++ b/src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationController.java @@ -45,6 +45,7 @@ import com.qs.serve.modules.vtb.entity.VtbVerification; import com.qs.serve.modules.vtb.service.VtbVerificationService; import javax.validation.Valid; +import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -82,6 +83,12 @@ public class VtbVerificationController { public R> getPage(VtbVerificationSo param){ VtbVerification entity = CopierUtil.copy(param,new VtbVerification()); LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(entity); + if(param.getQueryStartTime()!=null){ + lqw.ge(VtbVerification::getFinishedTime,param.getQueryStartTime()); + } + if(param.getQueryEndTime()!=null){ + lqw.le(VtbVerification::getFinishedTime,param.getQueryEndTime()); + } PageUtil.startPage(); List list = vtbVerificationService.list(lqw); return R.byPageHelperList(list); @@ -252,6 +259,7 @@ public class VtbVerificationController { VtbVerification vtbVer = new VtbVerification(); vtbVer.setId(verification.getId()); vtbVer.setVerificationState(VtbVerificationState.Finished.getCode()); + vtbVer.setFinishedTime(LocalDateTime.now()); vtbVerificationService.updateById(vtbVer); vtbVerificationService.successCommit(verification.getId()); return R.ok(); diff --git a/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerification.java b/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerification.java index ff045275..262a1f3c 100644 --- a/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerification.java +++ b/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerification.java @@ -48,6 +48,12 @@ public class VtbVerification implements Serializable { /** 核销状态 */ private Integer verificationState; + /** 核销通过时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @TableField(fill = FieldFill.INSERT) + private LocalDateTime finishedTime; + /** 支付状态:0-未支付;1-已支付 */ private Integer paymentState; @@ -58,6 +64,20 @@ public class VtbVerification implements Serializable { private String syFlowId; + /** 客户id */ + @NotNull(message = "客户id不能为空") + private Long supplierId; + + /** 客户编码 */ + @NotBlank(message = "客户编码不能为空") + @Length(max = 30,message = "客户编码长度不能超过30字") + private String supplierCode; + + /** 客户名称 */ + @NotBlank(message = "客户名称不能为空") + @Length(max = 30,message = "客户名称长度不能超过30字") + private String supplierName; + /** 备注 */ @Length(max = 255,message = "备注长度不能超过255字") private String remark; @@ -92,6 +112,21 @@ public class VtbVerification implements Serializable { @JsonProperty private String delFlag; + + /** 申请人 */ + @NotBlank(message = "申请人不能为空") + @Length(max = 32,message = "申请人长度不能超过32字") + private String userId; + + /** 用户编码 */ + @Length(max = 32,message = "长度不能超过32字") + private String userCode; + + /** 用户名称 */ + @Length(max = 32,message = "长度不能超过32字") + @TableField(condition = SqlCondition.LIKE) + private String userName; + @TableField(exist = false) private List attachList; diff --git a/src/main/java/com/qs/serve/modules/vtb/entity/so/VtbVerificationSo.java b/src/main/java/com/qs/serve/modules/vtb/entity/so/VtbVerificationSo.java index b9ae9dd4..e45fa590 100644 --- a/src/main/java/com/qs/serve/modules/vtb/entity/so/VtbVerificationSo.java +++ b/src/main/java/com/qs/serve/modules/vtb/entity/so/VtbVerificationSo.java @@ -5,6 +5,8 @@ import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.SqlCondition; +import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; @@ -23,46 +25,40 @@ import javax.validation.constraints.NotBlank; @Data public class VtbVerificationSo implements Serializable { - private static final long serialVersionUID = 1L; - /** id */ private Long id; /** 活动id */ private Long activityId; - /** 附件id */ - private String attachIds; + /** 核销编码 */ + private String verificationCode; - /** 核销状态 */ - private Integer verficarionState; + /** 核销状态 0=审批中;1=完成;2-中止;3-回滚 */ + private Integer verificationState; - /** 备注 */ - private String remark; + /** 客户id */ + private Long supplierId; - /** 创建时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime createTime; + /** 客户编码 */ + private String supplierCode; - /** 最后更新时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime updateTime; + /** 客户名称 */ + private String supplierName; - /** 所属租户 */ - @JsonIgnore - @JsonProperty - private String tenantId; + /** 用户编码 */ + private String userCode; - /** 创建人 */ - private String createBy; + /** 用户名称 */ + private String userName; - /** 更新人 */ - private String updateBy; + /** 开始时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime queryStartTime; - /** 逻辑删除标记(0:显示;1:隐藏) */ - @JsonIgnore - @JsonProperty - private String delFlag; + /** 结束时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime queryEndTime; } diff --git a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbFundFlowServiceImpl.java b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbFundFlowServiceImpl.java index d5783795..25fb02b2 100644 --- a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbFundFlowServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbFundFlowServiceImpl.java @@ -19,6 +19,7 @@ import com.qs.serve.modules.vtb.service.VtbFundFlowService; import com.qs.serve.modules.vtb.mapper.VtbFundFlowMapper; import java.math.BigDecimal; +import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -86,6 +87,7 @@ public class VtbFundFlowServiceImpl extends ServiceImpl channelBoList = verificationBo.getChannelList(); List pointBoList = verificationBo.getPointList(); diff --git a/src/main/resources/mapper/pay/PaySupplierMapper.xml b/src/main/resources/mapper/pay/PaySupplierMapper.xml new file mode 100644 index 00000000..64da8417 --- /dev/null +++ b/src/main/resources/mapper/pay/PaySupplierMapper.xml @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + +