public static bool validarIncidencia(string url, IncidenciaBean incidencia) { var exists = false; try { IRestResponse response = makeRequest(url, Method.GET); if (response.StatusCode == System.Net.HttpStatusCode.OK) { if (response.Content.Contains(Constant.STATUS_SUCCESS)) { JObject objResponse = JObject.Parse(response.Content.ToString()); int objCount = (int)objResponse["ResponseCount"]; if (objCount == 1) { exists = true; string cardCode = objResponse["Response"]["message"]["value"].ToString(); actualizarPropiedades(incidencia.ClaveMovil, MainProcess.mConn.urlPatchIncidencia + "?empId=" + incidencia.EMPRESA + "&acId=" + incidencia.ClaveMovil, "{\"MIGRADO\":\"Y\", \"CODIGOSAP\": " + cardCode + "}"); } else if (objCount > 1) { exists = true; MainProcess.log.Error("IncidenciaDAO > validarIncidencia() > Document " + incidencia.ClaveMovil + " > El documento ya fue creado en SAP"); } } } } catch (Exception ex) { exists = true; MainProcess.log.Error("IncidenciaDAO > validarIncidencia() > " + ex.Message); } return(exists); }
public static string registrarIncidencia(string sessionId, string routeId, string urlSL, IncidenciaBean incidencia) { string res = string.Empty; try { var document = transformActivity(incidencia); if (document != null) { File.WriteAllText(Util.castURL(MainProcess.mConn.pathJSONLog, "\\") + "INCIDENCIA_" + incidencia.ClaveMovil + ".json", SimpleJson.SerializeObject(document)); IRestResponse response = makeRequest(Util.castURL(urlSL, "/") + Constant.ACTIVITIES, Method.POST, sessionId, routeId, document); if (response.StatusCode == System.Net.HttpStatusCode.Created) { JObject jObject = JObject.Parse(response.Content.ToString()); res = jObject["ActivityCode"].ToString().Trim(); } else { res = string.Empty; MainProcess.log.Error("IncidenciaDAO > registrarIncidencia() > Document Activity " + incidencia.ClaveMovil + " > " + response.Content); actualizarPropiedades(incidencia.ClaveMovil, MainProcess.mConn.urlPatchIncidencia + "?empId=" + incidencia.EMPRESA + "&acId=" + incidencia.ClaveMovil, "{\"MIGRADO\":\"N\", \"MENSAJE\": \"" + Util.replaceEscChar(response.Content) + "\"}"); } } } catch (Exception ex) { res = string.Empty; MainProcess.log.Error("IncidenciaDAO > registrarIncidencia() > " + ex.Message); } return(res); }
public static ActivityBean transformActivity(IncidenciaBean incidencia) { try { var activity = new ActivityBean(); if (!string.IsNullOrEmpty(incidencia.CodigoCliente)) { activity.CardCode = incidencia.CodigoCliente; activity.ContactPersonCode = string.IsNullOrEmpty(incidencia.CodigoContacto) ? null : (int?)int.Parse(incidencia.CodigoContacto); //activity.AddressType = incidencia.TipoDocumento; } string activityDescription; int activityType; if (incidencia.Origen.StartsWith(Constant.ORIGEN_ORDEN_VENTA)) { activityDescription = "cn_Meeting"; activityType = 1; } else if (incidencia.Origen.StartsWith(Constant.ORIGEN_ENTREGA)) { activityDescription = "cn_Meeting"; activityType = 2; } else { activityDescription = "cn_Task"; activityType = 3; } activity.Activity = activityDescription; activity.ActivityType = activityType; activity.SalesEmployee = incidencia.Vendedor; activity.ActivityDate = DateTime.ParseExact(incidencia.FechaCreacion, "yyyyMMdd", CultureInfo.InvariantCulture); if (!incidencia.Origen.StartsWith(Constant.ORIGEN_FACTURA)) { activity.StartTime = incidencia.HoraCreacion.Replace(":", ""); activity.EndTime = DateTime.ParseExact(activity.StartTime, "HHmm", CultureInfo.InvariantCulture).AddMinutes(5).ToString("HHmm"); } else { activity.StartTime = "0900"; activity.EndTime = "1800"; } activity.StartDate = activity.ActivityDate; activity.EndDueDate = activity.ActivityDate; if (!string.IsNullOrEmpty(incidencia.SerieFactura)) { activity.DocType = "13"; activity.DocEntry = incidencia.ClaveFactura != -1 ? incidencia.ClaveFactura.ToString() : null; activity.U_MSSM_SER = incidencia.SerieFactura; activity.U_MSSM_COR = incidencia.CorrelativoFactura.ToString(); } if (!string.IsNullOrEmpty(incidencia.CodigoDireccion)) { activity.AddressName = incidencia.CodigoDireccion; } activity.U_MSSM_CLM = incidencia.ClaveMovil; activity.U_MSSM_TRM = "05"; activity.U_MSSM_MOL = incidencia.ModoOffLine; activity.U_MSSM_LAT = incidencia.Latitud; activity.U_MSSM_LON = incidencia.Longitud; activity.U_MSSM_FEC = activity.ActivityDate; activity.U_MSSM_HOR = incidencia.HoraCreacion; activity.U_MSSM_MOT = incidencia.CodigoMotivo != -1 ? incidencia.DescripcionMotivo : null; activity.U_MSSM_FCP = !string.IsNullOrEmpty(incidencia.FechaPago) ? (DateTime?)DateTime.ParseExact(incidencia.FechaPago, "yyyyMMdd", CultureInfo.InvariantCulture) : null; activity.U_MSSM_TIP = incidencia.TipoIncidencia != null ? incidencia.TipoIncidencia : null; activity.U_MSSM_RAN = incidencia.Rango; activity.U_MSSM_IMG = incidencia.U_MSSM_IMG; #region Guardar imagen en el servidor if (!String.IsNullOrEmpty(incidencia.Directorio) && incidencia.Directorio != "null") { DirectoryDAO.createDirectoryLocal(incidencia.Directorio); if (!String.IsNullOrEmpty(incidencia.Foto64) && incidencia.Foto64 != "null") { DirectoryDAO.createFileDirectoryLocal(incidencia.Foto64, incidencia.Directorio + Path.GetFileName(incidencia.U_MSSM_IMG)); } } #endregion return(activity); } catch (Exception ex) { MainProcess.log.Error("IncidenciaDAO > transformActivity() > " + ex.Message); return(null); } }