public void RegitrarAbono(SIGEEA_AboCliente pAboCliente, SIGEEA_CreCliente pCreCliente)
        {
            SIGEEA_DiagramaDataContext dc        = new SIGEEA_DiagramaDataContext();
            SIGEEA_CreCliente          creclient = dc.SIGEEA_CreClientes.First(c => c.PK_Id_CreCliente == pCreCliente.PK_Id_CreCliente);

            creclient.FecProPago_CreCliente = pCreCliente.FecProPago_CreCliente;
            creclient.Estado_CreCliente     = pCreCliente.Estado_CreCliente;
            creclient.Saldo_CreCliente      = pCreCliente.Saldo_CreCliente;
            SIGEEA_AboCliente aboClient = new SIGEEA_AboCliente();

            aboClient.Monto_AboCliente  = pAboCliente.Monto_AboCliente;
            aboClient.Metodo_AboCliente = pAboCliente.Metodo_AboCliente;
            aboClient.Numero_AboCliente = pAboCliente.Numero_AboCliente;
            aboClient.Fecha_AboCliente  = pAboCliente.Fecha_AboCliente;
            aboClient.FK_Id_Moneda      = pAboCliente.FK_Id_Moneda;
            aboClient.FK_Id_Empleado    = pAboCliente.FK_Id_Empleado;
            aboClient.Estado_AboCliente = pAboCliente.Estado_AboCliente;
            aboClient.FK_Id_Cliente     = pAboCliente.FK_Id_Cliente;
            aboClient.FK_Id_FacCliente  = pAboCliente.FK_Id_FacCliente;
            dc.SIGEEA_AboClientes.InsertOnSubmit(aboClient);
            dc.SubmitChanges();
        }
Esempio n. 2
0
        private void btnCancelar_Click(object sender, RoutedEventArgs e)
        {
            //int IdEmpleado, IdCliente, IdEmpresa;
            //string tipoFactura, tipoPedido, montoTatal, descuentoTotal, montoNetoTotal, moneda, observaciones, MontoAbono, fechaProPago, metodoPago, numero;
            if (tipoFactura != "Abono")
            {
                ObservableCollection <SIGEEA_DetFacCliente> plistaDetProducto = new ObservableCollection <SIGEEA_DetFacCliente>();
                SIGEEA_FacCliente nuevaFactura = new SIGEEA_FacCliente();
                nuevaFactura.FecEntrega_FacCliente    = DateTime.Now;
                nuevaFactura.FecPago_FacCliente       = DateTime.Now;
                nuevaFactura.Observaciones_FacCliente = observaciones;
                nuevaFactura.FK_Id_Cliente            = IdCliente;
                nuevaFactura.MonTotal_FacCliente      = Convert.ToDouble(montoTotal.Remove(0, 1));
                nuevaFactura.MonNeto_FacCliente       = Convert.ToDouble(montoNetoTotal.Remove(0, 1));
                nuevaFactura.Descuento_FacCliente     = Convert.ToDouble(descuentoTotal);
                nuevaFactura.FK_Id_Moneda             = monMant.PkMonedas(moneda)[0];
                nuevaFactura.FK_Id_Empresa            = IdEmpresa;
                nuevaFactura.FK_Id_Empleado           = IdEmpleado;
                foreach (uc_DetProducto detFacCliente in listaDetProducto)
                {
                    SIGEEA_DetFacCliente nuevoDetalle = new SIGEEA_DetFacCliente();
                    nuevoDetalle.MonTotal_DetFacCliente    = Convert.ToDouble(detFacCliente.preBruProducto);
                    nuevoDetalle.MonNeto_DetFacCliente     = Convert.ToDouble(detFacCliente.preNetProducto);
                    nuevoDetalle.CanProducto_DetFacCliente = Convert.ToDouble(detFacCliente.canInvProducto);
                    nuevoDetalle.Descuento_DetFacCliente   = Convert.ToDouble(detFacCliente.desProducto);
                    if (tipoPedido == "NACIONAL")
                    {
                        nuevoDetalle.PreUnidad_DetFacCliente = Convert.ToDouble(detFacCliente.preNacProducto);
                        nuevoDetalle.Moneda_DetFacCliente    = "¢";
                    }
                    else
                    {
                        nuevoDetalle.PreUnidad_DetFacCliente = Convert.ToDouble(detFacCliente.preExtProducto);
                        nuevoDetalle.Moneda_DetFacCliente    = "$";
                    }
                    nuevoDetalle.FK_Id_UniMedida   = uniMedMant.PkUniMedida(detFacCliente.UniMedida)[0];
                    nuevoDetalle.FK_Id_TipProducto = Convert.ToInt32(detFacCliente.IdTipProducto);
                    plistaDetProducto.Add(nuevoDetalle);
                }
                if (tipoFactura == "Proforma")
                {
                    nuevaFactura.Estado_FacCliente = "PR";
                    facMant.RegistrarFactura(nuevaFactura, plistaDetProducto, null, null);
                }
                else if (tipoFactura == "Crédito")
                {
                    nuevaFactura.Estado_FacCliente = "CR";
                    SIGEEA_CreCliente nuevoCredito = new SIGEEA_CreCliente();
                    nuevoCredito.Estado_CreCliente     = true;
                    nuevoCredito.Fecha_CreCliente      = DateTime.Now;
                    nuevoCredito.Monto_CreCliente      = Convert.ToDouble(montoNetoTotal.Remove(0, 1));
                    nuevoCredito.Saldo_CreCliente      = Convert.ToDouble(montoNetoTotal.Remove(0, 1));
                    nuevoCredito.FecProPago_CreCliente = fechaProPago;
                    nuevoCredito.FecLimPago_CreCliente = fechaLimite;
                    nuevoCredito.FK_Id_Cliente         = IdCliente;
                    nuevoCredito.FK_Id_Moneda          = monMant.PkMonedas(moneda)[0];
                    facMant.RegistrarFactura(nuevaFactura, plistaDetProducto, pAboCliente: null, pCreCliente: nuevoCredito);
                }
                else if (tipoFactura == "Contado")
                {
                    SIGEEA_AboCliente nuevoAbono = new SIGEEA_AboCliente();
                    nuevoAbono.Monto_AboCliente    = Convert.ToDouble(montoNetoTotal.Remove(0, 1));
                    nuevaFactura.Estado_FacCliente = "CO";
                    nuevoAbono.Metodo_AboCliente   = Convert.ToInt32(metodoPago[0].ToString());
                    nuevoAbono.Numero_AboCliente   = numero;
                    nuevoAbono.Fecha_AboCliente    = DateTime.Now;
                    nuevoAbono.FK_Id_Moneda        = monMant.PkMonedas(moneda)[0];
                    nuevoAbono.FK_Id_Empleado      = IdEmpleado;
                    nuevoAbono.Estado_AboCliente   = true;
                    nuevoAbono.FK_Id_Cliente       = IdCliente;
                    facMant.RegistrarFactura(nuevaFactura, plistaDetProducto, nuevoAbono, null);
                }
            }
            else
            {
                SIGEEA_CreCliente nuevoCredito = new SIGEEA_CreCliente();
                if (fin == 0)
                {
                    nuevoCredito.Estado_CreCliente = false;
                }
                else
                {
                    nuevoCredito.Estado_CreCliente = true;
                }
                nuevoCredito.PK_Id_CreCliente      = lista.PK_Id_CreCliente;
                nuevoCredito.Saldo_CreCliente      = fin;
                nuevoCredito.FecProPago_CreCliente = fechaProPago;

                SIGEEA_AboCliente nuevoAbono = new SIGEEA_AboCliente();
                nuevoAbono.Monto_AboCliente  = Convert.ToDouble(MontoAbono);
                nuevoAbono.Metodo_AboCliente = Convert.ToInt32(metodoPago[0].ToString());
                nuevoAbono.Numero_AboCliente = numero;
                nuevoAbono.Fecha_AboCliente  = DateTime.Now;
                nuevoAbono.FK_Id_Moneda      = monMant.PkMonedas(moneda)[0];
                nuevoAbono.FK_Id_Empleado    = IdEmpleado;
                nuevoAbono.Estado_AboCliente = true;
                nuevoAbono.FK_Id_Cliente     = lista.PK_Id_Cliente;
                nuevoAbono.FK_Id_FacCliente  = lista.PK_Id_FacCliente;
                facMant.RegitrarAbono(nuevoAbono, nuevoCredito);
            }

            MessageBox.Show("Imprimiendo factura");
            print(txbFactura);
            this.Close();
        }
        /// <summary>
        /// Registrar Factura)
        /// </summary>
        /// <param name="pFacCliente"></param>
        /// <param name="pListaDetalle"></param>

        public int RegistrarFactura(SIGEEA_FacCliente pFacCliente, ObservableCollection <SIGEEA_DetFacCliente> pListaDetalle, SIGEEA_AboCliente pAboCliente, SIGEEA_CreCliente pCreCliente)
        {
            SIGEEA_DiagramaDataContext dc = new SIGEEA_DiagramaDataContext();

            SIGEEA_FacCliente nuevaFactura = new SIGEEA_FacCliente();

            nuevaFactura.FecEntrega_FacCliente    = DateTime.Now;
            nuevaFactura.FecPago_FacCliente       = DateTime.Now;
            nuevaFactura.Observaciones_FacCliente = pFacCliente.Observaciones_FacCliente;
            nuevaFactura.FK_Id_Cliente            = pFacCliente.FK_Id_Cliente;
            nuevaFactura.Estado_FacCliente        = pFacCliente.Estado_FacCliente;
            nuevaFactura.MonTotal_FacCliente      = pFacCliente.MonTotal_FacCliente;
            nuevaFactura.MonNeto_FacCliente       = pFacCliente.MonNeto_FacCliente;
            nuevaFactura.Descuento_FacCliente     = pFacCliente.Descuento_FacCliente;
            nuevaFactura.FK_Id_Moneda             = pFacCliente.FK_Id_Moneda;
            nuevaFactura.FK_Id_Empresa            = pFacCliente.FK_Id_Empresa;
            nuevaFactura.FK_Id_Empleado           = pFacCliente.FK_Id_Empleado;
            dc.SIGEEA_FacClientes.InsertOnSubmit(nuevaFactura);
            dc.SubmitChanges();
            foreach (SIGEEA_DetFacCliente detFacCliente in pListaDetalle)
            {
                SIGEEA_DetFacCliente nuevoDetalle = new SIGEEA_DetFacCliente();
                nuevoDetalle.MonTotal_DetFacCliente    = detFacCliente.MonTotal_DetFacCliente;
                nuevoDetalle.MonNeto_DetFacCliente     = detFacCliente.MonNeto_DetFacCliente;
                nuevoDetalle.CanProducto_DetFacCliente = detFacCliente.CanProducto_DetFacCliente;
                nuevoDetalle.Descuento_DetFacCliente   = detFacCliente.Descuento_DetFacCliente;
                nuevoDetalle.PreUnidad_DetFacCliente   = detFacCliente.PreUnidad_DetFacCliente;
                nuevoDetalle.Moneda_DetFacCliente      = detFacCliente.Moneda_DetFacCliente;
                nuevoDetalle.FK_Id_FacCliente          = nuevaFactura.PK_Id_FacCliente;
                nuevoDetalle.FK_Id_UniMedida           = detFacCliente.FK_Id_UniMedida;
                nuevoDetalle.FK_Id_TipProducto         = detFacCliente.FK_Id_TipProducto;
                dc.SIGEEA_DetFacClientes.InsertOnSubmit(nuevoDetalle);
                dc.SubmitChanges();
            }

            if (pAboCliente != null)
            {
                SIGEEA_AboCliente nuevoAbono = new SIGEEA_AboCliente();
                nuevoAbono.Monto_AboCliente  = pAboCliente.Monto_AboCliente;
                nuevoAbono.Metodo_AboCliente = pAboCliente.Metodo_AboCliente;
                nuevoAbono.Numero_AboCliente = pAboCliente.Numero_AboCliente;
                nuevoAbono.Fecha_AboCliente  = DateTime.Now;
                nuevoAbono.FK_Id_Moneda      = pAboCliente.FK_Id_Moneda;
                nuevoAbono.FK_Id_Empleado    = pAboCliente.FK_Id_Empleado;
                nuevoAbono.Estado_AboCliente = pAboCliente.Estado_AboCliente;
                nuevoAbono.FK_Id_Cliente     = pAboCliente.FK_Id_Cliente;
                nuevoAbono.FK_Id_FacCliente  = nuevaFactura.PK_Id_FacCliente;
                dc.SIGEEA_AboClientes.InsertOnSubmit(nuevoAbono);
            }
            if (pCreCliente != null)
            {
                SIGEEA_CreCliente nuevoCredito = new SIGEEA_CreCliente();
                nuevoCredito.Estado_CreCliente     = pCreCliente.Estado_CreCliente;
                nuevoCredito.Fecha_CreCliente      = pCreCliente.Fecha_CreCliente;
                nuevoCredito.Monto_CreCliente      = pCreCliente.Monto_CreCliente;
                nuevoCredito.Saldo_CreCliente      = pCreCliente.Saldo_CreCliente;
                nuevoCredito.FecProPago_CreCliente = pCreCliente.FecProPago_CreCliente;
                nuevoCredito.FecLimPago_CreCliente = pCreCliente.FecLimPago_CreCliente;
                nuevoCredito.FK_Id_Cliente         = pCreCliente.FK_Id_Cliente;
                nuevoCredito.FK_Id_Moneda          = pCreCliente.FK_Id_Moneda;
                nuevoCredito.FK_Id_FacCliente      = nuevaFactura.PK_Id_FacCliente;
                dc.SIGEEA_CreClientes.InsertOnSubmit(nuevoCredito);
            }
            dc.SubmitChanges();
            return(nuevaFactura.PK_Id_FacCliente);
        }
Esempio n. 4
0
        private int  ProcesarFactura(string observaciones, DateTime fechaProPago, DateTime fechaLimite, string numero, string MontoAbono, int pkIdCliente)
        {
            int idFactura = 0;

            lista = facMant.ObtenerFactura(pkIdCliente);
            if (tipoFactura != "Abono")
            {
                if (tipoFactura != "Proforma")
                {
                    if (MontoAbono == null)
                    {
                        MontoAbono = "0";
                    }
                    fin = Convert.ToDouble(montoNetoTotal.Remove(0, 1));
                }
            }
            else
            {
                fin = Convert.ToDouble(montoTotal);
            }
            if (tipoFactura != "Abono")
            {
                ObservableCollection <SIGEEA_DetFacCliente> plistaDetProducto = new ObservableCollection <SIGEEA_DetFacCliente>();
                SIGEEA_FacCliente nuevaFactura = new SIGEEA_FacCliente();
                nuevaFactura.FecEntrega_FacCliente    = DateTime.Now;
                nuevaFactura.FecPago_FacCliente       = DateTime.Now;
                nuevaFactura.Observaciones_FacCliente = observaciones;
                nuevaFactura.FK_Id_Cliente            = IdCliente;
                nuevaFactura.MonTotal_FacCliente      = Convert.ToDouble(montoTotal.Remove(0, 1));
                nuevaFactura.MonNeto_FacCliente       = Convert.ToDouble(montoNetoTotal.Remove(0, 1));
                nuevaFactura.Descuento_FacCliente     = Convert.ToDouble(descuentoTotal);
                nuevaFactura.FK_Id_Moneda             = monMant.PkMonedas(moneda)[0];
                nuevaFactura.FK_Id_Empresa            = IdEmpresa;
                nuevaFactura.FK_Id_Empleado           = IdEmpleado;
                foreach (uc_DetProducto detFacCliente in listaDetProducto)
                {
                    SIGEEA_DetFacCliente nuevoDetalle = new SIGEEA_DetFacCliente();
                    nuevoDetalle.MonTotal_DetFacCliente    = Convert.ToDouble(detFacCliente.preBruProducto);
                    nuevoDetalle.MonNeto_DetFacCliente     = Convert.ToDouble(detFacCliente.preNetProducto);
                    nuevoDetalle.CanProducto_DetFacCliente = Convert.ToDouble(detFacCliente.canInvProducto);
                    nuevoDetalle.Descuento_DetFacCliente   = Convert.ToDouble(detFacCliente.desProducto);
                    if (tipoPedido == "NACIONAL")
                    {
                        nuevoDetalle.PreUnidad_DetFacCliente = Convert.ToDouble(detFacCliente.preNacProducto);
                        nuevoDetalle.Moneda_DetFacCliente    = "¢";
                    }
                    else
                    {
                        nuevoDetalle.PreUnidad_DetFacCliente = Convert.ToDouble(detFacCliente.preExtProducto);
                        nuevoDetalle.Moneda_DetFacCliente    = "$";
                    }
                    nuevoDetalle.FK_Id_UniMedida   = uniMedMant.PkUniMedida(detFacCliente.UniMedida)[0];
                    nuevoDetalle.FK_Id_TipProducto = Convert.ToInt32(detFacCliente.IdTipProducto);
                    plistaDetProducto.Add(nuevoDetalle);
                }
                if (tipoFactura == "Proforma")
                {
                    nuevaFactura.Estado_FacCliente = "PR";
                    idFactura = facMant.RegistrarFactura(nuevaFactura, plistaDetProducto, null, null);
                }
                else if (tipoFactura == "Crédito")
                {
                    nuevaFactura.Estado_FacCliente = "CR";
                    SIGEEA_CreCliente nuevoCredito = new SIGEEA_CreCliente();
                    nuevoCredito.Estado_CreCliente     = true;
                    nuevoCredito.Fecha_CreCliente      = DateTime.Now;
                    nuevoCredito.Monto_CreCliente      = Convert.ToDouble(montoNetoTotal.Remove(0, 1));
                    nuevoCredito.Saldo_CreCliente      = Convert.ToDouble(montoNetoTotal.Remove(0, 1));
                    nuevoCredito.FecProPago_CreCliente = fechaProPago;
                    nuevoCredito.FecLimPago_CreCliente = fechaLimite;
                    nuevoCredito.FK_Id_Cliente         = IdCliente;
                    nuevoCredito.FK_Id_Moneda          = monMant.PkMonedas(moneda)[0];
                    idFactura = facMant.RegistrarFactura(nuevaFactura, plistaDetProducto, pAboCliente: null, pCreCliente: nuevoCredito);
                }
                else if (tipoFactura == "Contado")
                {
                    SIGEEA_AboCliente nuevoAbono = new SIGEEA_AboCliente();
                    nuevoAbono.Monto_AboCliente    = Convert.ToDouble(montoNetoTotal.Remove(0, 1));
                    nuevaFactura.Estado_FacCliente = "CO";
                    nuevoAbono.Metodo_AboCliente   = Convert.ToInt32(metodoPago[0].ToString());
                    nuevoAbono.Numero_AboCliente   = numero;
                    nuevoAbono.Fecha_AboCliente    = DateTime.Now;
                    nuevoAbono.FK_Id_Moneda        = monMant.PkMonedas(moneda)[0];
                    nuevoAbono.FK_Id_Empleado      = IdEmpleado;
                    nuevoAbono.Estado_AboCliente   = true;
                    nuevoAbono.FK_Id_Cliente       = IdCliente;
                    idFactura = facMant.RegistrarFactura(nuevaFactura, plistaDetProducto, nuevoAbono, null);
                }
            }
            else
            {
                SIGEEA_CreCliente nuevoCredito = new SIGEEA_CreCliente();
                if (fin == 0)
                {
                    nuevoCredito.Estado_CreCliente = false;
                }
                else
                {
                    nuevoCredito.Estado_CreCliente = true;
                }
                nuevoCredito.PK_Id_CreCliente      = lista.PK_Id_CreCliente;
                nuevoCredito.Saldo_CreCliente      = fin;
                nuevoCredito.FecProPago_CreCliente = fechaProPago;
                SIGEEA_AboCliente nuevoAbono = new SIGEEA_AboCliente();
                nuevoAbono.Monto_AboCliente  = Convert.ToDouble(MontoAbono);
                nuevoAbono.Metodo_AboCliente = Convert.ToInt32(metodoPago[0].ToString());
                nuevoAbono.Numero_AboCliente = numero;
                nuevoAbono.Fecha_AboCliente  = DateTime.Now;
                nuevoAbono.FK_Id_Moneda      = monMant.PkMonedas(moneda)[0];
                nuevoAbono.FK_Id_Empleado    = IdEmpleado;
                nuevoAbono.Estado_AboCliente = true;
                nuevoAbono.FK_Id_Cliente     = lista.PK_Id_Cliente;
                nuevoAbono.FK_Id_FacCliente  = lista.PK_Id_FacCliente;
                facMant.RegitrarAbono(nuevoAbono, nuevoCredito);
            }
            return(idFactura);
        }