package com.mes.md.service;
import com.github.yulichang.base.MPJBaseService;
import com.mes.md.entity.Machine;
import com.mes.md.entity.Tasking;
import java.util.List;
/**
*
* 工作任务操作记录明细 服务类
*
*
* @author wu
* @since 2024-08-28
*/
public interface TaskingService extends MPJBaseService {
/**
* 定制模式下将扫码出来id获取成玻璃数据赋值给当前最新的glassId
* @return List
*/
Boolean insertTaskingPro(String scanId);
/**
* 根据标准模式的任务顺序获取玻璃数据
* @return List
*/
Boolean insertTasking(String status);
/**
* 补全任务数据
* @return List
*/
boolean updateTasking(String scanId);
/**
* 更改任务表状态
* @return List
*/
boolean updateTaskingState(Tasking tasking);
/**
* @param machine
* 扫码设备添加任务
* @return
*/
int scanMachineAdd(Machine machine, String scanId);
/**
* @param machine
* 查询当前设备,线上未完工的任务 (线上/正常)
* @return
*/
List findMachineTask(Machine machine);
/**
* @param machine,workState
* 查询当前设备,线上【等待/工作/完工】的任务 升序 (线上/正常)
* @return
*/
List findMachineWorkStateTask(Machine machine, String workState);
/**
*
* 查询线下的玻璃
* @return
*/
List findDownLineTask();
/**
* @param machine
* 当前设备标记正在工作:线上等待的任务第一条 (线上/正常)
* @return
*/
Tasking startMachineTask(Machine machine);
Tasking startMachineTask(Machine machine, String glassId);
/**
* @param machine
* 当前设备 的前全部工序 到本工序的 scan_id 任务状态为正在工作
* @return
*/
Tasking startScanIdMachineTask(Machine machine, String scan_id);
/**
* @param machine
* 当前设备标记完成:正在工作的第一个任务 (线上/正常) 返回完成数量
* @return
*/
int finishMachineTask(Machine machine);
int finishMachineTask(Machine machine,Integer taskSequence);
/**
* @param machine
* 当前设备标记失败,正在工作的最后一个任务 (线上/正常) 返回失败数量
* @return
*/
int loseMachineTask(Machine machine);
/**
* @param tasking
* 破损玻璃, (线上/正常) 返回破损数量
* @return
*/
int damagedTask(Tasking tasking);
/**
* @param machine
* 修改状态 【下线】
* @return
*/
int glassDownLineOne(Machine machine);
/**
* @param tasking
* 修改状态 【下线】
* @return
*/
int glassDownLine(Tasking tasking);
/**
* @param taskingList
* 批量修改状态 【上线】
* @return
*/
int glassTopLine(List taskingList);
/**
* @param tasking
* 批量修改状态 【上线】
* @return
*/
int glassTopLine(Tasking tasking);
List findMachineTaskID(Machine machine,String scan_id);
/**
* @param tasking
* 任务结束
* @return
*/
int stopTasking(Tasking tasking);
}