-- validar acceso al usuario.
This commit is contained in:
@@ -18,153 +18,152 @@ public class SIGFreightVerify : IHttpHandler, IRequiresSessionState
|
||||
private Usuario ValidaUsuarioSistema(int CveEmpresa)
|
||||
{
|
||||
Usuario UsuarioActual = null;
|
||||
ClsSisUsuarios ObjUsuarios = new ClsSisUsuarios();
|
||||
if (ObjUsuarios.GetUsuarios(1727))
|
||||
{
|
||||
if (ObjUsuarios.DtResultados.Rows.Count > 0)
|
||||
{
|
||||
string NombreCadena = ClsPaginas.get_GlobalNombreCadenaConexion(141);
|
||||
ClsSisUsuarioAutenticacion ObjUsuarios = new ClsSisUsuarioAutenticacion(NombreCadena: NombreCadena);
|
||||
UsuarioActual = ObjUsuarios.GetUsuarioDetalle(1727);
|
||||
if (UsuarioActual !=null)
|
||||
{
|
||||
var Usuario = ObjUsuarios.DtResultados.Rows[0]["Usuario"].ToString();
|
||||
var Contrasenia = ObjUsuarios.DtResultados.Rows[0]["Contraseña"].ToString();
|
||||
UsuarioActual = ObjUsuarios.ValidaUsuario(Usuario, Contrasenia, CveEmpresa: CveEmpresa);
|
||||
var Contrasenia = ObjUsuarios.DtResultados.Rows[0]["Contraseña"].ToString();
|
||||
UsuarioActual = ObjUsuarios.ValidaUsuario(Usuario, Contrasenia, CveEmpresa: CveEmpresa);
|
||||
UsuarioActual.CveEmpresa = CveEmpresa;
|
||||
UsuarioActual.CveCliente = 183798;
|
||||
CreaObjetoEmpresa(ref UsuarioActual);
|
||||
//CreaObjetoEmpresa(ref UsuarioActual);
|
||||
CargaZonasHorarias(ref UsuarioActual);
|
||||
}
|
||||
}
|
||||
ObjUsuarios.Dispose();
|
||||
return UsuarioActual;
|
||||
}
|
||||
ObjUsuarios.Dispose();
|
||||
return UsuarioActual;
|
||||
}
|
||||
private void CreaObjetoEmpresa(ref Usuario UsuarioActual)
|
||||
{
|
||||
ClsSisEmpresas ObjEmpresa = new ClsSisEmpresas();
|
||||
if (ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1"))
|
||||
{
|
||||
ClsSisEmpresas ObjEmpresa = new ClsSisEmpresas();
|
||||
if (ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1"))
|
||||
if (ObjEmpresa.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa))
|
||||
{
|
||||
if (ObjEmpresa.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa))
|
||||
{
|
||||
System.Data.DataTable dttmp = ObjEmpresa.DtResultados;
|
||||
System.Data.DataTable dttmp = ObjEmpresa.DtResultados;
|
||||
|
||||
var EmpresasFuncionalidades = new HybridDictionary();
|
||||
foreach (System.Data.DataRow Row in dttmp.Rows)
|
||||
EmpresasFuncionalidades.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString());
|
||||
var EmpresasFuncionalidades = new HybridDictionary();
|
||||
foreach (System.Data.DataRow Row in dttmp.Rows)
|
||||
EmpresasFuncionalidades.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString());
|
||||
|
||||
ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades);
|
||||
}
|
||||
|
||||
UsuarioActual.Empresa = ObjEmpresa.Empresa;
|
||||
ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades);
|
||||
}
|
||||
ObjEmpresa.Dispose();
|
||||
|
||||
UsuarioActual.Empresa = ObjEmpresa.Empresa;
|
||||
}
|
||||
private void CargaZonasHorarias(ref Usuario UsuarioActual)
|
||||
ObjEmpresa.Dispose();
|
||||
}
|
||||
private void CargaZonasHorarias(ref Usuario UsuarioActual)
|
||||
{
|
||||
ClsClientes ObjClientes = new ClsClientes();
|
||||
try
|
||||
{
|
||||
ClsClientes ObjClientes = new ClsClientes();
|
||||
try
|
||||
if (ObjClientes.GetClientes(UsuarioActual.CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, -1, Estatus: 1))
|
||||
{
|
||||
if (ObjClientes.GetClientes(UsuarioActual.CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, -1, Estatus: 1))
|
||||
{
|
||||
if (ObjClientes.DtResultados.Rows.Count == 1)
|
||||
UsuarioActual.UTCOffset = ObjClientes.DtResultados.Rows[0]["UTCOffset"].ToString().ToEntero();
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.ToString().GuardaLog();
|
||||
}
|
||||
finally
|
||||
{
|
||||
ObjClientes.Dispose();
|
||||
if (ObjClientes.DtResultados.Rows.Count == 1)
|
||||
UsuarioActual.UTCOffset = ObjClientes.DtResultados.Rows[0]["UTCOffset"].ToString().ToEntero();
|
||||
}
|
||||
}
|
||||
|
||||
public bool IsReusable => false;
|
||||
|
||||
public void ProcessRequest(HttpContext context)
|
||||
catch (Exception ex)
|
||||
{
|
||||
try
|
||||
{
|
||||
context.Response.ContentType = "text/plain";
|
||||
IniciarTransmision(context);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.GuardaLog(ex.Message);
|
||||
}
|
||||
ex.ToString().GuardaLog();
|
||||
}
|
||||
|
||||
private void IniciarTransmision(HttpContext context)
|
||||
finally
|
||||
{
|
||||
var UsuarioActual = ValidaUsuarioSistema(121);
|
||||
DataTable dtShipments = null;
|
||||
var FVCARRIERID = "";
|
||||
var SCAC = "";
|
||||
var UsuarioFV = "";
|
||||
var ContraseniaFV = "";
|
||||
var ObjGPS = new ClsGPS();
|
||||
try
|
||||
{
|
||||
if (ObjGPS.GetShipments(UsuarioActual.CveCliente, -1))
|
||||
{
|
||||
dtShipments = ObjGPS.DtResultados.FiltraParametros("TransmitirTexto = 'Si'");
|
||||
}
|
||||
if (ObjGPS.GetFVConfiguracion(UsuarioActual.CveCliente, -1))
|
||||
{
|
||||
if (ObjGPS.DtResultados.Rows.Count == 1)
|
||||
{
|
||||
var row = ObjGPS.DtResultados.Rows[0];
|
||||
FVCARRIERID = row["fvCarrierId"].ToString().Trim();
|
||||
SCAC = row["scac"].ToString().Trim();
|
||||
UsuarioFV = row["Usuario"].ToString().Trim();
|
||||
ContraseniaFV = row["Contrasenia"].ToString().Trim();
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
this.OnError("Ocurrió un error al obtener la configuración", ex);
|
||||
}
|
||||
finally
|
||||
{
|
||||
ObjGPS.Dispose();
|
||||
var array = new JArray();
|
||||
if (dtShipments != null)
|
||||
{
|
||||
foreach (DataRow Row in dtShipments.Rows)
|
||||
{
|
||||
var datos = GeneraRequestLO(UsuarioActual, Row["CveShipment"].ToString().ToEntero(), FVCARRIERID, SCAC);
|
||||
if (datos != null)
|
||||
{
|
||||
var retorno = EnviarEventoAPI(UsuarioActual, Row["ShipmentID"].ToString(), Row["Customer"].ToString(), FVCARRIERID, UsuarioFV, ContraseniaFV, datos.ToString());
|
||||
array.Add(retorno);
|
||||
}
|
||||
}
|
||||
}
|
||||
context.Response.Write(array);
|
||||
}
|
||||
ObjClientes.Dispose();
|
||||
}
|
||||
protected JObject GeneraRequestLO(Usuario UsuarioActual, int CveShipment, string FVCARRIERID, string SCAC)
|
||||
{
|
||||
var route_id = "";
|
||||
var trailer_number = "";
|
||||
var trackingAssetId = "";
|
||||
double lat = 0;
|
||||
double lon = 0;
|
||||
}
|
||||
|
||||
var ObjGPS = new ClsGPS();
|
||||
if (ObjGPS.GetShipmentDetail(CveShipment))
|
||||
public bool IsReusable => false;
|
||||
|
||||
public void ProcessRequest(HttpContext context)
|
||||
{
|
||||
try
|
||||
{
|
||||
context.Response.ContentType = "text/plain";
|
||||
IniciarTransmision(context);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.GuardaLog(ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
private void IniciarTransmision(HttpContext context)
|
||||
{
|
||||
var UsuarioActual = ValidaUsuarioSistema(121);
|
||||
DataTable dtShipments = null;
|
||||
var FVCARRIERID = "";
|
||||
var SCAC = "";
|
||||
var UsuarioFV = "";
|
||||
var ContraseniaFV = "";
|
||||
var ObjGPS = new ClsGPS();
|
||||
try
|
||||
{
|
||||
if (ObjGPS.GetShipments(UsuarioActual.CveCliente, -1))
|
||||
{
|
||||
dtShipments = ObjGPS.DtResultados.FiltraParametros("TransmitirTexto = 'Si'");
|
||||
}
|
||||
if (ObjGPS.GetFVConfiguracion(UsuarioActual.CveCliente, -1))
|
||||
{
|
||||
if (ObjGPS.DtResultados.Rows.Count == 1)
|
||||
{
|
||||
var row = ObjGPS.DtResultados.Rows[0];
|
||||
lat = row["Lat"].ToString().ToDouble();
|
||||
lon = row["Lon"].ToString().ToDouble();
|
||||
route_id = row["RouteID"].ToString();
|
||||
trailer_number = row["TrailerID"].ToString();
|
||||
trackingAssetId = row["AssetID"].ToString();
|
||||
FVCARRIERID = row["fvCarrierId"].ToString().Trim();
|
||||
SCAC = row["scac"].ToString().Trim();
|
||||
UsuarioFV = row["Usuario"].ToString().Trim();
|
||||
ContraseniaFV = row["Contrasenia"].ToString().Trim();
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
this.OnError("Ocurrió un error al obtener la configuración", ex);
|
||||
}
|
||||
finally
|
||||
{
|
||||
ObjGPS.Dispose();
|
||||
var array = new JArray();
|
||||
if (dtShipments != null)
|
||||
{
|
||||
foreach (DataRow Row in dtShipments.Rows)
|
||||
{
|
||||
var datos = GeneraRequestLO(UsuarioActual, Row["CveShipment"].ToString().ToEntero(), FVCARRIERID, SCAC);
|
||||
if (datos != null)
|
||||
{
|
||||
var retorno = EnviarEventoAPI(UsuarioActual, Row["ShipmentID"].ToString(), Row["Customer"].ToString(), FVCARRIERID, UsuarioFV, ContraseniaFV, datos.ToString());
|
||||
array.Add(retorno);
|
||||
}
|
||||
}
|
||||
}
|
||||
context.Response.Write(array);
|
||||
}
|
||||
}
|
||||
protected JObject GeneraRequestLO(Usuario UsuarioActual, int CveShipment, string FVCARRIERID, string SCAC)
|
||||
{
|
||||
var route_id = "";
|
||||
var trailer_number = "";
|
||||
var trackingAssetId = "";
|
||||
double lat = 0;
|
||||
double lon = 0;
|
||||
|
||||
var json = new JObject()
|
||||
var ObjGPS = new ClsGPS();
|
||||
if (ObjGPS.GetShipmentDetail(CveShipment))
|
||||
{
|
||||
if (ObjGPS.DtResultados.Rows.Count == 1)
|
||||
{
|
||||
var row = ObjGPS.DtResultados.Rows[0];
|
||||
lat = row["Lat"].ToString().ToDouble();
|
||||
lon = row["Lon"].ToString().ToDouble();
|
||||
route_id = row["RouteID"].ToString();
|
||||
trailer_number = row["TrailerID"].ToString();
|
||||
trackingAssetId = row["AssetID"].ToString();
|
||||
}
|
||||
}
|
||||
ObjGPS.Dispose();
|
||||
|
||||
var json = new JObject()
|
||||
{
|
||||
new JProperty("carrier", new JObject()
|
||||
{
|
||||
@@ -203,35 +202,35 @@ public class SIGFreightVerify : IHttpHandler, IRequiresSessionState
|
||||
})
|
||||
};
|
||||
|
||||
return json;
|
||||
}
|
||||
return json;
|
||||
}
|
||||
|
||||
private JObject EnviarEventoAPI(Usuario UsuarioActual, string ShipmentID, string Customer, string FVCARRIERID, string UsuarioFV, string ContraseniaFV, string Datos)
|
||||
private JObject EnviarEventoAPI(Usuario UsuarioActual, string ShipmentID, string Customer, string FVCARRIERID, string UsuarioFV, string ContraseniaFV, string Datos)
|
||||
{
|
||||
var retorno = "[]";
|
||||
var token = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(string.Format("{0}:{1}", UsuarioFV, ContraseniaFV)));
|
||||
string correlationId = GuidGenerator.GenerateTimeBasedGuid(UsuarioActual.FechaActualCliente).ToString();
|
||||
HttpClient wc = new HttpClient();
|
||||
try
|
||||
{
|
||||
var retorno = "[]";
|
||||
var token = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(string.Format("{0}:{1}", UsuarioFV, ContraseniaFV)));
|
||||
string correlationId = GuidGenerator.GenerateTimeBasedGuid(UsuarioActual.FechaActualCliente).ToString();
|
||||
HttpClient wc = new HttpClient();
|
||||
try
|
||||
{
|
||||
var fvShipmentId = $"{FVCARRIERID}|{Customer}|{ShipmentID}";
|
||||
var fvShipmentId = $"{FVCARRIERID}|{Customer}|{ShipmentID}";
|
||||
|
||||
var Url = new Uri("https://api.freightverify.com/ws/rest/v2/tl/shipment/event");
|
||||
var content = new StringContent(Datos, Encoding.UTF8, "application/json");
|
||||
wc.DefaultRequestHeaders.Add("Authorization", $"Basic {token}");
|
||||
wc.DefaultRequestHeaders.Add("WSS-correlationId", correlationId);
|
||||
wc.DefaultRequestHeaders.Add("X-WSS-fvShipmentId", fvShipmentId);
|
||||
var response = wc.PostAsync(Url, content).Result;
|
||||
retorno = response.Content.ReadAsStringAsync().Result;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine(ex);
|
||||
}
|
||||
wc.Dispose();
|
||||
|
||||
return JObject.Parse(retorno);
|
||||
var Url = new Uri("https://api.freightverify.com/ws/rest/v2/tl/shipment/event");
|
||||
var content = new StringContent(Datos, Encoding.UTF8, "application/json");
|
||||
wc.DefaultRequestHeaders.Add("Authorization", $"Basic {token}");
|
||||
wc.DefaultRequestHeaders.Add("WSS-correlationId", correlationId);
|
||||
wc.DefaultRequestHeaders.Add("X-WSS-fvShipmentId", fvShipmentId);
|
||||
var response = wc.PostAsync(Url, content).Result;
|
||||
retorno = response.Content.ReadAsStringAsync().Result;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine(ex);
|
||||
}
|
||||
wc.Dispose();
|
||||
|
||||
return JObject.Parse(retorno);
|
||||
}
|
||||
}
|
||||
namespace FluentGenerator
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user