package com.bonus.material.push.mapper;

import com.bonus.material.push.domain.*;
import com.bonus.system.api.domain.SysUser;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

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

/**
 * @author : 阮世耀
 * @version : 1.0
 * @PackagePath: com.bonus.material.push.mapper
 * @CreateTime: 2025-01-23  14:40
 * @Description: i皖送费用推送mapper
 */
@Mapper
public interface ProDataUseInfoMapper {

    List<ProIdsBean> getProDataUseInfo(@Param("typeIds") List<Integer> typeIds, @Param("proId") String proId);

    List<Integer> getTypeId();

    List<MachineInfoBean> getMachineDetails(ProIdsBean bean);

    String getTypeKeeperName(MachineInfoBean machineDetail);

    List<StaticsNumsBean> getNumsByStatics(ProIdsBean bean);

    List<StaticsNumsBean> getApproachingAndTimeout(ProIdsBean bean);

    List<MachineInfoBean> getApproachingDetails(ProIdsBean bean);

    List<MachineInfoBean> getCompletionNotRefunded(ProIdsBean bean);

    List<MachineInfoBean> getCompletionNotRefundedDetails(ProIdsBean bean);

    List<InventoryAlertBean> getInventoryAlert(ProIdsBean bean);

    List<InventoryAlertBean> getInventoryAlertName(ProIdsBean bean);

    List<Map<String, Object>> getApproachingDetailsByUnit();

    List<MachineInfoBean> getMaTypeList(ProIdsBean bean);

    List<MachineInfoBean> getUseNumsDetails(ProIdsBean bean);

    List<MachineInfoBean> getRepairNumsDetails(ProIdsBean bean);

    List<MachineInfoBean> getNumsDetails(ProIdsBean bean);

    List<MachineInfoBean> getAllMacheDetails(ProIdsBean bean);

    SysUser getPersonNameAndPhone(MachineInfoBean machineDetail);

    List<MachineInfoBean> getCompletionNotRefundedSub(ProIdsBean bean);

    List<MachineInfoBean> getCompletionNotRefundedDetailsSub(ProIdsBean bean);
}
