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.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.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
|
@RestController
|
@RequestMapping("/shop")
|
public class ShopApi{
|
|
@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 PageShopStoreVO
|
*/
|
@PostMapping("/pageShopStore")
|
public R pageShopStore(@RequestBody PageComShopStoreDTO pageComShopStoreDTO) {
|
return comShopStoreService.pageStoreList(pageComShopStoreDTO);
|
}
|
|
/**
|
* 保存店铺
|
*
|
* @param storeVO
|
* @return
|
*/
|
@PostMapping("/saveStore")
|
public R saveStore(@RequestBody ShopStoreVO storeVO) {
|
return comShopStoreService.saveStore(storeVO);
|
}
|
|
/**
|
* 编辑店铺、启用、禁用
|
*
|
* @param storeVO
|
* @param id 商铺Id
|
* @return
|
*/
|
@PostMapping("/editStore/{id}")
|
public R editStore(@RequestBody ShopStoreVO storeVO, @PathVariable("id") Long id) {
|
return comShopStoreService.editStore(id, storeVO);
|
}
|
|
/**
|
* 删除店铺
|
*
|
* @param id
|
* @return
|
*/
|
@PostMapping("/deleteStore")
|
public R deleteStore(@RequestBody Long[] id) {
|
return comShopStoreService.deleteStore(id);
|
}
|
|
/**
|
* 获取详情
|
*
|
* @param id
|
* @return
|
*/
|
@GetMapping("/getStoreInfo")
|
public R getOneInfo(@RequestParam("id") Long id) {
|
return comShopStoreService.getOneInfo(id);
|
}
|
|
|
/**
|
* 获取用户商铺详细
|
*
|
* @param userId 用户ID
|
* @return
|
*/
|
@GetMapping("/getUserStoreInfo")
|
public R getUserStoreInfo(@RequestParam("userId") Long userId) {
|
return comShopStoreService.getUserStoreInfo(userId);
|
}
|
|
/**
|
* 添加商城后台日志
|
*
|
* @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 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.getOrderId(),comShopOrderQueryDTO.getPhone());
|
}
|
|
/**
|
* 根据订单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){
|
Long orderId = deliverDTO.getOrderId();
|
return comShopOrderService.deliverOrder(orderId);
|
}
|
/**
|
* 订单配送
|
* @param deliverDTO 订单ID
|
* @return 配送完成
|
*/
|
@PostMapping("/finishDeliverOrder")
|
R finishDeliverOrder(@RequestBody ComShopOrderDeliverDTO deliverDTO){
|
Long orderId = deliverDTO.getOrderId();
|
return comShopOrderService.finishDeliverOrder(orderId);
|
}
|
|
/**
|
* 订单导出信息
|
* @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);
|
}
|
}
|