From b73e3479f8ad90676675c1647d5dd10b933f0fbe Mon Sep 17 00:00:00 2001 From: lijianlin Date: Fri, 17 Oct 2025 19:09:10 +0800 Subject: [PATCH] =?UTF-8?q?10-17=20=E6=94=B6=E6=AC=BE=E5=AE=A1=E6=A0=B8?= =?UTF-8?q?=E9=80=9A=E8=BF=87=E5=90=8E=E5=90=8C=E6=AD=A5=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E5=88=B0=E9=87=91=E5=B8=81=E8=AE=A2=E5=8D=95=E8=A1=A8=EF=BC=8C?= =?UTF-8?q?=E9=87=91=E5=B8=81=E7=94=A8=E6=88=B7=E8=A1=A8=EF=BC=8Cerp?= =?UTF-8?q?=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceImpl/cash/CashAuditServiceImpl.java | 45 +++++++++++++++++----- .../cash/CashCollectionServiceImpl.java | 6 ++- src/main/resources/cashMapper/CashAuditMapper.xml | 2 +- .../resources/cashMapper/CashCollectionMapper.xml | 9 +++-- 4 files changed, 46 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/example/demo/serviceImpl/cash/CashAuditServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/cash/CashAuditServiceImpl.java index c1295ff..dc44547 100644 --- a/src/main/java/com/example/demo/serviceImpl/cash/CashAuditServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/cash/CashAuditServiceImpl.java @@ -2,6 +2,7 @@ package com.example.demo.serviceImpl.cash; import com.example.demo.Util.GoldTistV2; import com.example.demo.domain.entity.CashRecord; +import com.example.demo.domain.entity.User; import com.example.demo.domain.entity.UserGoldRecord; import com.example.demo.mapper.cash.CashAuditMapper; import com.example.demo.mapper.cash.CashCollectionMapper; @@ -12,10 +13,13 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.math.BigDecimal; import java.time.LocalDate; import java.time.ZoneOffset; import java.util.Date; +import static net.sf.jsqlparser.parser.feature.Feature.update; + /** * @program: gold-java * @ClassName CashAuditServiceImpl @@ -44,14 +48,14 @@ public class CashAuditServiceImpl implements CashAuditService { } CashRecord updateOrder = new CashRecord(); //设置审核人 - updateOrder.setAuditId(order.getAuditId()); + updateOrder.setAuditId(auditId); //判断是通过还是驳回,更新审核状态 updateOrder.setOrderCode(orderCode); - String auditName = cashAuditMapper.getAuditName(order.getAuditId()); + String auditName = cashAuditMapper.getAuditName(auditId); if (action==1){ //通过 updateOrder.setStatus(1); - - /* //往金币订单表加一条充值记录 + if (order.getGoodsName().equals("金币充值")){ + //往金币订单表加一条充值记录 UserGoldRecord rechargeOrder = new UserGoldRecord(); rechargeOrder.setOrderCode(orderCode.replaceFirst("^XJ_", "XJCZ_")); rechargeOrder.setJwcode(order.getJwcode()); @@ -61,17 +65,18 @@ public class CashAuditServiceImpl implements CashAuditService { int currentMonth = LocalDate.now().getMonthValue(); // 根据当前月份设置对应字段 if (currentMonth >= 1 && currentMonth <= 6) { - // 1-6月:设置6月额度,12月保持默认值 + // 1-6月:设置12月额度,6月保持默认值 rechargeOrder.setFreeJune(0); rechargeOrder.setFreeDecember(order.getFreeGold()); } else { - // 7-12月:设置12月额度,6月保持默认值 + // 7-12月:设置6月额度,12月保持默认值 rechargeOrder.setFreeJune(order.getFreeGold()); rechargeOrder.setFreeDecember(0); } rechargeOrder.setSumGold(order.getPermanentGold()+order.getFreeGold()); - //todo money、备注 10-17 11:30 rechargeOrder.setRateId(Integer.valueOf(order.getPaymentCurrency())); + rechargeOrder.setMoney(order.getPaymentAmount().intValue()); + rechargeOrder.setRemark(order.getRemark()); rechargeOrder.setVoucher(order.getVoucher()); rechargeOrder.setPayPlatform("金币系统"); rechargeOrder.setPayModel(order.getPayType()); @@ -79,18 +84,38 @@ public class CashAuditServiceImpl implements CashAuditService { Date date = Date.from(order.getPayTime().toInstant(ZoneOffset.ofHours(8))); rechargeOrder.setPayTime(date); rechargeOrder.setAdminId(order.getSubmitterId()); - rechargeOrder.setAuditId(order.getAuditId()); + rechargeOrder.setAuditId(auditId); rechargeOrder.setType((byte) 0); rechargeOrder.setAuditStatus(1); rechargeOrder.setCreateTime(new Date()); rechargeMapper.add(rechargeOrder); + //往ERP加一条充值数据 GoldTistV2.addCoinNew(order.getJwcode().toString(), 64, //充值永久金币 (double) (order.getPermanentGold() ) /100, order.getRemark(),(double) (order.getPermanentGold() ) /100, auditName, "金币充值"); GoldTistV2.addCoinNew(order.getJwcode().toString(), 63, //充值免费 (double) (order.getFreeGold()) /100, - order.getRemark(),0, auditName, "金币充值");*/ - } + order.getRemark(),0, auditName, "金币充值"); + //修改用户余额,添加金币 + User user = new User(); + user.setJwcode(order.getJwcode()); + user.setSumConsumePermanent(BigDecimal.valueOf(order.getPermanentGold())); + // 根据当前月份设置对应字段 + if (currentMonth >= 1 && currentMonth <= 6) { + // 1-6月:设置12月额度,6月保持默认值 + user.setSumFreeJune(BigDecimal.valueOf(0)); + user.setSumFreeDecember(BigDecimal.valueOf(order.getFreeGold())); + user.setCurrentFreeDecember(BigDecimal.valueOf(order.getFreeGold())); + } else { + // 7-12月:设置6月额度,12月保持默认值 + user.setSumFreeJune(BigDecimal.valueOf(order.getFreeGold())); + user.setCurrentFreeJune(BigDecimal.valueOf(order.getFreeGold())); + user.setSumFreeDecember(BigDecimal.valueOf(0)); + } + user.setCurrentPermanentGold(BigDecimal.valueOf(order.getPermanentGold())); + user.setRechargeNum(1); //充值次数加一 + auditMapper.updateUserGold(user); + }} else if (action==2){ //驳回 updateOrder.setStatus(2); updateOrder.setRejectReason(rejectReason); diff --git a/src/main/java/com/example/demo/serviceImpl/cash/CashCollectionServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/cash/CashCollectionServiceImpl.java index e5da86a..836e03f 100644 --- a/src/main/java/com/example/demo/serviceImpl/cash/CashCollectionServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/cash/CashCollectionServiceImpl.java @@ -49,8 +49,8 @@ public class CashCollectionServiceImpl implements CashCollectionService { if(cashCollection.getGoodsName()== null){ return Result.error("商品名不能为空"); } - if(cashCollection.getGoodNum()== null){ - return Result.error("商品数量不能为空"); + if(cashCollection.getGoodNum()== null && cashCollection.getPermanentGold()== null && cashCollection.getFreeGold()== null){ + return Result.error("商品数量或金币数量不能为空"); } if(cashCollection.getPaymentCurrency()== null){ return Result.error("支付币种不能为空"); @@ -83,6 +83,8 @@ public class CashCollectionServiceImpl implements CashCollectionService { cashRecord.setActivity(cashCollection.getActivity()); // 活动 cashRecord.setGoodsName(cashCollection.getGoodsName()); //商品名称 cashRecord.setGoodNum(cashCollection.getGoodNum()); //商品数量 + cashRecord.setPermanentGold(cashCollection.getPermanentGold()); //永久金币 + cashRecord.setFreeGold(cashCollection.getFreeGold()); //免费金币 cashRecord.setPaymentCurrency(cashCollection.getPaymentCurrency()); //付款币种 cashRecord.setPaymentAmount(cashCollection.getPaymentAmount()); //付款金额 cashRecord.setReceivedMarket(cashCollection.getReceivedMarket()); //到账地区 diff --git a/src/main/resources/cashMapper/CashAuditMapper.xml b/src/main/resources/cashMapper/CashAuditMapper.xml index 50efcae..28e36a4 100644 --- a/src/main/resources/cashMapper/CashAuditMapper.xml +++ b/src/main/resources/cashMapper/CashAuditMapper.xml @@ -14,6 +14,6 @@ \ No newline at end of file diff --git a/src/main/resources/cashMapper/CashCollectionMapper.xml b/src/main/resources/cashMapper/CashCollectionMapper.xml index f8f569a..863ad83 100644 --- a/src/main/resources/cashMapper/CashCollectionMapper.xml +++ b/src/main/resources/cashMapper/CashCollectionMapper.xml @@ -7,12 +7,12 @@ useGeneratedKeys="true" keyProperty="id"> insert into cash_record(order_type,jwcode,name,market,activity, - order_code,goods_name,good_num, + order_code,goods_name,good_num,permanent_gold,free_gold, payment_currency,payment_amount,received_market, pay_type,pay_time,status,submitter_id, voucher,remark) values(#{orderType},#{jwcode},#{name},#{market},#{activity}, - #{orderCode},#{goodsName},#{goodNum},#{paymentCurrency}, + #{orderCode},#{goodsName},#{goodNum},#{permanentGold},#{freeGold},#{paymentCurrency}, #{paymentAmount},#{receivedMarket},#{payType},#{payTime}, #{status},#{submitterId},#{voucher},#{remark}) @@ -166,7 +166,10 @@