From c925f0ea99899aed102f85e2965b42be39355732 Mon Sep 17 00:00:00 2001 From: mi9688 Date: Fri, 20 Dec 2024 16:14:18 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=85=85=E5=80=BC=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/dto/RechargecardUser.java | 10 ++- .../impl/UserRechargeCardsServiceImpl.java | 81 ++++++++++++------- 2 files changed, 60 insertions(+), 31 deletions(-) diff --git a/fastbee-service/fastbee-rechargecard-service/src/main/java/com/fastbee/rechargecard/domain/dto/RechargecardUser.java b/fastbee-service/fastbee-rechargecard-service/src/main/java/com/fastbee/rechargecard/domain/dto/RechargecardUser.java index b354a6d..850175b 100644 --- a/fastbee-service/fastbee-rechargecard-service/src/main/java/com/fastbee/rechargecard/domain/dto/RechargecardUser.java +++ b/fastbee-service/fastbee-rechargecard-service/src/main/java/com/fastbee/rechargecard/domain/dto/RechargecardUser.java @@ -6,8 +6,10 @@ import java.math.BigDecimal; @Data public class RechargecardUser { - private String cardnumber; - private BigDecimal number; - private Integer status; - private String areacode; + private Integer cardNumber;//卡号 + private BigDecimal amount;//充值金额 + private Integer type;//充值方式 + private Integer areaCode;//区域码 + private String deviceNumber;//设备码 + private Integer water;//充值水量 } diff --git a/fastbee-service/fastbee-rechargecard-service/src/main/java/com/fastbee/rechargecard/service/impl/UserRechargeCardsServiceImpl.java b/fastbee-service/fastbee-rechargecard-service/src/main/java/com/fastbee/rechargecard/service/impl/UserRechargeCardsServiceImpl.java index 5f0766d..6eb1d1b 100644 --- a/fastbee-service/fastbee-rechargecard-service/src/main/java/com/fastbee/rechargecard/service/impl/UserRechargeCardsServiceImpl.java +++ b/fastbee-service/fastbee-rechargecard-service/src/main/java/com/fastbee/rechargecard/service/impl/UserRechargeCardsServiceImpl.java @@ -1,10 +1,17 @@ package com.fastbee.rechargecard.service.impl; import java.math.BigDecimal; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.UUID; import cn.hutool.core.lang.Console; +import cn.hutool.json.JSONUtil; +import com.fastbee.common.core.domain.AjaxResult; +import com.fastbee.common.exception.ServiceException; import com.fastbee.common.utils.DateUtils; +import com.fastbee.mqttclient.PubMqttClient; import com.fastbee.rechargecard.domain.NgUserRechargeRecords; import com.fastbee.rechargecard.domain.UserConsumptionDetails; import com.fastbee.rechargecard.domain.dto.RechargecardUser; @@ -25,8 +32,9 @@ import com.fastbee.rechargecard.service.IUserRechargeCardsService; @Service public class UserRechargeCardsServiceImpl implements IUserRechargeCardsService { - /*@Autowired - private UserRechargeCardsMapper userRechargeCardsMapper;*/ + @Autowired + private PubMqttClient pubMqttClient; + @Autowired private UserRechargeCardsMapper userRechargeCardsMapper; @Autowired @@ -124,22 +132,24 @@ public class UserRechargeCardsServiceImpl implements IUserRechargeCardsService public int updateUserRecharge(RechargecardUser rechargecardUser){ // 根据id查询用户充值卡信息 - UserRechargeCards info = userRechargeCardsMapper.selectUserRechargeCardsByCardnumber(rechargecardUser.getCardnumber()); - if (info == null) { - // 如果没有找到对应的记录,返回0或者一个错误码 - return 0; - } +// UserRechargeCards info = userRechargeCardsMapper.selectUserRechargeCardsByCardnumber(String.valueOf(rechargecardUser.getCardNumber())); +// if (info == null) { +// // 如果没有找到对应的记录,返回0或者一个错误码 +// throw new ServiceException("卡号不存在!"); +// } + UserConsumptionDetails userConsumptionDetails=new UserConsumptionDetails(); - userConsumptionDetails.setUserId(info.getUserId()); - userConsumptionDetails.setCardNumber(info.getCardNumber()); +// userConsumptionDetails.setUserId(info.getUserId()); +// userConsumptionDetails.setCardNumber(info.getCardNumber()); + userConsumptionDetails.setCardNumber(String.valueOf(rechargecardUser.getCardNumber())); userConsumptionDetails.setBillingType(0); - userConsumptionDetails.setAmountDue(rechargecardUser.getNumber()); + userConsumptionDetails.setAmountDue(rechargecardUser.getAmount()); userConsumptionDetails.setBillingDate(DateUtils.getNowDate()); userConsumptionDetails.setPaymentStatus(2); - userConsumptionDetails.setPaymentMethod(rechargecardUser.getStatus()); + userConsumptionDetails.setPaymentMethod(rechargecardUser.getType()); userConsumptionDetails.setPaymentTime(DateUtils.getNowDate()); userConsumptionDetails.setStatus(0); - userConsumptionDetails.setAreaCode(rechargecardUser.getAreacode()); + userConsumptionDetails.setAreaCode(String.valueOf(rechargecardUser.getAreaCode())); userConsumptionDetails.setCreateTime(DateUtils.getNowDate()); /*UserConsumptionDetails userConsumptionDetails = UserConsumptionDetails.builder() .userId(info.getUserId()) @@ -154,20 +164,20 @@ public class UserRechargeCardsServiceImpl implements IUserRechargeCardsService .areaCode(rechargecardUser.getAreacode()) // 假设 getAreacode() 方法返回区域代码 .build();*/ NgUserRechargeRecords ngUserRechargeRecords=new NgUserRechargeRecords(); - ngUserRechargeRecords.setUserId(info.getUserId()); - ngUserRechargeRecords.setUserName(info.getUserName()); - ngUserRechargeRecords.setCardNumber(info.getCardNumber()); - ngUserRechargeRecords.setAreaCode(rechargecardUser.getAreacode()); - ngUserRechargeRecords.setType(rechargecardUser.getStatus()); - ngUserRechargeRecords.setAmount(rechargecardUser.getNumber()); - ngUserRechargeRecords.setBalance(info.getBalance()); +// ngUserRechargeRecords.setUserId(info.getUserId()); +// ngUserRechargeRecords.setUserName(info.getUserName()); +// ngUserRechargeRecords.setCardNumber(info.getCardNumber()); + ngUserRechargeRecords.setCardNumber(String.valueOf(rechargecardUser.getCardNumber())); + ngUserRechargeRecords.setAreaCode(String.valueOf(rechargecardUser.getAreaCode())); + ngUserRechargeRecords.setType(rechargecardUser.getType()); + ngUserRechargeRecords.setAmount(rechargecardUser.getAmount()); +// ngUserRechargeRecords.setBalance(info.getBalance()); + ngUserRechargeRecords.setBalance(rechargecardUser.getAmount()); ngUserRechargeRecords.setRechargeTime(DateUtils.getNowDate()); ngUserRechargeRecords.setStatus(0); - ngUserRechargeRecords.setAreaCode(rechargecardUser.getAreacode()); + ngUserRechargeRecords.setAreaCode(String.valueOf(rechargecardUser.getAreaCode())); // 计算新的余额 - BigDecimal newBalance = rechargecardUser.getNumber().add(info.getBalance()); - - +// BigDecimal newBalance = rechargecardUser.getAmount().add(info.getBalance()); /* userConsumptionDetails.setCreateTime(DateUtils.getNowDate()); NgUserRechargeRecords ngUserRechargeRecords = NgUserRechargeRecords.builder() @@ -182,9 +192,26 @@ public class UserRechargeCardsServiceImpl implements IUserRechargeCardsService userRechargeRecordsMapper.insertNgUserRechargeRecords(ngUserRechargeRecords); userConsumptionDetailsMapper.insertUserConsumptionDetails(userConsumptionDetails); // 更新用户充值卡信息,包括新的余额 - info.setBalance(newBalance); - info.setUpdateTime(DateUtils.getNowDate()); - info.setAreaCode(rechargecardUser.getAreacode()); - return userRechargeCardsMapper.updateUserRechargeCards(info); +// info.setBalance(newBalance); +// info.setUpdateTime(DateUtils.getNowDate()); +// info.setAreaCode(String.valueOf(rechargecardUser.getAreaCode())); + + //构建主题 + String topic ="hzlink/147/"+rechargecardUser.getDeviceNumber()+"/cmd/down"; + //构建消息 + Map param = new HashMap<>(); + //远程阀控 + param.put("cmd",1000); + Map data = new HashMap<>(); + data.put("orderNum", ngUserRechargeRecords.getId()); + data.put("cardNum",rechargecardUser.getCardNumber()); + data.put("areaCode",rechargecardUser.getAreaCode()); + data.put("investBalance",rechargecardUser.getAmount().doubleValue()); + data.put("investWater",rechargecardUser.getWater()); + + param.put("data",data); + pubMqttClient.publish(1,true,topic, JSONUtil.toJsonStr(param)); +// int i = userRechargeCardsMapper.updateUserRechargeCards(info); + return 1; } }