using HH.WMS.BLL; using HH.WMS.BLL.CoreServer; using HH.WMS.Common; using HH.WMS.Entitys; using HH.WMS.Entitys.Common; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web.Http; namespace HH.WMS.InterfaceWebApi.Areas.OpenApi.Controllers { public class OtherSysApiController : ApiController { /// /// DLL调用,出库确认更新 /// /// WMS出库单中的来源单号 /// 出库类型(其他出库、销售出库) /// [HttpGet] public OperateResult UpdateRdrecordCheckFlag(string opFromNo, string opType) { try { Log.Info("开始进入出库确认更新", opFromNo + "||" + opType); string tableName = "";//表名 switch (opType) { case "其他出库": tableName = "Rdrecord09$Rdrecords09"; break; case "销售出库": tableName = "Rdrecord32$Rdrecords32"; break; default: break; } Log.Info("确认tableName", tableName); Log.Info("确认tableName", Constants.SysConfig.WMS_API); string opDatastr = WebApiManager.HttpWMS_Get("Api/Out/GetOutU8Data?opNo=" + opFromNo); Log.Info("获取WMS数据", opDatastr); OperateResult opData = JsonConvert.DeserializeObject(opDatastr); TN_WM_OUT_MSTEntity outMst = JsonConvert.DeserializeObject(opData.Data.ToString()); if (string.IsNullOrEmpty(tableName)) { return OperateResult.Error("更新失败,根据提供的业务类型,未定位到具体表!"); } Log.Info("解析WMS数据成功,开始更新中间表", ""); SqlExecuteResult result = BLLCreator.Create().UpdateRdrecordCheckFlag(opFromNo, tableName, outMst); if (!result.Success) { return OperateResult.Error(result.Exception.Message); } return OperateResult.Succeed(); } catch (Exception ex) { Log.Info("抛异常", ex.Message.ToString()); return OperateResult.Error(ex.Message); } } } }