From 622e51784f536c6138cc755b45a37cb2062e0a1c Mon Sep 17 00:00:00 2001 From: Yen Date: Wed, 8 Nov 2023 17:36:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=94=AF=E4=BB=98=E7=8A=B6?= =?UTF-8?q?=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/qs/serve/task/PayTask.java | 31 +++++++++++++++++-- .../resources/mapper/goods/GoodsSpuMapper.xml | 2 +- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/qs/serve/task/PayTask.java b/src/main/java/com/qs/serve/task/PayTask.java index c9d0df68..745caad4 100644 --- a/src/main/java/com/qs/serve/task/PayTask.java +++ b/src/main/java/com/qs/serve/task/PayTask.java @@ -9,7 +9,11 @@ import com.qs.serve.modules.tbs.entity.TbsCostApply; import com.qs.serve.modules.tbs.service.TbsCostApplyService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; + +import java.math.BigDecimal; +import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; @@ -22,13 +26,13 @@ import java.util.stream.Collectors; @AllArgsConstructor public class PayTask { - private final PayPaymentService payPaymentService; private final TbsCostApplyService costApplyService; private final PayPaymentItemMapper payPaymentItemMapper; /** * 同步支付 */ + @Scheduled(cron="0 0 2 * * ?") public void syncCostPayStatus(){ LambdaQueryWrapper costLqw = new LambdaQueryWrapper<>(); costLqw.select( @@ -36,14 +40,37 @@ public class PayTask { TbsCostApply::getTotalActivityAmount ); costLqw.ne(TbsCostApply::getPayStatus,2); + costLqw.eq(TbsCostApply::getCheckState,3); + //SyFormId 代表非销路通数据 + costLqw.isNotNull(TbsCostApply::getSyFormId); costLqw.apply(" limit 2000"); List costApplyList = costApplyService.list(costLqw); List costIds = costApplyList.stream().map(a->a.toString()).collect(Collectors.toList()); List amountDTOList = payPaymentItemMapper.selectCostTotal(costIds); + List updatePayStateList = new ArrayList<>(); for (TbsCostApply costApply : costApplyList) { - + String costId = costApply.getId().toString(); + for (AmountDTO dto : amountDTOList) { + if(costId.equals(dto.getId())){ + BigDecimal totalPay = dto.getAmount(); + if(totalPay.compareTo(BigDecimal.ZERO)==0){ + //未支付忽略 + continue; + } + BigDecimal totalCost = costApply.getTotalActivityAmount(); + TbsCostApply updParam = new TbsCostApply(); + updParam.setId(costApply.getId()); + if(totalPay.compareTo(totalCost)<0){ + updParam.setPayStatus(1); + }else { + updParam.setPayStatus(2); + } + updatePayStateList.add(updParam); + } + } } + costApplyService.updateBatchById(updatePayStateList); } diff --git a/src/main/resources/mapper/goods/GoodsSpuMapper.xml b/src/main/resources/mapper/goods/GoodsSpuMapper.xml index b8a343b4..99206b35 100644 --- a/src/main/resources/mapper/goods/GoodsSpuMapper.xml +++ b/src/main/resources/mapper/goods/GoodsSpuMapper.xml @@ -80,7 +80,7 @@ and `goods_spu`.`sort` = #{query.sort} and `goods_spu`.`sale_num` = #{query.saleNum} and `goods_spu`.`belong` = #{query.belong} - and `goods_spu`.`taste_value` = #{query.tasteValue} + and `goods_spu`.`taste_value` like concat('%',#{query.tasteValue},'%') and `goods_spu`.`create_time` = #{query.createTime} and `goods_spu`.`update_time` = #{query.updateTime} and `goods_spu`.`create_by` = #{query.createBy}