/// <summary> /// Dịch vụ đăng nhập /// </summary> /// <param name="taikhoanNV">tên tài khoản</param> /// <param name="mK">mật khẩu</param> public void DangNhap(string taikhoanNV, string mK) { _callbackClient = OperationContext.Current.GetCallbackChannel<IQLPMCallback>(); if (db.tbNhanViens.Where(nv => nv.taiKhoanNV == taikhoanNV && nv.mkNV == mK).Select(nv => nv).Count() == 1) if (SO_dsClient_Add(taikhoanNV, _callbackClient)) { SO_ThayDoiTrangThai_NhanVien(taikhoanNV, "01"); _callbackClient.DangNhap_Callback(true, null, SO_Get_NhanVien(taikhoanNV), SO_Get_dsChucNang_By_taikhoanNV(taikhoanNV)); // Cap nhat lai danh sach nhan vien cho nhung client co chuc nang quan tri he thong foreach (var active in SO_Get_dsTaiKhoanActive_By_ChucNang("CN010")) foreach (var item in _dsClient) if (item.Key.Equals(active)) item.Value.Get_dsNhanVien_Callback(SO_Get_dsNhanVien()); // Cap nhat lai danh sach dich vu cho nhung client co chuc kham benh va tiep nhan 00, 03, 04, 05, 06, 07 // Lay danh sach dich vu cua chuc nang _dSChucNang.Clear(); _dsDichVu.Clear(); foreach (string tkNV in _dsClient.Keys) foreach (ChucNang cn in SO_Get_dsChucNang_By_taikhoanNV(tkNV)) //if (!tmpDSChucNang.Contains(cn)) // tmpDSChucNang.Add(cn); if ((_dSChucNang.Where(cnang => cnang.MaCN == cn.MaCN).Select(cnang => cnang).Count()) == 0) _dSChucNang.Add(cn); foreach (ChucNang cn in _dSChucNang) { IEnumerable<DichVu> tmpDSDichVu = db.tbDichVus.Where(dv => dv.maCN == cn.MaCN).Select(dv => new DichVu { MaDV = dv.maDV, TenDV = dv.tenDV, MaCN = dv.maCN, GiaDV = dv.giaDV ?? 0 }); foreach (DichVu dv in tmpDSDichVu) if ((_dsDichVu.Where(dvu => dvu.MaDV == dv.MaDV).Select(dvu => dvu).Count()) == 0) _dsDichVu.Add(dv); //if (!_dsDichVu.Contains(dv)) // _dsDichVu.Add(dv); } // Gui danh sach dv string[] tmpDSClientDV = new string[] { "CN000", "CN003", "CN004", "CN005", "CN006", "CN007" }; foreach (string cn in tmpDSClientDV) foreach (var active in SO_Get_dsTaiKhoanActive_By_ChucNang(cn)) foreach (var item in _dsClient) if (item.Key.Equals(active)) item.Value.Get_dsDichVu_By_ChucNang_Callback(_dsDichVu); } else _callbackClient.DangNhap_Callback(false, "Tài khoản này đã đăng nhập vào hệ thống", null, null); else _callbackClient.DangNhap_Callback(false, "Tên tài khoản hoặc mật khẩu không chính xác", null, null); }
public void Add_NhanVien(NhanVien newNhanVien, List<string> dsChucNang_newNhanVien) { _callbackClient = OperationContext.Current.GetCallbackChannel<IQLPMCallback>(); // Tao mot doi tuong tbNhanVien moi tbNhanVien tbNewNhanVien = new tbNhanVien(); tbNewNhanVien.taiKhoanNV = newNhanVien.TaiKhoanNV; tbNewNhanVien.diaChiNV = newNhanVien.DiaChiNV; tbNewNhanVien.gioiTinhNV = newNhanVien.GioiTinhNV; tbNewNhanVien.hoVaTenDemNV = newNhanVien.HoVaTenDemNV; tbNewNhanVien.maTrangThaiNV = newNhanVien.MaTrangThaiNV; tbNewNhanVien.mkNV = newNhanVien.MkNV; tbNewNhanVien.ngaySinhNV = newNhanVien.NgaySinhNV; tbNewNhanVien.sDTNV = newNhanVien.SDTNV; tbNewNhanVien.tenNV = newNhanVien.TenNV; // Them nhan vien vao db db.tbNhanViens.InsertOnSubmit(tbNewNhanVien); db.SubmitChanges(); // Them danh sach chuc nang cho nhan vien foreach (var item in dsChucNang_newNhanVien) if (item != null) { tbNhanVien_ChucNang nVien_CNang = new tbNhanVien_ChucNang(); nVien_CNang.taiKhoanNV = newNhanVien.TaiKhoanNV; nVien_CNang.maCN = item; db.tbNhanVien_ChucNangs.InsertOnSubmit(nVien_CNang); db.SubmitChanges(); } // Gui cap nhat danh sach nhan vien cho tat ca cac client dang active va co chuc nang QLNhanVien foreach (var active in SO_Get_dsTaiKhoanActive_By_ChucNang("CN010")) foreach (var item in _dsClient) if (item.Key.Equals(active)) item.Value.Get_dsNhanVien_Callback(SO_Get_dsNhanVien()); // Gui Add_nhanVien_callback ve cho client invoke _callbackClient.Add_NhanVien_Callback(newNhanVien.TaiKhoanNV); }
/// <summary> /// Thêm một client vào danh sách Client /// </summary> /// <param name="taikhoanNV">tên tài khoản</param> /// <param name="client">IQLPMCallback</param> /// <returns></returns> private bool SO_dsClient_Add(string taikhoanNV, IQLPMCallback client) { if (_dsClient.ContainsKey(taikhoanNV)) return false; _dsClient.Add(taikhoanNV, client); return true; }
public void Get_PhongKham() { _callbackClient = OperationContext.Current.GetCallbackChannel<IQLPMCallback>(); _callbackClient.Get_PhongKham_Callback(db.tbThongTinPhongKhams.Select(pk => new ThongTinPhongKham { TenPK = pk.tenPK, SDTPK = pk.sDTPK, DiaChiPK = pk.diaChiPK }).FirstOrDefault()); }
public void Mod_NhanVien(NhanVien modNhanVien, List<string> dsChucNang_modNhanVien) { _callbackClient = OperationContext.Current.GetCallbackChannel<IQLPMCallback>(); // Modify thong tin cua nhan vien tbNhanVien tbModNhanVien = db.tbNhanViens.SingleOrDefault(nv => nv.taiKhoanNV.Equals(modNhanVien.TaiKhoanNV)); tbModNhanVien.taiKhoanNV = modNhanVien.TaiKhoanNV; tbModNhanVien.diaChiNV = modNhanVien.DiaChiNV; tbModNhanVien.gioiTinhNV = modNhanVien.GioiTinhNV; tbModNhanVien.hoVaTenDemNV = modNhanVien.HoVaTenDemNV; tbModNhanVien.maTrangThaiNV = modNhanVien.MaTrangThaiNV; tbModNhanVien.mkNV = modNhanVien.MkNV; tbModNhanVien.ngaySinhNV = modNhanVien.NgaySinhNV; tbModNhanVien.sDTNV = modNhanVien.SDTNV; tbModNhanVien.tenNV = modNhanVien.TenNV; db.SubmitChanges(); // Them danh sach chuc nang cho nhan vien // Gom 2 cong viec: Xoa ds chuc nang cu, them danh sach chuc nang moi // Xoa ds chuc nang cu foreach (tbNhanVien_ChucNang item in db.tbNhanVien_ChucNangs) if (item.taiKhoanNV.Equals(modNhanVien.TaiKhoanNV)) { db.tbNhanVien_ChucNangs.DeleteOnSubmit(item); db.SubmitChanges(); } // Them danh sach chuc nang moi foreach (var item in dsChucNang_modNhanVien) if (item != null) { tbNhanVien_ChucNang nVien_CNang = new tbNhanVien_ChucNang(); nVien_CNang.taiKhoanNV = modNhanVien.TaiKhoanNV; nVien_CNang.maCN = item; db.tbNhanVien_ChucNangs.InsertOnSubmit(nVien_CNang); db.SubmitChanges(); } // Gui cap nhat danh sach nhan vien cho tat ca cac client dang active va co chuc nang QLNhanVien foreach (var active in SO_Get_dsTaiKhoanActive_By_ChucNang("CN010")) foreach (var item in _dsClient) if (item.Key.Equals(active)) item.Value.Get_dsNhanVien_Callback(SO_Get_dsNhanVien()); // Gui Add_nhanVien_callback ve cho client invoke (callback cua mod tuong tu nhu add) _callbackClient.Add_NhanVien_Callback(modNhanVien.TaiKhoanNV); }
public void Get_dsTrangThaiNV() { _callbackClient = OperationContext.Current.GetCallbackChannel<IQLPMCallback>(); _callbackClient.Get_dsTrangThaiNV_Callback(db.tbTrangThaiNVs.Select(tt => new TrangThaiNV { MaTrangThaiNV = tt.maTrangThaiNV, TenTrangThaiNV = tt.tenTrangThaiNV })); }
public void Get_dsNhanVien_By_taikhoanNV(string taikhoanNV) { _callbackClient = OperationContext.Current.GetCallbackChannel<IQLPMCallback>(); _callbackClient.Get_dsNhanVien_By_taikhoanNV_Callback(db.tbNhanViens.Where(nv => nv.taiKhoanNV.Contains(System.Convert.ToString(taikhoanNV))).Select(nv => new NhanVien { TaiKhoanNV = nv.taiKhoanNV, MkNV = nv.mkNV, HoVaTenDemNV = nv.hoVaTenDemNV, TenNV = nv.tenNV, NgaySinhNV = nv.ngaySinhNV ?? DateTime.Now, GioiTinhNV = nv.gioiTinhNV ?? true, SDTNV = nv.sDTNV, DiaChiNV = nv.diaChiNV, MaTrangThaiNV = nv.maTrangThaiNV })); }
/// <summary> /// Lấy danh sách tất cả nhân viên /// </summary> public void Get_dsNhanVien() { _callbackClient = OperationContext.Current.GetCallbackChannel<IQLPMCallback>(); _callbackClient.Get_dsNhanVien_Callback(SO_Get_dsNhanVien()); }
public void Get_dsDichVu() { _callbackClient = OperationContext.Current.GetCallbackChannel<IQLPMCallback>(); _callbackClient.Get_dsDichVu_By_ChucNang_Callback(_dsDichVu); }
/// <summary> /// Lấy danh sách chức năng của một nhân viên có tài khoản là: taikhoanNV /// </summary> /// <param name="taikhoanNV">tên tài khoản</param> /// <returns>Danh sách chức năng</returns> public void Get_dsChucNang_By_taikhoanNV(string taikhoanNV) { _callbackClient = OperationContext.Current.GetCallbackChannel<IQLPMCallback>(); _callbackClient.Get_dsChucNang_By_taikhoanNV_Callback(SO_Get_dsChucNang_By_taikhoanNV(taikhoanNV)); }