package cc.mrbird.febs.dapp.controller; import cc.mrbird.febs.common.annotation.EncryptEnable; import cc.mrbird.febs.common.contants.AppContants; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.utils.LoginUserUtil; import cc.mrbird.febs.common.utils.RedisUtils; import cc.mrbird.febs.dapp.dto.*; import cc.mrbird.febs.dapp.entity.DappMemberEntity; import cc.mrbird.febs.dapp.entity.MallAddressInfo; import cc.mrbird.febs.dapp.entity.MallGoodsCategory; import cc.mrbird.febs.dapp.service.DappMemberService; import cc.mrbird.febs.dapp.service.DappSystemService; import cc.mrbird.febs.dapp.service.DappWalletService; import cc.mrbird.febs.dapp.vo.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.util.HashMap; import java.util.Map; /** * @author * @date 2022-03-17 **/ @Slf4j @EncryptEnable @RequiredArgsConstructor @CrossOrigin("*") @RestController @Api(value = "dapp接口", tags = "dappOrder接口") @RequestMapping(value = "/dapi/order") public class ApiDappOrderController { private final DappMemberService dappMemberService; @ApiOperation(value = "分类列表", notes = "分类列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = MallGoodsCategory.class) }) @GetMapping(value = "/categoryList") public FebsResponse categoryList() { return new FebsResponse().success().data(dappMemberService.categoryList()); } @ApiOperation(value = "商品列表", notes = "商品列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = MallGoodsListVo.class) }) @PostMapping(value = "/findMallGoodsList") public FebsResponse findMallGoodsList(@RequestBody MallGoodsQueryDto queryDto) { return new FebsResponse().success().data(dappMemberService.findMallGoodsListInPage(queryDto)); } @ApiOperation(value = "商品详情", notes = "商品详情") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = MallGoodsListVo.class) }) @GetMapping(value = "/goodsDetails/{id}") public FebsResponse goodsDetails(@PathVariable("id") Long id) { return new FebsResponse().success().data(dappMemberService.findGoodsDetailsById(id)); } @ApiOperation(value = "订单列表", notes = "订单列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = MallOrderListVo.class) }) @PostMapping(value = "/findMallOrderList") public FebsResponse findMallOrderList(@RequestBody MallOrderQueryDto queryDto) { return new FebsResponse().success().data(dappMemberService.findMallOrderListInPage(queryDto)); } @ApiOperation(value = "订单详情", notes = "订单详情") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = MallOrderListVo.class) }) @GetMapping(value = "/orderDetails/{id}") public FebsResponse orderDetails(@PathVariable("id") Long id) { return new FebsResponse().success().data(dappMemberService.findOrderDetailsById(id)); } @ApiOperation(value = "创建订单", notes = "创建订单") @PostMapping(value = "/createOrder") public FebsResponse createOrder(@RequestBody AddOrderDto addOrderDto) { Long orderId = dappMemberService.createOrder(addOrderDto); return new FebsResponse().success().data(orderId).message("操作成功"); } @ApiOperation(value = "取消订单", notes = "取消订单") @PostMapping(value = "/cancelOrder/{id}") public FebsResponse cancelOrder(@PathVariable("id") Long id) { dappMemberService.cancelOrder(id); return new FebsResponse().success().message("操作成功"); } @ApiOperation(value = "删除订单", notes = "删除订单") @PostMapping(value = "/delOrder/{id}") public FebsResponse delOrder(@PathVariable("id") Long id) { dappMemberService.delOrder(id); return new FebsResponse().success().message("操作成功"); } @ApiOperation(value = "支付订单", notes = "支付订单") @PostMapping(value = "/payOrder/{id}") public FebsResponse payOrder(@PathVariable("id") Long id) { dappMemberService.payOrder(id); return new FebsResponse().success().message("操作成功"); } @ApiOperation(value = "确认收货", notes = "确认收货") @PostMapping(value = "/confirm/{id}") public FebsResponse confirm(@PathVariable("id") Long id) { dappMemberService.confirmOrder(id); return new FebsResponse().success().message("确认成功"); } @ApiOperation(value = "资产包详情", notes = "资产包详情") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = PackageInfoVo.class) }) @GetMapping(value = "/packageInfo") public FebsResponse packageInfo() { return dappMemberService.packageInfo(); } @ApiOperation(value = "卖出资产包积分", notes = "卖出资产包积分") @PostMapping(value = "/salePackage") public FebsResponse salePackage(@RequestBody SalePackageDto salePackageDto) { return dappMemberService.salePackage(salePackageDto); } @ApiOperation(value = "新增地址", notes = "新增地址") @PostMapping(value = "/createAddress") public FebsResponse createAddress(@RequestBody CreateAddressDto createAddressDto) { dappMemberService.createAddress(createAddressDto); return new FebsResponse().success().message("操作成功"); } @ApiOperation(value = "删除地址", notes = "删除地址") @PostMapping(value = "/delAddress/{id}") public FebsResponse delAddress(@PathVariable("id") Long id) { dappMemberService.delAddress(id); return new FebsResponse().success().message("操作成功"); } @ApiOperation(value = "地址列表", notes = "地址列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = MallAddressInfo.class) }) @PostMapping(value = "/findAddressList") public FebsResponse findAddressList(@RequestBody MallGoodsQueryDto queryDto) { return new FebsResponse().success().data(dappMemberService.findAddressList(queryDto)); } @ApiOperation(value = "地址列表", notes = "地址列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = MallAddressInfo.class) }) @GetMapping(value = "/findAddress") public FebsResponse findAddress() { return new FebsResponse().success().data(dappMemberService.findAddress()); } @ApiOperation(value = "地址详情", notes = "地址详情") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = MallAddressInfo.class) }) @GetMapping(value = "/addressDetails/{id}") public FebsResponse addressDetails(@PathVariable("id") Long id) { return new FebsResponse().success().data(dappMemberService.addressDetails(id)); } @ApiOperation(value = "更新地址", notes = "更新地址") @PostMapping(value = "/updateAddress") public FebsResponse updateAddress(@RequestBody CreateAddressDto createAddressDto) { dappMemberService.updateAddress(createAddressDto); return new FebsResponse().success().message("操作成功"); } @ApiOperation(value = "设置地址为默认地址", notes = "设置地址为默认地址") @PostMapping(value = "/setAddressDefault/{id}") public FebsResponse setAddressDefault(@PathVariable("id") Long id) { dappMemberService.setDefaultAddress(id); return new FebsResponse().success().message("设置成功"); } @ApiOperation(value = "自提点", notes = "自提点") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = MallAddressInfo.class) }) @PostMapping(value = "/shopAddressList") public FebsResponse shopAddressList(@RequestBody MallGoodsQueryDto queryDto) { return new FebsResponse().success().data(dappMemberService.shopAddressList(queryDto)); } }