示例#1
0
        public Boolean Deleted(Cuenta cuenta, Usuario usuario, out String mensaje)
        {
            if (!Guachi.Consultar(usuario, VentanaInfo.FormMaestroCuenta, CRUDName.Eliminar))
            {
                mensaje = "Acceso denegado!!!";
                return(false);
            }
            var sql = "UPDATE accounts T01 " +
                      "SET T01.active = 0, T01.updated_by = @updated_by " +
                      "WHERE T01.account_id = @account_id AND T01.account_guide + 0 = 3 " +
                      "AND(SELECT COUNT(*) " +
                      "FROM transactions_accounting T0 " +
                      "LEFT JOIN accounting_entries T1 USING(accounting_entry_id) " +
                      "LEFT JOIN accounting_months T2 USING(accounting_months_id) " +
                      "WHERE T2.active = 1 AND T2.closed = 0 AND T1.active = 1 AND T0.active = 1 " +
                      "AND T0.account_id = @account_id) = 0 LIMIT 1";
            var parametros = new List <Parametro>();

            parametros.Add(new Parametro("@account_id", cuenta.Id));
            parametros.Add(new Parametro("@updated_by", usuario.UsuarioId));

            var result = manejador.Ejecutar(sql, parametros, CommandType.Text);

            mensaje = (result == 1) ? "Cuenta eliminada correctamente" : "No se pudo eliminar la cuenta porque tiene movimientos";
            return((result == 1) ? true : false);
        }
示例#2
0
        public bool Delete(Asiento t, Usuario user, out String mensaje)
        {
            try
            {
                if (!Guachi.Consultar(user, VentanaInfo.FormAsientos, CRUDName.Eliminar))
                {
                    mensaje = "Acceso denegado!!!";
                    return(false);
                }

                var sql = "UPDATE accounting_entries SET active = FALSE " +
                          "WHERE accounting_entry_id = @accounting_entry_id LIMIT 1";

                //int totalActulizados;
                var cnt = manejador.Ejecutar(sql, new List <Parametro> {
                    new Parametro("@accounting_entry_id", t.Id)
                }, CommandType.Text);

                mensaje = $"Se actualizaron {cnt} asientos";
                return(true);
            }
            catch (Exception ex)
            {
                mensaje = ex.Message;
                return(false);
            }
        }
示例#3
0
        public Boolean Insert(Compañia compania, Usuario user, Compañia copiarMAestroCuenta, out String mensaje)
        {
            if (!Guachi.Consultar(user, VentanaInfo.FormMaestroCompanias, CRUDName.Insertar))
            {
                mensaje = "Acceso denegado!!!";
                return(false);
            }

            var sql = "INSERT INTO companies(company_id,type_id,number_id,name,money_type,op1,op2,address,website,mail,phone_number1,phone_number2,notes,user_id)" +
                      "VALUES(@company_id,@type_id,@number_id,@name,@money_type,@op1,@op2,@address,@website,@mail,@phone_number1,@phone_number2,@notes,@user_id);";

            try
            {
                List <Parametro> lst = new List <Parametro>();
                compania.Codigo = NuevoCodigo();

                lst.Add(new Parametro("@company_id", compania.Codigo));
                lst.Add(new Parametro("@type_id", (int)compania.TipoId));
                lst.Add(new Parametro("@number_id", compania.NumeroCedula));
                lst.Add(new Parametro("@name", compania.Nombre));
                lst.Add(new Parametro("@money_type", (int)compania.TipoMoneda));
                lst.Add(new Parametro("@address", compania.Direccion));
                lst.Add(new Parametro("@website", compania.Web));
                lst.Add(new Parametro("@mail", compania.Correo));
                lst.Add(new Parametro("@phone_number1", compania.Telefono[0]));
                lst.Add(new Parametro("@phone_number2", compania.Telefono[1]));
                lst.Add(new Parametro("@notes", compania.Observaciones));
                lst.Add(new Parametro("@user_id", user.UsuarioId));
                lst.Add(new Parametro("@op1", ((compania is PersonaJuridica) ? ((PersonaJuridica)compania).MyIDRepresentanteLegal : ((PersonaFisica)compania).MyApellidoPaterno)));
                lst.Add(new Parametro("@op2", ((compania is PersonaJuridica) ? ((PersonaJuridica)compania).MyRepresentanteLegal : ((PersonaFisica)compania).MyApellidoMaterno)));

                if (manejador.Ejecutar(sql, lst, CommandType.Text) != 0)
                {
                    if (copiarMAestroCuenta.Codigo == "POR DEFECTO")
                    {
                        GenerarCuentasDefault(compania, user);
                    }
                    else
                    {
                        if (!CopiarMaestroDeCuenta(copiarMAestroCuenta, user, compania))
                        {
                            mensaje = "No se pudo clonar el maestro de cuentas";
                            return(false);
                        }
                    }
                    mensaje = "Se registro la compañia correctamente";
                    return(true);
                }
                else
                {
                    mensaje = "No se pudo ingresar la compañia";
                    return(false);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#4
0
        public Boolean Insert(UsuarioTemporal usuarioTemporal)
        {
            var sql        = "insert into usuarios_correo (nombre,apellido,correo_electronico,correo_copia,asunto,titulo,mensaje,estado) VALUES(@nombre, @apellido, @correo_electronico,@correo_copia, @asunto,@titulo, @mensaje,@estado)";
            var parametros = new List <Parametro> {
                new Parametro("@nombre", usuarioTemporal.Nombre),
                new Parametro("@apellido", usuarioTemporal.Apellido),
                new Parametro("@correo_electronico", usuarioTemporal.CorreoElectronico),
                new Parametro("@correo_copia", usuarioTemporal.CCopy),
                new Parametro("@asunto", usuarioTemporal.Asunto),
                new Parametro("@titulo", usuarioTemporal.Titulo),
                new Parametro("@mensaje", usuarioTemporal.Cuerpo),
                new Parametro("@estado", Convert.ToInt16(usuarioTemporal.EstadoEnvio))
            };

            try
            {
                var resl = manejador.Ejecutar(sql, parametros, CommandType.Text);

                return((resl == 0) ? false : true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
示例#5
0
        public Boolean Insert(Usuario t, Usuario user, out String mensaje)
        {
            if (!Guachi.Consultar(user, VentanaInfo.FormMaestroUsuario, CRUDName.Insertar))
            {
                mensaje = "Acceso denegado!!!";
                return(false);
            }

            var sql = "INSERT INTO users(number_id,  name,  user_name , user_type , lastname_p , lastname_m,  phone_number , mail , notes,  password,  updated_by,  active) " +
                      "VALUES(@number_id, @name, @user_name, @user_type, @lastname_p, @lastname_m, @phone_number, @mail, @notes, @password, @updated_by, @active);";
            List <Parametro> lst = new List <Parametro>();

            try
            {
                lst.Add(new Parametro("@number_id", t.MyCedula));
                lst.Add(new Parametro("@name", t.MyNombre));
                lst.Add(new Parametro("@user_name", t.UserName));
                lst.Add(new Parametro("@user_type", (int)t.TipoUsuario));
                lst.Add(new Parametro("@lastname_p", t.MyApellidoPaterno));
                lst.Add(new Parametro("@lastname_m", t.MyApellidoMaterno));
                lst.Add(new Parametro("@phone_number", t.MyTelefono));
                lst.Add(new Parametro("@mail", t.MyMail));
                lst.Add(new Parametro("@notes", t.MyNotas));
                lst.Add(new Parametro("@password", t.MyClave));
                lst.Add(new Parametro("@updated_by", user.UsuarioId));
                lst.Add(new Parametro("@active", Convert.ToInt16(t.MyActivo)));

                if (manejador.Ejecutar(sql, lst, CommandType.Text) == 0)
                {
                    mensaje = "No se guardaron datos";
                    return(false);
                }
                else
                {
                    mensaje = "Datos guardados correctamente";
                    return(true);
                }
            }
            catch (Exception ex)
            {
                mensaje = ex.Message;
                return(false);
            }
        }
示例#6
0
        public Boolean InsertCompany(List <Compañia> compañias, Usuario asignacion, Usuario usuario)
        {
            int contador = compañias.Count;

            foreach (var compani in compañias)
            {
                ///agregar el ignore
                var sql = "INSERT INTO companies_permission (user_id,company_id,updated_by) VALUES (@user_id,@company_id,@updated_by) " +
                          "ON DUPLICATE KEY UPDATE updated_by = @updated_by , updated_at = NOW(), active = 1";

                var parametros = new List <Parametro> {
                    new Parametro("@user_id", asignacion.UsuarioId),
                    new Parametro("@company_id", compani.Codigo),
                    new Parametro("@updated_by", usuario.UsuarioId)
                };

                contador = (manejador.Ejecutar(sql, parametros, CommandType.Text) == 1) ? contador - 1 : contador;
            }
            return((contador == 0) ? true : false);
        }
示例#7
0
        public bool Update(Transaccion tr, Usuario usuario, out String mensaje)
        {
            if (!Guachi.Consultar(usuario, VentanaInfo.FormAsientos, CRUDName.Actualizar))
            {
                mensaje = "Acceso denegado!!!";
                return(false);
            }
            try
            {
                var sql = "UPDATE transactions_accounting " +
                          "SET account_id = @account_id, " +
                          "reference = @reference, " +
                          "detail = @detail, " +
                          "balance = @balance," +
                          "balance_type = @balance_type, " +
                          "money_type = @money_type, " +
                          "money_chance = @money_chance, " +
                          "bill_date = @bill_date," +
                          "updated_by = @updated_by " +
                          "WHERE transaction_accounting_id = @transaction_accounting_id";

                List <Parametro> lst = new List <Parametro>
                {
                    new Parametro("@account_id", tr.CuentaDeAsiento.Id),
                    new Parametro("@reference", tr.Referencia),
                    new Parametro("@detail", tr.Detalle),
                    new Parametro("@balance", tr.Monto),
                    new Parametro("@balance_type", (int)tr.ComportamientoCuenta),
                    new Parametro("@money_type", (int)tr.TipoCambio),
                    new Parametro("@money_chance", tr.MontoTipoCambio),
                    new Parametro("@bill_date", tr.FechaFactura),
                    new Parametro("@updated_by", usuario.UsuarioId),
                    new Parametro("@transaction_accounting_id", tr.Id)
                };

                if (manejador.Ejecutar(sql, lst, CommandType.Text) == 0)
                {
                    mensaje = "No se pudo actualizar ningun registro";
                    return(false);
                }
                else
                {
                    mensaje = "Se actualizaron datos correctamente";
                    return(true);
                }
            }
            catch (Exception ex)
            {
                mensaje = ex.Message;
                return(false);
            }
        }
示例#8
0
        public Boolean Insert(FechaTransaccion t, Compañia compañia, Usuario user, out String mensaje)
        {
            if (!Guachi.Consultar(user, VentanaInfo.FormAdminMeses, CRUDName.Insertar))
            {
                mensaje = "Acceso denegado!!!";
                return(false);
            }

            try
            {
                var sql = "INSERT INTO accounting_months(month_report,company_id,updated_by) VALUES(@month_report,@company_id,@updated_by);";

                var parametros = new List <Parametro>()
                {
                    new Parametro("@month_report", t.Fecha),
                    new Parametro("@company_id", compañia.Codigo),
                    new Parametro("@updated_by", user.UsuarioId)
                };

                if (manejador.Ejecutar(sql, parametros, CommandType.Text) == 0)
                {
                    mensaje = "No se guardaron datos";
                    return(false);
                }
                else
                {
                    mensaje = "Datos guardados correctamente";
                    return(true);
                }
            }
            catch (Exception ex)
            {
                mensaje = ex.Message;
                return(false);
            }
        }