From ff9fc63312f1e6f6f8fead10c193b668a25a5dfe Mon Sep 17 00:00:00 2001 From: Yen Date: Thu, 4 Jul 2024 10:09:49 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=8B=93=E5=B1=95=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E6=A0=B8=E9=94=80=E6=9F=A5=E8=AF=A2=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/so/VtbVerificationBatchQuery.java | 54 +++++++++ .../VtbVerificationBatchController.java | 14 +++ .../vtb/entity/VtbVerificationBatch.java | 3 + .../vtb/entity/vo/VtbVerificationBatchVo.java | 51 +++++++++ .../mapper/VtbVerificationBatchMapper.java | 7 ++ .../service/VtbVerificationBatchService.java | 4 + ...VerificationBatchOperationServiceImpl.java | 7 +- .../impl/VtbVerificationBatchServiceImpl.java | 8 ++ .../mapper/vtb/VtbVerificationBatchMapper.xml | 105 ++++++++++++++++++ 9 files changed, 251 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/qs/serve/modules/tbs/entity/so/VtbVerificationBatchQuery.java create mode 100644 src/main/java/com/qs/serve/modules/vtb/entity/vo/VtbVerificationBatchVo.java create mode 100644 src/main/resources/mapper/vtb/VtbVerificationBatchMapper.xml diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/so/VtbVerificationBatchQuery.java b/src/main/java/com/qs/serve/modules/tbs/entity/so/VtbVerificationBatchQuery.java new file mode 100644 index 00000000..d2b62b72 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/tbs/entity/so/VtbVerificationBatchQuery.java @@ -0,0 +1,54 @@ +package com.qs.serve.modules.tbs.entity.so; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.hibernate.validator.constraints.Length; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.time.LocalDateTime; + +/** + * @author YenHex + * @since 2024/7/3 + */ +@Data +public class VtbVerificationBatchQuery { + + + /** 批次编码 */ + private String vtbBatchCode; + + /** 状态:0-审批中;1-通过;2-拒绝;3-回退 */ + private Integer vtbBatchStatus; + + private String costCode; + + /** 客户编码 */ + private String supplierCode; + + /** 客户名称 */ + private String supplierName; + + private String supplierBizRegionFirstName; + + private String supplierBizRegionSecondName; + + private String supplierBizRegionThirdName; + + /** 申请人 */ + private String userCode; + + /** 申请人 */ + private String userName; + + /** 创建时间 */ + private LocalDateTime batchStartTime; + + /** 创建时间 */ + private LocalDateTime batchEndTime; + +} diff --git a/src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationBatchController.java b/src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationBatchController.java index 83d81a6c..0ebf8358 100644 --- a/src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationBatchController.java +++ b/src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationBatchController.java @@ -18,10 +18,12 @@ import com.qs.serve.modules.tbs.common.TbsSeeYonConst; import com.qs.serve.modules.tbs.entity.TbsActivitySubjectYarn; import com.qs.serve.modules.tbs.entity.TbsCostApply; import com.qs.serve.modules.tbs.entity.bo.TbsAffairCommitBo; +import com.qs.serve.modules.tbs.entity.so.VtbVerificationBatchQuery; import com.qs.serve.modules.tbs.entity.vo.CtpAffairVo; import com.qs.serve.modules.vtb.entity.VtbVerification; import com.qs.serve.modules.vtb.entity.VtbVerificationYard; import com.qs.serve.modules.vtb.entity.bo.VtbVerificationBatchBo; +import com.qs.serve.modules.vtb.entity.vo.VtbVerificationBatchVo; import com.qs.serve.modules.vtb.service.*; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -67,6 +69,18 @@ public class VtbVerificationBatchController { return R.byPageHelperList(list); } + /** + * 翻页2(连表查询-left join tbs_cost_apply) + * @param query + * @return + */ + @GetMapping("/page2") + public R> getPage2(VtbVerificationBatchQuery query){ + PageUtil.startPage(); + List list = vtbVerificationBatchService.list2(query); + return R.byPageHelperList(list); + } + /** * ID查询 * @param id diff --git a/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerificationBatch.java b/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerificationBatch.java index 158cd03a..e97f47b7 100644 --- a/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerificationBatch.java +++ b/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerificationBatch.java @@ -107,6 +107,9 @@ public class VtbVerificationBatch implements Serializable { /** 申请时的金额合计 */ private BigDecimal applyCheckAmount; + /** 申请时的金额合计 */ + private BigDecimal resultCheckAmount; + /** 客户id */ @NotNull(message = "客户id不能为空") private String supplierId; diff --git a/src/main/java/com/qs/serve/modules/vtb/entity/vo/VtbVerificationBatchVo.java b/src/main/java/com/qs/serve/modules/vtb/entity/vo/VtbVerificationBatchVo.java new file mode 100644 index 00000000..b74d2429 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/vtb/entity/vo/VtbVerificationBatchVo.java @@ -0,0 +1,51 @@ +package com.qs.serve.modules.vtb.entity.vo; + +import com.baomidou.mybatisplus.annotation.SqlCondition; +import com.baomidou.mybatisplus.annotation.TableField; +import com.qs.serve.modules.vtb.entity.VtbVerification; +import com.qs.serve.modules.vtb.entity.VtbVerificationBatch; +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.math.BigDecimal; + +/** + * @author YenHex + * @since 2024/7/3 + */ +@Data +public class VtbVerificationBatchVo extends VtbVerificationBatch { + + private String costCode; + + /** 主题 */ + private String chargeTheme; + + /** 状态:0=未发布;1=审批中;2=待执行;3=完成;4-被驳回;5-中止;6-作废;7-异动 @{link TbsCostApplyState} */ + private Integer chargeState; + + private String supplierBizRegionFirstName; + + private String supplierBizRegionSecondName; + + private String supplierBizRegionThirdName; + + /** 统计活动数量 */ + private Integer totalActivity; + + /** 统计所有活动申请的金额 */ + private BigDecimal totalActivityAmount; + + /** 统计所有活动预估发货的金额 */ + private BigDecimal totalActivityPreAmount; + + /** 统计所有活动预估不发货的金额 */ + private BigDecimal totalActivityPreNotAmount; + + /** 统计所有活动使用的金额 */ + private BigDecimal totalActivityUsedAmount; + + +} diff --git a/src/main/java/com/qs/serve/modules/vtb/mapper/VtbVerificationBatchMapper.java b/src/main/java/com/qs/serve/modules/vtb/mapper/VtbVerificationBatchMapper.java index fe24dce8..a7148889 100644 --- a/src/main/java/com/qs/serve/modules/vtb/mapper/VtbVerificationBatchMapper.java +++ b/src/main/java/com/qs/serve/modules/vtb/mapper/VtbVerificationBatchMapper.java @@ -1,10 +1,14 @@ package com.qs.serve.modules.vtb.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.qs.serve.modules.tbs.entity.so.VtbVerificationBatchQuery; import com.qs.serve.modules.vtb.entity.VtbVerificationBatch; +import com.qs.serve.modules.vtb.entity.vo.VtbVerificationBatchVo; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Update; +import java.util.List; + /** * Mapper * @author YenHex @@ -25,5 +29,8 @@ public interface VtbVerificationBatchMapper extends BaseMapper selectList2(@Param("query") VtbVerificationBatchQuery query); + } diff --git a/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationBatchService.java b/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationBatchService.java index b7ece5b1..0c66722e 100644 --- a/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationBatchService.java +++ b/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationBatchService.java @@ -1,9 +1,11 @@ package com.qs.serve.modules.vtb.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.qs.serve.modules.tbs.entity.so.VtbVerificationBatchQuery; import com.qs.serve.modules.vtb.entity.VtbVerification; import com.qs.serve.modules.vtb.entity.VtbVerificationBatch; import com.qs.serve.modules.vtb.entity.bo.VtbVerificationBatchBo; +import com.qs.serve.modules.vtb.entity.vo.VtbVerificationBatchVo; import java.util.List; @@ -22,5 +24,7 @@ public interface VtbVerificationBatchService extends IService listVerifications(Long batchId); + List list2(VtbVerificationBatchQuery query); + } diff --git a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchOperationServiceImpl.java b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchOperationServiceImpl.java index e22e2df2..0c5fba90 100644 --- a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchOperationServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchOperationServiceImpl.java @@ -80,11 +80,14 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification List verificationList = vtbVerificationBatchService.listVerifications(batch.getId()); batch.setVtbBatchStatus(VtbVerificationBatch.BatchState.CHECK_OK); batch.setBackedTime(LocalDateTime.now()); - vtbVerificationBatchService.updateById(batch); + BigDecimal totalAmt = BigDecimal.ZERO; for (VtbVerification verification : verificationList) { //循环调用每个核销 vtbVerificationService.successCommit(verification.getId()); + totalAmt.add(verification.getAmount()); } + batch.setResultCheckAmount(totalAmt); + vtbVerificationBatchService.updateById(batch); return null; } @@ -126,7 +129,7 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification //保存到每个核销 for (VtbVerification verification : verificationList) { DataAffairCommit affairCommit = CopierUtil.copy(dataAffairCommit,new DataAffairCommit()); - affairCommit.setId(null); + affairCommit.setId(IdUtil.nanoId()); affairCommit.setTargetId(verification.getId()+""); affairCommit.setTargetCode(verification.getVerificationCode()); dataAffairCommitMapper.insert(affairCommit); diff --git a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchServiceImpl.java b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchServiceImpl.java index ba1d90cf..3af517aa 100644 --- a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchServiceImpl.java @@ -35,6 +35,7 @@ import com.qs.serve.modules.tbs.entity.TbsActivityCenter; import com.qs.serve.modules.tbs.entity.TbsActivitySubject; import com.qs.serve.modules.tbs.entity.TbsCostApply; import com.qs.serve.modules.tbs.entity.dto.TbsCostSubItem; +import com.qs.serve.modules.tbs.entity.so.VtbVerificationBatchQuery; import com.qs.serve.modules.tbs.service.TbsActivityCenterService; import com.qs.serve.modules.tbs.service.TbsActivityService; import com.qs.serve.modules.tbs.service.TbsActivitySubjectService; @@ -44,6 +45,7 @@ import com.qs.serve.modules.vtb.common.VtbVerificationState; import com.qs.serve.modules.vtb.entity.*; import com.qs.serve.modules.vtb.entity.bo.*; import com.qs.serve.modules.vtb.entity.dto.VtbSubjectDTO; +import com.qs.serve.modules.vtb.entity.vo.VtbVerificationBatchVo; import com.qs.serve.modules.vtb.service.*; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -165,6 +167,7 @@ public class VtbVerificationBatchServiceImpl extends ServiceImpl() .eq(VtbVerification::getBatchId,batchId)); } + + @Override + public List list2(VtbVerificationBatchQuery query) { + return baseMapper.selectList2(query); + } } diff --git a/src/main/resources/mapper/vtb/VtbVerificationBatchMapper.xml b/src/main/resources/mapper/vtb/VtbVerificationBatchMapper.xml new file mode 100644 index 00000000..faa30744 --- /dev/null +++ b/src/main/resources/mapper/vtb/VtbVerificationBatchMapper.xml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + vtb_verification_batch.`id`, + vtb_verification_batch.`vtb_batch_code`, + vtb_verification_batch.`vtb_batch_status`, + vtb_verification_batch.`finished_time`, + vtb_verification_batch.`cost_apply_id`, + vtb_verification_batch.`remark`, + vtb_verification_batch.`create_time`, + vtb_verification_batch.`update_time`, + vtb_verification_batch.`tenant_id`, + vtb_verification_batch.`create_by`, + vtb_verification_batch.`update_by`, + vtb_verification_batch.`del_flag`, + vtb_verification_batch.`sy_form_id`, + vtb_verification_batch.`sy_flow_id`, + vtb_verification_batch.`supplier_id`, + vtb_verification_batch.`supplier_code`, + vtb_verification_batch.`supplier_name`, + vtb_verification_batch.`user_id`, + vtb_verification_batch.`user_code`, + vtb_verification_batch.`user_name`, + vtb_verification_batch.`ext_user_id`, + vtb_verification_batch.`ext_user_code`, + vtb_verification_batch.`ext_user_name`, + vtb_verification_batch.`backed_time`, + vtb_verification_batch.`refuse_time`, + vtb_verification_batch.`way_id`, + vtb_verification_batch.`way_title`, + vtb_verification_batch.`apply_check_amount`, + vtb_verification_batch.`result_check_amount` + + + +