public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { InvoiceXml.invoiceInvoiceItem invoiceInvoiceItem = value as InvoiceXml.invoiceInvoiceItem; if (invoiceInvoiceItem.stockItem == null) { return((object)invoiceInvoiceItem.text); } return((object)string.Empty); }
private InvoiceXml.invoiceInvoiceItem CreateInvoiceItem(InvoiceItemBase invoiceItem) { var data = new InvoiceXml.invoiceInvoiceItem(); int MaxItemNameLength = 85; //this name is not actually used in pohoda, so it can be automatically truncated if (invoiceItem.Name.Length > MaxItemNameLength) // TODO do this operation during BLO->DTO convertion { invoiceItem.Name = invoiceItem.Name.Substring(0, MaxItemNameLength); } data.text = invoiceItem.Name; data.quantity = invoiceItem.Quantity; data.discountPercentage = 0; data.foreignCurrency = new InvoiceXml.invoiceInvoiceItemForeignCurrency(); data.homeCurrency = new InvoiceXml.invoiceInvoiceItemHomeCurrency(); data.PDP = false; data.rateVAT = "historyHigh"; data.foreignCurrency.unitPrice = invoiceItem.UnitPrice.AmountForeign.DefRound(); data.foreignCurrency.price = invoiceItem.TotalPrice.AmountForeign.DefRound(); data.foreignCurrency.priceSum = invoiceItem.TotalPrice.AmountForeign.DefRound(); data.foreignCurrency.priceVAT = invoiceItem.VatPrice.AmountForeign.DefRound(); data.homeCurrency.unitPrice = invoiceItem.UnitPrice.AmountHome.DefRound(); data.homeCurrency.price = invoiceItem.TotalPrice.AmountHome.DefRound(); data.homeCurrency.priceSum = invoiceItem.TotalPrice.AmountHome.DefRound(); data.homeCurrency.priceVAT = invoiceItem.VatPrice.AmountHome.DefRound(); data.payVAT = invoiceItem.ParentInvoice.PayVat; if (invoiceItem.IsMoss) { data.typeServiceMOSS = new InvoiceXml.typeServiceMOSS { ids = "GD" }; data.percentVAT = invoiceItem.PercentVat; } if (invoiceItem is not InvoiceProduct product) { return(data); } data.stockItem = new InvoiceXml.invoiceInvoiceItemStockItem(); data.stockItem.stockItem = new InvoiceXml.stockItem(); data.stockItem.store = new InvoiceXml.store(); data.code = product.WarehouseCode; data.amazonSkuCode = product.AmazonSku; data.stockItem.stockItem.ids = product.WarehouseCode; data.stockItem.store.ids = "Zboží"; return(data); }