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); }
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); }
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); }
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); }