wzy
2022-08-14 b141df9bf9764db8567efebed48006e12ab1f657
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
package com.xzx.gc.order.controller;
 
import com.github.pagehelper.PageInfo;
import com.xzx.gc.common.Result;
import com.xzx.gc.common.request.BaseController;
import com.xzx.gc.entity.JhyInfo;
import com.xzx.gc.model.JsonResult;
import com.xzx.gc.order.dto.AddJhyOrderDto;
import com.xzx.gc.order.dto.JhyOrderConfirmDto;
import com.xzx.gc.order.dto.JhyOrderListDto;
import com.xzx.gc.order.service.JhyOrderService;
import com.xzx.gc.order.vo.JhyOrderDetailsVo;
import com.xzx.gc.order.vo.JhyOrderListVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
 
@Slf4j
@RestController
@Api(tags = {"集物员-api集物员订单"})
public class ApiJhyOrderController extends BaseController {
 
    @Autowired
    private JhyOrderService jhyOrderService;
 
    @ApiOperation("下单")
    @PostMapping(value = "/jhy/order/add")
    public Result<String> addJhyOrder(@RequestBody AddJhyOrderDto addJhyOrderDto, HttpServletRequest request) {
//        addJhyOrderDto.setUserId(getUserId(request));
//        jhyOrderService.addJhyOrder(addJhyOrderDto);
//        return Result.success();
 
        return Result.error("停止下单");
    }
 
    @ApiOperation("集物员订单列表")
    @ApiResponses(
            @ApiResponse(code = 200, message = "success", response = JhyOrderListVo.class)
    )
    @PostMapping(value = "/jhy/order/list")
    public JsonResult<PageInfo<JhyOrderListVo>> orderList(@RequestBody JhyOrderListDto jhyOrderListDto, HttpServletRequest request) {
        jhyOrderListDto.setUserId(getUserId(request));
        PageInfo<JhyOrderListVo> result = jhyOrderService.orderList(jhyOrderListDto);
        return JsonResult.success(result);
    }
 
    @ApiOperation("订单明细信息")
    @ApiResponses(
            @ApiResponse(code = 200, message = "success", response = JhyOrderDetailsVo.class)
    )
    @PostMapping(value = "/jhy/order/details/{orderId}")
    public JsonResult<Object> orderDetail(@PathVariable("orderId") Long orderId, HttpServletRequest request) {
        return JsonResult.success(jhyOrderService.orderDetails(orderId, getUserId(request)));
    }
 
    @ApiOperation("抢单")
    @PostMapping(value = "/jhy/order/grab/{orderId}")
    public Result<String> grabOrder(@PathVariable("orderId") Long orderId, HttpServletRequest request) {
        jhyOrderService.grabOrder(orderId, getUserId(request));
        return Result.success();
    }
 
    @ApiOperation("取消订单")
    @PostMapping(value = "/jhy/order/cancel/{orderId}")
    public Result<String> cancelOrder(@PathVariable("orderId") Long orderId, HttpServletRequest request) {
        jhyOrderService.cancelOrder(orderId, getUserId(request));
        return Result.success();
    }
 
    @ApiOperation("确认订单-支付")
    @PostMapping(value = "/jhy/order/confirm")
    public Result<String> confirmOrder(@RequestBody JhyOrderConfirmDto confirmDto, HttpServletRequest request) {
        confirmDto.setUserId(getUserId(request));
        jhyOrderService.confirmOrder(confirmDto);
        return Result.success();
    }
 
    @ApiOperation("订单状态数量")
    @PostMapping(value = "/jhy/order/orderStatusCnt/{type}")
    public JsonResult<Map<Integer, Integer>> orderStatusCnt(@PathVariable("type") Integer type, HttpServletRequest request) {
        return JsonResult.success(jhyOrderService.orderStatusCount(type, getUserId(request)));
    }
 
    @ApiOperation("地址范围是否有集货员")
    @PostMapping(value = "/jhy/order/hasJhy/{addressId}")
    public Result<List<JhyInfo>> hasJhy(@PathVariable("addressId") Long addressId) {
        List<JhyInfo> inRange = jhyOrderService.findJhyInfoInRange(addressId);
        return Result.success(inRange);
    }
 
}