public static List <PorukaModel> GetAllMessages() { List <PorukaModel> poruke = new List <PorukaModel>(); PorukaModel poruka = null; SqlConnection connection = Database.GetConnection(); SqlCommand cmd = null; SqlDataReader reader = null; connection.Open(); cmd = new SqlCommand(GET_ALL_MESSAGES, connection); cmd.CommandTimeout = 60; reader = cmd.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { poruka = new PorukaModel(); poruka.AutoID = Convert.ToInt32(reader["AutoID"]); poruka.TextPoruke = Convert.ToString(reader["TextPoruke"]); if (!reader.IsDBNull(3)) { poruka.DatumKreiranjaUTC = reader.GetDateTimeOffset(3).LocalDateTime; } poruka.Korisnik.Ime = reader["KorisnikIme"].ToString(); poruka.Korisnik.Prezime = reader["KorisnikPrezime"].ToString(); poruke.Add(poruka); } reader.Close(); } connection.Close(); return(poruke); }
public static PorukaModel GetMessageById(int AutoID) { PorukaModel poruka = null; SqlConnection connection = Database.GetConnection(); SqlCommand cmd = null; SqlDataReader reader = null; connection.Open(); cmd = new SqlCommand(GET_MESSAGE_BY_ID, connection); cmd.Parameters.AddWithValue("@AutoID", AutoID); cmd.CommandTimeout = 60; reader = cmd.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { poruka = new PorukaModel(); poruka.AutoID = Convert.ToInt32(reader["AutoID"]); poruka.TextPoruke = Convert.ToString(reader["TextPoruke"]); poruka.Korisnik.Ime = Convert.ToString(reader["Ime"]); poruka.Korisnik.Prezime = Convert.ToString(reader["Prezime"]); if (!reader.IsDBNull(3)) { poruka.DatumKreiranjaUTC = reader.GetDateTimeOffset(3).LocalDateTime; } } reader.Close(); } connection.Close(); return(poruka); }
public void SaveID([FromBody] PorukaModel poruka) { try { HttpContext.Session.SetInt32("PorukaAutoID", poruka.AutoID); } catch (Exception) { } }
public async Task SendMessage(PorukaModel poruka) { string name = Context.User.Identity.Name; var razg = _ctx.Razgovor.Where(razg => razg.Id == Guid.Parse(poruka.IdRazg)).Include(razg => razg.KorisnikUrazgovoru).SingleOrDefault(); poruka.Message = poruka.Message.Replace("\n", "<br />"); var user = _ctx.Korisnik.Where(k => k.Id == Guid.Parse(poruka.IdUser)).SingleOrDefault(); poruka.Slika = user.IdSlika.ToString(); poruka.Ime = user.Ime; var when = DateTime.ParseExact(poruka.When, "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture); poruka.When = when.ToString("dd.MM.yyyy. | HH:mm"); Poruka novaPoruka = new Poruka { DatumIvrijeme = when, Id = Guid.NewGuid(), IdKorisnik = Guid.Parse(poruka.IdUser), IdRazgovor = Guid.Parse(poruka.IdRazg), Poruka1 = poruka.Message }; razg.DatumZadnjePoruke = when; _ctx.Add(novaPoruka); foreach (KorisnikUrazgovoru k in razg.KorisnikUrazgovoru) { if (k.IdKorisnik != novaPoruka.IdKorisnik) { k.Procitano = false; } else { k.Procitano = true; } } _ctx.SaveChanges(); foreach (KorisnikUrazgovoru k in razg.KorisnikUrazgovoru) { await Clients.User(k.IdKorisnik.ToString()).SendAsync("ReceiveMessageMob", new { Id = novaPoruka.Id, IdKorisnik = novaPoruka.IdKorisnik, IdRazgovor = novaPoruka.IdRazgovor, Poruka1 = novaPoruka.Poruka1.Replace("<br />", "\n"), DatumIvrijeme = novaPoruka.DatumIvrijeme }, user.ImeIPrezime()); await Clients.User(k.IdKorisnik.ToString()).SendAsync("ReceiveMessage", k.IdKorisnik, poruka); await Clients.User(k.IdKorisnik.ToString()).SendAsync("ChangeHeader", new { Id = novaPoruka.IdRazgovor, Naziv = razg.Naslov + " (" + user.ImeIPrezime() + ")", Datum = novaPoruka.DatumIvrijeme.ToString("dd.MM.yyyy. hh:mm"), Slika = user.IdSlika, Poruka = novaPoruka.Poruka1, Procitano = k.Procitano }); } }
// GET: Message/Delete/5 public bool Delete([FromBody] PorukaModel poruka) { try { return(ObavjestenjaDAO.DeleteMessage(poruka.AutoID)); } catch (Exception) { return(false); } }
public void SaveUvoznikID([FromBody] PorukaModel poruka) { try { //ReportsController rc = new ReportsController(); //ReportsController.SetReportName("PrijavaZaRegistraciju", "UvoznikID", HttpContext.Session.GetObjectFromJson<KorisnikModel>("LogovaniKorisnik").Uvoznik.AutoID.ToString()); HttpContext.Session.SetString("ReportName", "Homologacija_za_dijelove.Reports.PrijavaZaRegistraciju.repx?UvoznikID=" + HttpContext.Session.GetObjectFromJson <KorisnikModel>("LogovaniKorisnik").Uvoznik.AutoID.ToString()); } catch (Exception e) { e.Message.ToString(); } }
public async Task <IActionResult> Create([Bind("Id,Korisnik,Primatelj,Naslov,Tekst")] PorukaModel porukaModel) { var DodajNeProc = userManager.Users.Where(x => porukaModel.Primatelj == x.Email).ToList(); foreach (var neproc in DodajNeProc) { neproc.NeProcitano = neproc.NeProcitano + 1; } if (ModelState.IsValid) { _context.Add(porukaModel); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(porukaModel)); }
public static Boolean CreateNewMessage(PorukaModel poruka) { Boolean created; SqlConnection connection = Database.GetConnection(); SqlCommand cmd = null; connection.Open(); cmd = new SqlCommand(CREATE_NEW_MESSAGE, connection); cmd.Parameters.AddWithValue("@TextPoruke", poruka.TextPoruke); cmd.Parameters.AddWithValue("@KorisnikID", poruka.Korisnik.Id); cmd.CommandTimeout = 60; created = cmd.ExecuteNonQuery() > 0 ? true : false; connection.Close(); return(created); }
public ActionResult Create(PorukaModel poruka) { try { if (HttpContext.Session.GetObjectFromJson <KorisnikModel>("LogovaniKorisnik") == null) { return(View("~/Views/Login/Index.cshtml")); } poruka.Korisnik = HttpContext.Session.GetObjectFromJson <KorisnikModel>("LogovaniKorisnik"); ObavjestenjaDAO.CreateNewMessage(poruka); return(RedirectToAction(nameof(Index))); } catch (Exception e) { return(View()); } }
public static Boolean UpdateMessage(PorukaModel poruka) { Boolean update; SqlConnection connection = Database.GetConnection(); SqlCommand cmd = null; connection.Open(); cmd = new SqlCommand(UPDATE_MESSAGE, connection); cmd.Parameters.AddWithValue("@AutoID", poruka.AutoID); cmd.Parameters.AddWithValue("@TextPoruke", poruka.TextPoruke); cmd.Parameters.AddWithValue("@KorisnikID", poruka.Korisnik.Id); cmd.CommandTimeout = 60; update = cmd.ExecuteNonQuery() > 0 ? true : false; connection.Close(); return(update); }
public ActionResult SaveEdit(PorukaModel poruka) { try { if (HttpContext.Session.GetObjectFromJson <KorisnikModel>("LogovaniKorisnik") == null) { return(View("~/Views/Login/Index.cshtml")); } poruka.AutoID = Convert.ToInt32(HttpContext.Session.GetInt32("PorukaAutoID")); poruka.Korisnik = HttpContext.Session.GetObjectFromJson <KorisnikModel>("LogovaniKorisnik"); ObavjestenjaDAO.UpdateMessage(poruka); return(RedirectToAction(nameof(Index))); } catch { return(View(nameof(Edit))); } }
public async Task NewConversation(PorukaModel poruka) { var listaId = poruka.Kontakti.Select(p => Guid.Parse(p)).ToList(); listaId.Add(Guid.Parse(poruka.IdUser)); //glupi uvjet, treba bolji napisat var razg = _ctx.Razgovor.Where(razg => razg.KorisnikUrazgovoru.Select(k => k.IdKorisnik).All(id => listaId.Contains(id)) && razg.KorisnikUrazgovoru.Count() == listaId.Count()).Include(k => k.KorisnikUrazgovoru).SingleOrDefault(); var when = DateTime.ParseExact(poruka.When, "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture); poruka.Message = poruka.Message.Replace("\n", "<br />"); poruka.When = when.ToString("dd.MM.yyyy. | HH:mm"); if (razg != null) { var user = _ctx.Korisnik.Where(k => k.Id == Guid.Parse(poruka.IdUser)).SingleOrDefault(); poruka.Slika = user.IdSlika.ToString(); poruka.Ime = user.Ime; poruka.IdRazg = razg.Id.ToString(); Poruka novaPoruka = new Poruka { DatumIvrijeme = when, Id = Guid.NewGuid(), IdKorisnik = Guid.Parse(poruka.IdUser), IdRazgovor = Guid.Parse(poruka.IdRazg), Poruka1 = poruka.Message }; razg.DatumZadnjePoruke = when; _ctx.Add(novaPoruka); foreach (KorisnikUrazgovoru k in razg.KorisnikUrazgovoru) { if (k.IdKorisnik != novaPoruka.IdKorisnik) { k.Procitano = false; } else { k.Procitano = true; } await Clients.User(k.IdKorisnik.ToString()).SendAsync("ReceiveMessageMob", new { Id = novaPoruka.Id, IdKorisnik = novaPoruka.IdKorisnik, IdRazgovor = novaPoruka.IdRazgovor, Poruka1 = novaPoruka.Poruka1.Replace("<br />", "\n"), DatumIvrijeme = novaPoruka.DatumIvrijeme }, user.ImeIPrezime()); await Clients.User(k.IdKorisnik.ToString()).SendAsync("ReceiveMessage", k.IdKorisnik, poruka); await Clients.User(k.IdKorisnik.ToString()).SendAsync("ChangeHeader", new { Id = novaPoruka.IdRazgovor, Naziv = razg.Naslov + " (" + user.ImeIPrezime() + ")", Datum = novaPoruka.DatumIvrijeme.ToString("dd.MM.yyyy. | HH:mm"), Slika = user.IdSlika, Poruka = novaPoruka.Poruka1, Procitano = k.Procitano }); } _ctx.SaveChanges(); } else { //Treba napraviti novi; var user = _ctx.Korisnik.Where(k => k.Id == Guid.Parse(poruka.IdUser)).SingleOrDefault(); poruka.Slika = user.IdSlika.ToString(); poruka.Ime = user.Ime; Poruka novaPoruka = new Poruka { DatumIvrijeme = when, Id = Guid.NewGuid(), IdKorisnik = Guid.Parse(poruka.IdUser), Poruka1 = poruka.Message }; Razgovor noviRazg = new Razgovor { Id = Guid.NewGuid(), Naslov = "", DatumZadnjePoruke = when, }; novaPoruka.IdRazgovor = noviRazg.Id; noviRazg.Poruka.Add(novaPoruka); poruka.IdRazg = noviRazg.Id.ToString(); poruka.ImeRazgovora = ""; foreach (var id in listaId) { KorisnikUrazgovoru k = new KorisnikUrazgovoru { Id = Guid.NewGuid(), IdKorisnik = id, IdRazgovor = noviRazg.Id, IdKorisnikNavigation = _ctx.Korisnik.Find(id) }; if (k.IdKorisnik != novaPoruka.IdKorisnik) { k.Procitano = false; } else { k.Procitano = true; } noviRazg.KorisnikUrazgovoru.Add(k); } poruka.Popis = noviRazg.GetPopisKorisnika(novaPoruka.IdKorisnik); var list = new List <Poruka>(); list.Add(new Poruka { DatumIvrijeme = novaPoruka.DatumIvrijeme, Id = novaPoruka.Id, IdKorisnik = novaPoruka.IdKorisnik, IdRazgovor = novaPoruka.IdRazgovor, Poruka1 = novaPoruka.Poruka1.Replace("<br />", "\n") }); var copyRazg = new Razgovor { Id = noviRazg.Id, Naslov = noviRazg.Naslov, DatumZadnjePoruke = noviRazg.DatumZadnjePoruke, KorisnikUrazgovoru = noviRazg.KorisnikUrazgovoru, Poruka = list }; foreach (var id in listaId) { await Clients.User(id.ToString()).SendAsync("ReceiveNewConversationMob", copyRazg, user.ImeIPrezime()); await Clients.User(id.ToString()).SendAsync("ReceiveNewConversation", id, poruka); bool flag = false; if (id == user.Id) { flag = true; } await Clients.User(id.ToString()).SendAsync("ChangeHeader", new { Id = novaPoruka.IdRazgovor, Naziv = noviRazg.Naslov + " (" + user.ImeIPrezime() + ")", Datum = novaPoruka.DatumIvrijeme.ToString("dd.MM.yyyy. | HH:mm"), Slika = user.IdSlika, Poruka = novaPoruka.Poruka1, Procitano = flag }); } _ctx.Add(noviRazg); _ctx.SaveChanges(); } }