package com.example.demo.controller.coin; import com.example.demo.Util.JWTUtil; import com.example.demo.domain.entity.Admin; import com.example.demo.service.coin.RefundService; import jakarta.servlet.http.HttpServletRequest; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.ObjectUtils; import org.springframework.web.bind.annotation.*; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import com.example.demo.domain.vo.coin.*; import java.util.Arrays; import java.util.List; /** * @program: gold-java * @ClassName RefundMapper.xml * @description: * @author: Double * @create: 2025−06-26 11:28 * @Version 1.0 **/ @RestController @RequestMapping("/refund") @RequiredArgsConstructor @Slf4j @CrossOrigin public class RefundController { @Autowired private RefundService refundService; //退款明细 @PostMapping("/selectAll") public Result selcetAll(@RequestBody Page page) { try { if (ObjectUtils.isEmpty(page.getPageNum())) { return Result.error("页码数为空!"); } if (ObjectUtils.isEmpty(page.getPageSize())) { return Result.error("页大小为空!"); } else { //解token权限 HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); String token = request.getHeader("token"); Admin admin = (Admin) JWTUtil.getUserDetailsList(String.valueOf(token), Admin.class); if (admin != null) { List list = Arrays.asList(admin.getMarkets().split(",")); page.getRefundUser().setMarkets(list); } else { return Result.error("角色为空"); } return Result.success(refundService.selectAll(page.getPageNum(), page.getPageSize(), page.getRefundUser())); } } catch (Exception e) { return Result.error("请检查筛选数据的格式"); } } //退款筛选 @PostMapping("/selectBy") public Result selcetBy(@RequestBody Page page) { try { if (ObjectUtils.isEmpty(page.getPageNum())) { return Result.error("页码数为空!"); } if (ObjectUtils.isEmpty(page.getPageSize())) { return Result.error("页大小为空!"); } else { //解token权限 if(page.getRefundUser().getMarkets()==null||page.getRefundUser().getMarkets().isEmpty()) { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); String token = request.getHeader("token"); Admin admin = (Admin) JWTUtil.getUserDetailsList(String.valueOf(token), Admin.class); List markets = Arrays.asList(StringUtils.split(admin.getMarkets(), ",")); page.getRefundUser().setMarkets(markets); } return Result.success(refundService.selectBy(page.getPageNum(), page.getPageSize(), page.getRefundUser())); } } catch (Exception e) { return Result.error("请检查筛选数据的格式"); } } //退款金币统计 @PostMapping("/statsGold") public Result statsGold(@RequestBody RefundUser refundUser) { try { //解token权限 if(refundUser.getMarkets()==null||refundUser.getMarkets().isEmpty()) { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); String token = request.getHeader("token"); Admin admin = (Admin) JWTUtil.getUserDetailsList(String.valueOf(token), Admin.class); List markets = Arrays.asList(StringUtils.split(admin.getMarkets(), ",")); refundUser.setMarkets(markets); } Gold gold = refundService.statsGold(refundUser); return Result.success(gold); } catch (Exception e) { return Result.error("请检查数据的格式"); } } //获取退款类型 @PostMapping("/refundType") public Result getRefundType() { List list = refundService.getRefundType(); return Result.success(list); } //筛选产品 @PostMapping("/selectGoods") public Result getSelectGoods(@RequestBody RefundUser refundUser) { List list = refundService.selectGoods(refundUser.getJwcode()); return Result.success(list); } //消耗金币增加 @PostMapping("/add") public Result add(@RequestBody RefundUser refundUser) { try { return refundService.add(refundUser); } catch (Exception e) { return Result.error("请检查数据的格式"); } } public Result selcet(@RequestBody Page page) { try { if (ObjectUtils.isEmpty(page.getPageNum())) { return Result.error("页码数为空!"); } if (ObjectUtils.isEmpty(page.getPageSize())) { return Result.error("页大小为空!"); } else { return Result.success(refundService.selectBy(page.getPageNum(), page.getPageSize(), page.getRefundUser())); } } catch (Exception e) { return Result.error("请检查筛选数据的格式"); } } }