package com.example.demo.controller.cash; import com.example.demo.Util.JWTUtil; import com.example.demo.domain.entity.Admin; import com.example.demo.domain.entity.CashRecord; import com.example.demo.domain.entity.RechargeActivity; import com.example.demo.domain.entity.User; import com.example.demo.domain.vo.cash.CashCollection; import com.example.demo.domain.vo.coin.Page; import com.example.demo.domain.vo.coin.Result; import com.example.demo.service.cash.CashCollectionService; import com.github.pagehelper.PageInfo; import jakarta.servlet.http.HttpServletRequest; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; 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 java.util.Arrays; import java.util.List; /** * @program: gold-java * @ClassName CashCollectionController * @description: * @author: Ethan * @create: 2025−09-26 10:22 * @Version 1.0 **/ @RestController @RequestMapping("/cashCollection") @RequiredArgsConstructor @Slf4j @CrossOrigin public class CashCollectionController { @Autowired private CashCollectionService cashCollectionService; //根据精网号获取姓名和地区 @PostMapping("/getNameAndMarket") public Result getNameAndMarket(@RequestBody Integer jwcode) { try { return Result.success(cashCollectionService.getNameAndMarket(jwcode)); } catch (Exception e) { return Result.error(e.getMessage()); } } //获取收款活动列表 @PostMapping("/getActivityList") public Result getActivityList() { List list = cashCollectionService.getActivityList(); return Result.success(list); } //新增收款订单 @PostMapping("/add") public Result add(@RequestBody CashCollection cashCollection) { try { return Result.success(cashCollectionService.add(cashCollection)); } catch (Exception e) { return Result.error(e.getMessage()); } } //撤回未审核的收款订单 @PostMapping("/cancel") public Result cancel(@RequestBody CashRecord cashRecord) { try { return Result.success( cashCollectionService.cancel(cashRecord.getOrderCode())); }catch (Exception e){ return Result.error(e.getMessage()); } } //重新提交审核的收款订单 @PostMapping("/reSubmit") public Result reSubmit(@RequestBody CashRecord cashRecord) { try { return Result.success(cashCollectionService.reSubmit(cashRecord)); }catch (Exception e){ return Result.error(e.getMessage()); } } //多条件查询收款订单列表 @PostMapping("/selectCollection") 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.getCashCollection().setMarkets(list);} else{ return Result.error("角色为空"); } return Result.success(cashCollectionService.selectCollection(page.getPageNum(), page.getPageSize(),page.getCashCollection())); }} catch (Exception e) { return Result.error(e.getMessage()); }} //补全手续费等 @PostMapping("/complete") public Result complete(@RequestBody CashRecord cashRecord) { try { return Result.success(cashCollectionService.complete(cashRecord)); }catch (Exception e){ return Result.error(e.getMessage()); } } //同步g_order订单到cash_record表 @PostMapping("/syncToCashRecord") public Result syncToCashRecord() { try { return Result.success(cashCollectionService.syncToCashRecord()); }catch (Exception e){ return Result.error(e.getMessage()); } } //根据id查询收款订单 @PostMapping("/selectById") public Result selectById(@RequestBody CashCollection cashCollection) { try { return Result.success(cashCollectionService.selectById(cashCollection)); }catch (Exception e){ return Result.error(e.getMessage()); } } }