public bool Create501Message(LogisticsHead logisticsHead) { bool isSuccess = true; BaseSubscribe baseSubscribe = null; XElement xele = null; XNamespace ns = null; try { Logs.Debug("Create501Message Start!" + logisticsHead.orderNo); baseSubscribe = GetBaseSubscribe(); ns = "http://www.chinaport.gov.cn/ceb"; xele = new XElement(ns + "CEB501Message"); xele.SetAttributeValue(XNamespace.Xmlns + "ceb", ns); xele = logisticsHead.ToXElememt(xele, ns); xele = baseSubscribe.ToXElememt(xele, ns); FileUtilities.CreateFolder(ConfigurationInfo.PathSend); xele.Save(ConfigurationInfo.PathSend + "\\" + logisticsHead.orderNo + "_501.xml"); Logs.Debug("Create501Message End! OrderNo_" + logisticsHead.orderNo); } catch (Exception ex) { Logs.Error("Create501Message Exception: " + ex.ToString()); isSuccess = false; } return(isSuccess); }
public bool CreateMessage501(string orderNoFake) { bool success = true; LogisticsHead logisticsHead = null; MessageSql mssql = null; MessageService msService = null; XElement xele = null; XNamespace ns = null; try { mssql = new MessageSql(); logisticsHead = new LogisticsHead(); mssql.QueryData501(orderNoFake, ref logisticsHead); if (logisticsHead.guid != new Guid()) { string url = GetRequestHostByCode(logisticsHead.logisticsCode); RestRequest restRequest = new RestRequest(string.Format("{0}:{1}/Logistics/Create501", url, ConfigurationInfo.RestPort), Utilities.JsonSerialize(logisticsHead)); success = Convert.ToBoolean(restRequest.Execute()); } else { success = false; } if (success) { mssql.UpdateSchedule501(orderNoFake, logisticsHead.billNo, logisticsHead.weight.ToString(), logisticsHead.freight.ToString()); ns = "http://www.chinaport.gov.cn/ceb"; xele = new XElement(ns + "CEB501Message"); xele.SetAttributeValue(XNamespace.Xmlns + "ceb", ns); xele = logisticsHead.ToXElememt(xele, ns); string destPath = FileUtilities.GetNewFolderName(true, ConfigurationInfo.PathBackUp, "501") + "\\" + FileUtilities.GetNewFileName(orderNoFake, "Create") + ".xml"; xele.Save(destPath); msService = new MessageService(); msService.DealMessage501(false, true, logisticsHead.guid.ToString(), orderNoFake, logisticsHead.logisticsNo, destPath); } else { Logs.Info("Create501Message Response Error! Date:" + Utilities.JsonSerialize(logisticsHead)); } } catch (Exception ex) { success = false; Logs.Error("Create501Message Exception: " + ex.ToString()); } finally { if (!success) { MessageCache.DeleteMessageCache("503R" + logisticsHead.logisticsNo); MessageCache.DeleteMessageCache("601" + logisticsHead.logisticsNo); } } return(success); }