|
@@ -588,71 +588,77 @@ public class PayController {
|
|
|
logger.info("根据订单查询用户手机号等订单信息"+ infoMap.toString());
|
|
|
//手机号必须有
|
|
|
if(infoMap != null && infoMap.containsKey("mobilePhone") && infoMap.get("mobilePhone") !=null ){
|
|
|
-
|
|
|
+ int integral =0;
|
|
|
StationInfo stationInfo = new StationInfo();
|
|
|
stationInfo.setStationId(Integer.valueOf(infoMap.get("stationId").toString()));
|
|
|
StationInfo stationInfos = stationService.selectStationInfo(stationInfo);
|
|
|
- //插入油站余额记录
|
|
|
if(stationInfos.getIsLngFlagGroup() !=null && stationInfos.getIsLngFlagGroup().equals("1")){
|
|
|
+ //等于1表示次要业务:LNG集团平台加气(可能会出现); 插入油站余额记录
|
|
|
StationBalanceChange stationBalanceChange = new StationBalanceChange();
|
|
|
stationBalanceChange.setStationId(stationInfos.getStationId());
|
|
|
stationBalanceChange.setAmt(Double.valueOf(infoMap.get("driverAmt").toString()));
|
|
|
stationBalanceChange.setCreateTime(new SimpleDateFormat("yyyy-MM-dd hh-mm-ss").parse(infoMap.get("payDate").toString()));
|
|
|
stationBalanceChange.setType("-");
|
|
|
stationBalanceChange.setOrderNo(ordNo);
|
|
|
+ //生成记录
|
|
|
payOrderService.insertStationBalanceExchange(stationBalanceChange);
|
|
|
- }
|
|
|
-
|
|
|
- CustomerManage customerManage = this.insertCustomerManage(infoMap); //插入客户积分返回要插入客户的信息
|
|
|
- int integral =0;
|
|
|
- CalculateIntegral calculateIntegral = new CalculateIntegral();
|
|
|
- calculateIntegral.setOrderNo(ordNo);
|
|
|
- if(infoMap.containsKey("consumer") && infoMap.get("consumer") !=null){
|
|
|
- calculateIntegral.setNickName(infoMap.get("consumer").toString());
|
|
|
+ StationInfo s = new StationInfo();
|
|
|
+ BigDecimal subtract = new BigDecimal(String.valueOf(stationInfos.getBalance())).subtract(new BigDecimal(amt));
|
|
|
+ s.setBalance(subtract.doubleValue());
|
|
|
+ //更新油站余额
|
|
|
+ stationService.updateStationBalance(s);
|
|
|
}else {
|
|
|
- calculateIntegral.setNickName("");
|
|
|
- }
|
|
|
- calculateIntegral.setGroupId(Integer.valueOf(infoMap.get("groupId").toString())); //集团ID
|
|
|
- calculateIntegral.setCustomerGrade(customerManage.getGrade()); //客户等级
|
|
|
- calculateIntegral.setIntegralRuleFlag(stationInfos.getIntegralRuleFlagGroup()); //是否共享积分规则
|
|
|
- calculateIntegral.setOpenId(infoMap.get("minaOpenid").toString()); //客户小程序ID
|
|
|
- if(infoMap.containsKey("blogOpenid") && StringUtils.isNotBlank(infoMap.get("blogOpenid").toString())){
|
|
|
- calculateIntegral.setBlogOpenid(infoMap.get("blogOpenid").toString());
|
|
|
- }
|
|
|
- calculateIntegral.setStationId(Integer.valueOf(infoMap.get("stationId").toString())); //油站ID
|
|
|
- calculateIntegral.setStationName(infoMap.get("stationName").toString()); //油站名称
|
|
|
- calculateIntegral.setAmt(new BigDecimal(infoMap.get("amt").toString())); //实收金额
|
|
|
- calculateIntegral.setOilType(infoMap.get("oilType").toString()); //订单类型
|
|
|
- calculateIntegral.setOilName(infoMap.get("oilName").toString()); //油品名称
|
|
|
- calculateIntegral.setOilLiters(new BigDecimal(infoMap.get("orderLiters").toString())); //加油升数
|
|
|
- calculateIntegral.setUnionId(infoMap.get("unionId").toString()); //客户unionId
|
|
|
- calculateIntegral.setNickName(infoMap.get("consumer").toString()); //客户昵称
|
|
|
- calculateIntegral.setMobilePhone(infoMap.get("mobilePhone").toString()); //客户手机号
|
|
|
- calculateIntegral.setReceivableAmt(new BigDecimal(infoMap.get("receivableAmt").toString())); //应收金额
|
|
|
-
|
|
|
- CustomerPoints customerPoints;
|
|
|
- //计算积分
|
|
|
- CalculateIntegral calculateIntegralInfos;
|
|
|
- if(stationInfos.getIntegralRuleFlagGroup().equals("1")){ //表示积分共享
|
|
|
- if(stationInfos.getIntegralFlagGroup().equals("1")){ //集团开启积分功能
|
|
|
- //calculateIntegral.setGroupId(stationInfos.getGroupId());
|
|
|
- calculateIntegralInfos = this.calculateIntegral(calculateIntegral);
|
|
|
- //插入客户所得积分
|
|
|
- customerPoints = this.insertUserIntegral(calculateIntegralInfos);
|
|
|
- integral =calculateIntegralInfos.getIntegral();
|
|
|
- //推送积分
|
|
|
- this.pushIntegral(customerPoints, calculateIntegral);
|
|
|
+ //当前系统主要业务逻辑
|
|
|
+ CustomerManage customerManage = this.insertCustomerManage(infoMap); //插入客户积分返回要插入客户的信息
|
|
|
+ CalculateIntegral calculateIntegral = new CalculateIntegral();
|
|
|
+ calculateIntegral.setOrderNo(ordNo);
|
|
|
+ if(infoMap.containsKey("consumer") && infoMap.get("consumer") !=null){
|
|
|
+ calculateIntegral.setNickName(infoMap.get("consumer").toString());
|
|
|
+ }else {
|
|
|
+ calculateIntegral.setNickName("");
|
|
|
}
|
|
|
- }else {
|
|
|
- if(stationInfos.getIntegralFlag().equals("1")){
|
|
|
- //calculateIntegral.setStationId(stationInfos.getStationId());
|
|
|
- calculateIntegralInfos = this.calculateIntegral(calculateIntegral);
|
|
|
- //插入客户所得积分
|
|
|
- customerPoints = this.insertUserIntegral(calculateIntegralInfos);
|
|
|
- //推送积分
|
|
|
- integral =calculateIntegralInfos.getIntegral();
|
|
|
- this.pushIntegral(customerPoints, calculateIntegral);
|
|
|
+ calculateIntegral.setGroupId(Integer.valueOf(infoMap.get("groupId").toString())); //集团ID
|
|
|
+ calculateIntegral.setCustomerGrade(customerManage.getGrade()); //客户等级
|
|
|
+ calculateIntegral.setIntegralRuleFlag(stationInfos.getIntegralRuleFlagGroup()); //是否共享积分规则
|
|
|
+ calculateIntegral.setOpenId(infoMap.get("minaOpenid").toString()); //客户小程序ID
|
|
|
+ if(infoMap.containsKey("blogOpenid") && StringUtils.isNotBlank(infoMap.get("blogOpenid").toString())){
|
|
|
+ calculateIntegral.setBlogOpenid(infoMap.get("blogOpenid").toString());
|
|
|
+ }
|
|
|
+ calculateIntegral.setStationId(Integer.valueOf(infoMap.get("stationId").toString())); //油站ID
|
|
|
+ calculateIntegral.setStationName(infoMap.get("stationName").toString()); //油站名称
|
|
|
+ calculateIntegral.setAmt(new BigDecimal(infoMap.get("amt").toString())); //实收金额
|
|
|
+ calculateIntegral.setOilType(infoMap.get("oilType").toString()); //订单类型
|
|
|
+ calculateIntegral.setOilName(infoMap.get("oilName").toString()); //油品名称
|
|
|
+ calculateIntegral.setOilLiters(new BigDecimal(infoMap.get("orderLiters").toString())); //加油升数
|
|
|
+ calculateIntegral.setUnionId(infoMap.get("unionId").toString()); //客户unionId
|
|
|
+ calculateIntegral.setNickName(infoMap.get("consumer").toString()); //客户昵称
|
|
|
+ calculateIntegral.setMobilePhone(infoMap.get("mobilePhone").toString()); //客户手机号
|
|
|
+ calculateIntegral.setReceivableAmt(new BigDecimal(infoMap.get("receivableAmt").toString())); //应收金额
|
|
|
+
|
|
|
+ CustomerPoints customerPoints;
|
|
|
+ //计算积分
|
|
|
+ CalculateIntegral calculateIntegralInfos;
|
|
|
+ if(stationInfos.getIntegralRuleFlagGroup().equals("1")){ //表示积分共享
|
|
|
+ if(stationInfos.getIntegralFlagGroup().equals("1")){ //集团开启积分功能
|
|
|
+ //calculateIntegral.setGroupId(stationInfos.getGroupId());
|
|
|
+ calculateIntegralInfos = this.calculateIntegral(calculateIntegral);
|
|
|
+ //插入客户所得积分
|
|
|
+ customerPoints = this.insertUserIntegral(calculateIntegralInfos);
|
|
|
+ integral =calculateIntegralInfos.getIntegral();
|
|
|
+ //推送积分
|
|
|
+ this.pushIntegral(customerPoints, calculateIntegral);
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ if(stationInfos.getIntegralFlag().equals("1")){
|
|
|
+ //calculateIntegral.setStationId(stationInfos.getStationId());
|
|
|
+ calculateIntegralInfos = this.calculateIntegral(calculateIntegral);
|
|
|
+ //插入客户所得积分
|
|
|
+ customerPoints = this.insertUserIntegral(calculateIntegralInfos);
|
|
|
+ //推送积分
|
|
|
+ integral =calculateIntegralInfos.getIntegral();
|
|
|
+ this.pushIntegral(customerPoints, calculateIntegral);
|
|
|
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -675,6 +681,7 @@ public class PayController {
|
|
|
payOrder.setIntegral(String.valueOf(integral));
|
|
|
payOrder.setPrintSetting(stationInfos.getPrintSetting());
|
|
|
if(stationDeviceManagerList.get(0).getPosFanoutExchange() !=null && stationDeviceManagerList.get(0).getPosQueue() !=null){
|
|
|
+ logger.info("POS设备交换机信息:" + stationDeviceManagerList.get(0).getPosFanoutExchange());
|
|
|
payOrder.setPosFanoutExchange(stationDeviceManagerList.get(0).getPosFanoutExchange());
|
|
|
payOrder.setPosQueue(stationDeviceManagerList.get(0).getPosFanoutExchange());
|
|
|
payOrder.setDeviceNo(stationDeviceManagerList.get(0).getDeviceNo());
|
|
@@ -711,8 +718,14 @@ public class PayController {
|
|
|
}else{
|
|
|
logger.info("该用户无手机号!");
|
|
|
}
|
|
|
+ }else {
|
|
|
+ logger.info("更新订单状态失败!");
|
|
|
}
|
|
|
+ }else {
|
|
|
+ logger.info("该订单状态不为0!");
|
|
|
}
|
|
|
+ }else {
|
|
|
+ logger.info("该订单不存在!");
|
|
|
}
|
|
|
}else {
|
|
|
logger.info("验签失败");
|