package com.red.circle.other.inner.endpoint.sys.api;

import com.red.circle.framework.dto.PageResult;
import com.red.circle.framework.dto.ResultResponse;
import com.red.circle.other.inner.model.cmd.sys.PageUserSpecialIdCmd;
import com.red.circle.other.inner.model.cmd.sys.SysUserSpecialIdLogCmd;
import com.red.circle.other.inner.model.dto.sys.SysUserSpecialIdLogDTO;
import java.util.List;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 靓号使用日志记录.
 *
 * @author lisizhe on 2023/5/24
 */
public interface SysUserSpecialIdLogClientApi {

  String API_PREFIX = "/sys-user/special-id/log/client";

  /**
   * 获取指定数量，最新的账号日志记录.
   */
  @GetMapping("/listLatest")
  ResultResponse<List<SysUserSpecialIdLogDTO>> listLatest(
      @RequestParam(value = "userId", required = false) Long userId,
      @RequestParam(value = "size", required = false) Integer size);

  /**
   * 靓号日志-分页.
   */
  @PostMapping("/pageSpecialIdLog")
  ResultResponse<PageResult<SysUserSpecialIdLogDTO>> pageSpecialIdLog(
      @RequestBody PageUserSpecialIdCmd param);

  /**
   * 新增靓号日志
   */
  @PostMapping("/addSpecialIdLog")
  ResultResponse<Void> addSpecialIdLog(@RequestBody SysUserSpecialIdLogCmd param);
}
