/// <summary> /// convert foundry to view model /// </summary> /// <param name="foundry"></param> /// <returns></returns> public FoundryViewModel ConvertToView(PM00200_Foundry foundry) { FoundryViewModel model = new FoundryViewModel(); var _paymentTermRepository = new PaymentTermRepository(); var _shipmentTermRepository = new ShipmentTermRepository(); var _stateRepository = new StateRepository(); var _countryRepository = new CountryRepository(); var state = _stateRepository.GetState(foundry.STATE); var country = _countryRepository.GetCountry(foundry.COUNTRY); var paymentTerm = _paymentTermRepository.GetPaymentTerm(foundry.PYMTRMID); model.FoundryId = foundry.VENDORID; model.VendorId = foundry.VENDORID; model.ShortName = (!string.IsNullOrEmpty(foundry.VENDSHNM.Replace(" ", string.Empty))) ? foundry.VENDSHNM : "N/A"; model.ContactName = (!string.IsNullOrEmpty(foundry.VNDCNTCT.Replace(" ", string.Empty))) ? foundry.VNDCNTCT : "N/A"; model.ContactPhone = FormattingManager.FormatPhone(foundry.PHNUMBR1); model.FaxNumber = FormattingManager.FormatPhone(foundry.FAXNUMBR); model.Address1 = (!string.IsNullOrEmpty(foundry.ADDRESS1.Replace(" ", string.Empty))) ? foundry.ADDRESS1 : "N/A"; model.Address2 = (!string.IsNullOrEmpty(foundry.ADDRESS2.Replace(" ", string.Empty))) ? foundry.ADDRESS2 : "N/A"; model.Address3 = (!string.IsNullOrEmpty(foundry.ADDRESS3.Replace(" ", string.Empty))) ? foundry.ADDRESS3 : "N/A"; model.City = (!string.IsNullOrEmpty(foundry.CITY.Replace(" ", string.Empty))) ? foundry.CITY : "N/A"; model.StateName = (state != null && !string.IsNullOrEmpty(state.Name)) ? state.Name : "N/A"; model.PostalCode = (!string.IsNullOrEmpty(foundry.ZIPCODE.Replace(" ", string.Empty))) ? foundry.ZIPCODE : "N/A"; model.CountryName = (country != null && !string.IsNullOrEmpty(country.Name)) ? country.Name : "N/A"; model.PaymentTermDescription = (paymentTerm != null && !string.IsNullOrEmpty(paymentTerm.Description)) ? paymentTerm.Description : "N/A"; model.IsActive = foundry.VENDSTTS != 1 ? false : true; if (_paymentTermRepository != null) { _paymentTermRepository.Dispose(); _paymentTermRepository = null; } if (_shipmentTermRepository != null) { _shipmentTermRepository.Dispose(); _shipmentTermRepository = null; } if (_stateRepository != null) { _stateRepository.Dispose(); _stateRepository = null; } if (_countryRepository != null) { _countryRepository.Dispose(); _countryRepository = null; } return(model); }
/// <summary> /// convert salesperson to view model /// </summary> /// <param name="salesperson"></param> /// <returns></returns> public SalespersonViewModel ConvertToView(RM00301_Salesperson salesperson) { SalespersonViewModel model = new SalespersonViewModel(); model.SalespersonId = salesperson.SLPRSNID; model.SalespersonName = (!string.IsNullOrEmpty(salesperson.SLPRSNFN.Replace(" ", string.Empty)) && !string.IsNullOrEmpty(salesperson.SPRSNSLN.Replace(" ", string.Empty))) ? salesperson.SLPRSNFN + " " + salesperson.SPRSNSLN : "N/A"; model.Phone1 = FormattingManager.FormatPhone(salesperson.PHONE1); model.FaxNumber = FormattingManager.FormatPhone(salesperson.FAX); model.SalesTerritoryDescription = salesperson.SALSTERR; model.IsActive = salesperson.INACTIVE != 1 ? true : false; return(model); }
/// <summary> /// convert customer address to customer view model /// </summary> /// <param name="customerAddress"></param> /// <returns></returns> public CustomerViewModel ConvertToView(RM00102_CustomerAddress customerAddress) { CustomerViewModel model = new CustomerViewModel(); var _customerDynamicsRepository = new CustomerDynamicsRepository(); var _stateRepository = new StateRepository(); var _countryRepository = new CountryRepository(); var _siteDynamicsRepository = new SiteDynamicsRepository(); var dynamicsCustomer = _customerDynamicsRepository.GetCustomer(customerAddress.CUSTNMBR); var state = _stateRepository.GetState(customerAddress.STATE); var country = _countryRepository.GetCountry(customerAddress.COUNTRY); var dynamicsSite = _siteDynamicsRepository.GetSite(customerAddress.LOCNCODE); var type = (dynamicsCustomer != null && customerAddress.ADRSCODE.Replace(" ", string.Empty).Equals(dynamicsCustomer.PRBTADCD.Replace(" ", string.Empty))) ? "Bill To Address" : (dynamicsCustomer != null && customerAddress.ADRSCODE.Replace(" ", string.Empty).Equals(dynamicsCustomer.PRSTADCD.Replace(" ", string.Empty))) ? "Ship To Address" : (dynamicsCustomer != null && customerAddress.ADRSCODE.Replace(" ", string.Empty).Equals(dynamicsCustomer.STADDRCD.Replace(" ", string.Empty))) ? "Standard Address" : "N/A"; model.CustomerAddressId = customerAddress.ADRSCODE; model.CustomerNumber = customerAddress.CUSTNMBR; model.ShortName = (dynamicsCustomer != null && !string.IsNullOrEmpty(dynamicsCustomer.SHRTNAME)) ? dynamicsCustomer.SHRTNAME : "N/A"; model.AddressCode = customerAddress.ADRSCODE; model.AddressType = type; model.ContactName = (!string.IsNullOrEmpty(customerAddress.CNTCPRSN.Replace(" ", string.Empty))) ? customerAddress.CNTCPRSN : "N/A"; model.ContactPhone = FormattingManager.FormatPhone(customerAddress.PHONE1); model.FaxNumber = FormattingManager.FormatPhone(customerAddress.FAX); model.Address1 = (!string.IsNullOrEmpty(customerAddress.ADDRESS1.Replace(" ", string.Empty))) ? customerAddress.ADDRESS1 : "N/A"; model.Address2 = (!string.IsNullOrEmpty(customerAddress.ADDRESS2.Replace(" ", string.Empty))) ? customerAddress.ADDRESS2 : "N/A"; model.Address3 = (!string.IsNullOrEmpty(customerAddress.ADDRESS3.Replace(" ", string.Empty))) ? customerAddress.ADDRESS3 : "N/A"; model.City = (!string.IsNullOrEmpty(customerAddress.CITY.Replace(" ", string.Empty))) ? customerAddress.CITY : "N/A"; model.StateName = (state != null && !string.IsNullOrEmpty(state.Name)) ? state.Name : "N/A"; model.PostalCode = (!string.IsNullOrEmpty(customerAddress.ZIP.Replace(" ", string.Empty))) ? customerAddress.ZIP : "N/A"; model.CountryName = (country != null && !string.IsNullOrEmpty(country.Name)) ? country.Name : "N/A"; model.ShippingMethod = (!string.IsNullOrEmpty(customerAddress.SHIPMTHD.Replace(" ", string.Empty))) ? customerAddress.SHIPMTHD : "N/A"; model.SiteDescription = (dynamicsSite != null && !string.IsNullOrEmpty(dynamicsSite.LOCNDSCR.Replace(" ", string.Empty))) ? dynamicsSite.LOCNDSCR : "N/A"; if (_customerDynamicsRepository != null) { _customerDynamicsRepository.Dispose(); _customerDynamicsRepository = null; } if (_stateRepository != null) { _stateRepository.Dispose(); _stateRepository = null; } if (_countryRepository != null) { _countryRepository.Dispose(); _countryRepository = null; } if (_siteDynamicsRepository != null) { _siteDynamicsRepository.Dispose(); _siteDynamicsRepository = null; } return(model); }
/// <summary> /// convert project to view model /// </summary> /// <param name="project"></param> /// <returns></returns> public ProjectViewModel ConvertToView(Project project) { ProjectViewModel model = new ProjectViewModel(); var _customerDynamicsRepository = new CustomerDynamicsRepository(); var _foundryDynamicsRepository = new FoundryDynamicsRepository(); var _projectRepository = new ProjectRepository(); var _partRepository = new PartRepository(); var dynamicsCustomer = _customerDynamicsRepository.GetCustomer(project.CustomerId); var dynamicsFoundry = _foundryDynamicsRepository.GetFoundry(project.FoundryId); model.ProjectId = project.ProjectId; model.ProjectName = (!string.IsNullOrEmpty(project.Name)) ? project.Name : "N/A"; model.CustomerId = project.CustomerId; model.CustomerName = (dynamicsCustomer != null && !string.IsNullOrEmpty(dynamicsCustomer.SHRTNAME)) ? dynamicsCustomer.SHRTNAME : "N/A"; model.CustomerContact = (dynamicsCustomer != null && !string.IsNullOrEmpty(dynamicsCustomer.CNTCPRSN)) ? dynamicsCustomer.CNTCPRSN : "N/A"; model.CustomerContactPhone = FormattingManager.FormatPhone(dynamicsCustomer.PHONE1); model.FoundryId = project.FoundryId; model.FoundryName = (dynamicsFoundry != null) ? dynamicsFoundry.VENDSHNM : "N/A"; model.FoundryContact = (dynamicsFoundry != null) ? dynamicsFoundry.VNDCNTCT : "N/A"; model.FoundryContactPhone = FormattingManager.FormatPhone((dynamicsFoundry != null) ? dynamicsFoundry.PHNUMBR1 : string.Empty); model.CreatedDate = (project.CreatedDate != null) ? project.CreatedDate : DateTime.MinValue; model.CreatedDateStr = (project.CreatedDate != null) ? project.CreatedDate.Value.ToShortDateString() : "N/A"; model.CreatedBy = project.CreatedBy; model.ModifiedDate = (project.ModifiedDate != null) ? project.ModifiedDate : DateTime.MinValue; model.ModifiedDateStr = (project.ModifiedDate != null) ? project.ModifiedDate.Value.ToShortDateString() : "N/A"; model.ModifiedBy = project.ModifiedBy; model.IsOpen = project.IsOpen; model.IsHold = project.IsHold; model.HoldExpirationDate = (project.HoldExpirationDate != null) ? project.HoldExpirationDate : DateTime.MinValue;; model.HoldExpirationDateStr = (project.HoldExpirationDate != null) ? project.HoldExpirationDate.Value.ToShortDateString() : "N/A"; model.HoldNotes = (!string.IsNullOrEmpty(project.HoldNotes)) ? project.HoldNotes : "N/A"; model.IsCanceled = project.IsCanceled; model.CanceledDate = (project.CanceledDate != null) ? project.CanceledDate : DateTime.MinValue; model.CanceledDateStr = (project.CanceledDate != null) ? project.CanceledDate.Value.ToShortDateString() : "N/A"; model.CancelNotes = (!string.IsNullOrEmpty(project.CancelNotes)) ? project.CancelNotes : "N/A"; model.IsComplete = project.IsComplete; model.CompletedDate = (project.CompletedDate != null) ? project.CompletedDate : DateTime.MinValue; model.CompletedDateStr = (project.CompletedDate != null) ? project.CompletedDate.Value.ToShortDateString() : "N/A"; model.Status = project.IsOpen ? "Open" : project.IsCanceled ? "Canceled" : project.IsComplete ? "Completed" : project.IsHold ? "On Hold" : "N/A"; model.Duration = (project.CompletedDate != null) ? (project.CompletedDate - project.CreatedDate).Value.Days : 0; var notes = new List <ProjectNoteViewModel>(); var tempNotes = _projectRepository.GetProjectNotes(project.ProjectId); if (tempNotes != null && tempNotes.Count > 0) { foreach (var tempNote in tempNotes) { ProjectNoteViewModel convertedModel = new ProjectNoteConverter().ConvertToView(tempNote); notes.Add(convertedModel); } } model.ProjectNotes = notes.OrderBy(y => y.CreatedDate).ToList(); var parts = new List <ProjectPartViewModel>(); var tempParts = _partRepository.GetParts().Where(x => x.Projects.Any(y => y.ProjectId == project.ProjectId)).ToList(); if (project.Parts != null && project.Parts.Count > 0) { foreach (var part in project.Parts) { ProjectPartViewModel convertedModel = new ProjectPartConverter().ConvertToListView(part); if (parts.FirstOrDefault(x => x.PartNumber == convertedModel.PartNumber) == null) { parts.Add(convertedModel); } } } if (project.ProjectParts != null && project.ProjectParts.Count > 0) { foreach (var tempPart in project.ProjectParts.Where(x => x.PartId == null)) { ProjectPartViewModel convertedModel = new ProjectPartConverter().ConvertToListView(tempPart); if (parts.FirstOrDefault(x => x.PartNumber == convertedModel.PartNumber) == null) { parts.Add(convertedModel); } } } model.Parts = parts.OrderBy(x => x.PartNumber).ToList(); if (project.Rfqs != null && project.Rfqs.Count > 0) { model.RFQs = new List <RfqViewModel>(); foreach (var rfq in project.Rfqs) { var rfqModel = new RfqConverter().ConvertToListView(rfq); model.RFQs.Add(rfqModel); } } if (project.PriceSheets != null && project.PriceSheets.Count > 0) { model.PriceSheets = new List <PriceSheetListModel>(); decimal profitMargin = 0; foreach (var priceSheet in project.PriceSheets) { var priceSheetModel = new PriceSheetConverter().ConvertToListView(priceSheet); model.PriceSheets.Add(priceSheetModel); profitMargin += priceSheetModel.ProjectMargin; } model.ProjectMargin = (profitMargin / project.PriceSheets.Count).ToString("#.##") + '%'; } if (project.Quotes != null && project.Quotes.Count > 0) { model.Quotes = new List <QuoteViewModel>(); foreach (var quote in project.Quotes) { var quoteModel = new QuoteConverter().ConvertToListView(quote); model.Quotes.Add(quoteModel); } } if (project.CustomerOrders != null && project.CustomerOrders.Count > 0) { model.CustomerOrders = new List <CustomerOrderViewModel>(); foreach (var customerOrder in project.CustomerOrders) { var customerOrderModel = new CustomerOrderConverter().ConvertToListView(customerOrder); model.CustomerOrders.Add(customerOrderModel); } } if (project.FoundryOrders != null && project.FoundryOrders.Count > 0) { model.FoundryOrders = new List <FoundryOrderViewModel>(); foreach (var foundryOrder in project.FoundryOrders) { var foundryOrderModel = new FoundryOrderConverter().ConvertToListView(foundryOrder); model.FoundryOrders.Add(foundryOrderModel); } } if (project.Shipments != null && project.Shipments.Count > 0) { model.Shipments = new List <ShipmentViewModel>(); foreach (var shipment in project.Shipments) { var shipmentModel = new ShipmentConverter().ConvertToView(shipment); model.Shipments.Add(shipmentModel); } } if (_customerDynamicsRepository != null) { _customerDynamicsRepository.Dispose(); _customerDynamicsRepository = null; } if (_foundryDynamicsRepository != null) { _foundryDynamicsRepository.Dispose(); _foundryDynamicsRepository = null; } if (_projectRepository != null) { _projectRepository.Dispose(); _projectRepository = null; } if (_partRepository != null) { _partRepository.Dispose(); _partRepository = null; } return(model); }
/// <summary> /// convert customer to view model /// </summary> /// <param name="customer"></param> /// <returns></returns> public CustomerViewModel ConvertToView(RM00101_Customer customer) { CustomerViewModel model = new CustomerViewModel(); var _salespersonDynamicsRepository = new SalespersonDynamicsRepository(); var _paymentTermRepository = new PaymentTermRepository(); var _shipmentTermRepository = new ShipmentTermRepository(); var _stateRepository = new StateRepository(); var _countryRepository = new CountryRepository(); var dyanmicsSalesperson = _salespersonDynamicsRepository.GetSalesperson(customer.SLPRSNID); var state = _stateRepository.GetState(customer.STATE); var country = _countryRepository.GetCountry(customer.COUNTRY); var paymentTerm = _paymentTermRepository.GetPaymentTerm(customer.PYMTRMID); model.CustomerId = customer.CUSTNMBR; model.CustomerNumber = customer.CUSTNMBR; model.CustomerName = (!string.IsNullOrEmpty(customer.CUSTNAME.Replace(" ", string.Empty))) ? customer.CUSTNAME : "N/A"; model.ShortName = (!string.IsNullOrEmpty(customer.SHRTNAME.Replace(" ", string.Empty))) ? customer.SHRTNAME : "N/A"; model.SalespersonName = (dyanmicsSalesperson != null) ? dyanmicsSalesperson.SLPRSNFN + " " + dyanmicsSalesperson.SPRSNSLN : "N/A"; model.SalesTerritoryDescription = (!string.IsNullOrEmpty(customer.SALSTERR.Replace(" ", string.Empty))) ? customer.SALSTERR : "N/A"; model.ContactName = (!string.IsNullOrEmpty(customer.CNTCPRSN)) ? customer.CNTCPRSN : "N/A"; model.ContactPhone = FormattingManager.FormatPhone(customer.PHONE1); model.FaxNumber = FormattingManager.FormatPhone(customer.FAX); model.Address1 = (!string.IsNullOrEmpty(customer.ADDRESS1)) ? customer.ADDRESS1 : "N/A"; model.City = (!string.IsNullOrEmpty(customer.CITY)) ? customer.CITY : "N/A"; model.StateName = (state != null) ? state.Name : "N/A"; model.CountryName = (country != null) ? country.Name : "N/A"; model.PostalCode = (!string.IsNullOrEmpty(customer.ZIP)) ? customer.ZIP : "N/A"; model.PaymentTermDescription = (paymentTerm != null && !string.IsNullOrEmpty(paymentTerm.Description)) ? paymentTerm.Description : "N/A"; model.IsActive = customer.INACTIVE != 1 ? true : false; if (_salespersonDynamicsRepository != null) { _salespersonDynamicsRepository.Dispose(); _salespersonDynamicsRepository = null; } if (_paymentTermRepository != null) { _paymentTermRepository.Dispose(); _paymentTermRepository = null; } if (_shipmentTermRepository != null) { _shipmentTermRepository.Dispose(); _shipmentTermRepository = null; } if (_stateRepository != null) { _stateRepository.Dispose(); _stateRepository = null; } if (_countryRepository != null) { _countryRepository.Dispose(); _countryRepository = null; } return(model); }