using System.Web.Http; using HH.WCS.Mobox3.DSZSH.models; using Newtonsoft.Json; using static HH.WCS.Mobox3.DSZSH.api.ApiModel; using static HH.WCS.Mobox3.DSZSH.api.OtherModel; namespace HH.WCS.Mobox3.DSZSH.api { /// /// Mobox3 调用,脚本中调用(包括 PDA 的接口) /// [RoutePrefix("api")] public class MoboxController : ApiController { /// /// 好运箱-满托下线入库(PDA) /// /// /// [HttpPost] [Route("goodpack-offline")] public SimpleResult GoodpackOffline(GoodpackOfflineInfo model) { var apiName = "好运箱-满托下线入库(PDA)"; LogHelper.InfoApi(apiName, model); return ApiHelper.GoodpackOffline(model); } ///// ///// 空托/空箱入库绑定(PDA) ///// ///// ///// //public SimpleResult EmptyBind(EmptyBindInfo model) { // LogHelper.InfoApi("空托/空箱绑定", model); // if (model.CntrType == "托盘") { // //LogHelper.Info($"触发API:空托绑定 " + JsonConvert.SerializeObject(model), "API"); // return ApiHelper.EmptyBindPallet(model); // } // else if (model.CntrType == "好运箱") { // //LogHelper.Info($"触发API:空箱绑定 " + JsonConvert.SerializeObject(model), "API"); // return ApiHelper.EmptyBindGoodpack(model); // } // else { // return BuildSimpleResult(-1, $"不合法的容器类型:'{model.CntrType}'"); // } //} /// /// 空托/空箱入库(PDA) /// /// /// [HttpPost] [Route("empty-inbound")] public SimpleResult EmptyInbound(EmptyInboundInfo model) { var apiName = "空托/空箱入库"; LogHelper.InfoApi(apiName, model); if (model.CntrType == "托盘") { return ApiHelper.EmptyInboundPallet(model); } else if (model.CntrType == "好运箱") { return ApiHelper.EmptyInboundGoodpack(model); } else { return NewSimpleResult(-1, $"容器类型 '{model.CntrType}' 不合法:应为 '托盘' 或 '好运箱'"); } } ///// ///// 空托/空箱上线(PDA) ///// ///// ///// 人工使用PDA扫码,根据物料类型判断上线空托/空箱 ///// //public SimpleResult EmptyOnline(EmptyOnlineInfo model) { // var db = DbHelper.GetDbClient(); // var locCntrRel = db.Queryable() // .LeftJoin((lc, cd) => lc.S_CNTR_CODE == cd.S_CNTR_CODE) // .Where((lc, cd) => cd.S_ITEM_CODE == model.ItemCode) // .First(); // if (locCntrRel.S_CNTR_TYPE == "托盘") { // return ApiHelper.EmptyOnlinePallet(new EmptyOnlinePalletInfo { // CntId = locCntrRel.S_CNTR_CODE, // EndLoc = model.EndLoc // }); // } // else if (locCntrRel.S_CNTR_TYPE == "好运箱") { // return ApiHelper.EmptyOnlineGoodpack(new EmptyOnlineGoodpackInfo { // CntId = locCntrRel.S_CNTR_CODE, // EndLoc = model.EndLoc // }); // } // else { // return BuildSimpleResult(-1, $"不合法的容器类型:'{locCntrRel.S_CNTR_CODE}'"); // } //} /// /// 托盘-空托上线(PDA) /// /// /// [HttpPost] [Route("empty-online-pallet")] public SimpleResult EmptyOnlinePallet(EmptyOnlinePalletInfo model) { var apiName = "托盘-空托上线(PDA)"; LogHelper.InfoApi(apiName, model); return ApiHelper.EmptyOnlinePallet(model); } /// /// 好运箱-空箱上线(PDA) /// /// /// [HttpPost] [Route("empty-online-goodpack")] public SimpleResult EmptyOnlineGoodpack(EmptyOnlineGoodpackInfo model) { var apiName = "好运箱-空箱上线(PDA)"; LogHelper.InfoApi(apiName, model); return ApiHelper.EmptyOnlineGoodpack(model); } ///// ///// 合格回库/不合格移库 ///// ///// ///// //[HttpPost] //[Route("CheckShift")] //public SimpleResult CheckShift(CheckShiftInfo model) { // LogHelper.InfoApi("合格回库/不合格移库", model); // if (model.Qualified) { // return ApiHelper.QualifiedBack(model); // } // else { // return ApiHelper.UnqualifiedShift(model); // } //} /// /// 合格回库(PDA) /// /// [HttpPost] [Route("qualified-back")] public SimpleResult QualifiedBack(QualifiedBackInfo model) { var apiName = "合格回库(PDA)"; LogHelper.InfoApi(apiName, model); return ApiHelper.QualifiedBack(model); } /// /// 不合格移库(PDA) /// /// [HttpPost] [Route("unqualified-shift")] public SimpleResult UnqualifiedShift(UnqualifiedShiftInfo model) { var apiName = "不合格移库(PDA)"; LogHelper.InfoApi(apiName, model); return ApiHelper.UnqualifiedShift(model); } /// /// 余料尾箱回库(PDA) /// /// /// [HttpPost] [Route("rest-back")] public SimpleResult RestBack(RestBackInfo model) { var apiName = "余料尾箱回库(PDA)"; LogHelper.InfoApi(apiName, model); return ApiHelper.RestBack(model); } /// /// 成品胶出库(PDA) /// /// /// [HttpPost] [Route("finished-outbound")] public SimpleResult FinishedOutbound(FinishedOutboundInfo model) { var apiName = "成品胶出库(PDA)"; LogHelper.InfoApi(apiName, model); if (model.ForcedOut) { return ApiHelper.FinishedOutboundForce(model); } else { return ApiHelper.FinishedOutbound(model); } } ///// ///// 抽检-创建抽检单(WMS) ///// ///// ///// //[HttpPost] //[Route("create-check-order")] //public SimpleResult CreateCheckOrder(CreateCheckOrderInfo model) { // return ApiHelper.CreateCheckOrder(model); //} ///// ///// 移库-创建移库任务(WMS) ///// ///// ///// //[HttpPost] //[Route("shift-storage")] //public SimpleResult CreateShiftOrder(CreateShiftOrderInfo model) { // return ApiHelper.CreateShiftOrder(model); //} } }