예제 #1
0
        public TableRecordNode CreateRetailRecord(OrderItem orderItem)
        {
            var  record                = new TableRecordNode();
            bool isService             = false;
            var  nomenclatureReference = NomenclatureCatalog.CreateReferenceTo(orderItem.Nomenclature);

            record.Properties.Add(
                new PropertyNode("Номенклатура",
                                 Common1cTypes.ReferenceNomenclature,
                                 nomenclatureReference
                                 )
                );
            record.Properties.Add(
                new PropertyNode(
                    "Количество",
                    Common1cTypes.Numeric,
                    orderItem.CurrentCount
                    )
                );

            record.Properties.Add(
                new PropertyNode("Цена",
                                 Common1cTypes.Numeric,
                                 orderItem.Price));

            ExportedTotalSum += orderItem.ActualSum;

            record.Properties.Add(
                new PropertyNode(
                    "Сумма",
                    Common1cTypes.Numeric,
                    orderItem.ActualSum
                    )
                );

            var vat = VAT.No.GetAttribute <Value1c>().Value;

            record.Properties.Add(
                new PropertyNode("СтавкаНДС",
                                 Common1cTypes.EnumVAT,
                                 vat
                                 )
                );

            record.Properties.Add(
                new PropertyNode("СуммаНДС",
                                 Common1cTypes.Numeric
                                 )
                );

            return(record);
        }
예제 #2
0
        public TableRecordNode CreateRecord(OrderItem orderItem)
        {
            var  record                = new TableRecordNode();
            bool isService             = !Nomenclature.GetCategoriesForGoods().Contains(orderItem.Nomenclature.Category);
            var  nomenclatureReference = NomenclatureCatalog.CreateReferenceTo(orderItem.Nomenclature);

            record.Properties.Add(
                new PropertyNode("Номенклатура",
                                 Common1cTypes.ReferenceNomenclature,
                                 nomenclatureReference
                                 )
                );
            if (isService)
            {
                record.Properties.Add(
                    new PropertyNode("Содержание",
                                     Common1cTypes.String,
                                     orderItem.Nomenclature.OfficialName
                                     )
                    );
            }
            record.Properties.Add(
                new PropertyNode(
                    "Количество",
                    Common1cTypes.Numeric,
                    orderItem.CurrentCount
                    )
                );
            if (!isService)
            {
                record.Properties.Add(
                    new PropertyNode("Коэффициент",
                                     Common1cTypes.Numeric,
                                     1
                                     )
                    );
            }

            record.Properties.Add(
                new PropertyNode("Цена",
                                 Common1cTypes.Numeric,
                                 orderItem.Price));

            ExportedTotalSum += orderItem.ActualSum;

            record.Properties.Add(
                new PropertyNode(
                    "Сумма",
                    Common1cTypes.Numeric,
                    orderItem.ActualSum
                    )
                );

            var vat = orderItem.Nomenclature.VAT.GetAttribute <Value1c>().Value;

            record.Properties.Add(
                new PropertyNode("СтавкаНДС",
                                 Common1cTypes.EnumVAT,
                                 vat
                                 )
                );

            if (orderItem.Nomenclature.VAT != VAT.No)
            {
                record.Properties.Add(
                    new PropertyNode(
                        "СуммаНДС",
                        Common1cTypes.Numeric,
                        orderItem.IncludeNDS ?? 0                         //FIXME Нужно будет сделать что бы всегда соответствало количетству.
                        )
                    );
            }
            else
            {
                record.Properties.Add(
                    new PropertyNode("СуммаНДС",
                                     Common1cTypes.Numeric
                                     )
                    );
            }

            if (!isService)
            {
                record.Properties.Add(
                    new PropertyNode("НомерГТД",
                                     "СправочникСсылка.НомераГТД"
                                     )
                    );
                record.Properties.Add(
                    new PropertyNode("СтранаПроисхождения",
                                     Common1cTypes.ReferenceCountry
                                     )
                    );
            }
            return(record);
        }