package com.ydtech.modules.admin.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.ydtech.core.page.HttpResult; import com.ydtech.modules.admin.model.dto.*; import com.ydtech.modules.admin.model.po.SysUserAccount; import com.ydtech.modules.admin.model.vo.SubOrder; import com.ydtech.modules.admin.model.vo.SysUserAccountVo; import com.ydtech.modules.admin.service.SysUserAccountService; import com.ydtech.modules.base.controller.BaseController; import com.ydtech.modules.order.entity.BasePageResult; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.math.BigDecimal; @Api(tags = "账户余额") @RequestMapping("/sysUserAccount") @RestController public class SysUserAccountController extends BaseController { @Autowired private SysUserAccountService sysUserAccountService; @PostMapping("/queryPage") @ApiOperation(value = "用户账户表分页") public HttpResult> queryPageOrder(@RequestBody @Valid SysUserAccountVo sysUserAccountVo ) { BasePageResult result = sysUserAccountService.queryByVo(sysUserAccountVo); return HttpResult.ok("success", result); } @PostMapping("/queryPageList") @ApiOperation(value = "用户账户表分页2") public HttpResult> queryPageList(@RequestBody SysUserAccountVo sysUserAccountVo ) { IPage result = sysUserAccountService.queryByVo1(sysUserAccountVo); return HttpResult.ok("success", result); } @PostMapping("/insert") @ApiOperation("提交") public HttpResult submit(@RequestBody SysUserAccountVo sysUserAccountVo) { return sysUserAccountService.inert(sysUserAccountVo); } /** * @version * @author: hxl * @Date: 2024/6/19 8:52 * @Description: 提现 */ @PostMapping("/withdraw") @ApiOperation("提现") public HttpResult withdraw(@RequestBody SysUserAccountVo sysUserAccountVo) { return sysUserAccountService.withdraw(sysUserAccountVo); } @GetMapping(value = "/getSysUserAmount") @ApiOperation("用户账户余额") public HttpResult getSysUserAmount(@RequestParam String userid) { return HttpResult.ok(sysUserAccountService.getSysUserAmount(userid)); } @GetMapping(value = "/getSysAllAmount") @ApiOperation("用户余额new") public HttpResult getSysAllAmount (){ String userId = BaseController.getUser().getId(); SysUserAccountVo result = sysUserAccountService.getSysAllAmount(userId); return HttpResult.ok("success", result); } @PostMapping("getInsOrders") @ApiOperation("获取预收实收列表数据") public HttpResult getInsOrders(@RequestBody SysUserAccountVo sysUserAccountVo){ if(StringUtils.isBlank(sysUserAccountVo.getAmountType())){ return HttpResult.error("金额类型(手续费金额1跟单金额2推广金额3)amountType不能为空"); } //预收实收类型 if(StringUtils.isBlank(sysUserAccountVo.getSearchType())){ return HttpResult.error("预收实收类型(预收1实收2)searchType不能为空"); } //查询时间 if(StringUtils.isBlank(sysUserAccountVo.getTimeFiltering())){ return HttpResult.error("查询时间timeFiltering不能为空"); } try{ SysUserAccountVo result =sysUserAccountService.getInsOrders(sysUserAccountVo); return HttpResult.ok("success", result); }catch (Exception e){ return HttpResult.error("查询失败"+e.getMessage()); } } /** * @version * @author: hxl * @Date: 2024/6/3 15:03 * @Description: 通过子订单编号查询订单的详情页面 */ @GetMapping("getSubOrderDetails") @ApiOperation("获取推广费订单详情") public HttpResult getSubOrderDetails(String subOrderId){ if(StringUtils.isBlank(subOrderId)){ return HttpResult.error("订单号subOrderId不能为空"); } try{ SubOrder subOrder =sysUserAccountService.getSubOrderDetails(subOrderId,BaseController.getUser().getId()); return HttpResult.ok("success", subOrder); }catch (Exception e){ return HttpResult.error("操作失败"+e.getMessage()); } } /** * @version * @author: hxl * @Date: 2024/6/19 9:00 * @Description: 查询我的账户金额 */ @GetMapping("getUserSumAmountByUserId") @ApiOperation("查询我的账户总金额") public HttpResult getUserSumAmountByUserId(String userId){ try{ BigDecimal sumAmount =sysUserAccountService.getUserSumAmountByUserId(userId); return HttpResult.ok("success", sumAmount); }catch (Exception e){ return HttpResult.error("操作失败"+e.getMessage()); } } /** * @version * @author: hxl * @Date: 2024/6/19 9:14 * @Description: 查询我的预收明细 */ @PostMapping("findMyCollectInAdvanceByUserId") @ApiOperation("查询我的预收明细") public HttpResult findMyCollectInAdvanceByUserId(@RequestBody MyCollectInAdvanceQueryDto myCollectInAdvanceQueryDto){ return HttpResult.ok(sysUserAccountService.findMyCollectInAdvanceByUserId(myCollectInAdvanceQueryDto)); } /** * @version * @author: hxl * @Date: 2024/6/19 9:14 * @Description: 查询我的预收的数据 */ @PostMapping("findMyIncomeAndExpensesByUserId") @ApiOperation("查询我的收支明细") public HttpResult findIncomeAndExpensesByUserId(@RequestBody MyIncomeAndExpensesQueryDto myIncomeAndExpensesQueryDto){ return HttpResult.ok(sysUserAccountService.findIncomeAndExpensesByUserId(myIncomeAndExpensesQueryDto)); } /** * @version * @author: hxl * @Date: 2024/6/19 9:14 * @Description: 提现中、已提现的详情 */ @GetMapping("findDetailById") @ApiOperation("提现的详情") public HttpResult findDetailById(String id){ return HttpResult.ok(sysUserAccountService.findDetailById(id)); } /** @PostMapping("findOrderDetailById") @ApiOperation("订单详情") public HttpResult findOrderDetailById(String subOrderId){ return HttpResult.ok(sysUserAccountService.findOrderDetailById(subOrderId)); } **/ @GetMapping("findRefundDetailById") @ApiOperation("退款详情") public HttpResult findRefundDetailById(String id){ return HttpResult.ok(sysUserAccountService.findRefundDetailById(id)); } }