ISignInService.java 2.19 KB
package com.ruoyi.in.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.exception.file.FileUploadException;
import com.ruoyi.domain.driver.NewDriver;
import com.ruoyi.in.domain.SignIn;
import com.ruoyi.pojo.response.SignInResponseVo;

import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.util.List;

/**
 * 签到Service接口
 *
 * @author guzijian
 * @date 2023-07-05
 */
public interface ISignInService extends IService<SignIn> {
    /**
     * 查询签到
     *
     * @param id 签到主键
     * @return 签到
     */
    public SignIn selectSignInById(Long id);

    /**
     * 查询签到列表
     *
     * @param signIn 签到
     * @return 签到集合
     */
    public List<SignInResponseVo> selectSignInList(SignInResponseVo signIn);

    SignIn getLastOne(SignIn signIn);

    /**
     * 修改签到
     *
     * @param signIn 签到
     * @return 结果
     */
    public int updateSignIn(SignIn signIn);

    /**
     * 批量删除签到
     *
     * @param ids 需要删除的签到主键集合
     * @return 结果
     */
    public int deleteSignInByIds(Long[] ids);

    /**
     * 删除签到信息
     *
     * @param id 签到主键
     * @return 结果
     */
    public int deleteSignInById(Long id);

    /**
     * 设备签到
     *
     * @param signIn
     * @return
     */
    AjaxResult addSignIn(SignIn signIn) throws FileUploadException, IOException;

    String repairSignRecord(HttpServletRequest request);

    String repairAllSignRecord(HttpServletRequest request, String date);

    AjaxResult supplementarySignature(SignIn signIn);

    List<SignInResponseVo> selectSignInByIds(List<Long> collect);

    /***
     *当日最后一次登签的签到状态
     *
     * @author liujun
     * @date 2024/7/12 10:25
     * @param driver
     * @return int 0:未签到,1:已签到
     */
    int signInType(NewDriver driver);

    /***
     *当日最后一次登签的签退状态
     *
     * @author liujun
     * @date 2024/7/12 10:25
     * @param driver
     * @return int 0:未签到,1:已签到
     */
    int signOutType(NewDriver driver);
}