杨前锦
2025-07-01 a93b0e99036c24b9bd58c79bf5e7364b1ba28bae
HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_PT/api/MoboxController.cs
@@ -9,12 +9,29 @@
using System.Web.Http;
using static HH.WCS.Mobox3.YNJT_PT.api.ApiModel;
using static HH.WCS.Mobox3.YNJT_PT.api.OtherModel;
using static HH.WCS.Mobox3.YNJT_PT.api.WmsController;
namespace HH.WCS.Mobox3.YNJT_PT.api {
    /// <summary>
    /// mobox3调用,脚本中调用
    /// </summary>
    public class MoboxController : System.Web.Http.ApiController {
        /// <summary>
        /// 1.胎胚立库抽检出库、人工出库胎胚
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public SimpleResult embryoCheckOutStock(EmbryoCheckOutStockModel model)
        {
            LogHelper.Info("【1.胎胚立库抽检出库】embryoCheckOutStock 入参:" + JsonConvert.SerializeObject(model), "WMS");
            SimpleResult result = new SimpleResult();
            result = ApiHelper.embryoCheckOutStock(model);
            LogHelper.Info("【1.胎胚立库抽检出库】embryoCheckOutStock 出参:" + JsonConvert.SerializeObject(result), "WMS");
            return result;
        }
        /// <summary>
        /// 任务取消(目前支持ndc)
        /// </summary>
@@ -26,7 +43,9 @@
            var result = new SimpleResult();
            var task = WCSHelper.GetTask(model.TaskNo);
            if (task != null) {
                if (task.N_B_STATE == 0) {
                if (task.N_B_STATE == 0)
                {
                    //等待直接修改状态为取消
                    WCSHelper.UpdateStatus(model.TaskNo, "取消");
                    LocationHelper.UnLockLoc(task.S_START_LOC);
@@ -35,15 +54,27 @@
                    /*LocationHelper.UnBindingLoc(task.S_START_LOC, new List<string> { task.S_CNTR_CODE });*/
                    result.resultMsg = "任务等待,直接取消";
                }
                else if (task.N_B_STATE < 3) {
                    //已推送但是没有完成或者取消,通知hosttoagv
                    NDCHelper.Cancel(task.S_CODE);
                    result.resultMsg = "任务取消已经发送给小车";
                else if (task.N_B_STATE < 3)
                {
                    if (task.S_SCHEDULE_TYPE == "AGV")
                    {
                        //已推送但是没有完成或者取消,通知hosttoagv
                        NDCHelper.Cancel(task.S_CODE);
                        result.resultMsg = "任务取消已经发送给小车";
                    }
                    else if (task.S_SCHEDULE_TYPE == "WCS")
                    {
                    }
                }
                else {
                else
                {
                    result.resultCode = 1;
                    result.resultMsg = "任务已结束";
                }
            }
            else {
                result.resultCode = 1;
@@ -130,53 +161,9 @@
        }
            /// <summary>
            /// 整排解绑
            /// </summary>
            /// <returns></returns>
            public SimpleResult RowUnbind(RowUnbindInfo model) {
            LogHelper.Info("RowUnbind Request:" + JsonConvert.SerializeObject(model), "TSSG");
            SimpleResult result = new SimpleResult();
            List<Location>  locations = WMSHelper.GetLocationList(model.area, model.row);
            foreach (var item in locations)
            {
                //货位解锁
                LocationHelper.UnLockLoc(item.S_CODE);
                //货位容器解绑
                var db = new SqlHelper<object>().GetInstance();
                var lcrList = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE == item.S_CODE).Select(s => s.S_CNTR_CODE).ToList();
                LocationHelper.UnBindingLoc(item.S_CODE, lcrList);
            }
            LogHelper.Info("RowUnbind response:" + JsonConvert.SerializeObject(model), "TSSG");
            return result;
        }
        /// <summary>
        /// pda入库申请
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public SimpleResult Instock(InstockInfo model) {
            var result = new SimpleResult();
            LogHelper.Info("Instock Request:" + JsonConvert.SerializeObject(model), "TSSG");
            result =  ApiHelper.Instock(model);
            LogHelper.Info("Instock response:" + JsonConvert.SerializeObject(result), "TSSG");
            return result;
        }
        /// <summary>
        /// pda移库申请
        /// </summary>
        /// <returns></returns>
        public SimpleResult shiftStock(ShiftStockInfo model) {
            var result = new SimpleResult();
            LogHelper.Info("shiftStock Request:" + JsonConvert.SerializeObject(model), "TSSG");
            result = ApiHelper.shiftStock(model);
            LogHelper.Info("shiftStock response:" + JsonConvert.SerializeObject(result), "TSSG");
            return result;
        }
    }
}