public HttpResponseMessage CloseInventory(InventoryClose value) { CloseSku api_message = new CloseSku(); api_message.Result = 1; string reStr = ""; _logger.WriteLog_Info <CloseInventoryController>(JsonConvert.SerializeObject(value), null, "oms请求", null); try { if (ModelState.IsValid) { //_iRabbitMQHelper.Publish<InventoryPushController>(JsonConvert.SerializeObject(value).ToString()); string post = JsonConvert.SerializeObject(value); WebClient client = new WebClient(); client.Headers.Add("Content-Type", "application/json"); byte[] reByte = client.UploadData(_ISetting.ecmall.Base_Url + "/appserver/index.php?m=Api&c=Goods&a=closeGoods", Encoding.UTF8.GetBytes(post)); reStr = Encoding.UTF8.GetString(reByte); _logger.WriteLog_Info <CloseInventoryController>(reStr, null, "ecmall返回", null); //api_message = JsonConvert.DeserializeObject<API_Message>(reStr); //_logger.WriteLog_Info<InventoryPushController>(JsonConvert.SerializeObject(value), null, null, null); } else { //var modelstate = BadRequest(ModelState); string returestr = ""; string re = ""; string pattern = @"(?is)(\[)(.d)?(\])"; Regex rgx = new Regex(pattern); foreach (var item in ModelState) { returestr += item.Key.ToString() + "--------" + item.Value.Errors[0].ErrorMessage.ToString() + "\r\n"; re += rgx.Match(item.Value.Errors[0].ErrorMessage.ToString()); } api_message.Msg = returestr; api_message.Result = 2; reStr = JsonConvert.SerializeObject(new List <CloseSku>() { api_message }); _logger.WriteLog_Waring <CloseInventoryController>(reStr, null, null, null); //_logger.WriteLog_Waring<InventoryPushController>(JsonConvert.SerializeObject(value), null, null, null); } } catch (Exception ex) { api_message.Msg = ex.Message; api_message.Result = 2; reStr = JsonConvert.SerializeObject(new List <CloseSku>() { api_message }); _logger.WriteLog_Error <CloseInventoryController>(JsonConvert.SerializeObject(value), "oms请求", null, ex); } return(new HttpResponseMessage { Content = new StringContent(reStr, Encoding.UTF8) }); }
public static void OnInventoryClose(InventoryCloseEventArgs args) { InventoryClose?.Invoke(args); }