Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
            }
        }