Esempio n. 1
0
        public SendResult SendInvoice(SendParameters SendParameters)
        {
            if (SendParameters == null)
            {
                throw new ArgumentNullException("SendParameters");
            }

            SendResult r = new SendResult();



            if (Convert.ToDateTime(token).AddMinutes(ExpirationTimeMinute()) < DateTime.Now)
            {
                throw new Exception("Token süresi dolmuş");
            }

            r.IsSucceded     = true;
            r.Message        = "Gönderildi";
            r.ResultInvoices = new List <ResultInvoice>();

            foreach (var item in SendParameters.InvoicesInfo)
            {
                ResultInvoice rItem = new ResultInvoice();
                rItem.ETN      = item.Invoices.UUID.Value;
                rItem.FaturaNo = item.Invoices.ID.Value;
                r.ResultInvoices.Add(rItem);
            }

            return(r);
        }
Esempio n. 2
0
        public SendResult SendInvoice(SendParameters SendParameters)
        {
            SendResult r = new SendResult();

            r.IsSucceded     = true;
            r.ResultInvoices = new List <ResultInvoice>();

            foreach (var item in SendParameters.InvoicesInfo)
            {
                ServiceVeriban.TransferDocument document = new ServiceVeriban.TransferDocument();


                document.UUID            = item.Invoices.UUID.ToString();
                document.BinaryDataArray = GetZipFile(item);                       //Gönderilen ZipDosyasının Binary str Array karşılığı.
                document.BinaryDataHash  = GetMd5Hash(document.BinaryDataArray);   //Hash, //Gönderilen ZipBinaryDataArray in Hash karşılığı.
                document.DocumentType    = ServiceVeriban.DocumentType.Xml;        //ZIP dosyası içerisindeki dosya formatı XML.
                document.FileName        = item.Invoices.UUID.ToString() + ".zip"; //transfer edilecek dosya için Unique bir değere ihtiyaç vardır ve dosya uzantısı ZIP olmalı.
                document.IsDirectSend    = true;                                   //true : Fatura direk imzalanarak GİB'na gönderilir. false: Fatura onay sürecinden geçtikten sonra GİB'na gönderilir.
                document.Alias           = item.AliciPostaKutusuEtiketi;

                var response = service.Transfer(document, SessionID);

                var rr = new ResultInvoice();
                rr.ETN      = item.Invoices.UUID.Value;
                rr.FaturaNo = item.Invoices.ID.Value;

                r.ResultInvoices.Add(rr);
            }


            return(r);
        }
Esempio n. 3
0
        public SendResult SendInvoice(SendParameters SendParameters)
        {
            SendResult r = new SendResult();

            ServiceUyumsoft.InvoiceInfo[] InvoiceInfo = new ServiceUyumsoft.InvoiceInfo[SendParameters.InvoicesInfo.Count];

            int i = 0;

            foreach (var item in SendParameters.InvoicesInfo)
            {
                var xml = item.Invoices.CreateXml();
                InvoiceInfo[i]                 = new ServiceUyumsoft.InvoiceInfo();
                InvoiceInfo[i].Invoice         = UyumsoftInvoiceDeserialize(xml);
                InvoiceInfo[i].LocalDocumentId = item.LocalDocumentId;
                InvoiceInfo[i].Scenario        = InvoiceScenarioChoosen.eInvoice;
                InvoiceInfo[i].TargetCustomer  = new ServiceUyumsoft.CustomerInfo()
                {
                    VknTckn = item.Customer.VknTckn,
                    Alias   = item.Customer.Alias,
                    Title   = item.Customer.Title
                };



                i++;
            }
            var response = service.SendInvoice(InvoiceInfo);

            r.Message    = response.Message;
            r.IsSucceded = response.IsSucceded;
            if (response.IsSucceded)
            {
                r.ResultInvoices = new List <ResultInvoice>();
                foreach (var item in response.Value)
                {
                    ResultInvoice ri = new ResultInvoice();
                    ri.FaturaNo = item.Number;
                    ri.ETN      = item.Id;
                    r.ResultInvoices.Add(ri);
                }
            }
            else
            {
                //throw new Exception("hata testi");
            }

            return(r);
        }
Esempio n. 4
0
        public SendResult SendInvoice(SendParameters SendParameters)
        {
            SendResult r = new SendResult();

            if (SendParameters != null)
            {
                var grup = SendParameters.InvoicesInfo.GroupBy(x => new { x.Customer.VknTckn, x.Customer.Alias });
                foreach (var item in grup)
                {
                    var Invoices = item.ToList();
                    var DocType  = GetDoc(Guid.NewGuid(), Invoices);

                    if (service.sendInvoice(DocType, item.Key.Alias, SessionID))
                    {
                        r.IsSucceded     = true;
                        r.ResultInvoices = new List <ResultInvoice>();
                        foreach (var invoice in Invoices)
                        {
                            var rr = new ResultInvoice();
                            rr.ETN      = invoice.Invoices.UUID.Value;
                            rr.FaturaNo = invoice.Invoices.ID.Value;
                            r.ResultInvoices.Add(rr);
                        }
                    }
                    else
                    {
                        r.IsSucceded     = false;
                        r.ResultInvoices = new List <ResultInvoice>();
                        foreach (var invoice in Invoices)
                        {
                            ResultInvoice rr = new ResultInvoice();
                            r.ResultInvoices.Add(rr);
                        }
                    }
                }
            }
            return(r);
        }