package com.zy.asrs.service; import com.core.common.R; import com.zy.asrs.entity.WrkDetl; import com.zy.asrs.entity.param.*; import com.zy.asrs.entity.result.OpenOrderCompeteResult; import com.zy.asrs.entity.result.StockVo; import java.util.Map; import java.util.List; public interface OpenService { /** * 添加入库单 */ void pakinOrderCreate(OpenOrderPakinParam param); /** * 入库单回写 */ List pakinOrderComplete(OpenOrderCompleteParam param); /** * 添加入库单 */ void pakoutOrderCreate(OpenOrderPakoutParam param); /** * pause out order */ R pakoutOrderPause(OpenOrderPakoutPauseParam param); /** * execute out order */ R pakoutOrderExecute(OpenOrderPakoutExecuteParam param); /** * 入库单回写 */ List pakoutOrderComplete(OpenOrderCompleteParam param); /** * 库存统计 */ List queryStock(); /** * 按托盘码批量重报入库历史到 ERP。 */ R reportPakinHistoryToErp(List barcodes); // ------------------------------------------ // 打包上线 void packageUp(PackParam param); /** * 同步商品信息 * @param param */ void syncMat(MatSyncParam param); void taskArmReport(TaskArmReportParam param); void taskArmCycleResult(TaskArmCycleResultParam param); void taskArmWorkspaceStatus(TaskArmWorkspaceStatusParam param); boolean TaskArmLocStatus(ArmOKParam param); void taskArmWorkOrderStatus(OrderArmEndParam param); List getAgvLocList(AgvLocListParam param); boolean bindCtnrAndBin(bindCtnrAndBinParam param); boolean taskArmOrderResult(OrderArmEndParam param); List getPickList(PdaPickListParam param); /** * 输出所有入库站和出库站站点 * @return */ R stationAll (); /** * 7.3 组托信息下发 */ R mesToComb(MesToCombParam param); /** * 7.11 出库通知单(传递有序无序规则) */ R outOrder(OutTaskParam param,int count,int i); /** * 7.11 出库通知单(传递有序无序规则)批量建单,同一事务:任一行失败则全部回滚。 */ R outOrderBatch(Map> linesByBatchSeq,int count); /** * stationId > 600 的出库通知单先生成出库订单,不直接生成任务。 * * 该方法只负责把 ERP 参数落到 man_order_pakout / man_order_detl_pakout。 * 库位锁定、WrkMast/WrkDetl 创建和 WCS 下发都留给后续定时生成任务流程处理。 */ R outOrderCreatePakoutOrder(List params); /** * 扫描待生成任务的出库订单,按进仓编号批量生成任务。 * * 调度器入口:会遍历启用中的出库订单,每个订单最多生成一个当前可放行的 entryWmsCode 批次。 */ R generatePendingPakoutOrderTasks(); /** * 生成指定出库订单当前允许的一个进仓编号批次任务。 * * orderNo 对应 WrkMast.userNo;entryWmsCode 在实现中会强制作为 WrkMast.batchSeq。 */ R generatePendingPakoutOrderTasks(String orderNo); /** * 7.9 出库异常变动上报 */ R outOrderAbnormalReport(OutOrderAbnormalReportParam param); /** * 7.10 出库异常变动处理 */ R outOrderAbnormalHandle(OutOrderAbnormalHandleParam param); }