Пример #1
0
        public static ResultadoTransaccion GuardaActividad(LogActividadUsuarios log)
        {
            ResultadoTransaccion res  = new ResultadoTransaccion();
            SqlConnection        conn = BaseDatos.NuevaConexion();

            try
            {
                objParams          = SqlHelperParameterCache.GetSpParameterSet(conn, "SP_N_LOG_ACTIVIDAD_USUARIO");
                objParams[0].Value = log.Entidad;
                objParams[1].Value = log.IdEntidad;
                objParams[2].Value = log.Actividad;
                objParams[3].Value = log.Usuario.Id;
                SqlCommand command3 = new SqlCommand("SP_N_LOG_ACTIVIDAD_USUARIO", conn);

                command3.Parameters.AddRange(objParams);
                command3.CommandType = CommandType.StoredProcedure;
                command3.ExecuteNonQuery();

                res.Estado = Enums.EstadoTransaccion.Aceptada;
            }
            catch (Exception ex)
            {
                res.Estado      = Enums.EstadoTransaccion.Rechazada;
                res.Descripcion = ex.Message;
                Log.EscribirLog(ex.Message);
            }
            finally
            {
                if (conn != null)
                {
                    if (conn.State == ConnectionState.Open)
                    {
                        conn.Close();
                    }
                }
            }
            return(res);
        }
Пример #2
0
        public static ResultadoTransaccion GuardarCuenta(clsCuenta cuenta)
        {
            resTransaccion = new ResultadoTransaccion();
            Int64 idMaster = 0;
            Int64 idCuenta = 0;

            try
            {
                //Abrir Conexion
                conn = BaseDatos.Conexion();

                //Crear Transaccion
                transaction = conn.BeginTransaction();

                //Registrar Direcciones
                resTransaccion = clsDireccionADO.GuardarDirecciones(cuenta.ClienteMaster.DireccionInfo, conn, transaction);
                if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                {
                    throw new Exception(resTransaccion.Descripcion);
                }
                cuenta.ClienteMaster.DireccionInfo = (clsDireccionInfo)resTransaccion.ObjetoTransaccion;

                //Registrar Cliente Master
                resTransaccion = clsClienteMasterADO.GuardarClienteMaster(cuenta.ClienteMaster, conn,
                                                                          transaction);
                if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                {
                    throw new Exception(resTransaccion.Descripcion);
                }

                idMaster = (Int64)resTransaccion.ObjetoTransaccion;

                //Registrar Cuenta
                objParams          = SqlHelperParameterCache.GetSpParameterSet(conn, "SP_N_CLIENTES_CUENTA");
                objParams[0].Value = idMaster;

                if (cuenta.VendedorAsignado != null)
                {
                    objParams[1].Value = cuenta.VendedorAsignado.Id;
                }
                else
                {
                    objParams[1].Value = -1;
                }

                //if (cuenta.CustomerAsignado != null)
                //    objParams[2].Value = cuenta.CustomerAsignado.Id;
                //else
                //    objParams[2].Value = -1;

                objParams[2].Value = cuenta.Telefono;
                objParams[3].Value = cuenta.CuentaSkype;
                objParams[4].Value = cuenta.SitioWeb;
                objParams[5].Value = cuenta.Email;
                objParams[6].Value = cuenta.Estado;

                if (cuenta.ZonaVentas == null)
                {
                    objParams[7].Value = -1;
                }
                else
                {
                    objParams[7].Value = cuenta.ZonaVentas.Id;
                }

                if (cuenta.CategoriaCliente == null)
                {
                    objParams[8].Value = -1;
                }
                else
                {
                    objParams[8].Value = cuenta.CategoriaCliente.Id;
                }

                objParams[9].Value = cuenta.Observacion;

                if (cuenta.SectorEconomico != null)
                {
                    objParams[10].Value = cuenta.SectorEconomico.Id;
                }
                else
                {
                    objParams[10].Value = -1;
                }

                if (cuenta.TipoMonedaVtaEstimada != null)
                {
                    objParams[11].Value = cuenta.TipoMonedaVtaEstimada.Id;
                }
                else
                {
                    objParams[11].Value = -1;
                }

                objParams[12].Value = cuenta.MontoVentaEstimada;
                objParams[13].Value = cuenta.NumEmpleados;

                if (cuenta.UMMovimientoEstimado != null)
                {
                    objParams[14].Value = cuenta.UMMovimientoEstimado.Id;
                }
                else
                {
                    objParams[14].Value = -1;
                }

                objParams[15].Value = cuenta.MontoMovimientoEstimado;


                if (cuenta.FormaContactoPreferida != null)
                {
                    objParams[16].Value = cuenta.FormaContactoPreferida.Id;
                }
                else
                {
                    objParams[16].Value = -1;
                }

                objParams[17].Value = cuenta.PermiteTelOficina;
                objParams[18].Value = cuenta.PermiteTelParticular;
                objParams[19].Value = cuenta.PermiteTelCelular;
                objParams[20].Value = cuenta.PermiteSkype;
                objParams[21].Value = cuenta.PermiteEmail;
                objParams[22].Value = cuenta.PermiteEmailMasivo;
                if (cuenta.DiaPreferido == null)
                {
                    objParams[23].Value = -1;
                }
                else
                {
                    objParams[23].Value = cuenta.DiaPreferido.Id;
                }

                if (cuenta.JornadaPreferida == null)
                {
                    objParams[24].Value = -1;
                }
                else
                {
                    objParams[24].Value = cuenta.JornadaPreferida.Id;
                }

                objParams[25].Value = cuenta.AutorizadoAduana;

                if (cuenta.Clasificacion == null)
                {
                    objParams[26].Value = -1;
                }
                else
                {
                    objParams[26].Value = cuenta.Clasificacion.Id;
                }

                SqlCommand command2 = new SqlCommand("SP_N_CLIENTES_CUENTA", conn);
                command2.Transaction = transaction;
                command2.Parameters.AddRange(objParams);
                command2.CommandType = CommandType.StoredProcedure;
                idCuenta             = Convert.ToInt64(command2.ExecuteScalar());
                cuenta.Id            = idCuenta;
                if (idMaster > 0)
                {
                    //Productos preferidos
                    //clsClienteMasterADO.BorrarProductos(idTarget, transaction,conn);
                    foreach (var producto in cuenta.ClienteMaster.ProductosPreferidos)
                    {
                        clsClienteMasterADO.AsignarTipoProducto(producto, idMaster, transaction, conn);
                    }

                    //Tipos Relacion
                    //clsClienteMasterADO.BorrarTipoRelacion(idMaster, transaction, conn);
                    foreach (var relacion in cuenta.ClienteMaster.TiposRelaciones)
                    {
                        clsClienteMasterADO.AsignarTipoRelacion(relacion, idMaster, transaction, conn);
                    }
                }

                //Ejecutar transaccion
                transaction.Commit();

                resTransaccion.Estado      = Enums.EstadoTransaccion.Aceptada;
                resTransaccion.Descripcion = "Se Creo Cuenta con Id " + idMaster.ToString();


                //Registrar Actividad
                LogActividadUsuarios log = new LogActividadUsuarios(cuenta.GetType().ToString(), cuenta.Id, Enums.TipoActividadUsuario.Creo, Base.Usuario.UsuarioConectado.Usuario);
                LogActividades.clsLogActividadUsuariosADO.GuardaActividad(log);
            }
            catch (Exception ex)
            {
                transaction.Rollback();
                Log.EscribirLog(ex.Message);

                resTransaccion.Estado       = Enums.EstadoTransaccion.Rechazada;
                resTransaccion.Descripcion  = ex.Message;
                resTransaccion.ArchivoError = "clsCuentaADO";
                resTransaccion.MetodoError  = MethodBase.GetCurrentMethod().Name;
            }
            finally
            {
                conn.Close();
                resTransaccion.Accion            = Enums.AccionTransaccion.Insertar;
                cuenta.Id                        = idCuenta;
                cuenta.ClienteMaster.Id          = idMaster;
                resTransaccion.ObjetoTransaccion = cuenta;
            }

            return(resTransaccion);
        }
Пример #3
0
        public static ResultadoTransaccion EliminarCuenta(clsCuenta cuenta)
        {
            ResultadoTransaccion resTransaccion = new ResultadoTransaccion();

            try
            {
                transaction = BaseDatos.Conexion().BeginTransaction();


                //Eliminar Direcciones
                if (cuenta.ClienteMaster.DireccionInfo != null)
                {
                    foreach (var direccion in cuenta.ClienteMaster.DireccionInfo.Items)
                    {
                        resTransaccion = new ResultadoTransaccion();
                        resTransaccion = clsDireccionADO.EliminarDireccion(direccion, transaction);

                        if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                        {
                            throw new Exception(resTransaccion.Descripcion);
                        }
                    }

                    resTransaccion = new ResultadoTransaccion();
                    resTransaccion = clsDireccionADO.EliminarDireccionInfo(cuenta.ClienteMaster.DireccionInfo.IdInfo,
                                                                           transaction);
                    if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                    {
                        throw new Exception(resTransaccion.Descripcion);
                    }
                }

                //Eliminar Tipos de Relacion
                resTransaccion = new ResultadoTransaccion();
                resTransaccion = clsClienteMasterADO.BorrarTipoRelacion(cuenta.ClienteMaster.Id, transaction, conn);
                if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                {
                    throw new Exception(resTransaccion.Descripcion);
                }

                //Eliminar Tipos de Carga
                resTransaccion = new ResultadoTransaccion();
                resTransaccion = clsClienteMasterADO.BorrarProductos(cuenta.ClienteMaster.Id, transaction, conn);
                if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                {
                    throw new Exception(resTransaccion.Descripcion);
                }


                //Eliminar Cliente Master
                resTransaccion = new ResultadoTransaccion();
                resTransaccion = clsClienteMasterADO.EliminarClienteMaster(cuenta.ClienteMaster, transaction);
                if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                {
                    throw new Exception(resTransaccion.Descripcion);
                }

                //Eliminar Contactos
                IList <clsContacto> listContactos = new List <clsContacto>();
                listContactos = clsClienteMasterADO.ListarContactos(cuenta.ClienteMaster);
                foreach (var contacto in listContactos)
                {
                    resTransaccion = new ResultadoTransaccion();
                    resTransaccion = clsContactoADO.EliminarContacto(contacto, transaction);
                    if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                    {
                        throw new Exception(resTransaccion.Descripcion);
                    }
                }

                //Eliminar Cuenta
                objParams          = SqlHelperParameterCache.GetSpParameterSet(BaseDatos.Conexion(), "SP_E_CLIENTES_CUENTA");
                objParams[0].Value = cuenta.Id;

                SqlCommand command = new SqlCommand("SP_E_CLIENTES_CUENTA", BaseDatos.Conexion());
                command.Parameters.AddRange(objParams);
                command.CommandType = CommandType.StoredProcedure;
                command.Transaction = transaction;
                command.ExecuteNonQuery();
                resTransaccion.Estado = Enums.EstadoTransaccion.Aceptada;

                transaction.Commit();


                //Registrar Actividad
                LogActividadUsuarios log = new LogActividadUsuarios(cuenta.GetType().ToString(), cuenta.Id, Enums.TipoActividadUsuario.Elimino, Base.Usuario.UsuarioConectado.Usuario);
                LogActividades.clsLogActividadUsuariosADO.GuardaActividad(log);
            }
            catch (Exception ex)
            {
                transaction.Rollback();
                resTransaccion.Estado      = Enums.EstadoTransaccion.Rechazada;
                resTransaccion.Descripcion = ex.Message;
                Log.EscribirLog(ex.Message);
            }
            finally
            {
                BaseDatos.CerrarConexion();
            }
            return(resTransaccion);
        }
Пример #4
0
        public static ResultadoTransaccion ActualizarCuenta(clsCuenta cuenta)
        {
            resTransaccion = new ResultadoTransaccion();
            try
            {
                //Abrir Conexion
                conn = BaseDatos.Conexion();

                //Crear Transaccion
                transaction = conn.BeginTransaction();

                //Registrar Direcciones
                resTransaccion = clsDireccionADO.GuardarDirecciones(cuenta.ClienteMaster.DireccionInfo, conn, transaction);
                if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                {
                    throw new Exception(resTransaccion.Descripcion);
                }

                cuenta.ClienteMaster.DireccionInfo = (clsDireccionInfo)resTransaccion.ObjetoTransaccion;


                //Actualizar Master
                resTransaccion = clsClienteMasterADO.ActualizarClienteMaster(cuenta.ClienteMaster, conn, transaction);
                if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                {
                    throw new Exception(resTransaccion.Descripcion);
                }

                //Actualizar Cuenta
                objParams          = SqlHelperParameterCache.GetSpParameterSet(conn, "SP_A_CLIENTES_MASTER");
                objParams[0].Value = cuenta.Id;
                objParams[1].Value = cuenta.ClienteMaster.Id;

                if (cuenta.VendedorAsignado != null)
                {
                    objParams[2].Value = cuenta.VendedorAsignado.Id;
                }
                else
                {
                    objParams[2].Value = -1;
                }

                //if (cuenta.CustomerAsignado != null)
                //    objParams[3].Value = cuenta.CustomerAsignado.Id;
                //else
                //    objParams[3].Value = -1;

                objParams[3].Value = cuenta.Telefono;
                objParams[4].Value = cuenta.CuentaSkype;
                objParams[5].Value = cuenta.SitioWeb;
                objParams[6].Value = cuenta.Email;
                objParams[7].Value = cuenta.Estado;

                if (cuenta.ZonaVentas != null)
                {
                    objParams[8].Value = cuenta.ZonaVentas.Id;
                }
                else
                {
                    objParams[8].Value = -1;
                }

                if (cuenta.CategoriaCliente != null)
                {
                    objParams[9].Value = cuenta.CategoriaCliente.Id;
                }
                else
                {
                    objParams[9].Value = -1;
                }

                objParams[10].Value = cuenta.Observacion;

                if (cuenta.SectorEconomico != null)
                {
                    objParams[11].Value = cuenta.SectorEconomico.Id;
                }
                else
                {
                    objParams[11].Value = -1;
                }

                if (cuenta.TipoMonedaVtaEstimada != null)
                {
                    objParams[12].Value = cuenta.TipoMonedaVtaEstimada.Id;
                }
                else
                {
                    objParams[12].Value = -1;
                }

                objParams[13].Value = cuenta.MontoVentaEstimada;
                objParams[14].Value = cuenta.NumEmpleados;

                if (cuenta.UMMovimientoEstimado != null)
                {
                    objParams[15].Value = cuenta.UMMovimientoEstimado.Id;
                }
                else
                {
                    objParams[15].Value = -1;
                }

                objParams[16].Value = cuenta.MontoMovimientoEstimado;

                if (cuenta.FormaContactoPreferida != null)
                {
                    objParams[17].Value = cuenta.FormaContactoPreferida.Id;
                }
                else
                {
                    objParams[17].Value = -1;
                }

                objParams[18].Value = cuenta.PermiteTelOficina;
                objParams[19].Value = cuenta.PermiteTelParticular;
                objParams[20].Value = cuenta.PermiteTelCelular;
                objParams[21].Value = cuenta.PermiteSkype;
                objParams[22].Value = cuenta.PermiteEmail;
                objParams[23].Value = cuenta.PermiteEmailMasivo;
                if (cuenta.DiaPreferido == null)
                {
                    objParams[24].Value = -1;
                }
                else
                {
                    objParams[24].Value = cuenta.DiaPreferido.Id;
                }

                if (cuenta.JornadaPreferida == null)
                {
                    objParams[25].Value = -1;
                }
                else
                {
                    objParams[25].Value = cuenta.JornadaPreferida.Id;
                }

                objParams[26].Value = cuenta.AutorizadoAduana;

                if (cuenta.Clasificacion == null)
                {
                    objParams[27].Value = -1;
                }
                else
                {
                    objParams[27].Value = cuenta.Clasificacion.Id;
                }

                objParams[28].Value = cuenta.TipoReciboAperturaEmbarcador;

                SqlCommand command2 = new SqlCommand("SP_A_CLIENTES_MASTER", conn, transaction);
                command2.Parameters.AddRange(objParams);
                command2.CommandType = CommandType.StoredProcedure;
                command2.ExecuteNonQuery();

                //Productos preferidos

                foreach (var producto in cuenta.ClienteMaster.ProductosPreferidos)
                {
                    if (producto.IsNew && !producto.IsDeleted)
                    {
                        clsClienteMasterADO.AsignarTipoProducto(producto, cuenta.ClienteMaster.Id, transaction, conn);
                    }
                    else if (!producto.IsNew && !producto.IsDeleted)
                    {
                        clsClienteMasterADO.ActualizarTipoProducto(producto, transaction, conn);
                    }
                    else if (producto.IsDeleted)
                    {
                        clsClienteMasterADO.BorrarProductosPorId(producto.Id, transaction, conn);
                    }
                }


                //resTransaccion = clsClienteMasterADO.BorrarProductos(cuenta.ClienteMaster.Id, transaction, conn);
                //if (resTransaccion.Estado == Enums.EstadoTransaccion.Aceptada)
                //{
                //    foreach (var producto in cuenta.ClienteMaster.ProductosPreferidos)
                //    {
                //        clsClienteMasterADO.AsignarTipoProducto(producto, cuenta.ClienteMaster.Id, transaction, conn);
                //    }
                //}
                //else
                //    throw new Exception(resTransaccion.Descripcion);


                //Tipos Relacion
                resTransaccion = clsClienteMasterADO.BorrarTipoRelacion(cuenta.ClienteMaster.Id, transaction, conn);
                if (resTransaccion.Estado == Enums.EstadoTransaccion.Aceptada)
                {
                    foreach (var relacion in cuenta.ClienteMaster.TiposRelaciones)
                    {
                        clsClienteMasterADO.AsignarTipoRelacion(relacion, cuenta.ClienteMaster.Id, transaction, conn);
                    }
                }
                else
                {
                    throw new Exception(resTransaccion.Descripcion);
                }


                //Condiciones comerciales
                //resTransaccion = clsCondicionComercialDAO.GuardaCondicionComercialCliente(cuenta.ClienteMaster, conn,
                //   transaction);
                //if(resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                //    throw new Exception(resTransaccion.Descripcion);


                //Ejecutar transaccion
                transaction.Commit();

                resTransaccion.Estado      = Enums.EstadoTransaccion.Aceptada;
                resTransaccion.Descripcion = "Se actualizo Cuenta con Id " + cuenta.Id.ToString();

                //Registrar Actividad
                LogActividadUsuarios log = new LogActividadUsuarios(cuenta.GetType().ToString(), cuenta.Id, Enums.TipoActividadUsuario.Edito, Base.Usuario.UsuarioConectado.Usuario);
                LogActividades.clsLogActividadUsuariosADO.GuardaActividad(log);
            }
            catch (Exception ex)
            {
                transaction.Rollback();
                Log.EscribirLog(ex.Message);

                resTransaccion.Estado      = Enums.EstadoTransaccion.Rechazada;
                resTransaccion.Descripcion = ex.Message;
            }
            finally
            {
                conn.Close();
                resTransaccion.Accion            = Enums.AccionTransaccion.Actualizar;
                resTransaccion.ObjetoTransaccion = cuenta;
            }

            return(resTransaccion);
        }
Пример #5
0
        public static ResultadoTransaccion GuardarContacto(clsContacto contacto, Int64 idClienteMaster)
        {
            Int64 IdContacto = 0;

            resTransaccion = new ResultadoTransaccion();
            try
            {
                //Abrir Conexion
                conn = BaseDatos.Conexion();

                //Crear Transaccion
                transaction = conn.BeginTransaction();

                //Registrar Direcciones
                resTransaccion = clsDireccionADO.GuardarDirecciones(contacto.DireccionInfo, conn, transaction);
                if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                {
                    throw new Exception(resTransaccion.Descripcion);
                }
                contacto.DireccionInfo = (clsDireccionInfo)resTransaccion.ObjetoTransaccion;

                //Registrar Contacto
                objParams = SqlHelperParameterCache.GetSpParameterSet(conn, "SP_N_CLIENTES_CONTACTO");
                if (contacto.TipoSaludo != null)
                {
                    objParams[0].Value = contacto.TipoSaludo.Id;
                }
                else
                {
                    objParams[0].Value = -1;
                }

                objParams[1].Value  = contacto.Nombre;
                objParams[2].Value  = contacto.ApellidoPaterno;
                objParams[3].Value  = contacto.ApellidoMaterno;
                objParams[4].Value  = contacto.Cargo;
                objParams[5].Value  = contacto.TelefonoOficina;
                objParams[6].Value  = contacto.TelefonoParticular;
                objParams[7].Value  = contacto.TelefonoCelular;
                objParams[8].Value  = contacto.CuentaSkype;
                objParams[9].Value  = contacto.Email;
                objParams[10].Value = contacto.Estado;

                objParams[11].Value = contacto.Observacion;
                if (contacto.Departamento == null)
                {
                    objParams[12].Value = -1;
                }
                else
                {
                    objParams[12].Value = contacto.Departamento.Id;
                }

                objParams[13].Value = contacto.NombreJefe;
                objParams[14].Value = contacto.TelefonoJefe;

                if (contacto.TipoRol == null)
                {
                    objParams[15].Value = -1;
                }
                else
                {
                    objParams[15].Value = contacto.TipoRol.Id;
                }

                objParams[16].Value = contacto.NombreAyudante;
                objParams[17].Value = contacto.TelefonoAyudante;

                objParams[18].Value = contacto.Cumpleaños;
                if (contacto.EstadoCivil == null)
                {
                    objParams[19].Value = -1;
                }
                else
                {
                    objParams[19].Value = contacto.EstadoCivil.Id;
                }

                if (contacto.Sexo == null)
                {
                    objParams[20].Value = -1;
                }
                else
                {
                    objParams[20].Value = contacto.Sexo.Id;
                }

                objParams[21].Value = contacto.NombrePareja;
                objParams[22].Value = contacto.FechaAniversario;
                objParams[23].Value = contacto.RegaloPreferido;

                if (contacto.FormaContactoPreferida == null)
                {
                    objParams[24].Value = -1;
                }
                else
                {
                    objParams[24].Value = contacto.FormaContactoPreferida.Id;
                }

                objParams[25].Value = contacto.PermiteTelOficina;
                objParams[26].Value = contacto.PermiteTelParticular;
                objParams[27].Value = contacto.PermiteTelCelular;
                objParams[28].Value = contacto.PermiteSkype;
                objParams[29].Value = contacto.PermiteEmail;
                objParams[30].Value = contacto.PermiteEmailMasivo;

                if (contacto.DiaPreferido == null)
                {
                    objParams[31].Value = -1;
                }
                else
                {
                    objParams[31].Value = contacto.DiaPreferido.Id;
                }

                if (contacto.JornadaPreferida == null)
                {
                    objParams[32].Value = -1;
                }
                else
                {
                    objParams[32].Value = contacto.JornadaPreferida.Id;
                }

                objParams[33].Value = contacto.EsPrincipal;

                if (contacto.DireccionInfo == null || contacto.DireccionInfo.IdInfo == 0)
                {
                    objParams[34].Value = -1;
                }
                else
                {
                    objParams[34].Value = contacto.DireccionInfo.IdInfo;
                }

                objParams[35].Value = contacto.Propietario.Id;
                objParams[36].Value = idClienteMaster;

                SqlCommand command2 = new SqlCommand("SP_N_CLIENTES_CONTACTO", conn);
                command2.Transaction = transaction;
                command2.Parameters.AddRange(objParams);
                command2.CommandType = CommandType.StoredProcedure;
                IdContacto           = Convert.ToInt64(command2.ExecuteScalar());
                contacto.Id          = IdContacto;

                //resTransaccion = GuardarClienteContactoRelacionado(idClienteMaster, IdContacto, conn, transaction);
                //if(resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                //    throw new Exception(resTransaccion.Descripcion);


                //Ejecutar transaccion
                transaction.Commit();

                resTransaccion.Estado      = Enums.EstadoTransaccion.Aceptada;
                resTransaccion.Descripcion = "Se Creo Cuenta con Id " + contacto.ToString();


                //Registrar Actividad
                LogActividadUsuarios log = new LogActividadUsuarios(contacto.GetType().ToString(), contacto.Id, Enums.TipoActividadUsuario.Creo, Base.Usuario.UsuarioConectado.Usuario);
                LogActividades.clsLogActividadUsuariosADO.GuardaActividad(log);
            }
            catch (Exception ex)
            {
                transaction.Rollback();
                Log.EscribirLog(ex.Message);

                resTransaccion.Estado       = Enums.EstadoTransaccion.Rechazada;
                resTransaccion.Descripcion  = ex.Message;
                resTransaccion.ArchivoError = "clsTargetDao.cs";
                resTransaccion.MetodoError  = "GuardaTarget";
            }
            finally
            {
                conn.Close();
                resTransaccion.Accion            = Enums.AccionTransaccion.Insertar;
                contacto.Id                      = IdContacto;
                resTransaccion.ObjetoTransaccion = contacto;
            }

            return(resTransaccion);
        }
Пример #6
0
        public static ResultadoTransaccion EliminarContacto(clsContacto contacto, SqlTransaction transaction)
        {
            bool ejecutaCommit = false;
            ResultadoTransaccion resTransaccion = new ResultadoTransaccion();

            try
            {
                if (transaction == null)
                {
                    transaction   = BaseDatos.Conexion().BeginTransaction();
                    ejecutaCommit = true;
                }


                //Eliminar Direcciones Contacto
                if (contacto.DireccionInfo != null)
                {
                    foreach (var direccion in contacto.DireccionInfo.Items)
                    {
                        resTransaccion = new ResultadoTransaccion();
                        resTransaccion = clsDireccionADO.EliminarDireccion(direccion, transaction);
                        if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada)
                        {
                            throw new Exception(resTransaccion.Descripcion);
                        }
                    }
                }

                //Eliminar Contacto
                objParams          = SqlHelperParameterCache.GetSpParameterSet(BaseDatos.Conexion(), "SP_E_CLIENTES_CONTACTO");
                objParams[0].Value = contacto.Id;

                SqlCommand command = new SqlCommand("SP_E_CLIENTES_CONTACTO", BaseDatos.Conexion());
                command.Parameters.AddRange(objParams);
                command.CommandType = CommandType.StoredProcedure;
                command.Transaction = transaction;
                command.ExecuteNonQuery();
                resTransaccion.Estado = Enums.EstadoTransaccion.Aceptada;

                if (ejecutaCommit)
                {
                    transaction.Commit();
                }


                //Registrar Actividad
                LogActividadUsuarios log = new LogActividadUsuarios(contacto.GetType().ToString(), contacto.Id, Enums.TipoActividadUsuario.Elimino, Base.Usuario.UsuarioConectado.Usuario);
                LogActividades.clsLogActividadUsuariosADO.GuardaActividad(log);
            }
            catch (Exception ex)
            {
                if (ejecutaCommit)
                {
                    transaction.Rollback();
                }

                resTransaccion.Estado      = Enums.EstadoTransaccion.Rechazada;
                resTransaccion.Descripcion = ex.Message;
                Log.EscribirLog(ex.Message);
            }
            return(resTransaccion);
        }