package ink.wgink.login.base.service.login;

import ink.wgink.login.base.pojo.dtos.login.LoginFormDTO;
import ink.wgink.login.base.pojo.vos.login.LoginFormVO;
import ink.wgink.pojo.ListPage;
import ink.wgink.pojo.result.SuccessResultList;

import java.util.List;
import java.util.Map;

/**
 * @ClassName: ILoginFormService
 * @Description: 登录form表单
 * @Author: wanggeng
 * @Date: 2021/7/29 3:44 下午
 * @Version: 1.0
 */
public interface ILoginFormService {

    /**
     * 新增登录Form
     *
     * @param loginFormVO
     */
    void save(LoginFormVO loginFormVO);

    /**
     * 删除登录Form
     *
     * @param loginFormIds
     */
    void remove(List<String> loginFormIds);

    /**
     * 修改登录Form
     *
     * @param loginFormId
     * @param loginFormVO
     */
    void update(String loginFormId, LoginFormVO loginFormVO);

    /**
     * 激活登录Form
     *
     * @param loginFormId
     */
    void updateActive(String loginFormId);

    /**
     * 取消激活登录Form
     *
     * @param loginFormId
     */
    void updateUnActive(String loginFormId);

    /**
     * 登录Form列表
     *
     * @param params
     * @return
     */
    List<LoginFormDTO> list(Map<String, Object> params);

    /**
     * 登录Form分页列表
     *
     * @param page
     * @return
     */
    SuccessResultList<List<LoginFormDTO>> listPage(ListPage page);

    /**
     * 登录Form详情
     *
     * @param params
     * @return
     */
    LoginFormDTO get(Map<String, Object> params);

    /**
     * 登录Form详情
     *
     * @param loginFormId
     * @return
     */
    LoginFormDTO get(String loginFormId);

    /**
     * 激活的登录Form详情
     *
     * @return
     */
    LoginFormDTO getActive();

}
