package com.qianwen.smartman.modules.smis.service; import com.baomidou.mybatisplus.core.metadata.IPage; import java.time.LocalDate; import java.util.List; import java.util.Map; import java.util.Set; import javax.servlet.http.HttpServletResponse; import com.qianwen.smartman.common.websocket.entity.FmsWorkstation; import com.qianwen.core.mp.base.BaseService; import com.qianwen.core.mp.support.Query; import com.qianwen.core.oss.model.BladeFile; import com.qianwen.smartman.modules.smis.dto.WorkstationRealTimeStatusDTO; import com.qianwen.smartman.modules.smis.dto.WorkstationWcsDmpDTO; import com.qianwen.smartman.modules.smis.entity.ProductionCalendarDay; import com.qianwen.smartman.modules.smis.entity.Workstation; import com.qianwen.smartman.modules.smis.excel.WorkstationImport; import com.qianwen.smartman.modules.smis.vo.DmpVariablesVO; import com.qianwen.smartman.modules.smis.vo.FmsWorkstationGroupVO; import com.qianwen.smartman.modules.smis.vo.FmsWorkstationQueryVO; import com.qianwen.smartman.modules.smis.vo.RealTimeStatusVO; import com.qianwen.smartman.modules.smis.vo.WorkMachineEasyVO; import com.qianwen.smartman.modules.smis.vo.WorkstationChangeCalendarVO; import com.qianwen.smartman.modules.smis.vo.WorkstationPageQueryVO; import com.qianwen.smartman.modules.smis.vo.WorkstationRealTimeStatusVO; import com.qianwen.smartman.modules.smis.vo.WorkstationSubmitVO; import com.qianwen.smartman.modules.smis.vo.WorkstationVO; import com.qianwen.smartman.modules.mdc.dto.GroupWorkDTO; import com.qianwen.smartman.modules.mdc.dto.WorkstationDmpDTO; public interface IWorkstationService extends BaseService { List queryWcsList(String workstationId); WorkstationWcsDmpDTO queryDateTypeState(Integer code, String workstationId); List queryDmpList(String workstationId); /** * 新增或更改工位信息 * @param workstationSubmitVO * @return */ WorkstationVO submit(WorkstationSubmitVO workstationSubmitVO); Boolean changeCollectSwitch(Long workstationId, Integer collectSwitch); Boolean delete(List workstationIds, Integer type); IPage listPage(IPage workstationVOIPage, String keyWord, Long groupId, Integer status, Integer type); List getWorkstationByGroupIds(final List groupIds); //List getFmsWorkstation(final List filterWorkstationIds); Boolean changeCalendarCode(WorkstationChangeCalendarVO workstationChangeCalendarVO); /** * 更新所有工位的生产日历字段,用calendarCodeWaiting更新calendarCode。在定时任务时调用 */ void updateWorkstationCalendar(); Boolean changeWorkstationGroup(Long groupId, List workstationIdList); WorkstationVO getDetail(Long workstationId); Boolean deleteGroup(Long groupId); BladeFile importWorkstation(List data); BladeFile exportWorkstation(String keyWord, Long groupId, HttpServletResponse response); /** * 获取工位实时状态数据,实时看板使用 * @param dto * @param query * @return */ IPage getRealTimeStatus(WorkstationRealTimeStatusDTO dto, Query query); //List getRealTimeProperties(Long workstationId, Long machineId); IPage listWorkStationOnShiftIndex(List ids, LocalDate localDate, Query query, Integer shift, Integer type); List listWorkStationOnShift(List ids, LocalDate localDate, List shifts, Integer type); //List getDmpVariables(String workstationId, String machineId); Integer countWorkStationOnShiftIndex(List ids, LocalDate localDate, Integer shift, Integer type); List listWorkStationByGroupId(List ids); List listWorkStationByGroup(List ids); Set findByIndexAndDateAndTypeAndYear(Integer year, String queryDate, Integer shiftIndex, Integer code); List findByMachineShortCode(String code); List workStationList(List ids); Map queryGroupWorkStation(List ids); ProductionCalendarDay getDayShift(Long workstationId, String calendarDate); List productionLineList(Long groupId); List getDmpVar(String workstationId); //List assemblyWorkstationData(List workstationIds, Map realTimeTrayMap, List realTimeTrayList, List positionList); WorkMachineEasyVO getWorkMachine(String workstationId); List fmsTreeWorkstation(FmsWorkstationQueryVO fmsWorkstationQueryVO); List listMachine(Integer status, String keyword); List getWorkstationListInMaintainOrRepairById(Long orderProcessId, Set workstationIdList); List getWorkstationListInMaintainOrRepairByIdList(List orderProcessIdList, Set workstationIdList); IPage pageH5(Query query, WorkstationPageQueryVO workstationPageQueryVO); }