public static Dictionary <string, object> reMapDCData(DeliveryChalan DC) { Dictionary <string, object> keyValues = new Dictionary <string, object>(); if (DC.Id != 0) { keyValues.Add("@Id", DC.Id); } keyValues.Add("@DOId", DC.DeliveryOrder.Index); keyValues.Add("@LeadId", DC.Lead.Id); keyValues.Add("@TransporterId", DC.Transporter.Index); keyValues.Add("@Status", DC.Status); if (!String.IsNullOrEmpty(DC.DCNumber)) { keyValues.Add("@DCNumber", DC.DCNumber); } keyValues.Add("@Store", DC.Store == null ? Guid.Empty : DC.Store.Id); keyValues.Add("@DCDate", DC.DCDate); keyValues.Add("@Quantity", DC.Quantity); keyValues.Add("@TruckNo", DC.TruckNo); keyValues.Add("@BiltyNo", DC.BiltyNo); keyValues.Add("@SlipNo", DC.SlipNo); keyValues.Add("@Weight", DC.Weight); keyValues.Add("@NetWeight", DC.NetWeight); keyValues.Add("@DriverName", DC.DriverName); keyValues.Add("@DriverPhone", DC.DriverPhone); if (DC.CreatedOn != null && DC.CreatedOn != DateTime.MinValue) { keyValues.Add("@CreatedOn", DC.CreatedOn); } if (DC.CreatedBy != null) { keyValues.Add("@CreatedBy", DC.CreatedBy.Id); } keyValues.Add("@ModifiedBy", DC.ModifiedBy.Id); keyValues.Add("@ModifiedOn", DC.ModifiedOn); keyValues.Add("@Remarks", DC.Remarks); return(keyValues); }
public static List <SaleOrder> MapSOData(DataTable dTso, DataTable dTdo, DataTable dTdc) { List <SaleOrder> ListSO = new List <SaleOrder>(); foreach (DataRow dr in dTso.Rows) { SaleOrder SO = new SaleOrder(); SO.Id = (int)dr["id"]; SO.Status = (SOStatus)Enum.Parse(typeof(SOStatus), dr["status"].ToString()); SO.OrderType = (SOType)Enum.Parse(typeof(SOType), dr["ordertype"].ToString()); SO.CreatedOn = dr["CreatedOn"] != DBNull.Value ? DateTime.Parse(dr["CreatedOn"].ToString()) : DateTime.MinValue; SO.CreatedBy = dr["CreatedBy"] != null?UserManager.GetUserRef(dr["CreatedBy"].ToString()) : UserManager.GetDefaultRef(); SO.ModifiedOn = dr["ModifiedOn"] != DBNull.Value ? DateTime.Parse(dr["ModifiedOn"].ToString()) : DateTime.MinValue; SO.ModifiedBy = dr["ModifiedBy"] != null?UserManager.GetUserRef(dr["ModifiedBy"].ToString()) : UserManager.GetDefaultRef(); SO.CompletedOn = dr["CompletedOn"] != DBNull.Value ? DateTime.Parse(dr["CompletedOn"].ToString()) : DateTime.MinValue; SO.Lead = dr["LeadId"] != null?UserManager.GetUserRef(dr["LeadId"].ToString()) : UserManager.GetDefaultRef(); SO.ApprovedDate = dr["ApprovedDate"] != DBNull.Value ? DateTime.Parse(dr["ApprovedDate"].ToString()) : DateTime.MinValue; SO.ApprovedBy = dr["ApprovedBy"] != null?UserManager.GetUserRef(dr["LeadId"].ToString()) : UserManager.GetDefaultRef(); SO.SONumber = dr["SONumber"].ToString(); SO.SODate = DateTime.Parse(dr["SODate"].ToString()); SO.SOExpiry = DateTime.Parse(dr["SOExpiryDate"].ToString()); SO.Customer = dr["CustomerId"] != null?CustomerManager.GetCustomerRef(dr["CustomerId"].ToString()) : CustomerManager.GetDefaultRef(); SO.PartyPONumber = dr["PartyPONumber"].ToString(); SO.PODate = DateTime.Parse(dr["PartyPODate"].ToString()); SO.POExpiry = DateTime.Parse(dr["PartyPOExpiryDate"].ToString()); SO.CreditPeriod = int.Parse(dr["CreditPeriod"].ToString()); SO.Origin = dr["OriginId"] != null?CommonDataManager.GetOrigin(dr["OriginId"].ToString()) : CommonDataManager.GetDefaultRef(); SO.Size = dr["SizeId"] != null?CommonDataManager.GetSize(dr["SizeId"].ToString()) : CommonDataManager.GetDefaultRef(); SO.Quantity = decimal.Parse(dr["Quantity"].ToString()); SO.LC = SO.OrderType == SOType.LC; SO.Tax = !(SO.AgreedTaxRate == null || SO.AgreedTaxRate.Index == 0); SO.AgreedRate = decimal.Parse(dr["AgreedRate"].ToString()); SO.AgreedTaxRate = dr["TaxRateId"] != null?CommonDataManager.GetTaxRate(dr["TaxRateId"].ToString()) : CommonDataManager.GetDefaultRef(); SO.Trader = dr["TraderId"] != null?CommonDataManager.GetTrader(dr["TraderId"].ToString()) : CommonDataManager.GetDefaultRef(); SO.TraderCommission = dr["TraderId"] != null?decimal.Parse(dr["TraderCommision"].ToString()) : 0; SO.SaleStation = /*dr["SaleStationId"] != null ? CommonDataManager.GetOrigin(dr["SaleStationId"].ToString()) : */ CommonDataManager.GetDefaultRef(); //TODO: have to add salestatdion id SO.Remarks = dr["Remarks"] != null ? dr["Remarks"].ToString() : ""; SO.PartyPOImage = dr["POScannedImage"] != null ? dr["POScannedImage"].ToString() : ""; //POPULATING DOS SO.DOList = new List <DeliveryOrder>(); #region " Populating DOs " foreach (DataRow drDo in dTdo.Rows) { int soId = drDo["SOId"] != null?int.Parse(drDo["SOId"].ToString()) : 0; if (soId != 0 && soId == SO.Id) { DeliveryOrder DO = new DeliveryOrder(); DO.Id = (int)drDo["Id"]; //DO.StoreId = StoreManager.GetStoreRef(drDo["StoreId"].ToString()); //.ReadAllStore().Where(x => x.StoreManager.Id == (Guid)drDo["StoreId"]).FirstOrDefault()); DO.Location = drDo["SaleStationId"] != null?CommonDataManager.GetSaleStation(drDo["SaleStationId"].ToString()) : CommonDataManager.GetDefaultReference(); DO.Lead = drDo["LeadId"] != null?UserManager.GetUserRef(drDo["LeadId"].ToString()) : UserManager.GetDefaultRef(); DO.Status = (DOStatus)Enum.Parse(typeof(DOStatus), drDo["status"].ToString()); DO.CompletedOn = drDo["CompletedOn"] != DBNull.Value ? DateTime.Parse(drDo["CompletedOn"].ToString()) : DateTime.MinValue; DO.ApprovedDate = drDo["ApprovedDate"] != DBNull.Value ? DateTime.Parse(drDo["ApprovedDate"].ToString()) : DateTime.MinValue; DO.ApprovedBy = drDo["ApprovedBy"] != null?UserManager.GetUserRef(drDo["LeadId"].ToString()) : UserManager.GetDefaultRef(); //TODO: Get sale order reference here DO.SaleOrder = new Item() { Index = SO.Id, Value = SO.SONumber }; DO.DONumber = drDo["DONumber"].ToString(); DO.DODate = DateTime.Parse(drDo["DODate"].ToString()); DO.Quantity = Decimal.Parse(drDo["Quantity"].ToString()); DO.LiftingStartDate = DateTime.Parse(drDo["LiftingStartDate"].ToString()); DO.LiftingEndDate = DateTime.Parse(drDo["LiftingEndDate"].ToString()); DO.DeliveryDestination = CustomerManager.GetCustomerDestination(SO.Customer.Id, drDo["DeliveryDestination"].ToString()); //TODO: trader and transporter are different DO.Transportor = drDo["TransporterId"] != null?CommonDataManager.GetTrader(drDo["TransporterId"].ToString()) : CommonDataManager.GetDefaultRef(); DO.DumperRate = Decimal.Parse(drDo["DumperRate"].ToString()); DO.FreightPaymentTerms = Decimal.Parse(drDo["FreightPaymentTerms"].ToString()); DO.FreightPerTon = Decimal.Parse(drDo["FreightPerTon"].ToString()); DO.FreightTaxPerTon = Decimal.Parse(drDo["FreightTaxPerTon"].ToString()); DO.FreightComissionPSL = Decimal.Parse(drDo["FreightComissionPSL"].ToString()); DO.FreightComissionAgent = Decimal.Parse(drDo["FreightComissionAgent"].ToString()); DO.Remarks = drDo["Remarks"] != null ? drDo["Remarks"].ToString() : ""; DO.CreatedOn = drDo["CreatedOn"] != DBNull.Value ? DateTime.Parse(drDo["CreatedOn"].ToString()) : DateTime.MinValue; DO.CreatedBy = drDo["CreatedBy"] != null?UserManager.GetUserRef(drDo["CreatedBy"].ToString()) : UserManager.GetDefaultRef(); DO.ModifiedOn = drDo["ModifiedOn"] != DBNull.Value ? DateTime.Parse(drDo["ModifiedOn"].ToString()) : DateTime.MinValue; DO.ModifiedBy = drDo["ModifiedBy"] != null?UserManager.GetUserRef(drDo["ModifiedBy"].ToString()) : UserManager.GetDefaultRef(); DO.DCList = new List <DeliveryChalan>(); #region " Populating DCs " foreach (DataRow drDC in dTdc.Rows) { int doId = drDC["DOId"] != null?int.Parse(drDC["DOId"].ToString()) : 0; if (doId != 0 && doId == DO.Id) { DeliveryChalan DC = new DeliveryChalan(); DC.Id = (int)drDC["Id"]; //TODO DC.DeliveryOrder = new Item() { Index = DO.Id, Value = DO.DONumber }; //TODO: trader and transporter are different DC.Lead = drDC["LeadId"] != null?UserManager.GetUserRef(drDC["LeadId"].ToString()) : UserManager.GetDefaultRef(); DC.Transporter = drDC["TransporterId"] != null?CommonDataManager.GetTrader(drDC["TransporterId"].ToString()) : CommonDataManager.GetDefaultRef(); DC.Status = (DCStatus)Enum.Parse(typeof(DCStatus), drDC["status"].ToString()); DC.DCNumber = drDC["DCNumber"].ToString(); DC.DCDate = DateTime.Parse(drDC["DCDate"].ToString()); DC.Quantity = Decimal.Parse(drDC["Quantity"].ToString()); DC.TruckNo = drDC["TruckNo"].ToString(); DC.BiltyNo = drDC["BiltyNo"].ToString(); DC.SlipNo = drDC["SlipNo"].ToString(); DC.Weight = Decimal.Parse(drDC["Weight"].ToString()); DC.NetWeight = Decimal.Parse(drDC["NetWeight"].ToString()); DC.DriverName = drDC["DriverName"].ToString(); DC.DriverPhone = drDC["DriverPhone"] != null ? drDC["DriverPhone"].ToString() : ""; DC.Remarks = drDC["Remarks"] != null ? drDC["Remarks"].ToString() : ""; DC.CreatedOn = drDC["CreatedOn"] != DBNull.Value ? DateTime.Parse(drDC["CreatedOn"].ToString()) : DateTime.MinValue; DC.CreatedBy = drDC["CreatedBy"] != null?UserManager.GetUserRef(drDC["CreatedBy"].ToString()) : UserManager.GetDefaultRef(); DC.ModifiedOn = drDC["ModifiedOn"] != DBNull.Value ? DateTime.Parse(drDC["ModifiedOn"].ToString()) : DateTime.MinValue; DC.ModifiedBy = drDC["ModifiedBy"] != null?UserManager.GetUserRef(drDC["ModifiedBy"].ToString()) : UserManager.GetDefaultRef(); DO.DCList.Add(DC); DC = null; } } #endregion SO.DOList.Add(DO); DO = null; } } #endregion ListSO.Add(SO); SO = null; } return(ListSO); }
public static Dictionary <string, object> reMapStockMovementData_DC(SaleOrder SO, DeliveryOrder DO, DeliveryChalan DC) { Dictionary <string, object> keyValues = new Dictionary <string, object>(); //TODO: // keyValues.Add("@Store", DO.Store.Id); keyValues.Add("@CustomerId", SO.Customer.Id); keyValues.Add("@Type", StMovType.DCSuccess); keyValues.Add("@Quantity", DC.Quantity); keyValues.Add("@InOut", false); keyValues.Add("@Date", DC.CreatedOn); keyValues.Add("@Reference", DC.DCNumber); keyValues.Add("@Vessel", SO.Vessel.Index); keyValues.Add("@Origin", SO.Origin.Index); keyValues.Add("@Size", SO.Size.Index); keyValues.Add("@Remarks", DC.Remarks); return(keyValues); }