修改微信支付逻辑为不登陆输入卡号和区域号也可以支付;修改根据卡号查询卡信息的地方为根据卡号加区域号;开关阀添加刷卡记录

This commit is contained in:
2025-01-06 16:03:23 +08:00
parent 8572ff63e7
commit 9eb126eea0
7 changed files with 113 additions and 20 deletions

View File

@ -10,7 +10,9 @@ import com.fastbee.common.core.domain.entity.SysUser;
import com.fastbee.common.core.mq.DeviceReportBo;
import com.fastbee.common.utils.DateUtils;
import com.fastbee.iot.domain.DeviceReportInfo;
import com.fastbee.iot.domain.NgCardSwipeRecords;
import com.fastbee.iot.mapper.DeviceReportInfoMapper;
import com.fastbee.iot.mapper.NgCardSwipeRecordsMapper;
import com.fastbee.mq.redischannel.producer.IssueInstructionsProducer;
import com.fastbee.mq.service.impl.DeviceOtherMsgHandler;
import com.fastbee.mqttclient.PubMqttClient;
@ -69,6 +71,9 @@ public class DeviceOtherMsgConsumer {
@Autowired
private UserRechargeCardsMapper userRechargeCardsMapper;
@Autowired
private NgCardSwipeRecordsMapper ngCardSwipeRecordsMapper;
@Autowired
private SysUserMapper sysUserMapper;
@ -253,7 +258,11 @@ public class DeviceOtherMsgConsumer {
String cardNumber= String.valueOf(dataJson.getInt("cardId"));//解析cardId
userIrrigationRecord.setCardNumber(cardNumber);//卡号
UserRechargeCards cardInfo=userRechargeCardsMapper.selectUserRechargeCardsByCardnumber(cardNumber);
String areaCode=dataJson.getStr("areaCode");
userIrrigationRecord.setAreaCode(areaCode);//区域号
System.err.println("areaCode"+areaCode);
UserRechargeCards cardInfo=userRechargeCardsMapper.selectUserRechargeCardsByCardNumberAndAreaCode(cardNumber,areaCode);
//根据卡号查询用户所属机构
List<UserRechargeCards> cardList = new LambdaQueryChainWrapper<>(userRechargeCardsMapper)
.select(UserRechargeCards::getUserId,UserRechargeCards::getDeptId)
@ -277,9 +286,7 @@ public class DeviceOtherMsgConsumer {
userIrrigationRecord.setOpenCumFlow(openCumFlow);//用户开阀时使用水量
System.err.println("openCumFlow"+openCumFlow);
String areaCode=dataJson.getStr("areaCode");
userIrrigationRecord.setAreaCode(areaCode);//区域号
System.err.println("areaCode"+areaCode);
userIrrigationRecord.setStatus(1);//状态改为灌溉中
@ -293,6 +300,24 @@ public class DeviceOtherMsgConsumer {
{
log.error("设备{}灌溉记录添加失败",serialNumber);
}
//添加一条刷卡记录
NgCardSwipeRecords ngCardSwipeRecords=new NgCardSwipeRecords();
ngCardSwipeRecords.setCardNumber(cardNumber);//卡号
ngCardSwipeRecords.setDeviceNumber(serialNumber);//设备编码
ngCardSwipeRecords.setAreaCode(areaCode);//区域号
ngCardSwipeRecords.setCardSwipeType(0);//开阀
ngCardSwipeRecords.setCardSwipeTime(DateUtils.getNowDate());//刷卡时间
if(cardInfo!=null && cardInfo.getUserId()!=null){
ngCardSwipeRecords.setUserId(cardInfo.getUserId());//用户id
}
if(cardInfo!=null && cardInfo.getUserName()!=null){
ngCardSwipeRecords.setUserName(cardInfo.getUserName());//用户名称
}
flag=ngCardSwipeRecordsMapper.insertNgCardSwipeRecords(ngCardSwipeRecords);
if(flag<1)
{
log.error("设备{}开阀刷卡记录添加失败",serialNumber);
}
}
//处理关阀门报文
@ -346,6 +371,29 @@ public class DeviceOtherMsgConsumer {
{
log.error("设备{}灌溉记录修改失败",serialNumber);
}
//添加一条刷卡记录
String areaCode=dataJson.getStr("areaCode");
UserRechargeCards cardInfo=userRechargeCardsMapper.selectUserRechargeCardsByCardNumberAndAreaCode(cardNumber,areaCode);//查询卡号+区域号信息
NgCardSwipeRecords ngCardSwipeRecords=new NgCardSwipeRecords();
ngCardSwipeRecords.setCardNumber(cardNumber);//卡号
ngCardSwipeRecords.setDeviceNumber(serialNumber);//设备编码
ngCardSwipeRecords.setAreaCode(areaCode);//区域号
ngCardSwipeRecords.setCardSwipeType(1);//关阀
ngCardSwipeRecords.setCardSwipeTime(DateUtils.getNowDate());//刷卡时间
if(cardInfo!=null && cardInfo.getUserId()!=null){
ngCardSwipeRecords.setUserId(cardInfo.getUserId());//用户id
}
if(cardInfo!=null && cardInfo.getUserName()!=null){
ngCardSwipeRecords.setUserName(cardInfo.getUserName());//用户名称
}
flag=ngCardSwipeRecordsMapper.insertNgCardSwipeRecords(ngCardSwipeRecords);
if(flag<1)
{
log.error("设备{}关阀刷卡记录添加失败",serialNumber);
}
}
}
}