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); }
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 ResponseEmpty TranImport(RequestObject <TranImport> request) { object[][] rowList; var response = new ResponseEmpty(); 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.IsNullOrEmpty(request.Content.FileName)) { response.Configure(Codes.BadRequest, "Favor de especificar el nombre del documento.", 1412); } else if (!request.Content.FileSize.HasValue) { response.Configure(Codes.BadRequest, "Favor de especificar el tamaño del documento.", 1414); } else if (string.IsNullOrEmpty(request.Content.FileType)) { response.Configure(Codes.BadRequest, "Favor de especificar el tipo de documento.", 1416); } else if (string.IsNullOrEmpty(request.Content.FileData)) { response.Configure(Codes.BadRequest, "Favor de especificar el contenido del documento.", 1418); } else { if (Bank.TranValidate(request.Content.FileData, response, out rowList)) { using (var db = new DataBase()) { try { db.AddParameter("request", SqlDbType.Xml, request.ToRequestEmpty()); db.AddParameter("content", SqlDbType.Xml, request.Content); db.AddParameter("rowdata", SqlDbType.Xml, rowList); db.AddParameter("done", SqlDbType.Bit, ParameterDirection.Output); db.FillDataTable(response, "adm.SP_BANCO_TRANSACCION_IMPORTA", (dt) => { if (Convert.ToBoolean(db.GetParameter("done"))) { response.CodeName = Codes.OK; } else { response = Common.Populate <ResponseEmpty>(dt).First(); } }); } catch (Exception ex) { response.ConfigureAndLog("Ha ocurrido un error al importar movimientos bancarios.", 1500, ex); } } } } } return(response); }