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);
//}
}
}