package com.mes.edgstoragecage.service;
import com.github.yulichang.base.MPJBaseService;
import com.mes.edgstoragecage.entity.EdgStorageCage;
import com.mes.edgstoragecage.entity.EdgStorageCageDetails;
import com.mes.edgstoragecage.entity.vo.EdgSlotRemainVO;
import com.mes.edgstoragecage.entity.vo.EdgStorageCageVO;
import java.util.List;
/**
*
* 服务类
*
*
* @author zhoush
* @since 2024-04-07
*/
public interface EdgStorageCageService extends MPJBaseService {
/**
* 查询笼内离指定格子最近空格
* flag :是否为直通
*
* @return
*/
EdgStorageCage selectNearestEmpty(Integer currentCell, int deviceId, boolean flag);
/**
* 按照设备号返回对应的笼内详情数据
* @param deviceId
* @return
*/
List selectEdgStorageCagesByDeviceId(int deviceId);
/**
* 修改理片笼信息
*
* @param edgStorageCage
* @return
*/
boolean updateEdgStorageCage(EdgStorageCage edgStorageCage);
/**
* 更新理片笼详情信息
*
* @param edgStorageCageId
* @param edgStorageCageDetails
* @return
*/
boolean updateEdgStorageCageDetails(int edgStorageCageId, EdgStorageCageDetails edgStorageCageDetails);
/**
* 相同尺寸可以放下的格子
*
* @param deviceId
* @param width
* @param height
* @param slot
* @return
*/
EdgStorageCage getEdgStorageCageBySize(int deviceId, double width, double height, int slot);
void resetSlotRemainWidth(List edgSlotRemainVOS);
}