示例#1
0
        internal string GetSerializeAndamento(TB_VISITA pdv)
        {
            var model = new PdvRestModel()
            {
                lat = pdv.LAT,
                lng = pdv.LONG
            };

            model.bateriaInicial = model.bateriaFinal = pdv.BATERIA.ToString();
            model.inicioVisita   = pdv.DATA_PROGAMADA;
            return(JsonConvert.SerializeObject(model));
        }
示例#2
0
 /// <summary>
 /// Set visitas em progresso
 /// </summary>
 /// <param name="listId">List identifier.</param>
 /// <param name="dataHorainicio">Data horainicio.</param>
 /// <param name="latitude">Latitude.</param>
 /// <param name="longitude">Longitude.</param>
 public void SetVisitaEmProgresso(List <ListTypePDV> listId, DateTime dataHorainicio,
                                  double latitude, double longitude, int baterry)
 {
     foreach (var id in listId)
     {
         TB_VISITA visita = database.GetAsync <TB_VISITA>(id.IdVisita).Result;
         visita.INICIO  = dataHorainicio.ToString("yyyy-MM-dd HH:mm");
         visita.STATUS  = (int)StatusAPI.INICIADO;
         visita.LAT     = latitude;
         visita.LONG    = longitude;
         visita.BATERIA = baterry;
         database.UpdateAsync(visita).Wait();
     }
 }
示例#3
0
 /// <summary>
 /// Set visitas justificadas no banco de dados
 /// </summary>
 /// <param name="listId">List identifier.</param>
 /// <param name="justificativa">Justificativa.</param>
 /// <param name="dataHora">Hora que sou informado a justificativa.</param>
 /// <param name="latitude">Latitude.</param>
 /// <param name="longitude">Longitude.</param>
 public void SetVisitasJustificada(List <ListTypePDV> listId, string justificativa,
                                   DateTime dataHora, double latitude, double longitude, int batery)
 {
     foreach (var id in listId)
     {
         TB_VISITA visita = database.GetAsync <TB_VISITA>(id.IdVisita).Result;
         visita.INICIO        = dataHora.ToString("yyyy-MM-dd HH:mm");
         visita.FIM           = dataHora.ToString("yyyy-MM-dd HH:mm");
         visita.STATUS        = (int)StatusAPI.JUSTIFICADO;
         visita.JUSTIFICATIVA = justificativa;
         visita.LAT           = latitude;
         visita.LONG          = longitude;
         visita.BATERIA       = batery;
         database.UpdateAsync(visita).Wait();
     }
 }
        /// <summary>
        /// Insere um pdv no roteiro.
        /// </summary>
        /// <returns><c>true</c>, se o pdv foi inserido, <c>false</c> se o pdv foi atualizado.</returns>
        /// <param name="id">Identifier.</param>
        /// <param name="date">Date.</param>
        /// <param name="geoPT">Endereco completo e formatado do pdv</param>
        /// <param name="lat">Lat.</param>
        /// <param name="longi">Longi.</param>
        /// <param name="tbFormServerID">lista de schemas.</param>
        public bool InsertVisitas(string id, DateTime date, string geoPT,
                                  double lat, double longi, List <Formularios> tbFormServerID, string userID)
        {
            bool result      = false;
            var  dtTime      = new DateTime(date.Year, date.Month, date.Day, 0, 0, 0);
            var  queryResult = database.QueryAsync <TB_VISITA>("SELECT * FROM TB_VISITA WHERE ID = ? ", id).Result;

            if (queryResult.Count != 0)
            {
                var values = queryResult.FirstOrDefault();
                values.ID                  = id;
                values.DATA_PROGAMADA      = dtTime.ToString("yyyy-MM-dd HH:mm");
                values.LAT                 = 0;
                values.LONG                = 0;
                values.LAT_PDV             = lat;
                values.LONG_PDV            = longi;
                values.ENDERECO            = geoPT;
                values.ID_USER_RELACIONADO = userID;
                database.UpdateAsync(values).Wait();
            }
            else
            {
                var isNewPdv = database.QueryAsync <TB_VISITA>("SELECT * FROM TB_VISITA WHERE ENDERECO LIKE ? ", geoPT).Result;
                if (isNewPdv.Count <= 0)
                {
                    result = true;
                }
                var values = new TB_VISITA()
                {
                    ID                  = id,
                    DATA_PROGAMADA      = dtTime.ToString("yyyy-MM-dd HH:mm"),
                    LAT                 = 0,
                    LONG                = 0,
                    LAT_PDV             = lat,
                    LONG_PDV            = longi,
                    ENDERECO            = geoPT,
                    ID_USER_RELACIONADO = userID,
                    STATUS              = (int)StatusAPI.NAO_INICIADO
                };
                database.InsertAsync(values).Wait();
            }
            InsertVisitaProdutosForms(tbFormServerID, id, geoPT);
            return(result);
        }
示例#5
0
        internal string SerializeObject(List <TB_TAREFAS> tarefasTB, TB_VISITA visita)
        {
            var modelToSerialize = new FormSchemasRestModel.Result
            {
                formularios = new List <FormSchemasRestModel.FormSchema>()
            };

            foreach (var item in formController)
            {
                var form = new FormSchemasRestModel.FormSchema();
                form      = item.Model.CamposForm;
                form.ID   = item.Model.Id_form_server;
                form.tipo = item.Model.Tipo;
                modelToSerialize.formularios.Add(form);
            }
            if (tarefasTB != null && tarefasTB.Count > 0)
            {
                modelToSerialize.lat            = tarefasTB[0].LAT.ToString().Replace(",", ".");
                modelToSerialize.lng            = tarefasTB[0].LONG.ToString().Replace(",", ".");
                modelToSerialize.bateriaInicial = tarefasTB[0].BATERIA.ToString();
                modelToSerialize.bateriaFinal   = tarefasTB[0].BATERIA.ToString();
            }
            else
            {
                modelToSerialize.lat            = "0";
                modelToSerialize.lng            = "0";
                modelToSerialize.bateriaInicial = "0";
                modelToSerialize.bateriaFinal   = "0";
            }
            modelToSerialize.inicioVisita = visita.INICIO;
            if (!string.IsNullOrEmpty(visita.FIM))
            {
                modelToSerialize.fimVisita = visita.FIM;
            }
            else
            {
                modelToSerialize.fimVisita = DateTime.Now.ToString("yyyy-MM-dd HH:mm");
            }
            modelToSerialize.statusVisita = (int)StatusVisitaServer.ANDAMENTO;
            return(JsonConvert.SerializeObject(modelToSerialize));
        }
 /// <summary>
 /// Update visita enviadas.
 /// </summary>
 /// <param name="item">Item.</param>
 internal void UpdateVisitaEnviado(TB_VISITA item)
 {
     database.UpdateAsync(item).Wait();
 }
 internal TB_VISITA GetPdvInfo(TB_VISITA pdv)
 {
     return(database.GetAsync <TB_VISITA>(pdv.ID).Result);
 }