/// <summary> /// UpdateShipment /// Function to update the shipment details /// </summary> /// <param name="companyID">Company ID</param> /// <param name="password">Password</param> /// <param name="shipmentReq">ShipmentRequest object</param> /// <returns>ShipmentResponse object</returns> /// <param name="VersionNo">VersionNo</param> public String UpdateWagonShipment(string companyID, string password, TWBOLDetails shipmentReq, String VersionNo = "") { //ShipmentResponse shipmentResponse = null; string WagonShipment; ISession session = null; try { ValidateCustomerLogin(companyID, password, VersionNo); session = GetSession(); session.BeginTransaction(); WagonShipment = DALMethods.UpdateWagonShipment(session, shipmentReq, VersionNo); // DALMethods.ClearShipmentErrors(shipmentReq.SysTrxNo, shipmentReq.SysTrxLine, session, VersionNo); session.CommitTransaction(); CloseSession(session); } catch (ApplicationException ex) { if (session != null) { session.RollbackTransaction(); CloseSession(session); session = GetSession(); } // DALMethods.UpdateShipmentErrors(shipmentReq, true, ex.StackTrace, ex.Message, session, VersionNo); throw ex; } catch (Exception ex) { if (session != null) { session.RollbackTransaction(); CloseSession(session); } session = GetSession(); //DALMethods.UpdateShipmentErrors(shipmentReq, true, ex.StackTrace, ex.Message, session, VersionNo); Logging.LogError(ex); throw ex; } return(WagonShipment); }
public void InsertTWBOLS(string companyID, string password, TWBOLDetails twbolDetailsReq, TWBOLItemDetails twbolitemDetailsReq, String VersionNo = "") { }
/// <summary> /// UpdateShipment /// Function to update the shipment details /// </summary> /// <param name="session">Session object</param> /// <param name="shipmentReq">ShipmentRequest object</param> /// <returns>ShipmentResponse object</returns> public static string UpdateWagonShipment(ISession session, TWBOLDetails shipmentReq, String VersionNo = "") { string ComponentsXML = string.Empty; using (StringWriter sw = new StringWriter()) { XmlSerializer xs = new XmlSerializer(typeof(List <TWBOLDetails>)); xs.Serialize(sw, shipmentReq.BOLItemDetails); ComponentsXML = sw.ToString().Replace("utf-16", "utf-8"); } return(ComponentsXML); //List<string> strBOLQtyVarianceReason = shipmentReq.BOLItemDetails.Select(item => item.Notes).Distinct().ToList(); //string BOLQtyVarianceReason = string.Empty; //string netQtyVarianceReason = string.Empty; //foreach (string reason in strBOLQtyVarianceReason) //{ // if (!string.IsNullOrEmpty(reason)) // { // if (string.IsNullOrEmpty(BOLQtyVarianceReason)) // { // BOLQtyVarianceReason = reason; // } // else // { // BOLQtyVarianceReason = BOLQtyVarianceReason + ", "; // BOLQtyVarianceReason = BOLQtyVarianceReason + reason; // } // } //} ////shipmentReq.Components.Select(item=>item.NetQtyVarianceReason).DistinctBy(item => item.NetQtyVarianceReason).ToList(); //ShipmentResponse shipmentResponse = new ShipmentResponse(); //SqlCommand cmd = (SqlCommand)session.CreateCommand(); //cmd.CommandText = "Cloud_UpdateShipmentDetails"; //cmd.CommandType = CommandType.StoredProcedure; //cmd.Parameters.AddWithValue("@SysTrxNo", shipmentReq.SysTrxNo); //cmd.Parameters.AddWithValue("@SysLineNo", shipmentReq.SysTrxLine); //cmd.Parameters.AddWithValue("@ComponentsXML", ComponentsXML); //cmd.Parameters.AddWithValue("@UserID", shipmentReq.UserID); //cmd.Parameters.AddWithValue("@OrderLoadReviewEnabled", shipmentReq.OrderLoadReviewEnabled); //cmd.Parameters.AddWithValue("@BOLQtyVarianceReason", BOLQtyVarianceReason); ////2013.09.23 FSWW, Ramesh M Added For CR#60090 to push BolImage data to Ascend //cmd.Parameters.AddWithValue("@BOLImage", shipmentReq.Components.Select(item => item.BOLImage).First()); ////2014.01.28 Ramesh M Added For Support Multi BOL ites added ExtSysTrxLine For CR#62038 ////cmd.Parameters.AddWithValue("@SupplierCode", shipmentReq.SupplierCode); ////cmd.Parameters.AddWithValue("@SupplyPtCode", shipmentReq.SupplyPointCode); ////cmd.Parameters.AddWithValue("@ExtSysLineNo", shipmentReq.ExtSysTrxLine); //IDataReader dreader = null; //try //{ // dreader = cmd.ExecuteReader(); //} //catch (Exception ex) //{ // Logging.LogError(ex); //} //if (dreader != null) //{ // while (dreader.Read()) // { // shipmentResponse.ShipDocSysTrxNo = Convert.ToDecimal(dreader["ShipDocSysTrxNo"]); // shipmentResponse.ShipDocSysTrxLine = Convert.ToInt32(dreader["ShipDocSysTrxLine"]); // shipmentResponse.OrderLoadReviewEnabled = Convert.ToString(dreader["OrderLoadReviewEnabled"]).Equals("Y", StringComparison.CurrentCultureIgnoreCase); // } // dreader.Close(); //} //if (!shipmentResponse.OrderLoadReviewEnabled && (shipmentResponse.ShipDocSysTrxNo <= 0 || shipmentResponse.ShipDocSysTrxLine <= 0)) //{ // shipmentResponse = null; // throw new ApplicationException(String.Format("ShipDocSysTrxNo returned 0. Unable to update shipment details for SysTrxNo = {0}, SysLineNo={1} and UserID={2}", shipmentReq.SysTrxNo, shipmentReq.SysTrxLine, shipmentReq.UserID)); //} //return shipmentResponse; }