wxw
2025-03-27 ee4806a4b2ec94ec63b4cb9b58447d9863baebe5
Wms/WMS.IBLL/IBllTransServer/IRcsServer.cs
@@ -1,4 +1,5 @@
using System;
using Model.InterFaceModel;
using System;
using System.Collections.Generic;
using System.Text;
using static Model.InterFaceModel.RCSModel;
@@ -8,39 +9,54 @@
    public interface IRcsServer
    {
        /// <summary>
        /// RCS叫桶(净桶和脏桶)
        /// RCS叫桶
        /// </summary>
        /// <param name="warehouseno">库区</param>
        /// <param name="type">叫料类型</param>
        /// <returns></returns>
        public void GetPalletNo(string warehouseno, string type, out string palletno, out string locatno);
        public void GetPalletNo(Pallnetmsg pallnetmsg, string url, out string taskNo);
        /// <summary>
        /// RCS叫桶(混料桶和下料桶)
        /// 将净桶改为脏桶并拉到脏桶区
        /// </summary>
        /// <param name="warehouseno">库区</param>
        /// <param name="type">叫料类型</param>
        /// <param name="lotno">叫料批次</param>
        /// <param name="PalletNo"></param>
        /// <returns></returns>
        public void GetPalletNo(string warehouseno, string type, string lotno, out string palletno, out string locatno);
        public void ChangePalletStatus(string PalletNo, string url);
        /// <summary>
        /// MES下发清洗锁定脏桶
        /// </summary>
        /// <param name="pallnetmsg"></param>
        public void CleanPallet(Pallnetmsg pallnetmsg, string url);
        /// <summary>
        /// 申请储位
        /// </summary>
        /// <param name="PalletNo"></param>
        /// <returns></returns>
        public void ApplyLocatNo(string palletno, string type, out string locatno);
        public void ApplyLocatNo(Pallnetmsg pallnetmsg, string url ,out string taskNo);
        /// <summary>
        /// RCS生成任务
        /// RCS反馈任务完成
        /// </summary>
        /// <param name="taskCode"></param>
        /// <param name="taskType"></param>
        /// <param name="startPos">起始位置</param>
        /// <param name="endPos">目的位置</param>
        /// <param name="agvCode"></param>
        /// <param name="url">RCS地址</param>
        /// <returns></returns>
        public string genAgvSchedulingTask(AgvTask agvtask, string url, ref genAgvSchedulingTaskRep cbrep);
        /// <param name="TaskNo"></param>
        /// <param name="Status"></param>
        void RCSFinishTask(string taskNo, string status, string comeFrom, int userId = 0);
        /// <summary>
        /// 手动取消任务
        /// </summary>
        /// <param name="taskNo"></param>
        /// <param name="userId"></param>
        /// <exception cref="Exception"></exception>
        void CancelTask(string taskNo, int userId);
        /// <summary>
        /// 手动下发任务
        /// </summary>
        /// <param name="taskNo"></param>
        /// <param name="userId"></param>
        /// <exception cref="Exception"></exception>
        void DownTask(string taskNo, int userId, string url);
    }
}