Beispiel #1
0
        private void Migrar_ats_Tecnologico(int IdEmpresa, string Ruc, DateTime FechaInicio, DateTime FechaFin, int IdPeriodo, int IdSucursal)
        {
            try
            {
                if (IdEmpresa != 3)
                {
                    return;
                }
                FechaInicio = FechaInicio.Date;
                FechaFin    = FechaFin.Date;

                List <ATS_ventas_eventos> Lista = new List <ATS_ventas_eventos>();
                string     id_url = "https://www.tecnologicoliceocristiano.edu.ec/WsConsultaFacturas/api/Ats/Facturas?empresa=1&desde=" + FechaInicio.Day.ToString("00") + "/" + FechaInicio.Month.ToString("00") + "/" + FechaInicio.Year.ToString() + "&hasta=" + FechaFin.Day.ToString("00") + "/" + FechaFin.Month.ToString("00") + "/" + FechaFin.Year.ToString() + "&usuario=fixed&password=fixed2020*";
                WebRequest requst = WebRequest.Create(id_url);
                requst.Method = "GET";
                HttpWebResponse response = requst.GetResponse() as HttpWebResponse;
                var             encod    = ASCIIEncoding.ASCII;
                using (var readchat = new System.IO.StreamReader(response.GetResponseStream(), encod))
                {
                    string chatresult = readchat.ReadToEnd();
                    var    json       = JsonConvert.DeserializeObject <List <FacturasTecnologico_Info> >(chatresult);
                    int    Secuencia  = 1;
                    foreach (var item in json)
                    {
                        Lista.Add(new ATS_ventas_eventos
                        {
                            IdEmpresa          = IdEmpresa,
                            IdPeriodo          = IdPeriodo,
                            idCliente          = item.cedulaRuc.Trim(),//g.Key.ID,
                            parteRel           = "NO",
                            DenoCli            = "",
                            tipoComprobante    = "18",
                            tipoEm             = "F",
                            numeroComprobantes = 1,//g.Count(),
                            baseNoGraIva       = 0,
                            baseImponible      = Convert.ToDecimal(item.valorBaseIva),
                            baseImpGrav        = 0, //g.Sum(q=> q.subtotal ?? 0),
                            montoIva           = 0, //g.Sum(q => q.v_iva ?? 0),
                            montoIce           = 0,
                            valorRetIva        = 0,
                            valorRetRenta      = 0,
                            formaPago          = "01",
                            codEstab           = "001",
                            ventasEstab        = Convert.ToDecimal(item.valorBaseIva),                                          //g.Sum(q => q.subtotal ?? 0),
                            IdSucursal         = 1,
                            tpIdCliente        = item.cedulaRuc.Length == 13 ? "04" : item.cedulaRuc.Length == 10 ? "05" : "0", //g.Key.ID.Length == 13 ? "04" : g.Key.ID.Length == 10 ? "05" : "0",
                            tipoCliente        = item.cedulaRuc.Length == 13 ? "02" : item.cedulaRuc.Length == 10 ? "01" : "0", //g.Key.ID.Length == 13 ? "02" : g.Key.ID.Length == 10 ? "01" : "0"
                        });
                    }
                }

                using (Entities_contabilidad Context = new Entities_contabilidad())
                {
                    var lst_ccg = Context.ATS_ventas_eventos.ToList();
                    Context.ATS_ventas_eventos.RemoveRange(lst_ccg);

                    var ListaAgrupada = Lista.GroupBy(q => new
                    {
                        q.IdEmpresa,
                        q.idCliente
                    }).Select(g => new ATS_ventas_eventos
                    {
                        IdEmpresa          = IdEmpresa,
                        IdPeriodo          = IdPeriodo,
                        idCliente          = g.Key.idCliente,
                        parteRel           = "NO",
                        DenoCli            = "",
                        tipoComprobante    = "18",
                        tipoEm             = "F",
                        numeroComprobantes = g.Count(),
                        baseNoGraIva       = 0,
                        baseImponible      = g.Sum(q => q.baseImponible),
                        baseImpGrav        = g.Sum(q => q.baseImpGrav),
                        montoIva           = g.Sum(q => q.montoIva),
                        montoIce           = 0,
                        valorRetIva        = 0,
                        valorRetRenta      = 0,
                        formaPago          = "01",
                        codEstab           = "001",
                        ventasEstab        = g.Sum(q => q.ventasEstab),
                        IdSucursal         = 1,
                        tpIdCliente        = g.Key.idCliente.Length == 13 ? "04" : g.Key.idCliente.Length == 10 ? "05" : "0",
                        tipoCliente        = g.Key.idCliente.Length == 13 ? "02" : g.Key.idCliente.Length == 10 ? "01" : "0"
                    }).ToList();

                    int Secuencia = Context.ATS_ventas.Count() == 0 ? 1 : (Context.ATS_ventas.Max(q => q.Secuencia) + 1);
                    ListaAgrupada.ForEach(q => q.Secuencia = Secuencia++);
                    Context.ATS_ventas_eventos.RemoveRange(Context.ATS_ventas_eventos.ToList());
                    Context.ATS_ventas_eventos.AddRange(ListaAgrupada);
                    Context.SaveChanges();

                    Context.SPATS_MigrarEventos();
                }
            }
            catch (Exception ex)
            {
            }
        }
Beispiel #2
0
        /*private void Migrar_ats(int IdEmpresa, string Ruc, DateTime FechaInicio, DateTime FechaFin,int IdPeriodo)
         * {
         *  try
         *  {
         *      int secuancia = 200000;
         *      Entities_contabilidad context_cont = new Entities_contabilidad();
         *      using (Entity_migracion_ats Conexion_ats = new Entity_migracion_ats())
         *      {
         *          var Entity = Conexion_ats.vw_importacion_ats_fixed.Where(v => v.RUC_LCG == Ruc && v.fe_factura >= FechaInicio.Date && v.fe_factura <= FechaFin.Date).ToList();
         *
         *          if (Entity!=null)
         *          {
         *              Entity.ForEach(item =>
         *              {
         *                  ATS_ventas ventas = new ATS_ventas
         *                  {
         *                      IdEmpresa=IdEmpresa,
         *                      IdPeriodo=IdPeriodo,
         *                      Secuencia=secuancia,
         *                      idCliente=item.cedulaRuc,
         *                      parteRel="NO",
         *                      DenoCli="",
         *                      tipoComprobante="18",
         *                      tipoEm="F",
         *                      numeroComprobantes = Convert.ToInt32( item.nu_comp),
         *                      baseNoGraIva = 0,
         *                      baseImponible = Convert.ToDecimal(item.valorBaseIva),
         *                      baseImpGrav = 0,
         *                      montoIva= 0,
         *                      montoIce=0,
         *                      valorRetIva= 0,
         *                      valorRetRenta= 0,
         *                      formaPago="01",
         *                      codEstab="001",
         *                      ventasEstab=Convert.ToDecimal( item.valorBaseIva),
         *                      IdSucursal=1
         *                  };
         *                  if(item.cedulaRuc.Length==13)
         *                  {
         *                      ventas.tpIdCliente = "04";
         *                      ventas.tipoCliente = "02";
         *                  }
         *                  else
         *                  {
         *                      ventas.tpIdCliente = "05";
         *                      ventas.tipoCliente = "01";
         *                  }
         *                  context_cont.ATS_ventas.Add(ventas);
         *                  context_cont.SaveChanges();
         *                  secuancia++;
         *              });
         *          }
         *
         *      }
         *  }
         *  catch (Exception)
         *  {
         *
         *  }
         *
         * }*/

        private void Migrar_ats_CCG(int IdEmpresa, string Ruc, DateTime FechaInicio, DateTime FechaFin, int IdPeriodo, int IdSucursal)
        {
            try
            {
                if (IdSucursal != 8)
                {
                    return;
                }
                FechaInicio = FechaInicio.Date;
                var FechaFin1 = FechaFin.Date.AddDays(1);

                Entity_Eventos db = new Entity_Eventos();

                var queryLinq = (from fac in db.Facturas
                                 where fac.fecha >= FechaInicio &&
                                 fac.fecha <= FechaFin1 &&
                                 fac.bd_est == 1 &&
                                 ((fac.nu_ced_ruc).Length > 9)
                                 group fac by new
                {
                    ID = fac.nu_ced_ruc.Trim()
                } into g
                                 select new ATS_ventas_eventos
                {
                    IdEmpresa = IdEmpresa,
                    IdPeriodo = IdPeriodo,
                    //idCliente = fac.nu_ced_ruc.Trim(),//g.Key.ID,
                    idCliente = g.Key.ID,
                    parteRel = "NO",
                    DenoCli = "",
                    tipoComprobante = "18",
                    tipoEm = "F",
                    //numeroComprobantes = 1,//g.Count(),
                    numeroComprobantes = g.Count(),
                    baseNoGraIva = 0,
                    baseImponible = 0,
                    //baseImpGrav = fac.subtotal ?? 0, //g.Sum(q=> q.subtotal ?? 0),
                    baseImpGrav = g.Sum(q => q.subtotal ?? 0),
                    //montoIva = fac.v_iva ?? 0,//g.Sum(q => q.v_iva ?? 0),
                    montoIva = g.Sum(q => q.v_iva ?? 0),
                    montoIce = 0,
                    valorRetIva = 0,
                    valorRetRenta = 0,
                    formaPago = "01",
                    codEstab = "001",
                    //ventasEstab = fac.subtotal?? 0,//g.Sum(q => q.subtotal ?? 0),
                    ventasEstab = g.Sum(q => q.subtotal ?? 0),
                    IdSucursal = 8,
                    //tpIdCliente = fac.nu_ced_ruc.Length == 13 ? "04" : fac.nu_ced_ruc.Length == 10 ? "05" : "0",//g.Key.ID.Length == 13 ? "04" : g.Key.ID.Length == 10 ? "05" : "0",
                    //tipoCliente = fac.nu_ced_ruc.Length == 13 ? "02" : fac.nu_ced_ruc.Length == 10 ? "01" : "0",//g.Key.ID.Length == 13 ? "02" : g.Key.ID.Length == 10 ? "01" : "0"
                    tpIdCliente = g.Key.ID.Length == 13 ? "04" : g.Key.ID.Length == 10 ? "05" : "0",
                    tipoCliente = g.Key.ID.Length == 13 ? "02" : g.Key.ID.Length == 10 ? "01" : "0"
                }).ToList();

                using (Entities_contabilidad Context = new Entities_contabilidad())
                {
                    var lst_ccg = Context.ATS_ventas_eventos.ToList();
                    Context.ATS_ventas_eventos.RemoveRange(lst_ccg);

                    int Secuencia = Context.ATS_ventas.Max(q => q.Secuencia) + 1;
                    queryLinq.ForEach(q => q.Secuencia = Secuencia++);
                    Context.ATS_ventas_eventos.RemoveRange(Context.ATS_ventas_eventos.ToList());
                    Context.ATS_ventas_eventos.AddRange(queryLinq);
                    Context.SaveChanges();

                    Context.SPATS_MigrarEventos();
                }
            }
            catch (Exception)
            {
            }
        }