package com.changhu.module.miniProgram.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.changhu.module.miniProgram.pojo.params.SecurityUserSaveOrUpdateParams;
import com.changhu.module.miniProgram.pojo.params.UserRegisterParams;
import com.changhu.module.miniProgram.pojo.queryParams.ServiceProjectSecurityUserPagerQueryParams;
import com.changhu.module.miniProgram.pojo.vo.ServiceProjectSecurityUserPagerVo;
import com.changhu.support.mybatisplus.pojo.params.PageParams;

/**
 * @author 20252
 * @createTime 2024/11/22 下午4:14
 * @desc UserService...
 */
public interface UserService {
    /**
     * 注册
     *
     * @param params 参数
     */
    void register(UserRegisterParams params);

    /**
     * 保存或更新保安人员
     *
     * @param params 保安人员参数
     */
    void saveOrUpdateSecurityUser(SecurityUserSaveOrUpdateParams params);

    /**
     * 二维码表单录入保安人员
     *
     * @param params 参数
     */
    void qrCodeFormInputSecurityUser(SecurityUserSaveOrUpdateParams params);

    /**
     * 服务项目内的保安人员分页
     *
     * @param queryParams 查询参数
     * @return 保安人员
     */
    Page<ServiceProjectSecurityUserPagerVo> securityUserPager(PageParams<ServiceProjectSecurityUserPagerQueryParams, ServiceProjectSecurityUserPagerVo> queryParams);

    /**
     * 根据id删除保安人员
     *
     * @param securityUserId 保安人员id
     */
    void deleteSecurityUserById(Long securityUserId);
}
