Pu Zhibing
11 小时以前 981aacc8d5de2638a0f5b3eb2585e64cfaf2807d
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
package com.ruoyi.order.controller.concole;
 
import com.github.binarywang.wxpay.bean.ecommerce.ProfitSharingResult;
import com.github.binarywang.wxpay.exception.WxPayException;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.order.service.order.ConsumerGoodsService;
import com.ruoyi.order.service.order.OrderService;
import com.ruoyi.order.service.order.UserServiceRecordService;
import com.ruoyi.system.api.domain.dto.BirthdayGiftSendDto;
import com.ruoyi.system.api.domain.dto.BoardMemberTotalDto;
import com.ruoyi.system.api.domain.dto.MerBaseDto;
import com.ruoyi.system.api.domain.dto.MgtBasePlatformDto;
import com.ruoyi.system.api.domain.vo.*;
import org.springframework.web.bind.annotation.*;
 
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.List;
 
/**
 * @author jqs34
 * @ClassName OrderController
 * @description: TODO
 * @date 2023年05月03日
 * @version: 1.0
 */
@RestController
@RequestMapping("/order")
public class OrderController {
 
    @Resource
    private OrderService orderService;
 
    @Resource
    private ConsumerGoodsService consumerGoodsService;
    
    @Resource
    private UserServiceRecordService userServiceRecordService;
 
 
    @PostMapping("/getAppOrderTotal")
    public R<AppOrderTotalVo> getAppOrderTotal(@RequestBody Long userId){
        AppOrderTotalVo appOrderTotalVo = orderService.getAppOrderTotal(userId);
        return R.ok(appOrderTotalVo);
    }
 
 
    @PostMapping("/getMerHomeTotal")
    public R<MerHomeShopTotalVo> getMerHomeTotal(@RequestBody MerHomeShopTotalVo merHomeShopTotalVo){
        merHomeShopTotalVo = orderService.getMerHomeTotal(merHomeShopTotalVo);
        return R.ok(merHomeShopTotalVo);
    }
 
 
    /**
    * @description boardOrderTotal
    * @param
    * @return R<MgtBulletinBoardVo>
    * @author jqs34
    * @date 2023/6/18 17:30
    */
    @PostMapping("/boardOrderTotal")
    public R<MgtBulletinBoardVo> boardOrderTotal(@RequestBody BoardMemberTotalDto boardMemberTotalDto){
        MgtBulletinBoardVo mgtBulletinBoardVo = new MgtBulletinBoardVo();
        MgtBulletinBoardVo mgtBulletinBoardVoOrder = orderService.boardOrderTotal(boardMemberTotalDto.getUserIds());
        mgtBulletinBoardVo.setSalesTotal(mgtBulletinBoardVoOrder.getSalesTotal());
        mgtBulletinBoardVo.setUnUseOrderTotal(mgtBulletinBoardVoOrder.getUnUseOrderTotal());
        mgtBulletinBoardVo.setActivityOrderTotal(mgtBulletinBoardVoOrder.getActivityOrderTotal());
        mgtBulletinBoardVo.setActivityUserTotal(mgtBulletinBoardVoOrder.getActivityUserTotal());
        return R.ok(mgtBulletinBoardVo);
    }
 
    /**
     * @description  
     * @author  jqs
     * @date    2023/6/21 15:27
     * @param mgtBasePlatformDto
     * @return  List<MgtMapIntTotalVo>
     */
    @PostMapping("/listMemberGoodsRank")
    public R<List<MgtMapIntTotalVo>> listMemberGoodsRank(@RequestBody MgtBasePlatformDto mgtBasePlatformDto){
        List<MgtMapIntTotalVo> memberGoodsRankList = orderService.listMemberGoodsRank(mgtBasePlatformDto);
        return R.ok(memberGoodsRankList);
    }
 
    /**
     * @description  获取用户未支付金额
     * @author  jqs
     * @date    2023/6/29 18:00
     * @param merBaseDto
     * @return  R<BigDecimal>
     */
    @PostMapping("/getMemberUnpaidOrder")
    public R<BigDecimal> getMemberUnpaidOrder(@RequestBody MerBaseDto merBaseDto){
        BigDecimal unpaidMoney = orderService.getMemberUnpaidOrder(merBaseDto);
        return R.ok(unpaidMoney);
    }
 
    /**
     * @description  发送用户商品礼物
     * @author  jqs
     * @date    2023/7/7 19:53
     * @param giftSendDtoList
     * @return  R
     */
    @PostMapping("/sendGoodsGift")
    public R sendGoodsGift(@RequestBody List<BirthdayGiftSendDto> giftSendDtoList){
        consumerGoodsService.sendGoodsGift(giftSendDtoList);
        return R.ok();
    }
 
    /**
     * @description  自动取消订单
     * @author  jqs
     * @date    2023/7/13 17:15
     * @param orderId
     * @return  R
     */
    @PostMapping("/autoCancelOrder")
    public R autoCancelOrder(@RequestBody String orderId){
        orderService.autoCancelOrder(orderId, 1);
        return R.ok();
    }
 
    /**
     * @description  销量排行
     * @author  jqs
     * @date    2023/8/24 18:24
     * @param shopIdList
     * @return  R<List<MgtMapBigTotalVo>>
     */
    @PostMapping("/shopSalesRank")
    public R<List<MgtMapBigTotalVo>> shopSalesRank(@RequestBody List<Long> shopIdList){
        List<MgtMapBigTotalVo> mapIntTotalVoList= orderService.shopSalesRank(shopIdList);
        return R.ok(mapIntTotalVoList);
    }
 
    /**
     * @description  获取商户服务统计
     * @author  jqs
     * @date    2023/8/24 18:29
     * @param shopId
     * @return  R<MerHomeShopTotalVo>
     */
    @PostMapping("/getShopServiceTotal")
    public R<MerHomeShopTotalVo> getShopServiceTotal(@RequestBody Long shopId){
        MerHomeShopTotalVo homeShopTotalVo= orderService.getShopServiceTotal(shopId);
        return R.ok(homeShopTotalVo);
    }
 
    /**
     * @description  获取区域统计
     * @author  jqs
     * @date    2023/8/25 11:52
     * @param shopIdList
     * @return  R<AgencyTotalVo>
     */
    @PostMapping("/getAgencyTotalVo")
    public R<AgencyTotalVo> getAgencyTotalVo(@RequestBody List<Long> shopIdList){
        AgencyTotalVo agencyTotalVo= orderService.getAgencyTotalVo(shopIdList);
        return R.ok(agencyTotalVo);
    }
 
    /**
     * @description  获取用户统计
     * @author  jqs
     * @date    2023/8/29 17:38
     * @param merBaseDto
     * @return  R<MerMemberSimpleTotalVo>
     */
    @PostMapping("/getMerMemberSimpleTotalVo")
    public R<MerMemberSimpleTotalVo> getMerMemberSimpleTotalVo(@RequestBody MerBaseDto merBaseDto){
        MerMemberSimpleTotalVo memberSimpleTotalVo= orderService.getMerMemberSimpleTotalVo(merBaseDto);
        return R.ok(memberSimpleTotalVo);
    }
 
 
    @GetMapping("/queryBill")
    public R<ProfitSharingResult> queryBill(String orderId) throws WxPayException {
        ProfitSharingResult result = orderService.queryBill(orderId);
        return R.ok(result);
    }
 
    /**
     * 获取活动订单商品id
     * @param activityId
     * @return
     */
    @PostMapping("/getActivityOrderGoods")
    public R<List<String>> getActivityOrderGoods(@RequestBody String activityId){
        List<String> activityOrderGoods = orderService.getActivityOrderGoods(activityId);
        return R.ok(activityOrderGoods);
    }
 
    /**
     * 获取商品售卖统计
     * @param goodsIdList
     * @return
     */
    @PostMapping("/getGoodsSellStatic")
    R<StaticsShopMgtGoodsVO> getGoodsSellStatic(@RequestBody List<String> goodsIdList){
        StaticsShopMgtGoodsVO vo = orderService.getGoodsSellStatic(goodsIdList);
        vo.setGoodsNum(goodsIdList.size());
        return R.ok(vo);
    }
    
    
    /**
     * 获取今日到店用户
     * @param shopId
     * @return
     */
    @PostMapping("/countShopServicePerson")
    public R<List<Integer>> countShopServicePerson(@RequestParam("shopId") Long shopId){
        List<Integer> list = userServiceRecordService.countShopServicePerson(shopId);
        return R.ok(list);
    }
}