Browse Source

用户订单确认收货接口

cup 3 years ago
parent
commit
a7e1b8863c

+ 32 - 7
mp-admin/src/main/java/com/qs/mp/web/controller/api/user/UserDeliverOrderController.java

@@ -12,6 +12,7 @@ import com.qs.mp.common.core.domain.AjaxResult;
 import com.qs.mp.common.core.page.TableDataInfo;
 import com.qs.mp.common.core.redis.RedisCache;
 import com.qs.mp.common.enums.BizTypeEnum;
+import com.qs.mp.common.enums.DeliverOrderStatusEnum;
 import com.qs.mp.common.enums.ErrorCodeEnum;
 import com.qs.mp.common.enums.PrizeStorageStatusEnum;
 import com.qs.mp.common.exception.ServiceException;
@@ -22,10 +23,7 @@ import com.qs.mp.framework.redis.RedisKey;
 import com.qs.mp.pay.service.IWalletService;
 import com.qs.mp.system.domain.SysUser;
 import com.qs.mp.system.service.ISysUserService;
-import com.qs.mp.user.domain.UserAddr;
-import com.qs.mp.user.domain.UserDeliverOrder;
-import com.qs.mp.user.domain.UserDeliverOrderItem;
-import com.qs.mp.user.domain.UserPrizeStorage;
+import com.qs.mp.user.domain.*;
 import com.qs.mp.user.domain.param.DeliverOrderParam;
 import com.qs.mp.user.domain.vo.DeliverOrderSettleVO;
 import com.qs.mp.user.domain.vo.DeliverOrderVO;
@@ -37,9 +35,8 @@ import com.qs.mp.utils.SecurityUtils;
 import com.qs.mp.web.controller.common.BaseApiController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
+
+import java.util.*;
 import java.util.concurrent.TimeUnit;
 import javax.validation.Valid;
 import lombok.AllArgsConstructor;
@@ -225,4 +222,32 @@ public class UserDeliverOrderController extends BaseApiController {
     return AjaxResult.success(jsonObject);
   }
 
+  @PostMapping("/order/confirm")
+  @ApiOperation("订单确认收货")
+  public AjaxResult confirm(@RequestBody UserDeliverOrder order){
+    Long userId = SecurityUtils.getLoginUser().getUserId();
+    userId = 70L;
+    UserDeliverOrder userDeliverOrder = userDeliverOrderService.getById(order.getOrderId());
+    if (Objects.isNull(userDeliverOrder)) {
+      return AjaxResult.error("订单不存在");
+    }
+
+    if (!DeliverOrderStatusEnum.NOT_CONFIRM.equals(userDeliverOrder.getStatus())) {
+      return AjaxResult.error("订单状态不为待收货");
+    }
+
+    if (!userId.equals(userDeliverOrder.getUserId())) {
+      return AjaxResult.error("非法操作他人订单");
+    }
+
+    // 更新用户提货订单状态为已完成,并且设置收货时间
+    UserDeliverOrder param = new UserDeliverOrder();
+    param.setOrderId(order.getOrderId());
+    param.setStatus(DeliverOrderStatusEnum.FINISHED);
+    param.setConfirmTime(new Date());
+    userDeliverOrderService.updateById(param);
+
+    return AjaxResult.success();
+  }
+
 }