From 773230dabfbb97ce8bf69c0bafe6df02f9906a53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E7=AB=B9=E7=BA=A2?= Date: Wed, 20 Aug 2025 14:25:57 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=8A=A0=E7=9B=9F=E8=B4=B9=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/cool/store/mapper/LinePayMapper.java | 2 ++ .../src/main/resources/mapper/LinePayMapper.xml | 10 ++++++++++ .../store/service/impl/FranchiseFeeServiceImpl.java | 8 ++++++++ 3 files changed, 20 insertions(+) diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/LinePayMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/LinePayMapper.java index 00ed3bc54..373c59980 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/LinePayMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/LinePayMapper.java @@ -70,4 +70,6 @@ public interface LinePayMapper { Integer updateXgjClaimStatus(@Param("list") List shopIds,@Param("xgjClaimStatus") Integer xgjClaimStatus,@Param("payBusinessType") Integer payBusinessType); Integer deleteByShopId(@Param("list")List shopIds); + + LinePayDO getLastPay(@Param("shopId") Long shopId); } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/LinePayMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/LinePayMapper.xml index 0e93a6db7..48c4608fe 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/LinePayMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/LinePayMapper.xml @@ -414,6 +414,16 @@ select * from xfsg_line_pay where deleted = 0 and payment_receipt_code = #{paymentReceiptCode} and pay_business_type = 1 order by create_time desc + + + update xfsg_line_pay diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseFeeServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseFeeServiceImpl.java index 7c6a8ebe3..9930e4cf9 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseFeeServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseFeeServiceImpl.java @@ -7,6 +7,7 @@ import com.cool.store.dao.PointInfoDAO; import com.cool.store.dao.ShopStageInfoDAO; import com.cool.store.entity.*; import com.cool.store.enums.*; +import com.cool.store.enums.point.PayBusinessTypeEnum; import com.cool.store.enums.point.ShopSubStageEnum; import com.cool.store.enums.point.ShopSubStageStatusEnum; import com.cool.store.exception.ServiceException; @@ -215,10 +216,17 @@ public class FranchiseFeeServiceImpl implements FranchiseFeeService { franchiseFeeDO.setXgjCollectionStatus(request.getPaymentStatus()); franchiseFeeDO.setXgjRemainderPayableAmount(request.getRemainingFee()); franchiseFeeDO.setXgjFeesPaid(request.getPaidFees()); + if (request.getPayableFee().compareTo(request.getPaidFees())==-1&&XGJCollectionStatusEnum.PARTIAL_PAYMENT.getCode().equals(request.getPaymentStatus())){ + franchiseFeeDO.setXgjRemainderPayableAmount(new BigDecimal("0")); + LinePayDO lastPay = linePayMapper.getLastPay(franchiseFeeDO.getShopId()); + lastPay.setRemark(lastPay.getRemark()+"系统监测到您多缴费"+request.getRemainingFee().abs()+"元 请申请退款或留做他用!"); + linePayMapper.updateByPrimaryKeySelective(lastPay); + } franchiseFeeMapper.updateByPrimaryKeySelective(franchiseFeeDO); if (XGJCollectionStatusEnum.COMPLETED.getCode().equals(request.getPaymentStatus())){ shopStageInfoDAO.batchUpdateShopStageStatus(request.getShopId(),Arrays.asList(SHOP_SUB_STAGE_STATUS_73,SHOP_SUB_STAGE_STATUS_80)); } return ApiResponse.success(Boolean.TRUE); } + }