コード例 #1
0
        public static ResponseObject <BankData[]> List(RequestEmpty request)
        {
            var response = new ResponseObject <BankData[]>();

            if (RequestsExtensions.IsValid(request, response))
            {
                using (var db = new DataBase())
                {
                    try
                    {
                        db.AddParameter("request", SqlDbType.Xml, request.ToRequestEmpty());
                        db.AddParameter("done", SqlDbType.Bit, ParameterDirection.Output);

                        db.FillDataTable(response, "SP_SOCIOS_LISTA", (dt) =>
                        {
                            if (Convert.ToBoolean(db.GetParameter("done")))
                            {
                                response.Result   = Common.Populate <BankData>(dt);
                                response.CodeName = (response.Result.Length > 0) ? Codes.Found : Codes.NotFound;
                            }
                            else
                            {
                                response = Common.Populate <ResponseEmpty>(dt).First().ToResponseObject <BankData[]>();
                            }
                        });
                    }
                    catch (Exception ex)
                    {
                        response.ConfigureAndLog("Ha ocurrido un error al listar los socios.", 1500, ex);
                    }
                }
            }

            return(response);
        }
コード例 #2
0
        public static ResponseObject <TranData> TranSubmit(RequestObject <TranSubmit> request)
        {
            var response = new ResponseObject <TranData>();

            if (RequestsExtensions.IsValid(request, response))
            {
                if (!Validators.IsGuid(request.Content.BankID))
                {
                    response.Configure(Codes.BadRequest, "Favor de especificar el ID de la cuenta.", 1410);
                }
                else if (string.IsNullOrWhiteSpace(request.Content.TypeID))
                {
                    response.Configure(Codes.BadRequest, "Favor de especificar el Tipo de la Transacción.", 1412);
                }
                else if (!request.Content.EventDate.HasValue)
                {
                    response.Configure(Codes.BadRequest, "Favor de especificar la Fecha de la Transacción.", 1414);
                }
                else if (!request.Content.Amount.HasValue || request.Content.Amount < 0)
                {
                    response.Configure(Codes.BadRequest, "Favor de especificar el Importe de la Transacción.", 1416);
                }
                else if (string.IsNullOrWhiteSpace(request.Content.Description))
                {
                    response.Configure(Codes.BadRequest, "Favor de especifica la descripción de la cuenta", 1418);
                }
                else
                {
                    using (var db = new DataBase())
                    {
                        try
                        {
                            db.AddParameter("request", SqlDbType.Xml, request.ToRequestEmpty());
                            db.AddParameter("content", SqlDbType.Xml, request.Content);
                            db.AddParameter("done", SqlDbType.Bit, ParameterDirection.Output);

                            db.FillDataTable(response, "adm.SP_BANCO_TRANSACCION_INSERTA", (dt) =>
                            {
                                if (Convert.ToBoolean(db.GetParameter("done")))
                                {
                                    response.Result   = Common.Populate <TranData>(dt).First();
                                    response.CodeName = Codes.OK;
                                }
                                else
                                {
                                    response = Common.Populate <ResponseEmpty>(dt).First().ToResponseObject <TranData>();
                                }
                            });
                        }
                        catch (Exception ex)
                        {
                            response.ConfigureAndLog("Ha ocurrido un error al registrar un movimiento de la cuenta bancaría.", 1500, ex);
                        }
                    }
                }
            }

            return(response);
        }
コード例 #3
0
        public static ResponseObject <TranData[]> TranList(RequestObject <TranFilter> request)
        {
            var response = new ResponseObject <TranData[]> {
                Result = new TranData[0]
            };

            if (RequestsExtensions.IsValid(request, response))
            {
                if (!Validators.IsGuid(request.Content.BankID))
                {
                    response.Configure(Codes.BadRequest, "Favor de especificar el ID de la cuenta.", 1410);
                }
                else if (request.Content.StartDate.HasValue && !request.Content.FinishDate.HasValue)
                {
                    response.Configure(Codes.BadRequest, "Favor de especificar el Periodo de búsqueda.", 1412);
                }
                else if (!request.Content.StartDate.HasValue && request.Content.FinishDate.HasValue)
                {
                    response.Configure(Codes.BadRequest, "Favor de especificar el Periodo de búsqueda.", 1414);
                }
                else
                {
                    using (var db = new DataBase())
                    {
                        try
                        {
                            db.AddParameter("request", SqlDbType.Xml, request.ToRequestEmpty());
                            db.AddParameter("content", SqlDbType.Xml, request.Content);
                            db.AddParameter("done", SqlDbType.Bit, ParameterDirection.Output);

                            db.FillDataTable(response, "adm.SP_BANCO_TRANSACCION_LISTA", (dt) =>
                            {
                                if (Convert.ToBoolean(db.GetParameter("done")))
                                {
                                    response.Result   = Common.Populate <TranData>(dt);
                                    response.CodeName = (dt.Rows.Count > 0) ? Codes.Found : Codes.NotFound;
                                }
                                else
                                {
                                    response = Common.Populate <ResponseEmpty>(dt).First().ToResponseObject <TranData[]>(new TranData[0]);
                                }
                            });
                        }
                        catch (Exception ex)
                        {
                            response.ConfigureAndLog("Ha ocurrido un error al listar los movimientos de la cuenta bancaría.", 1500, ex);
                        }
                    }
                }
            }

            return(response);
        }
コード例 #4
0
        public static ResponseObject <BankData> Submit(RequestObject <BankSubmit> request)
        {
            var response = new ResponseObject <BankData>();

            if (RequestsExtensions.IsValid(request, response))
            {
                if (string.IsNullOrWhiteSpace(request.Content.Name))
                {
                    response.Configure(Codes.BadRequest, "Favor de especificar el nombre de la cuenta.", 1410);
                }
                else if (request.Content.Description == null)
                {
                    response.Configure(Codes.BadRequest, "Favor de especifica la descripción de la cuenta", 1412);
                }
                else if (!request.Content.IsActive.HasValue)
                {
                    response.Configure(Codes.BadRequest, "Favor de especifica el estatus de la cuenta", 1414);
                }
                else
                {
                    using (var db = new DataBase())
                    {
                        try
                        {
                            db.AddParameter("request", SqlDbType.Xml, request.ToRequestEmpty());
                            db.AddParameter("content", SqlDbType.Xml, request.Content);
                            db.AddParameter("done", SqlDbType.Bit, ParameterDirection.Output);

                            db.FillDataTable(response, "adm.SP_BANCO_INSERTA", (dt) =>
                            {
                                if (Convert.ToBoolean(db.GetParameter("done")))
                                {
                                    response.Result   = Common.Populate <BankData>(dt).First();
                                    response.CodeName = Codes.OK;
                                }
                                else
                                {
                                    response = Common.Populate <ResponseEmpty>(dt).First().ToResponseObject <BankData>();
                                }
                            });
                        }
                        catch (Exception ex)
                        {
                            response.ConfigureAndLog("Ha ocurrido un error al registrar una cuenta bancaría.", 1500, ex);
                        }
                    }
                }
            }

            return(response);
        }
コード例 #5
0
        public static ResponseObject <UserData> Login(UserLogin request)
        {
            var response = new ResponseObject <UserData>();

            if (request == null)
            {
                response.ConfigureNullRequest(1400);
            }
            else if (string.IsNullOrWhiteSpace(request.UserName))
            {
                response.Configure(Codes.BadRequest, "Favor de especificar el nombre de usuario.", 1410);
            }
            else if (string.IsNullOrWhiteSpace(request.Password) || request.Password.Length != 40)
            {
                response.Configure(Codes.BadRequest, "Favor de especifica la contraseña", 1412);
            }
            else
            {
                using (var db = new DataBase())
                {
                    try
                    {
                        db.AddParameter("request", SqlDbType.Xml, request);
                        db.AddParameter("done", SqlDbType.Bit, ParameterDirection.Output);

                        db.FillDataTable(response, "SP_USUARIO_LOGIN", (dt) =>
                        {
                            if (Convert.ToBoolean(db.GetParameter("done")))
                            {
                                response.Result   = Common.Populate <UserData>(dt).First();
                                response.CodeName = Codes.Found;
                            }
                            else
                            {
                                response = Common.Populate <ResponseEmpty>(dt).First().ToResponseObject <UserData>();
                            }
                        });
                    }
                    catch (Exception ex)
                    {
                        response.ConfigureAndLog("Ha ocurrido un error al realizar el login de un usuario.", 1500, ex);
                    }
                }
            }

            return(response);
        }