package com.red.circle.other.app.service.violation;

import com.red.circle.framework.dto.PageResult;
import com.red.circle.other.app.dto.clientobject.violation.ViolationHandleResultCO;
import com.red.circle.other.app.dto.clientobject.violation.ViolationRecordCO;
import com.red.circle.other.app.dto.cmd.violation.UserViolationHandleCmd;
import com.red.circle.other.app.dto.cmd.violation.ViolationRecordPageQueryCmd;

/**
 * 用户违规服务接口
 *
 * @author Claude
 * @date 2025-01-15
 */
public interface UserViolationService {

    /**
     * 处理用户违规
     *
     * @param cmd 处理命令
     * @return 处理结果
     */
    ViolationHandleResultCO handle(UserViolationHandleCmd cmd);

    /**
     * 分页查询违规记录
     *
     * @param cmd 查询命令
     * @return 分页结果
     */
    PageResult<ViolationRecordCO> pageQuery(ViolationRecordPageQueryCmd cmd);
}
