| 
					
				 | 
			
			
				@@ -19,7 +19,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.fasterxml.jackson.databind.JsonNode; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.fasterxml.jackson.databind.ObjectMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.fasterxml.jackson.databind.node.ObjectNode; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.qmrb.parking.fee.ParkingFeeCalculator; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.qmrb.system.converter.PayOrderConverter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.qmrb.system.mapper.CouponMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.qmrb.system.mapper.OrderMapper; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -27,7 +26,6 @@ import com.qmrb.system.pojo.entity.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.qmrb.system.pojo.form.BarnRecordForm; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.qmrb.system.pojo.form.PayOrderForm; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.qmrb.system.pojo.query.PayOrderQuery; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.qmrb.system.pojo.vo.BarnRecordVO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.qmrb.system.pojo.vo.PayOrderVO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.qmrb.system.pojo.vo.ReCreateOrderVO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.qmrb.system.pojo.vo.ToCreateOrderVO; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -60,8 +58,6 @@ import java.math.BigDecimal; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.net.URISyntaxException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.nio.charset.StandardCharsets; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.security.PrivateKey; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import java.time.LocalDateTime; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import java.time.format.DateTimeFormatter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.Date; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.HashMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.List; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -288,6 +284,21 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         wrapper.set("pay_status",status).eq("id",pkId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         update(wrapper); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 更新订单实付金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    void updateAmountActuallyPaid(BigDecimal amountsPayable, String orderNo) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        UpdateWrapper<Order> wrapper = new UpdateWrapper<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        wrapper.set("amount_actually_paid",amountsPayable).eq("id",orderNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        update(wrapper); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 更新退款实付金额为0 退款时间赋值当前时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    void updateRefundOrderAmountActuallyPaid(BigDecimal amountsPayable, String orderNo) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        UpdateWrapper<Order> wrapper = new UpdateWrapper<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        wrapper.set("amount_actually_paid", amountsPayable) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .set("refund_time", new Date()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .eq("id", orderNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        update(wrapper); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     Integer getStatus(String pkId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         QueryWrapper<Order> wrapper = new QueryWrapper<>(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -315,13 +326,16 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (StrUtil.equals(WXOrderConstant.WX_BACK_OK, tradeState)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     //1.查询数据库 对比支付金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if(WxPayUtil.verifyMoney(node, queryAmountByOrderNo(orderNo))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        //2.对比成功 账单状态 已支付 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        //2.对比成功 账单状态 已支付 更新实付金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         updateStatus(SystemConstant.NUM_ONE,orderNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //   更新计费金额,已收金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         BarnRecordForm barnRecordForm = barnRecordService.chargingByBarnId(Long.parseLong(orderNo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         Order order = this.getById(orderNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         // 支付金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        BigDecimal amountsPayable = new BigDecimal(order.getAmountsPayable()).divide(new BigDecimal(100));  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        BigDecimal amountsPayable = new BigDecimal(order.getAmountsPayable()).divide(new BigDecimal(100)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        // 更新订单实付金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        updateAmountActuallyPaid(amountsPayable,orderNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         barnRecordForm.setReceivedAmount(barnRecordForm.getReceivedAmount().add(amountsPayable)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         barnRecordForm.setBillingStartTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         // 查询优惠券 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -458,6 +472,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     log.info("微信退款回调 退款订单编号(系统生成)============{}===========订单状态======{}", outRefundNo, refundStatus); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     //1.退款表状态修改 微信退款id(微信生成)  退款 调起退款则给用户退款 不根据本系统回调反馈 所以修改状态不成功 依旧返回true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                       updateStatus(statusCode,outRefundNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    //2.更新实付金额为0,并且更新退款时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    updateRefundOrderAmountActuallyPaid(BigDecimal.ZERO, outRefundNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } catch (Exception e) { 
			 |