package com.kexue.skills.service;

import com.kexue.skills.entity.AccountFrozen;
import com.kexue.skills.entity.dto.AccountFrozenDto;
import com.kexue.skills.entity.dto.AccountReleaseDto;

/**
 * 账户冻结单服务
 *
 * @author 系统生成
 * @since 2026-04-11
 */
public interface AccountFrozenService {

    /**
     * 创建冻结单
     * @param accountFrozenDto 冻结单DTO
     * @return 冻结单信息
     */
    AccountFrozen createFrozen(AccountFrozenDto accountFrozenDto);

    /**
     * 释放冻结单
     * @param accountReleaseDto 冻结单释放DTO
     * @return 冻结单信息
     */
    AccountFrozen releaseFrozen(AccountReleaseDto accountReleaseDto);

    /**
     * 根据ID查询冻结单
     * @param frozenId 冻结单ID
     * @return 冻结单信息
     */
    AccountFrozen getByFrozenId(String frozenId);

    /**
     * 根据会话ID查询冻结单
     * @param sessionId 会话ID
     * @return 冻结单信息
     */
    AccountFrozen getBySessionId(String sessionId);

}
