From 06e4db5a576c63c10ab4673dba017ffe1a3e7e66 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 17 一月 2025 19:07:27 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TShoppingOrderController.java |   84 ++++++++++++++++++++++++++++++++++--------
 1 files changed, 68 insertions(+), 16 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TShoppingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TShoppingOrderController.java
index 397c94d..9f1b596 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TShoppingOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TShoppingOrderController.java
@@ -5,9 +5,11 @@
 import java.time.LocalDateTime;
 
 
+import com.alibaba.fastjson2.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
 import com.ruoyi.account.api.feignClient.AppCouponClient;
+import com.ruoyi.account.api.feignClient.AppUserAddressClient;
 import com.ruoyi.account.api.feignClient.AppUserClient;
 import com.ruoyi.account.api.model.TAppUserAddress;
 import com.ruoyi.common.core.domain.R;
@@ -15,6 +17,8 @@
 import com.ruoyi.common.core.utils.OrderCodeUtil;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.PageInfo;
+import com.ruoyi.common.security.annotation.Logical;
+import com.ruoyi.common.security.annotation.RequiresPermissions;
 import com.ruoyi.common.security.service.TokenService;
 import com.ruoyi.order.api.model.TChargingOrderRefund;
 import com.ruoyi.order.api.model.TExchangeOrder;
@@ -80,6 +84,13 @@
 	private SysUserClient sysUserClient;
 	@Resource
 	private TShoppingOrderRefundService shoppingOrderRefundService;
+	@Resource
+	private AppUserAddressClient appUserAddressClient;
+	
+	
+	
+	
+	
 	/**
 	 * 远程管理后台取消订单后退款回调
 	 */
@@ -104,6 +115,7 @@
 		}
 	}
 	
+	@RequiresPermissions(value = {"/shoppingOrder"}, logical = Logical.OR)
 	@PostMapping("/getShoppingOrderList")
 	@ApiOperation(value = "列表查询", tags = {"管理后台-购物订单"})
 	public AjaxResult<PageInfo<TShoppingOrder>> getShoppingOrderList(@RequestBody ShoppingOrderQuery query) {
@@ -127,6 +139,7 @@
 		return AjaxResult.success(res);
 	}
 	
+	@RequiresPermissions(value = {"/shoppingOrder/deliver_goods"}, logical = Logical.OR)
 	@GetMapping("/getShoppingOrderInfoById")
 	@ApiOperation(value = "根据订单id查看订单详情", tags = {"管理后台-购物订单"})
 	public AjaxResult<TShoppingOrder> getShoppingOrderList(String id) {
@@ -167,13 +180,17 @@
 		return AjaxResult.success(byId);
 	}
 	
+	
+	@RequiresPermissions(value = {"/shoppingOrder/del"}, logical = Logical.OR)
 	@GetMapping("/deleteShoppingOrder")
 	@ApiOperation(value = "批量删除订单", tags = {"管理后台-购物订单"})
 	public AjaxResult<TShoppingOrder> deleteShoppingOrder(String ids) {
 		shoppingOrderService.removeBatchByIds(Arrays.asList(ids.split(",")));
 		return AjaxResult.success();
 	}
-
+	
+	
+	@RequiresPermissions(value = {"/shoppingOrder/cancel"}, logical = Logical.OR)
 	@GetMapping("/cancelShoppingOrder")
 	@ApiOperation(value = "取消订单", tags = {"管理后台-购物订单"})
 	public AjaxResult cancelShoppingOrder(String id) {
@@ -182,7 +199,7 @@
 		// todo 根据支付方式 取消订单
 		byId.setCancellationId(userid);
 		byId.setCancellationTime(LocalDateTime.now());
-		byId.setStatus(4);
+		byId.setStatus(5);
 		SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
 		TShoppingOrderRefund tShoppingOrderRefund = new TShoppingOrderRefund();
 		tShoppingOrderRefund.setPayTime(byId.getPayTime());
@@ -255,6 +272,8 @@
 		return AjaxResult.success();
 	}
 	
+	
+	@RequiresPermissions(value = {"/shoppingOrder/deliver_goods"}, logical = Logical.OR)
 	@GetMapping("/consignerShoppingOrder")
 	@ApiOperation(value = "发货", tags = {"管理后台-购物订单"})
 	public AjaxResult consignerShoppingOrder(String id, String companyName, String code) {
@@ -281,11 +300,11 @@
 	public AjaxResult<Map<String, Object>> getMyShoppingOrderListNum() {
 		Long userId = tokenService.getLoginUserApplet().getUserId();
 		long dfh = shoppingOrderService.count(new LambdaQueryWrapper<TShoppingOrder>().eq(TShoppingOrder::getDelFlag, 0)
-				.eq(TShoppingOrder::getStatus, 1).eq(TShoppingOrder::getAppUserId, userId));
+				.eq(TShoppingOrder::getStatus, 1).eq(TShoppingOrder::getAppUserId, userId).eq(TShoppingOrder::getPaymentStatus, 2));
 		long dsh = shoppingOrderService.count(new LambdaQueryWrapper<TShoppingOrder>().eq(TShoppingOrder::getDelFlag, 0)
-				.eq(TShoppingOrder::getStatus, 2).eq(TShoppingOrder::getAppUserId, userId));
+				.eq(TShoppingOrder::getStatus, 2).eq(TShoppingOrder::getAppUserId, userId).eq(TShoppingOrder::getPaymentStatus, 2));
 		long ywc = shoppingOrderService.count(new LambdaQueryWrapper<TShoppingOrder>().eq(TShoppingOrder::getDelFlag, 0)
-				.eq(TShoppingOrder::getStatus, 3).eq(TShoppingOrder::getAppUserId, userId));
+				.eq(TShoppingOrder::getStatus, 3).eq(TShoppingOrder::getAppUserId, userId).eq(TShoppingOrder::getPaymentStatus, 2));
 		Map<String, Object> map = new HashMap<>();
 		map.put("dfh", dfh);
 		map.put("dsh", dsh);
@@ -295,8 +314,27 @@
 	
 	
 	@GetMapping("/getMyShoppingOrderInfo/{id}")
-	@ApiOperation(value = "获取购买订单详情", tags = {"小程序-商城购买订单", "管理后台-支付订单-订单信息"})
+	@ApiOperation(value = "获取购买订单详情", tags = {"管理后台-支付订单-订单信息"})
 	public AjaxResult<MyShoppingOrderInfo> getMyShoppingOrderInfo(@PathVariable String id) {
+		TShoppingOrder shoppingOrder = shoppingOrderService.getById(id);
+		Long userId = tokenService.getLoginUserApplet().getUserId();
+		if(!shoppingOrder.getAppUserId().equals(userId)){
+			return AjaxResult.error("权限不足");
+		}
+		MyShoppingOrderInfo info = shoppingOrderService.getMyShoppingOrderInfo(id);
+		return AjaxResult.success(info);
+	}
+	
+	
+	
+	@GetMapping("/getMyShoppingOrderInfo1/{id}")
+	@ApiOperation(value = "获取购买订单详情", tags = {"小程序-商城购买订单"})
+	public AjaxResult<MyShoppingOrderInfo> getMyShoppingOrderInfo1(@PathVariable String id) {
+		TShoppingOrder shoppingOrder = shoppingOrderService.getById(id);
+		Long userId = tokenService.getLoginUserApplet().getUserId();
+		if(!shoppingOrder.getAppUserId().equals(userId)){
+			return AjaxResult.error("权限不足");
+		}
 		MyShoppingOrderInfo info = shoppingOrderService.getMyShoppingOrderInfo(id);
 		return AjaxResult.success(info);
 	}
@@ -306,6 +344,10 @@
 	@ApiOperation(value = "确认收货操作", tags = {"小程序-商城购买订单"})
 	public AjaxResult confirmReceipt(@PathVariable String id) {
 		TShoppingOrder shoppingOrder = shoppingOrderService.getById(id);
+		Long userId = tokenService.getLoginUserApplet().getUserId();
+		if(!shoppingOrder.getAppUserId().equals(userId)){
+			return AjaxResult.error("权限不足");
+		}
 		if (shoppingOrder.getStatus() == 3) {
 			return AjaxResult.error("不能重复确认收货");
 		}
@@ -316,6 +358,7 @@
 			return AjaxResult.error("订单已取消,不允许操作。");
 		}
 		shoppingOrder.setStatus(3);
+		shoppingOrder.setReceivingTime(LocalDateTime.now());
 		shoppingOrderService.updateById(shoppingOrder);
 		return AjaxResult.success();
 	}
@@ -324,6 +367,11 @@
 	@PutMapping("/cancelOrder/{id}")
 	@ApiOperation(value = "取消订单操作", tags = {"小程序-商城购买订单"})
 	public AjaxResult cancelOrder(@PathVariable String id) {
+		TShoppingOrder shoppingOrder = shoppingOrderService.getById(id);
+		Long userId = tokenService.getLoginUserApplet().getUserId();
+		if(!shoppingOrder.getAppUserId().equals(userId)){
+			return AjaxResult.error("权限不足");
+		}
 		return shoppingOrderService.cancelOrder(id);
 	}
 	
@@ -331,15 +379,11 @@
 	 * 商城订单取消微信退款回调
 	 */
 	@PostMapping("/cancelShoppingOrderWxRefund")
-	public void cancelShoppingOrderWxRefund(HttpServletRequest request) {
-//		WxRefundNotifyResp data = wxPaymentClient.refundNotify(request).getData();
-//		if (null != data) {
-//			String out_refund_no = data.getOut_refund_no();
-//			String refund_id = data.getRefund_id();
-//			String tradeState = data.getTradeState();
-//			String success_time = data.getSuccess_time();
-//			shoppingOrderService.cancelShoppingOrderWxRefund(out_refund_no, refund_id, tradeState, success_time);
-//		}
+	public void cancelShoppingOrderWxRefund(@RequestParam("out_refund_no") String out_refund_no,
+	                                        @RequestParam("refund_id") String refund_id,
+	                                        @RequestParam("tradeState") String tradeState,
+	                                        @RequestParam("success_time") String success_time) {
+		shoppingOrderService.cancelShoppingOrderWxRefund(out_refund_no, refund_id, tradeState, success_time);
 	}
 	
 	
@@ -350,6 +394,7 @@
 		List<MyShoppingOrderList> list = shoppingOrderService.getNoInvoicedOrder(query);
 		return AjaxResult.success(list);
 	}
+
 	
 	@PostMapping("/create")
 	public R<TShoppingOrder> shopCreate(@RequestBody ExchangeDto exchangeDto) {
@@ -360,8 +405,12 @@
 		shoppingOrder.setOrderType(exchangeDto.getGoodType());
 		if (exchangeDto.getGoodType() == 1) {
 			shoppingOrder.setGoodsId(exchangeDto.getGoodId());
+			shoppingOrder.setStatus(1);
+
 		} else {
 			shoppingOrder.setCouponId(exchangeDto.getGoodId());
+			shoppingOrder.setStatus(3);
+
 		}
 		shoppingOrder.setPurchaseQuantity(exchangeDto.getNum());
 		shoppingOrder.setAppUserAddressId(exchangeDto.getAddressId());
@@ -376,10 +425,13 @@
 		shoppingOrder.setPaymentStatus(1);
 		shoppingOrder.setPaymentType(exchangeDto.getPayMethod());
 		shoppingOrder.setRemark(exchangeDto.getRemark());
-		shoppingOrder.setStatus(1);
 		shoppingOrder.setPhone(exchangeDto.getPhone());
 		shoppingOrder.setCreateTime(LocalDateTime.now());
 		shoppingOrder.setDelFlag(false);
+
+
+		TAppUserAddress data = appUserAddressClient.getAppUserAddressById(exchangeDto.getAddressId()).getData();
+		shoppingOrder.setAddressJson(JSON.toJSONString(data));
 		shoppingOrderService.save(shoppingOrder);
 		
 		return R.ok(shoppingOrder);

--
Gitblit v1.7.1