/// <summary> /// /// </summary> public ResponseBussiness <ValidacionOperacionResponse> LoginOffline(AutenticacionOfflineRequest autenticacionOfflineRequest) { return(tryCatch.SafeExecutor(() => { return autenticacionOfflineRepository.LoginOffline(token, autenticacionOfflineRequest); })); }
/// <summary> /// /// </summary> /// <returns></returns> public ValidacionOperacionResponse LoginOffline(TokenDto token, AutenticacionOfflineRequest autenticacionOfflineRequest) { ValidacionOperacionResponse validacionOperacionResponse = new ValidacionOperacionResponse(); var parametros = new Dictionary <string, object>(); parametros.Add("@CodigoTienda", token.CodeStore); parametros.Add("@CodigoCaja", token.CodeBox); parametros.Add("@CodigoEmpleado", token.CodeEmployee); // Obtener la informacion de folio y fecha de operacion List <System.Data.SqlClient.SqlParameter> parametrosOutInfo = new List <System.Data.SqlClient.SqlParameter>(); parametrosOutInfo.Add(new System.Data.SqlClient.SqlParameter() { ParameterName = "@FechaOperacion", Direction = ParameterDirection.Output, SqlDbType = SqlDbType.Date }); parametrosOutInfo.Add(new System.Data.SqlClient.SqlParameter() { ParameterName = "@Folio", Direction = ParameterDirection.Output, SqlDbType = SqlDbType.Int }); var resultadoInfo = data.ExecuteProcedure("[dbo].[sp_vanti_Obtener_Informacion_LoginOffline]", parametros, parametrosOutInfo); var fechaOperacion = Convert.ToDateTime(resultadoInfo["@FechaOperacion"]); var folio = Convert.ToInt32(resultadoInfo["@Folio"]); //Obtener cadena del algoritmo string cadenaAlgoritmo = this.getCodeAlgorithm(fechaOperacion.ToString("yyyyMMdd"), fechaOperacion.ToString("yyyy-MM-dd"), token.CodeStore, token.CodeBox, folio); //Validar cadena generada con el algoritmo vs la clave que nos envian desde cliente if (cadenaAlgoritmo == autenticacionOfflineRequest.Clave) { // Agegar fecha operacion parametros.Add("@FechaOperacion", fechaOperacion); List <System.Data.SqlClient.SqlParameter> parametrosOut = new List <System.Data.SqlClient.SqlParameter>(); parametrosOut.Add(new System.Data.SqlClient.SqlParameter() { ParameterName = "@CodigoResultado", Direction = ParameterDirection.Output, SqlDbType = SqlDbType.Int }); parametrosOut.Add(new System.Data.SqlClient.SqlParameter() { ParameterName = "@MensajeResultado", Direction = ParameterDirection.Output, SqlDbType = SqlDbType.NVarChar, Size = 4000 }); var resultado = data.ExecuteProcedure("[dbo].[sp_vanti_LoginOffline_InicioDia]", parametros, parametrosOut); validacionOperacionResponse.CodeNumber = resultado["@CodigoResultado"].ToString(); validacionOperacionResponse.CodeDescription = resultado["@MensajeResultado"].ToString(); } else { validacionOperacionResponse.CodeNumber = "409"; validacionOperacionResponse.CodeDescription = "No se ha podido iniciar sesion, verifique la clave de acceso"; } return(validacionOperacionResponse); }
public ResponseBussiness <ValidacionOperacionResponse> SolicitaAutenticacion(AutenticacionOfflineRequest autenticacionOfflineRequest) { TokenDto token = new TokenService().Get(); return(new AutenticacionOfflineBusiness(token).LoginOffline(autenticacionOfflineRequest)); }
/// <summary> /// Business para validar operación de Corte Z Offline /// </summary> public ResponseBussiness <ValidacionOperacionResponse> ValidarCorteOffline(TokenDto token, AutenticacionOfflineRequest autenticacionOfflineRequest) { return(tryCatch.SafeExecutor(() => { return inicioFinDiaRepository.ValidarCorteOffline(token, autenticacionOfflineRequest); })); }
public ResponseBussiness <ValidacionOperacionResponse> ValidarCorteOffline(AutenticacionOfflineRequest autenticacionOfflineRequest) { TokenDto token = new TokenService().Get(); return(new InicioFinDiaBusiness().ValidarCorteOffline(token, autenticacionOfflineRequest)); }