private void tb_Gui_Click(object sender, EventArgs e) { attach = null; try { FileInfo file = new FileInfo(tb_DinhKem.Text); attach = new Attachment(tb_DinhKem.Text); } catch { } //DataTable data = KhachHangBUS.Instance.HienThi(); if (hdflat == 0) { foreach (DataRow item in data.Rows) { tb_NguoiNhan.Text = item["Gmail"].ToString(); int MaKH = int.Parse(item["MaKH"].ToString()); GuiMail(tb_TenDangNhap.Text, tb_NguoiNhan.Text, tb_ChuDe.Text, tb_NoiDung.Text, attach); TinNhan tn = TinNhanBUS.Instance.DocThongTin(MaTN); tn.NoiDung = tb_NoiDung.Text; tn.ChuDe = tb_ChuDe.Text; TinNhanBUS.Instance.Sua(tn); TinNhan_KhachHang tnkh = new TinNhan_KhachHang(MaTN, MaKH); TinNhan_KhachHangBUS.Instance.Them(tnkh); } } else { GuiMail(tb_TenDangNhap.Text, tb_NguoiNhan.Text, tb_ChuDe.Text, tb_NoiDung.Text, attach); hdflat = 0; } MessageBox.Show("Đã gửi xong."); this.Hide(); }
public static List <TinNhan> GetTinNhanNhanDaXoa(string maSinhVien) { using (var db = new UMS_HUSCEntities()) { var list = new List <TinNhan>(); var maTaiKhoan = SinhVienDao.GetMaTaiKhoan(maSinhVien); var tinDaNhan = db.VTinNhanDaNhans.Where(n => n.MaNguoiNhan == maTaiKhoan && n.TrangThai == TINNHAN_TAM_XOA).ToList(); foreach (var item in tinDaNhan) { string temp = HttpUtility.HtmlDecode(item.NoiDung); item.NoiDung = temp.Replace("\r\n", "") .Replace("style=\"", "style='") .Replace("href=\"", "href='") .Replace("\">", "'>") .Replace(";\"", ";'") .Replace("\"", """); item.TieuDe = HttpUtility.HtmlDecode(item.TieuDe).Replace("\r\n", ""); TinNhan tinNhan = new TinNhan() { MaTinNhan = item.MaTinNhan, MaNguoiGui = item.MaNguoiGui, HoTenNguoiGui = item.HoTenNguoiGui, TieuDe = item.TieuDe, NoiDung = item.NoiDung, ThoiDiemGui = item.ThoiDiemGui, NguoiNhans = GetAllNguoiNhan(item.MaTinNhan) }; list.Add(tinNhan); } return(list.OrderBy(t => t.ThoiDiemGui).ToList()); } }
private void cb_SanPham_SelectionChangeCommitted(object sender, EventArgs e) { tb_MaSP.Text = cb_TenSP.SelectedValue.ToString(); int pMaTN = TinNhanBUS.Instance.TimMaTN(int.Parse(tb_MaSP.Text), GetWeekOrderInYear(DateTime.Today.Date), int.Parse(DateTime.Today.Year.ToString())); MaTN_public = pMaTN; if (pMaTN == -1) { pMaTN = TinNhanBUS.Instance.AutoID(); MaTN_public = pMaTN; TinNhan tn = new TinNhan(TinNhanBUS.Instance.AutoID(), int.Parse(tb_MaSP.Text), GetWeekOrderInYear(DateTime.Today.Date), int.Parse(DateTime.Today.Year.ToString()), "", ""); TinNhanBUS.Instance.Them(tn); } dtgv_KhachHang.DataSource = TinNhan_KhachHangBUS.Instance.KhachHangChuaGuiMail(pMaTN); dttb = TinNhan_KhachHangBUS.Instance.KhachHangChuaGuiMail(pMaTN); int i = 0; foreach (DataRow item in dttb.Rows) { i = i + 1; } if (i == 0) { bt_GuiMail.Enabled = false; } else { bt_GuiMail.Enabled = true; } }
public bool Sua(TinNhan tn) { string query = "Update TinNhan set ChuDe = @ChuDe , NoiDung = @NoiDung Where MaTN = @MaTN "; object[] para = new object[] { tn.ChuDe, tn.NoiDung, tn.MaTN }; if (DataProvider.Instance.ExecuteNonQuery(query, para) > 0) { return(true); } return(false); }
public bool Them(TinNhan tn) { string query = "Insert INTO TinNhan(MaTN, MaSP, Tuan, Nam, ChuDe, NoiDung) VALUES ( @MaTN , @MaSP , @Tuan , @Nam , @ChuDe , @NoiDung ) "; object[] para = new object[] { tn.MaTN, tn.MaSP, tn.Tuan, tn.Nam, tn.ChuDe, tn.NoiDung }; if (DataProvider.Instance.ExecuteNonQuery(query, para) > 0) { return(true); } return(false); }
public async Task SendMessageFromDbToCurrentClientBrower(string maTaiKhoan) { TinNhan tinNhanCuoi = await DataContext.TinNhans.Where(m => m.MaKhachHang == maTaiKhoan) .OrderByDescending(c => c.ThoiGianGui).FirstAsync(); ConnectionIdUser connection = connections.Find(c => c.MaTaiKhoan == maTaiKhoan); if (connection != null && tinNhanCuoi != null) { KhachHang khachHang = await DataContext.KhachHangs.Where(k => k.MaKhachHang == maTaiKhoan).FirstAsync(); Clients.Client(connection.ConnectionId).sendMassageFromDbToCurrentClientBrower(tinNhanCuoi.NoiDung, tinNhanCuoi.ThoiGianGui.ToString("d dddd-M-yyyy"), khachHang.DuongDanAnh); } }
// Gửi tin nhắn cho người nhân viên hiện tại public async Task SendMassageFromDbToCurrentManagerBrower(string maTaiKhoan, string maKhachHang) { TinNhan tinNhanCuoi = await DataContext.TinNhans.Where(m => m.MaNhanVien == maTaiKhoan) .OrderByDescending(c => c.ThoiGianGui).FirstAsync(); ConnectionIdUser connection = connections.Find(c => c.MaTaiKhoan == maTaiKhoan); if (connection != null && tinNhanCuoi != null) { NhanVien nhanVien = await DataContext.NhanViens.Where(n => n.MaNhanVien == maTaiKhoan).FirstAsync(); Clients.Client(connection.ConnectionId).addNewMessageCurrentManagerBrower(maKhachHang, tinNhanCuoi.NoiDung, tinNhanCuoi.ThoiGianGui.ToString("d dddd-M-yyyy"), nhanVien.Ten, nhanVien.DuongDanAnh); } }
//Gửi tin nhắn từ khách hàng tới đối tượng cụ thể public async Task SendMessageFromClientToManager(string maNhanVien, string maKhachHang) { TinNhan tinNhanCuoi = await DataContext.TinNhans.Where(m => m.MaKhachHang == maKhachHang) .OrderByDescending(c => c.ThoiGianGui).FirstAsync(); ConnectionIdUser connection = connections.Find(c => c.MaTaiKhoan == maNhanVien); if (connection != null && tinNhanCuoi != null) { KhachHang client = await DataContext.KhachHangs.Where(khachHang => khachHang.MaKhachHang == maKhachHang).FirstAsync(); Clients.Client(connection.ConnectionId).addNewMessage(maKhachHang, tinNhanCuoi.NoiDung, tinNhanCuoi.ThoiGianGui.ToString("d dddd-M-yyyy"), client.Ten, client.DuongDanAnh); } }
// Lưu lại tin nhắn khách hàng gửi mà chưa có nhân viên trợ giúp public async Task SaveNewMessageFromKhachHang(string maKhachHang, string noiDung) { KhachHang khachHang = await DataContext.KhachHangs.FindAsync(maKhachHang); TinNhan tinNhan = new TinNhan() { MaKhachHang = khachHang.MaKhachHang, NoiDung = noiDung, ThoiGianGui = DateTime.Now }; DataContext.TinNhans.Add(tinNhan); await DataContext.SaveChangesAsync(); }
public ActionResult LuuTinNhan(string tinnhan) { TinNhan tinNhan = new TinNhan(); if (Session["user"] != null && Session["mabaidang"] != null) { tinNhan.LuuTinNhan(Convert.ToInt32(Session["mabaidang"]), Convert.ToInt32(Session["user"]), tinnhan); } else { return(RedirectToAction("Index", "DangNhap")); } return(RedirectToAction("Index", "ThanhCong")); }
// Gửi tin nhắn tới tất cả các nhân viên ( hàm này cần chỉnh sao cho phù hợp với admin page) public async Task SendMessageFromClientToAllManager(string maKhachHang, string noiDung) { TinNhan tinNhanCuoi = await DataContext.TinNhans.Where(m => m.MaKhachHang == maKhachHang) .OrderByDescending(c => c.ThoiGianGui).FirstAsync(); if (tinNhanCuoi != null) { // Gửi trong trang thái đăng nhập tại user Clients.Clients(manager.Select(m => m.ConnectionId).ToList()).addNewMessageToManager(maKhachHang, noiDung, tinNhanCuoi.ThoiGianGui.ToString("d dddd-M-yyyy")); // Gửi trong trnang thái đăng nhập với manager KhachHang client = await DataContext.KhachHangs.Where(khachHang => khachHang.MaKhachHang == maKhachHang).FirstAsync(); Clients.Clients(manager.Select(m => m.ConnectionId).ToList()).addNewMessage(maKhachHang, noiDung, tinNhanCuoi.ThoiGianGui.ToString("d dddd-M-yyyy"), client.Ten, client.DuongDanAnh); } }
/// <summary> /// Gửi tin nhắn thông thường /// </summary> /// <param name="content"></param> void SendMessage(string content, string path) { if (CaiDat.TcpServer.Connected) { TinNhan mes = new TinNhan(); mes.Sender = NguoiGui.Me; mes.Content = content; mes.Time = DateTime.Now; conversation.ThemTinNhan(mes); RefreshWeb(); // Gửi cho server try { NetworkStream ns = CaiDat.TcpServer.GetStream(); StreamWriter sw = new StreamWriter(ns); if (path == "") { sw.WriteLine(content); // Gửi tin nhắn sw.Flush(); } else // Gửi tập tin { DoSendFile(sw, path); } return; } catch { } } // Nếu ko ghi được while (!CaiDat.TcpServer.Connected) { // Thử kết nối lại if (MessageBox.Show("Mất kết nối tới server\nThử kết nối lại?", "Lỗi", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes) { try { CaiDat.TcpServer = new TcpClient(CaiDat.Server, CaiDat.Port); } catch { } } else { break; } } }
// giữa nhân viên và khách hàng // Lưu lại tin nhắn gửi giữa khách hàng và nhân viên cụ thể public async Task SaveNewMessageBetweenNhanVienAndClient(string maNhanVien, string maKhachHang, string noiDung) { KhachHang khachHang = await DataContext.KhachHangs.FindAsync(maKhachHang); NhanVien nhanVien = await DataContext.NhanViens.FindAsync(maNhanVien); TinNhan tinNhan = new TinNhan() { MaKhachHang = khachHang.MaKhachHang, MaNhanVien = nhanVien.MaNhanVien, NoiDung = noiDung, ThoiGianGui = DateTime.Now }; DataContext.TinNhans.Add(tinNhan); await DataContext.SaveChangesAsync(); }
public ActionResult Index(TinNhan tinnhan) { if (ModelState.IsValid) { using (AnzamtechEntities db = new AnzamtechEntities()) { db.TinNhans.Add(tinnhan); db.SaveChanges(); } } else { //not ok } TempData["sendMessage"] = "OK"; return(RedirectToAction("Index")); }
public TinNhan DocThongTin(int pMaTN) { string query = "SELECT * FROM TINNHAN WHERE MaTN = @MaTN "; object[] para = new object[] { pMaTN }; DataTable data = DataProvider.Instance.ExecuteQuery(query, para); foreach (DataRow item in data.Rows) { int MaTN = (int)item["MaTN"]; int MaSP = (int)item["MaSP"]; int Tuan = (int)item["Tuan"]; int Nam = (int)item["Nam"]; string ChuDe = item["ChuDe"].ToString(); string NoiDung = item["NoiDung"].ToString(); TinNhan newtn = new TinNhan(MaTN, MaSP, Tuan, Nam, ChuDe, NoiDung); return(newtn); } return(null); }
/// <summary> /// Gửi tin nhắn /// </summary> /// <param name="content"></param> void SendMessage(string content, string path) { if (lstClient.Count == 0) // Ko có client nào { MessageBox.Show("Chờ client kết nối đến..."); return; } TinNhan mes = new TinNhan(); mes.Sender = NguoiGui.Me; mes.Content = content; mes.Time = DateTime.Now; conversation.ThemTinNhan(mes); RefreshWeb(); // Tiến hành gửi qua tcp cho các client for (int i = 0; i < lstClient.Count; i++) { if (lstClient[i].Connected) { NetworkStream ns = lstClient[i].GetStream(); StreamWriter sw = new StreamWriter(ns); if (path == "") { sw.WriteLine(content); // Gửi tin nhắn sw.Flush(); } else // Gửi tập tin { DoSendFile(sw, path); } } else // Client ko kết nối nữa { RemoveClient(lstClient[i]); i--; } } }
private void GuiMailGUI_Load(object sender, EventArgs e) { if (hdflat == 0) { tb_NguoiNhan.Enabled = false; TinNhan tn = TinNhanBUS.Instance.DocThongTin(MaTN); if (tn.NoiDung != "" && tn.ChuDe != "") { tb_ChuDe.Text = tn.ChuDe; tb_NoiDung.Text = tn.NoiDung; tb_ChuDe.Enabled = false; tb_NoiDung.Enabled = false; } else { tb_ChuDe.Enabled = true; tb_NoiDung.Enabled = true; } } else { tb_NguoiNhan.Text = DTGmail; } }
/// <summary> /// Lắng nghe từng client /// </summary> /// <param name="client"></param> void HandleClient(object client) { TcpClient tcpclient = (TcpClient)client; NguoiGui sender = conversation.GetSender(tcpclient); TinNhan mes; NetworkStream ns = tcpclient.GetStream(); StreamReader sr = new StreamReader(ns); string s; while (tcpclient.Connected) { try { s = sr.ReadLine(); if (s != null) { if (s == CaiDat.MarkSendFile) // Nếu gửi file { s = DoReciveFile(sr); } mes = new TinNhan() { Content = s, Sender = sender, Time = DateTime.Now }; conversation.ThemTinNhan(mes); RefreshWeb(); continue; } } catch { } // Ko nhận được dữ liệu nữa có nghĩa là nó ngắt kết nối rồi RemoveClient(tcpclient); Thread.CurrentThread.Abort(); } }
public void Update(TinNhan input) { _repositoryTinhNhan.Update(input); }
public bool Sua(TinNhan tn) { return(TinNhanDAC.Instance.Sua(tn)); }
public bool Them(TinNhan tn) { return(TinNhanDAC.Instance.Them(tn)); }
public IHttpActionResult TraLoiTinNhan(string maSinhVien, string matKhau, TinNhan tinNhan) { if (!SinhVienDao.TonTaiSinhVien(maSinhVien, matKhau)) { return(BadRequest("Thông tin người gửi không đúng")); } var hoTenNguoiGui = tinNhan.HoTenNguoiGui; var maxMaTinNhan = TinNhanDao.GetMaxMaTinNhan() + 1; TINNHAN newTinNhan = new TINNHAN() { MaTinNhan = maxMaTinNhan, TieuDe = tinNhan.TieuDe, NoiDung = tinNhan.NoiDung, ThoiDiemGui = DateTime.Now }; NGUOIGUI nguoiGui = new NGUOIGUI() { MaTinNhan = maxMaTinNhan, MaNguoiGui = tinNhan.MaNguoiGui, HoTenNguoiGui = hoTenNguoiGui, TINNHAN = newTinNhan, TrangThai = TinNhanDao.TINNHAN_CHUA_XOA, TAIKHOAN = null }; var nguoiNhans = new List <NGUOINHAN>(); foreach (var item in tinNhan.NguoiNhans) { NGUOINHAN nguoiNhan = new NGUOINHAN() { MaTinNhan = maxMaTinNhan, HoTenNguoiNhan = SinhVienDao.GetHoTenTheoTaiKhoan(item.MaNguoiNhan), ThoiDiemXem = null, TINNHAN = newTinNhan, TAIKHOAN = null, TrangThai = TinNhanDao.TINNHAN_CHUA_XOA, MaNguoiNhan = item.MaNguoiNhan }; nguoiNhans.Add(nguoiNhan); } newTinNhan.NGUOIGUIs = new List <NGUOIGUI> { nguoiGui }; newTinNhan.NGUOINHANs = nguoiNhans; TinNhanDao.AddTinNhan(newTinNhan); try { // Thong bao den client app FCMController fcm = new FCMController(); string message = fcm.CreateMessageNotification(newTinNhan); string response = fcm.SendMessage(message); return(Ok(response)); } catch (Exception ex) { return(BadRequest(ex.Message + "\n" + ex.InnerException.Message)); } }
public void Create(TinNhan input) { _repositoryTinhNhan.Insert(input); }