罗yu 元桥
2021-04-28 b6082fe75b377ac9c177736d98f36ae46e7cdb70
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ShopApi.java
@@ -1,16 +1,27 @@
package com.panzhihua.service_community.api;
import com.panzhihua.common.model.dtos.shop.PageComShopGoodsDTO;
import com.panzhihua.common.model.dtos.shop.*;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.PageDTO;
import com.panzhihua.common.model.dtos.shop.PageComShopOrderSearchDTO;
import com.panzhihua.common.model.dtos.shop.PageComShopStoreDTO;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.shop.AddShopGoodsVO;
import com.panzhihua.service_community.service.*;
import com.panzhihua.common.model.vos.shop.ShopOperLogVO;
import com.panzhihua.common.model.vos.shop.ShopStoreVO;
import com.panzhihua.service_community.service.ComShopGoodsService;
import com.panzhihua.service_community.service.ComShopOperLogService;
import com.panzhihua.service_community.service.ComShopOrderService;
import com.panzhihua.service_community.service.ComShopStoreService;
import lombok.NonNull;
import lombok.extern.slf4j.Slf4j;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import javax.validation.constraints.NotNull;
@Slf4j
@@ -20,11 +31,21 @@
    @Resource
    private ComShopStoreService comShopStoreService;
    @Resource
    private ComShopGoodsService comShopGoodsService;
    @Resource
    private ComShopOperLogService comShopOperLogService;
    @Resource
    private ComShopOrderService comShopOrderService;
    @Resource
    private ComShopCartService comShopCartService;
    @Resource
    private ComShopUserAddressService comShopUserAddressService;
    /**
     * 店铺列表-分页查询
     * @param pageComShopStoreDTO 查询参数
     * @return ComShopStoreVO
     * @return PageShopStoreVO
     */
    @PostMapping("/pageShopStore")
    public R pageShopStore(@RequestBody PageComShopStoreDTO pageComShopStoreDTO) {
@@ -40,6 +61,16 @@
    @PostMapping("/saveStore")
    public R saveStore(@RequestBody ShopStoreVO storeVO) {
        return comShopStoreService.saveStore(storeVO);
    }
    /**
     * 新增店铺
     * @param storeVO   店铺信息
     * @return  新增结果
     */
    @PostMapping("/addStore")
    public R addStore(@RequestBody ShopStoreVO storeVO) {
        return comShopStoreService.addStore(storeVO);
    }
    /**
@@ -77,4 +108,411 @@
    }
    /**
     * 获取用户商铺详细
     *
     * @param userId 用户ID
     * @return
     */
    @GetMapping("/getUserStoreInfo")
    public R getUserStoreInfo(@RequestParam("userId") Long userId) {
        return comShopStoreService.getUserStoreInfo(userId);
    }
    /**
     * 获取用户商铺详细
     *
     * @param account 用户账号
     * @return
     */
    @GetMapping("/getUserStoreInfoByAccount")
    public R<ShopStoreVO> getUserStoreInfoByAccount(@RequestParam("account") String account) {
        return comShopStoreService.getUserStoreInfo(account);
    }
    /**
     * 添加商城后台日志
     *
     * @param shopOperlog 商城日志
     * @return 添加结果
     */
    @PostMapping("/addShopOperLog")
    public R addShopOperLog(@RequestBody ShopOperLogVO shopOperlog) {
        return comShopOperLogService.saveLog(shopOperlog);
    }
    /**
     * 分页查询 商家后台操作日志
     * @param pageDTO 分页数据
     * @return 分页日志
     */
    @PostMapping("/pageShopOperLog")
    public R pageShopOperLog(@RequestBody PageDTO pageDTO) {
        return comShopOperLogService.pageShopOperLog(pageDTO);
    }
    /**
     * 分页查询 商家订单
     * @param pageComShopOrderSearchDTO 分页数据
     * @return 分页订单
     */
    @PostMapping("/order/page")
    public R pageShopOrder(@RequestBody PageComShopOrderSearchDTO pageComShopOrderSearchDTO) {
        return comShopOrderService.pageShopOrder(pageComShopOrderSearchDTO);
    }
    /**
     * 根据店铺id查询店铺详情
     * @param comShopStoreDTO   请求参数
     * @return  店铺详情
     */
    @PostMapping("shopStoreDetail")
    public R shopStoreDetail(@RequestBody PageComShopStoreDTO comShopStoreDTO){
        return comShopStoreService.shopStoreDetail(comShopStoreDTO);
    }
    /**
     * 分页查询商品列表
     * @param comShopGoodsDTO   请求参数
     * @return  商品列表
     */
    @PostMapping("/pageShopGoods")
    public R pageShopGoods(@RequestBody ComShopGoodsDTO comShopGoodsDTO) {
        return comShopGoodsService.pageShopGoods(comShopGoodsDTO);
    }
    /**
     * 根据商品id查询商品详情
     * @param goodsId   商品id
     * @return  商品信息
     */
    @PostMapping("shopGoodsDetail")
    public R shopGoodsDetail(@RequestParam("goodsId") Long goodsId){
        return comShopGoodsService.shopGoodsDetail(goodsId);
    }
    /**
     * 根据用户id查询购物车列表
     * @param userId    用户id
     * @return  购物车列表信息
     */
    @PostMapping("shopCartList")
    public R shopCartList(@RequestParam("userId") Long userId) {
        return comShopCartService.shopCartList(userId);
    }
    /**
     * 查询用户购物车数量
     * @param userId    用户id
     * @return  用户购物车商品数量
     */
    @PostMapping("shopCartUserTotal")
    public R shopCartUserTotal(@RequestParam("userId") Long userId) {
        return comShopCartService.shopCartUserTotal(userId);
    }
    /**
     * 购物车添加
     * @param comShopCartDTO    请求参数
     * @return  添加结果
     */
    @PostMapping("shopAddCart")
    public R shopAddCart(@RequestBody ComShopCartDTO comShopCartDTO) {
        return comShopCartService.shopAddCart(comShopCartDTO);
    }
    /**
     * 购物车内商品数量添加
     * @param shopEditNubCartDTO    请求参数
     * @return  修改结果
     */
    @PostMapping("shopEditNubCart")
    public R shopEditNubCart(@RequestBody ComShopEditNubCartDTO shopEditNubCartDTO) {
        return comShopCartService.shopEditNubCart(shopEditNubCartDTO);
    }
    /**
     * 删除购物车记录
     * @param Ids   购物车id集合
     * @return  删除结果
     */
    @PostMapping("shopDelCart")
    public R shopDelCart(@RequestBody List<Long> Ids) {
        return comShopCartService.shopDelCart(Ids);
    }
    /**
     * 查询用户收货地址列表
     * @param comShopAddressDTO    请求参数
     * @return  用户收获地址列表
     */
    @PostMapping("shopUserAddressList")
    public R shopUserAddressList(@RequestBody PageComShopAddressDTO comShopAddressDTO) {
        return comShopUserAddressService.shopUserAddressList(comShopAddressDTO);
    }
    /**
     * 用户添加书货地址
     * @param comShopAddressDTO 请求参数
     * @return  添加结果
     */
    @PostMapping("shopAddUserAddress")
    public R shopAddUserAddress(@RequestBody ComShopAddressDTO comShopAddressDTO) {
        return comShopUserAddressService.shopAddUserAddress(comShopAddressDTO);
    }
    /**
     * 用户修改收货地址
     * @param comShopAddressDTO 请求参数
     * @return  修改结果
     */
    @PostMapping("shopEditUserAddress")
    public R shopEditUserAddress(@RequestBody ComShopAddressDTO comShopAddressDTO) {
        return comShopUserAddressService.shopEditUserAddress(comShopAddressDTO);
    }
    /**
     * 用户删除收货地址
     * @param addressId 收货地址id
     * @return  删除结果
     */
    @PostMapping("shopDelUserAddress")
    public R shopDelUserAddress(@RequestParam("addressId") Long addressId) {
        return comShopUserAddressService.shopDelUserAddress(addressId);
    }
    /**
     * 订单预览
     * @param orderPreviewDTO   请求参数
     * @return  订单预览数据
     */
    @PostMapping("orderPreview")
    public R orderPreview(@RequestBody ComShopOrderPreviewDTO orderPreviewDTO) {
        return comShopOrderService.orderPreview(orderPreviewDTO);
    }
    /**
     * 创建订单
     * @param orderCreateDTO    创建订单请求参数
     * @return  创建结果
     */
    @PostMapping("orderCreate")
    public R orderCreate(@RequestBody ComShopOrderCreateDTO orderCreateDTO) {
        return comShopOrderService.orderCreate(orderCreateDTO);
    }
    /**
     * 分页查询用户订单列表
     * @param comOrderListDTO   请求参数
     * @return  查询结果
     */
    @PostMapping("pageOrderList")
    public R pageOrderList(@RequestBody PageComOrderListDTO comOrderListDTO){
        return comShopOrderService.pageOrderList(comOrderListDTO);
    }
    /**
     * 根据订单id查询订单详情
     * @param orderId   订单id
     * @return  订单详情
     */
    @PostMapping("orderDetail")
    public R orderDetail(@RequestParam("orderId") Long orderId) {
        return comShopOrderService.orderDetail(orderId);
    }
    /**
     * 根据订单id取消订单
     * @param comShopOrderQueryDTO   请求参数
     * @return  取消结果
     */
    @PostMapping("orderCancel")
    public R orderCancel(@RequestBody ComShopOrderQueryDTO comShopOrderQueryDTO) {
        return comShopOrderService.orderCancel(comShopOrderQueryDTO);
    }
    /**
     * 根据订单id删除订单
     * @param orderId   订单id
     * @return  删除结果
     */
    @PostMapping("orderDelete")
    public R orderDelete(@RequestParam("orderId") Long orderId) {
        return comShopOrderService.orderDelete(orderId);
    }
    /**
     * 根据订单id确认收货
     * @param comShopOrderQueryDTO   请求参数
     * @return  确认结果
     */
    @PostMapping("orderConfirm")
    public R orderConfirm(@RequestBody ComShopOrderQueryDTO comShopOrderQueryDTO) {
        return comShopOrderService.orderConfirm(comShopOrderQueryDTO.getOrderId(),comShopOrderQueryDTO.getPhone());
    }
    /**
     * 统计用户订单数量
     * @param userId    用户id
     * @return  统计结果
     */
    @PostMapping("orderStatistics")
    public R orderStatistics(@RequestParam("userId") Long userId) {
        return comShopOrderService.orderStatistics(userId);
    }
    /**
     * 商品列表-分页查询
     * @param pageComShopGoodsDTO 查询参数
     * @return PageShopStoreVO
     */
    @PostMapping("pageGoods")
    public R pageShopStore(@RequestBody PageComShopGoodsDTO pageComShopGoodsDTO) {
        return comShopGoodsService.pageGoodsList(pageComShopGoodsDTO);
    }
    /**
     * 新增商品
     * @param addShopGoodsVO
     * @return
     */
    @PostMapping("saveShopGoods")
    public R saveStore(@RequestBody AddShopGoodsVO addShopGoodsVO) {
        return comShopGoodsService.saveShopGoods(addShopGoodsVO);
    }
    /**
     * 编辑商品
     * @param addShopGoodsVO
     * @param id 商铺Id
     * @return
     */
    @Transactional(rollbackFor = Exception.class)
    @PostMapping("editShopGoods/{id}")
    public R editShopGoods(@PathVariable("id") Long id,@RequestBody AddShopGoodsVO addShopGoodsVO) {
        return comShopGoodsService.editShopGoods(id, addShopGoodsVO);
    }
    /**
     * 删除商品
     * @param id
     * @return
     */
    @PostMapping("deleteShopGoods")
    public R deleteShopGoods(@RequestBody Long[] id) {
        return comShopGoodsService.deleteShopGoods(id);
    }
    /**
     * 修改商品状态
     * @param id
     * @return
     */
    @GetMapping("changeShopGoodsStatus")
    public R changeStatus(@RequestParam("id") Long id,@RequestParam("status")Integer status) {
        return comShopGoodsService.changeStatus(id,status);
    }
    /**
     * 商家资金的订单详情
     * @param id
     * @return
     */
    @GetMapping("capitalDetailByStore")
    public R capitalDetailByStore(@RequestParam("id") Long id) {
        return comShopOrderService.capitalDetailByStore(id);
    }
    /**
     * 订单发货
     * @param orderShipDTO 发货信息
     * @return 发货结果
     */
    @PostMapping("/shipOrder")
    R shipOrder(@RequestBody ComShopOrderShipDTO orderShipDTO){
        return comShopOrderService.shipOrder(orderShipDTO);
    }
    /**
     * 订单配送
     * @param deliverDTO 订单ID
     * @return 配送结果
     */
    @PostMapping("/deliverOrder")
    R deliverOrder(@RequestBody  ComShopOrderDeliverDTO deliverDTO){
        return comShopOrderService.deliverOrder(deliverDTO);
    }
    /**
     * 订单配送
     * @param deliverDTO 订单ID
     * @return 配送完成
     */
    @PostMapping("/finishDeliverOrder")
    R finishDeliverOrder(@RequestBody ComShopOrderDeliverDTO deliverDTO){
        return comShopOrderService.finishDeliverOrder(deliverDTO);
    }
    /**
     * 订单导出信息
     * @param comShopOrderExportDTO 订单导出信息
     * @return  订单导出信息
     */
    @PostMapping("/shopOrderExportData")
    R shopOrderExportData(@RequestBody ComShopOrderExportDTO comShopOrderExportDTO){
        return comShopOrderService.shopOrderExportData(comShopOrderExportDTO);
    }
    /**
     * 资金管理导出信息
     * @param comShopFundsExportDTO 资金管理导出信息
     * @return  资金管理导出信息
     */
    @PostMapping("/shopOrderFundsExportData")
    R shopOrderFundsExportData(@RequestBody ComShopFundsExportDTO comShopFundsExportDTO){
        return comShopOrderService.shopOrderFundsExportData(comShopFundsExportDTO);
    }
    /**
     * 用户资金统计信息
     * @param userId 用户ID
     * @return 统计信息
     */
    @GetMapping("/getFundsStat")
    R getFundsStat(@RequestParam("userId") Long userId){
        return comShopOrderService.getFundsStat(userId);
    }
    /**
     * 店铺资金统计信息
     * @param pageComShopFundsSearchDTO 店铺资金
     * @return  店铺资金统计信息
     */
    @PostMapping("/pageShopFunds")
    R pageShopFunds(@RequestBody PageComShopFundsSearchDTO pageComShopFundsSearchDTO){
        return comShopOrderService.pageShopFunds(pageComShopFundsSearchDTO);
    }
    /**
     * 微信支付订单回调
     * @param wxPayNotifyOrderDTO   订单支付回调参数
     */
    @PostMapping("/wxOrderPayNotify")
    public void wxOrderPayNotify(@RequestBody WxPayNotifyOrderDTO wxPayNotifyOrderDTO){
        comShopOrderService.wxOrderPayNotify(wxPayNotifyOrderDTO);
    }
    /**
     * 点击去支付订单
     * @param orderPayDTO   请求参数
     * @return  支付对象
     */
    @PostMapping("/wxPay")
    public R wxPay(@RequestBody OrderPayDTO orderPayDTO){
        return  comShopOrderService.wxPay(orderPayDTO);
    }
}