在开阀关阀时添加一条刷卡记录;将userId保存到灌溉记录中
This commit is contained in:
parent
5bfa0cc659
commit
5d2ee2ae05
@ -3,6 +3,7 @@ package com.fastbee.mq.redischannel.consumer;
|
|||||||
import cn.hutool.core.date.DateTime;
|
import cn.hutool.core.date.DateTime;
|
||||||
import cn.hutool.json.JSONObject;
|
import cn.hutool.json.JSONObject;
|
||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
|
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
|
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
|
||||||
import com.fastbee.common.constant.FastBeeConstant;
|
import com.fastbee.common.constant.FastBeeConstant;
|
||||||
@ -10,7 +11,9 @@ import com.fastbee.common.core.domain.entity.SysUser;
|
|||||||
import com.fastbee.common.core.mq.DeviceReportBo;
|
import com.fastbee.common.core.mq.DeviceReportBo;
|
||||||
import com.fastbee.common.utils.DateUtils;
|
import com.fastbee.common.utils.DateUtils;
|
||||||
import com.fastbee.iot.domain.DeviceReportInfo;
|
import com.fastbee.iot.domain.DeviceReportInfo;
|
||||||
|
import com.fastbee.iot.domain.NgCardSwipeRecords;
|
||||||
import com.fastbee.iot.mapper.DeviceReportInfoMapper;
|
import com.fastbee.iot.mapper.DeviceReportInfoMapper;
|
||||||
|
import com.fastbee.iot.mapper.NgCardSwipeRecordsMapper;
|
||||||
import com.fastbee.mq.redischannel.producer.IssueInstructionsProducer;
|
import com.fastbee.mq.redischannel.producer.IssueInstructionsProducer;
|
||||||
import com.fastbee.mq.service.impl.DeviceOtherMsgHandler;
|
import com.fastbee.mq.service.impl.DeviceOtherMsgHandler;
|
||||||
import com.fastbee.mqttclient.PubMqttClient;
|
import com.fastbee.mqttclient.PubMqttClient;
|
||||||
@ -69,6 +72,9 @@ public class DeviceOtherMsgConsumer {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private UserRechargeCardsMapper userRechargeCardsMapper;
|
private UserRechargeCardsMapper userRechargeCardsMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private NgCardSwipeRecordsMapper ngCardSwipeRecordsMapper;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private SysUserMapper sysUserMapper;
|
private SysUserMapper sysUserMapper;
|
||||||
|
|
||||||
@ -96,9 +102,11 @@ public class DeviceOtherMsgConsumer {
|
|||||||
System.err.println(topic.endsWith("/info/up"));
|
System.err.println(topic.endsWith("/info/up"));
|
||||||
//设备上报数据消息---------------------------------------------------------------------------------
|
//设备上报数据消息---------------------------------------------------------------------------------
|
||||||
if(topic.endsWith("/info/up")){
|
if(topic.endsWith("/info/up")){
|
||||||
deviceDataReportHandler(productId,serialNumber,JSONUtil.parseObj(new String(data)));
|
/*deviceDataReportHandler(productId,serialNumber,JSONUtil.parseObj(new String(data)));
|
||||||
//更新设备在线状态
|
//更新设备在线状态
|
||||||
updateDeviceOnlineStatus( productId,serialNumber);//拼成一个唯一的key,只要key存在,则设备在线
|
updateDeviceOnlineStatus( productId,serialNumber);//拼成一个唯一的key,只要key存在,则设备在线*/
|
||||||
|
|
||||||
|
|
||||||
// updateDeviceOnlineStatusDb(serialNumber);
|
// updateDeviceOnlineStatusDb(serialNumber);
|
||||||
//保存使用记录
|
//保存使用记录
|
||||||
NgWaterPumpUsageRecords pumpUsageRecords=new NgWaterPumpUsageRecords();
|
NgWaterPumpUsageRecords pumpUsageRecords=new NgWaterPumpUsageRecords();
|
||||||
@ -242,10 +250,10 @@ public class DeviceOtherMsgConsumer {
|
|||||||
}
|
}
|
||||||
//开阀门,关阀门
|
//开阀门,关阀门
|
||||||
else if("startPump".equals(JSONUtil.parseObj(data1).get("action"))|| "stopPump".equals(JSONUtil.parseObj(data1).get("action"))){
|
else if("startPump".equals(JSONUtil.parseObj(data1).get("action"))|| "stopPump".equals(JSONUtil.parseObj(data1).get("action"))){
|
||||||
int i = ngWaterPumpUsageRecordsMapper.insertNgWaterPumpUsageRecords(pumpUsageRecords);
|
/*int i = ngWaterPumpUsageRecordsMapper.insertNgWaterPumpUsageRecords(pumpUsageRecords);
|
||||||
if(i<1){
|
if(i<1){
|
||||||
System.err.println("--------------------------保存使用记录失败!---------------------------");
|
System.err.println("--------------------------保存使用记录失败!---------------------------");
|
||||||
}
|
}*/
|
||||||
JSONObject dataJson=jsonObject.getJSONObject("data");
|
JSONObject dataJson=jsonObject.getJSONObject("data");
|
||||||
System.err.println(jsonObject);
|
System.err.println(jsonObject);
|
||||||
System.err.println(dataJson);
|
System.err.println(dataJson);
|
||||||
@ -262,28 +270,26 @@ public class DeviceOtherMsgConsumer {
|
|||||||
userIrrigationRecord.setCardNumber(cardNumber);//卡号
|
userIrrigationRecord.setCardNumber(cardNumber);//卡号
|
||||||
System.err.println("cardNumber"+cardNumber);
|
System.err.println("cardNumber"+cardNumber);
|
||||||
|
|
||||||
UserRechargeCards cardInfo=userRechargeCardsMapper.selectUserRechargeCardsByCardnumber(cardNumber);
|
String areaCode=dataJson.getStr("areaCode");
|
||||||
if(cardInfo==null)
|
userIrrigationRecord.setAreaCode(areaCode);//区域号
|
||||||
|
System.err.println("areaCode"+areaCode);
|
||||||
|
|
||||||
|
QueryWrapper queryWrapper=new QueryWrapper<>(userRechargeCardsMapper);
|
||||||
|
queryWrapper.eq("card_number",cardNumber);
|
||||||
|
UserRechargeCards userRechargeCards=userRechargeCardsMapper.selectOne(queryWrapper);//获取充值卡信息
|
||||||
|
if(userRechargeCards==null)
|
||||||
{
|
{
|
||||||
System.err.println("用户不存在");
|
log.error("用户不存在");
|
||||||
}
|
|
||||||
Long deptId= null;//获取deptId
|
|
||||||
if (cardInfo != null) {
|
|
||||||
deptId = cardInfo.getDeptId();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
userIrrigationRecord.setDeptId(deptId);
|
if (userRechargeCards!=null && userRechargeCards.getDeptId() != null) {
|
||||||
|
userIrrigationRecord.setDeptId(userRechargeCards.getDeptId());//机构id
|
||||||
|
}
|
||||||
|
|
||||||
/*Long userId=null;
|
if(userRechargeCards!=null && userRechargeCards.getUserId()!=null)
|
||||||
System.err.println("userId");
|
|
||||||
if(userRechargeCardsMapper.selectUserRechargeCardsByCardNumber(cardNumber)==null)
|
|
||||||
{
|
{
|
||||||
throw new Exception("订单信息不存在");
|
userIrrigationRecord.setUserId(userRechargeCards.getUserId());//用户id
|
||||||
}
|
}
|
||||||
userId=userRechargeCardsMapper.selectUserRechargeCardsByCardNumber(cardNumber).getUserId();
|
|
||||||
userIrrigationRecord.setUserId(userId);
|
|
||||||
System.err.println("userId"+userId);*/
|
|
||||||
|
|
||||||
|
|
||||||
DateTime currentTime=DateTime.now();//获取当前时间作为开阀时间
|
DateTime currentTime=DateTime.now();//获取当前时间作为开阀时间
|
||||||
userIrrigationRecord.setStartTime(currentTime);//开阀时间
|
userIrrigationRecord.setStartTime(currentTime);//开阀时间
|
||||||
@ -294,10 +300,6 @@ public class DeviceOtherMsgConsumer {
|
|||||||
userIrrigationRecord.setOpenCumFlow(openCumFlow);//用户开阀时使用水量
|
userIrrigationRecord.setOpenCumFlow(openCumFlow);//用户开阀时使用水量
|
||||||
System.err.println("openCumFlow"+openCumFlow);
|
System.err.println("openCumFlow"+openCumFlow);
|
||||||
|
|
||||||
String areaCode=dataJson.getStr("areaCode");
|
|
||||||
userIrrigationRecord.setAreaCode(areaCode);//区域号
|
|
||||||
System.err.println("areaCode"+areaCode);
|
|
||||||
|
|
||||||
userIrrigationRecord.setStatus(1);//状态改为灌溉中
|
userIrrigationRecord.setStatus(1);//状态改为灌溉中
|
||||||
|
|
||||||
System.out.println(userIrrigationRecord);
|
System.out.println(userIrrigationRecord);
|
||||||
@ -305,19 +307,42 @@ public class DeviceOtherMsgConsumer {
|
|||||||
userIrrigationRecord.setCreateTime(DateUtils.getNowDate());
|
userIrrigationRecord.setCreateTime(DateUtils.getNowDate());
|
||||||
|
|
||||||
//对充值卡余额的操作
|
//对充值卡余额的操作
|
||||||
UserRechargeCards userRechargeCards = userRechargeCardsMapper.selectUserRechargeCardsByCardNumber(cardNumber);//获取充值卡信息
|
//UserRechargeCards userRechargeCards = userRechargeCardsMapper.selectUserRechargeCardsByCardNumber(cardNumber);//获取充值卡信息
|
||||||
BigDecimal balance=dataJson.getBigDecimal("userBalance");//获取当前用户金额
|
if(userRechargeCards!=null)
|
||||||
userRechargeCards.setBalance(balance);//同步用户余额
|
{
|
||||||
|
BigDecimal balance=dataJson.getBigDecimal("userBalance");//获取当前用户金额
|
||||||
|
userRechargeCards.setBalance(balance);//同步用户余额
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int flag=userIrrigationRecordMapper.insertUserIrrigationRecord(userIrrigationRecord);//开阀时添加一条灌溉记录
|
int flag=userIrrigationRecordMapper.insertUserIrrigationRecord(userIrrigationRecord);//开阀时添加一条灌溉记录
|
||||||
if(flag<1)
|
if(flag<1)
|
||||||
{
|
{
|
||||||
System.err.println("灌溉记录添加失败");
|
log.error("灌溉记录添加失败");
|
||||||
}else{
|
}else{
|
||||||
flag=userRechargeCardsMapper.updateUserRechargeCards(userRechargeCards);//同步充值卡余额
|
flag=userRechargeCardsMapper.updateUserRechargeCards(userRechargeCards);//同步充值卡余额
|
||||||
if(flag<1)
|
if(flag<1)
|
||||||
{
|
{
|
||||||
System.err.println("充值卡金额同步失败");
|
log.error("充值卡金额同步失败");
|
||||||
|
}else{
|
||||||
|
//添加一条刷卡记录
|
||||||
|
NgCardSwipeRecords ngCardSwipeRecords=new NgCardSwipeRecords();
|
||||||
|
ngCardSwipeRecords.setCardNumber(cardNumber);//卡号
|
||||||
|
ngCardSwipeRecords.setDeviceNumber(serialNumber);//设备编码
|
||||||
|
ngCardSwipeRecords.setAreaCode(areaCode);//区域号
|
||||||
|
ngCardSwipeRecords.setCardSwipeType(0);//开阀
|
||||||
|
ngCardSwipeRecords.setCardSwipeTime(DateUtils.getNowDate());//刷卡时间
|
||||||
|
if(userRechargeCards!=null && userRechargeCards.getUserId()!=null){
|
||||||
|
ngCardSwipeRecords.setUserId(userRechargeCards.getUserId());//用户id
|
||||||
|
}
|
||||||
|
if(userRechargeCards!=null && userRechargeCards.getUserName()!=null){
|
||||||
|
ngCardSwipeRecords.setUserName(userRechargeCards.getUserName());//用户名称
|
||||||
|
}
|
||||||
|
flag=ngCardSwipeRecordsMapper.insertNgCardSwipeRecords(ngCardSwipeRecords);
|
||||||
|
if(flag!=1)
|
||||||
|
{
|
||||||
|
log.error("刷卡记录添加失败");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}else if("stopPump".equals(JSONUtil.parseObj(data1).get("action"))){
|
}else if("stopPump".equals(JSONUtil.parseObj(data1).get("action"))){
|
||||||
@ -355,13 +380,34 @@ public class DeviceOtherMsgConsumer {
|
|||||||
int flag=userIrrigationRecordMapper.updateUserIrrigationRecord(userIrrigationRecord);//关阀时修改一条灌溉记录
|
int flag=userIrrigationRecordMapper.updateUserIrrigationRecord(userIrrigationRecord);//关阀时修改一条灌溉记录
|
||||||
if(flag<1)
|
if(flag<1)
|
||||||
{
|
{
|
||||||
System.err.println("灌溉记录修改失败");
|
log.error("灌溉记录修改失败");
|
||||||
}else{
|
}else{
|
||||||
flag=userRechargeCardsMapper.updateUserRechargeCards(userRechargeCards);//同步充值卡余额
|
flag=userRechargeCardsMapper.updateUserRechargeCards(userRechargeCards);//同步充值卡余额
|
||||||
if(flag<1)
|
if(flag<1)
|
||||||
{
|
{
|
||||||
System.err.println("充值卡金额同步失败");
|
log.error("充值卡金额同步失败");
|
||||||
|
}else{
|
||||||
|
//添加一条刷卡记录
|
||||||
|
String areaCode=dataJson.getStr("areaCode");
|
||||||
|
NgCardSwipeRecords ngCardSwipeRecords=new NgCardSwipeRecords();
|
||||||
|
ngCardSwipeRecords.setCardNumber(cardNumber);//卡号
|
||||||
|
ngCardSwipeRecords.setDeviceNumber(serialNumber);//设备编码
|
||||||
|
ngCardSwipeRecords.setAreaCode(areaCode);//区域号
|
||||||
|
ngCardSwipeRecords.setCardSwipeType(1);//关阀
|
||||||
|
ngCardSwipeRecords.setCardSwipeTime(DateUtils.getNowDate());//刷卡时间
|
||||||
|
if(userRechargeCards!=null && userRechargeCards.getUserId()!=null){
|
||||||
|
ngCardSwipeRecords.setUserId(userRechargeCards.getUserId());//用户id
|
||||||
|
}
|
||||||
|
if(userRechargeCards!=null && userRechargeCards.getUserName()!=null){
|
||||||
|
ngCardSwipeRecords.setUserName(userRechargeCards.getUserName());//用户名称
|
||||||
|
}
|
||||||
|
flag=ngCardSwipeRecordsMapper.insertNgCardSwipeRecords(ngCardSwipeRecords);
|
||||||
|
if(flag<1)
|
||||||
|
{
|
||||||
|
log.error("刷卡记录添加失败");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -575,7 +621,7 @@ public class DeviceOtherMsgConsumer {
|
|||||||
+ " \"meterIns\": 6100,"
|
+ " \"meterIns\": 6100,"
|
||||||
+ " \"meterStatus\": 1,"
|
+ " \"meterStatus\": 1,"
|
||||||
+ " \"userSumFlow\": 640000,"
|
+ " \"userSumFlow\": 640000,"
|
||||||
+ " \"cardId\": 402,"
|
+ " \"cardId\": 403,"
|
||||||
+ " \"action\": \"startPump\","
|
+ " \"action\": \"startPump\","
|
||||||
+ " \"meterSum\": 6400,"
|
+ " \"meterSum\": 6400,"
|
||||||
+ " \"pumpState\": 0,"
|
+ " \"pumpState\": 0,"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user