| | |
| | | |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.xcong.excoin.common.LoginUserUtils; |
| | | import com.xcong.excoin.common.response.Result; |
| | | import com.xcong.excoin.modules.otc.dto.OrderAddDto; |
| | | import com.xcong.excoin.modules.otc.dto.OrderListDto; |
| | | import com.xcong.excoin.modules.member.dao.MemberDao; |
| | | import com.xcong.excoin.modules.member.entity.MemberEntity; |
| | | import com.xcong.excoin.modules.otc.dao.OtcReturnMoneyDao; |
| | | import com.xcong.excoin.modules.otc.dto.*; |
| | | import com.xcong.excoin.modules.otc.service.OtcOrderService; |
| | | import com.xcong.excoin.modules.otc.vo.BuyOrderDetailVo; |
| | | import com.xcong.excoin.modules.otc.vo.OrderListVo; |
| | | import com.xcong.excoin.modules.otc.vo.SaleOrderDetailVo; |
| | | import com.xcong.excoin.modules.otc.vo.TeamVo; |
| | | 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.apache.ibatis.annotations.Param; |
| | | import org.springframework.validation.annotation.Validated; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.HashMap; |
| | | import java.util.Map; |
| | | |
| | | @Slf4j |
| | | @Validated |
| | |
| | | public class OtcOrderController { |
| | | |
| | | private final OtcOrderService otcOrderService; |
| | | private final OtcReturnMoneyDao otcReturnMoneyDao; |
| | | |
| | | @ApiOperation(value = "我要购买") |
| | | @PostMapping(value = "/buy") |
| | | public Result buy(@RequestBody OrderAddDto orderAddDto) { |
| | | otcOrderService.buyOrder(orderAddDto); |
| | | return Result.ok("购买成功"); |
| | | public Result buy(@RequestBody OtcOrderAddDto orderAddDto) { |
| | | return otcOrderService.buyOrder(orderAddDto); |
| | | } |
| | | |
| | | @ApiOperation(value = "我要出售") |
| | | @PostMapping(value = "/sale") |
| | | public Result sale(@RequestBody OrderAddDto orderAddDto) { |
| | | otcOrderService.saleOrder(orderAddDto); |
| | | return Result.ok("出售成功"); |
| | | public Result sale(@RequestBody OtcOrderAddDto orderAddDto) { |
| | | return otcOrderService.saleOrder(orderAddDto); |
| | | } |
| | | |
| | | @ApiOperation(value = "用户订单列表") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "success", response = OrderListVo.class) |
| | | }) |
| | | @PostMapping(value = "/orderList") |
| | | public Result orderList(@RequestBody OrderListDto orderListDto) { |
| | | IPage<OrderListVo> page = otcOrderService.findOrderListInPage(orderListDto); |
| | | return Result.ok(page.getRecords()); |
| | | } |
| | | |
| | | @ApiOperation(value = "已付款,请放币") |
| | | @PostMapping(value = "/hasPay/{id}") |
| | | public Result hasPay(@PathVariable("id") Long id) { |
| | | return null; |
| | | @ApiOperation(value = "买单 - 订单详情") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "success", response = BuyOrderDetailVo.class) |
| | | }) |
| | | @GetMapping(value = "/buyOrderDetail/{id}") |
| | | public Result buyOrderDetail(@PathVariable("id") Long id) { |
| | | return otcOrderService.findBuyOrderDetail(id); |
| | | } |
| | | |
| | | @ApiOperation(value = "完成订单") |
| | | @PostMapping(value = "/finishSalesOrder/{id}") |
| | | @ApiOperation(value = "卖单 - 订单详情") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "success", response = SaleOrderDetailVo.class) |
| | | }) |
| | | @GetMapping(value = "/saleOrderDetail/{id}") |
| | | public Result saleOrderDetail(@PathVariable("id") Long id) { |
| | | return otcOrderService.findSaleOrderDetail(id); |
| | | } |
| | | |
| | | @ApiOperation(value = "已付款,请放币") |
| | | @PostMapping(value = "/hasPay") |
| | | public Result hasPay(@RequestBody HasPayDto hasPayDto) { |
| | | otcOrderService.hasPay(hasPayDto); |
| | | return Result.ok("操作成功"); |
| | | } |
| | | |
| | | @ApiOperation(value = "确认收款") |
| | | @PostMapping(value = "/finishOrder/{id}") |
| | | public Result finishOrder(@PathVariable("id") Long id) { |
| | | return null; |
| | | otcOrderService.finishOrder(id); |
| | | return Result.ok("操作成功"); |
| | | } |
| | | |
| | | @ApiOperation(value = "取消订单") |
| | | @PostMapping(value = "/cancelUserOrder/{id}") |
| | | public Result cancelUserOrder(@PathVariable("id") Long id) { |
| | | otcOrderService.cancelOrder(id); |
| | | return Result.ok("操作成功"); |
| | | } |
| | | |
| | | @ApiOperation(value = "申诉") |
| | | @PostMapping(value = "/orderApeal") |
| | | public Result orderApeal(@RequestBody OrderApealDto orderApealDto) { |
| | | return otcOrderService.orderApeal(orderApealDto); |
| | | } |
| | | |
| | | @ApiOperation(value = "获取我的团队") |
| | | @PostMapping(value = "/findTeamList") |
| | | public Result teamList(@RequestBody TeamDto teamDto) { |
| | | Page<TeamVo> page = new Page<>(teamDto.getPageNum(), teamDto.getPageSize()); |
| | | |
| | | MemberEntity member = LoginUserUtils.getAppLoginUser(); |
| | | IPage<TeamVo> data = otcReturnMoneyDao.selectMyTeamAmountInPage(member.getInviteId(), member.getId(), page); |
| | | BigDecimal totalAmount = otcReturnMoneyDao.selectTotalAmount(member.getId()); |
| | | |
| | | Map<String, Object> result = new HashMap<>(); |
| | | result.put("totalCnt", data.getTotal()); |
| | | result.put("totalAmount", totalAmount == null ? BigDecimal.ZERO : totalAmount.setScale(4, BigDecimal.ROUND_DOWN)); |
| | | result.put("result", data.getRecords()); |
| | | return Result.ok(result); |
| | | } |
| | | } |