public InvoiceDto Convert(Invoice source, InvoiceDto destination, ResolutionContext context) { var crmSettings = _settingsManager.Load <CrmSettings>(); var defaultCurrency = _currencyProvider.Get(crmSettings.DefaultCurrency); var result = new InvoiceDto { Id = source.ID, Status = context.Mapper.Map <InvoiceStatusDto>(source.Status), Number = source.Number, IssueDate = _apiDateTimeHelper.Get(source.IssueDate), TemplateType = source.TemplateType, DueDate = _apiDateTimeHelper.Get(source.DueDate), Currency = !String.IsNullOrEmpty(source.Currency) ? context.Mapper.Map <CurrencyInfoDto>(_currencyProvider.Get(source.Currency)) : context.Mapper.Map <CurrencyInfoDto>(defaultCurrency), ExchangeRate = source.ExchangeRate, Language = source.Language, PurchaseOrderNumber = source.PurchaseOrderNumber, Terms = source.Terms, Description = source.Description, FileID = source.FileID, CreateOn = _apiDateTimeHelper.Get(source.CreateOn), CreateBy = _employeeWraperHelper.Get(source.CreateBy), CanEdit = _crmSecurity.CanEdit(source), CanDelete = _crmSecurity.CanDelete(source), }; if (source.ContactID > 0) { result.Contact = context.Mapper.Map <ContactBaseWithEmailDto>(_daoFactory.GetContactDao().GetByID(source.ContactID)); } if (source.ConsigneeID > 0) { result.Consignee = context.Mapper.Map <ContactBaseWithEmailDto>(_daoFactory.GetContactDao().GetByID(source.ConsigneeID)); } if (source.EntityID > 0) { result.Entity = _entityDtoHelper.Get(source.EntityType, source.EntityID); } result.Cost = source.GetInvoiceCost(_daoFactory); result.InvoiceLines = source.GetInvoiceLines(_daoFactory).Select(x => context.Mapper.Map <InvoiceLineDto>(x)).ToList(); return(result); }
public InvoiceItemDto Convert(InvoiceItem source, InvoiceItemDto destination, ResolutionContext context) { if (destination != null) { throw new NotImplementedException(); } var crmSettings = _settingsManager.Load <CrmSettings>(); var defaultCurrency = _currencyProvider.Get(crmSettings.DefaultCurrency); var result = new InvoiceItemDto { Title = source.Title, StockKeepingUnit = source.StockKeepingUnit, Description = source.Description, Price = source.Price, StockQuantity = source.StockQuantity, TrackInvenory = source.TrackInventory, CreateOn = _apiDateTimeHelper.Get(source.CreateOn), CreateBy = _employeeWraperHelper.Get(source.CreateBy), Currency = !String.IsNullOrEmpty(source.Currency) ? context.Mapper.Map <CurrencyInfoDto>(_currencyProvider.Get(source.Currency)) : context.Mapper.Map <CurrencyInfoDto>(defaultCurrency), CanEdit = _crmSecurity.CanEdit(source), CanDelete = _crmSecurity.CanDelete(source) }; if (source.InvoiceTax1ID > 0) { var invoiceTax1ID = _daoFactory.GetInvoiceTaxDao().GetByID(source.InvoiceTax1ID); result.InvoiceTax1 = context.Mapper.Map <InvoiceTaxDto>(invoiceTax1ID); } if (source.InvoiceTax2ID > 0) { var invoiceTax2ID = _daoFactory.GetInvoiceTaxDao().GetByID(source.InvoiceTax2ID); result.InvoiceTax2 = context.Mapper.Map <InvoiceTaxDto>(invoiceTax2ID); } return(result); }
public InvoiceTaxDto Convert(InvoiceTax source, InvoiceTaxDto destination, ResolutionContext context) { if (destination != null) { throw new NotImplementedException(); } var result = new InvoiceTaxDto(); result.Id = source.ID; result.Name = source.Name; result.Description = source.Description; result.Rate = source.Rate; result.CreateOn = _apiDateTimeHelper.Get(source.CreateOn); result.CreateBy = _employeeWraperHelper.Get(source.CreateBy); result.CanEdit = _crmSecurity.CanEdit(source); result.CanDelete = _crmSecurity.CanDelete(source); return(result); }
public ContactBaseDto Convert(Contact source, ContactBaseDto destination, ResolutionContext context) { ContactBaseDto result; if (source is Company) { result = new CompanyDto(); } else { result = new PersonDto(); } result.Id = source.ID; result.DisplayName = source.GetTitle(); result.IsPrivate = _crmSecurity.IsPrivate(source); result.IsShared = source.ShareType == ShareType.ReadWrite || source.ShareType == ShareType.Read; result.ShareType = source.ShareType; result.Currency = !String.IsNullOrEmpty(source.Currency) ? context.Mapper.Map <CurrencyInfoDto>(_currencyProvider.Get(source.Currency)) : null; result.SmallFotoUrl = String.Format("{0}HttpHandlers/filehandler.ashx?action=contactphotoulr&cid={1}&isc={2}&ps=1", _pathProvider.BaseAbsolutePath, source.ID, source is Company).ToLower(); result.MediumFotoUrl = String.Format("{0}HttpHandlers/filehandler.ashx?action=contactphotoulr&cid={1}&isc={2}&ps=2", _pathProvider.BaseAbsolutePath, source.ID, source is Company).ToLower(); result.IsCompany = source is Company; result.CanEdit = _crmSecurity.CanEdit(source); result.CanDelete = _crmSecurity.CanDelete(source); if (result.IsPrivate) { result.AccessList = _crmSecurity.GetAccessSubjectTo(source) .Select(item => _employeeDtoHelper.Get(item.Key)); } return(result); }