예제 #1
0
        public FrmNhanVienEdit(NhanVien nv = null)
        {
            InitializeComponent();
            imgAnh.Properties.SizeMode = PictureSizeMode.Stretch;
            loadQuyen();
            current = nv;
            if (current != null)
            {
                Text = "Chỉnh sửa nhân viên";
                loadField();
                isThem = false;
                //cbbPhong.Enabled = false;
                txtPassword.Enabled = false;

            }
            else
            {
                isThem = true;
                datNgaySinh.Value = new DateTime(1900, 1, 1);
                cbbChucVu.SelectedIndex = 1;
                //cbbChucVu.Enabled = false;
                cbbConLamViec.SelectedIndex = 0;
            }
            cbbPhong.Properties.NullText = "Chọn một phòng tập";
            DataFiller.fillPhongCombo(cbbPhong);
        }
예제 #2
0
        public FrmHangBanDuoc(NhanVien nhanVien = null, bool isNhap = false)
        {
            InitializeComponent();
            nhanVienHienTai = nhanVien;

            //pnGrid.Dock = DockStyle.Fill;
            for (int i = 2010; i < 2250; i++)
            {
                cbbTheoThangNam.Items.Add(i);

            }
            IsNhap = isNhap;
            cbbTheoThangNam.SelectedIndex
                = cbbTheoThangThang.SelectedIndex = 0;

            phongHienTai = Login1.GetPhongHienTai();
            DataFiller.fillNhanVienCombo(cbbNhanVien, phongHienTai.MaPhongTap, append: true);
            DataFiller.fillPhongCombo(cbbPhong, append: true);
            cbbPhong.SelectedValue = phongHienTai.MaPhongTap;
            cbbPhong.Enabled = cbbNhanVien.Enabled = nhanVien == null;
            //loadData();
            loc();

            if (IsNhap)
            {
                lblTitle.Text = "Thống kê nhập hàng";
                pnTongTien.Visible = false;
            }
            if (nhanVien != null)
            {
                cbbNhanVien.Enabled = false;
                cbbNhanVien.SelectedValue = nhanVien.MaNhanVien;
            }
        }
예제 #3
0
        internal static void save(HoaDon hoaDon, NhanVien nhanVien = null)
        {
            using (var db = DBContext.GetContext ())
            {
                var old = db.HoaDon.FirstOrDefault(b => b.MaHoaDon == hoaDon.MaHoaDon);
                if (old == null)
                {
                    //hoaDon.ThoiGianTao = DateTime.Now;
                    hoaDon.NhanVien = nhanVien;
                    var nhanVienLap = db.NhanVien.Find(hoaDon.NhanVien.MaNhanVien);
                    hoaDon.NhanVien = nhanVienLap;

                    foreach (var c in hoaDon.ChiTietHoaDon)
                    {
                        c.SanPham = db.SanPham.Find(c.MaSanPham);
                        c.HoaDon = hoaDon;
                    }
                    db.HoaDon.Add(hoaDon);

                }
                else {
                    old.ChiTietHoaDon.Clear();
                    foreach (var c in hoaDon.ChiTietHoaDon)
                    {
                        old.ChiTietHoaDon.Add(new ChiTietHoaDon() {
                            MaSanPham = c.SanPham.MaSanPham,
                            SoLuong= c.SoLuong,
                            Gia= c.Gia
                        });
                    }
                }
                db.SaveChanges();
            }
        }
        internal static List<ThongKeSanPhamModel> ThongKeBanRa(DateTime start, DateTime end, int maPhong = -1, NhanVien nhanVienHienTai = null)
        {
            List<ThongKeSanPhamModel> li = new List<ThongKeSanPhamModel>();
            using (var db = DBContext.GetContext())
            {
                var hoaDonTrongKhoang = db.HoaDon.Include(h=>h.NhanVien.PhongTap).Where(h=>h.NgayLap >= start && h.NgayLap <=end).SelectMany(h=>h.DanhSachChiTiet);
                if (maPhong != -1) {
                    hoaDonTrongKhoang = hoaDonTrongKhoang.Where(c => c.HoaDon.NhanVien.PhongTap.MaPhongTap == maPhong);
                }
                if (nhanVienHienTai != null) {
                    hoaDonTrongKhoang = hoaDonTrongKhoang.Where(c => c.HoaDon.NhanVien.MaNhanVien == nhanVienHienTai.MaNhanVien);
                }
                var hh = db.SanPham.ToList();
                foreach(var sp in hh){
                    ThongKeSanPhamModel tk = new ThongKeSanPhamModel() {
                    SanPham = sp
                    };

                    tk.SoLuong = hoaDonTrongKhoang.ToList().Where(c=>c.SanPham.MaSanPham == sp.MaSanPham).Sum(c => c.SoLuong);
                    tk.TongTien = hoaDonTrongKhoang.ToList().Where(c => c.SanPham.MaSanPham == sp.MaSanPham).Sum(c => c.SoLuong * c.Gia);
                    if (tk.SoLuong > 0)
                    {
                        li.Add(tk);
                    }
                }
                return li;
            }
        }
예제 #5
0
        public void Login(NhanVien user)
        {
            #region Cập nhật giao diện
            MainForm.User = user;

            lblLoginStatus.Text = string.Format("Đã đăng nhập ({0} - {1})",
                MainForm.User.UserName, MainForm.User.Quyen);
            var isAdmin = user.Quyen.MaQuyen == 1;
            rbBtnLogin.Enabled = rbBtnLoginQuick.Enabled = false;
            rbBtnLogout.Enabled = rbBtnLogoutQuick.Enabled = true;
            rbBtnChangePassword.Enabled = true;
            rbBtnRole.Enabled = rbTabManager.Visible = isAdmin;
            rbTabOperator.Visible = rbTabStatistics.Visible = true;
            rbBtnLogout.Enabled = true;
            /*
             * Phần quyền sử dụng hệ thống
             * Khi nào triển khai thì uncomment
             */
            //var myItems = BizPhanQuyen.GetItems(this.msMain);
            //var lsUser_Function = BizPhanQuyen.GetListByUser(nguoiSuDung.UserName);
            //foreach (var item in myItems)
            //{
            //    if (lsUser_Function.Contains(item.Text))
            //        item.Visible = true;
            //    else
            //        item.Visible = false;
            //}

            /*
             * Dù có phần quyền như thế nào đi nữa thì những chức năng dưới vẫn phải theo quy tắc này
             */
            /*
             * Chỉ để thuận tiện cho việc test. Khi triển khai nhớ uncoomment
             */
            //miHeThong_CauHinh.Visible = miHeThong_PhanQuyen.Visible = miHeThong_NhatKyHoatDong.Visible = miHeThong_QuanLyNguoiDung.Visible = isAdmin;

            /*
             * Khi triển khai thì comment những dòng sau
             */
            //miDuLieu.Visible = !isAdmin;
            //miDaoTao.Visible = !isAdmin;
            //miKhaoThi.Visible = !isAdmin;
            //miXetTotNghiep.Visible = !isAdmin;
            //lnkHocKy.Visible = !isAdmin;
            #endregion

            #region Nạp dữ liệu ban đầu
            // 1. Nạp danh sách Năm học, học kỳ

            // 2. SetHocKy
            #endregion
        }
 internal static List<PhieuThu> GetList(int maPhong, NhanVien nv = null)
 {
     using (var context = DBContext.GetContext())
     {
         var nvs = context.PhieuThu.Include(n => n.HoiVien).Include(n=>n.NhanVien.PhongTap)
             .Where(p=>p.NhanVien.PhongTap.MaPhongTap == maPhong);
         if (nv != null)
         {
             nvs = nvs.Where(n => n.NhanVien.MaNhanVien == nv.MaNhanVien);
         }
         return nvs.ToList();
     }
 }
 internal static List<HoaDon> GetList(int maPhong = -1, NhanVien manv = null)
 {
     using (var context = DBContext.GetContext())
     {
         var nvs = context.HoaDon.Include(n => n.DanhSachChiTiet).Include(h=>h.NhanVien.PhongTap);
         if (maPhong != -1) {
             nvs = nvs.Where(n => n.NhanVien.PhongTap.MaPhongTap == maPhong);
         }
         if (manv != null) {
             nvs = nvs.Where(n => n.NhanVien.MaNhanVien == manv.MaNhanVien);
         }
         return nvs.ToList();
     }
 }
 public FormChangePassword(NhanVien nguoiSuDung)
 {
     InitializeComponent();
     nguoiSuDung = Login1.GetTaiKhoanHienTai();
     if (nguoiSuDung == null)
     {
         throw new Exception("Tham số nguoiSuDung == NULL!");
     }
     else
     {
         txtTenDangNhap.Text = nguoiSuDung.UserName;
         cbxVaiTro.SelectedValue = nguoiSuDung.Quyen.MaQuyen;
         txtMatKhau.Focus();
         m_NguoiSuDung = nguoiSuDung;
     }
 }
예제 #9
0
 public UcThongKeKhachLe(NhanVien nv = null)
 {
     InitializeComponent();
     //var nvs = NhanVienController.GetList(Login1.GetPhongHienTai().MaPhongTap);
     //nvs.Insert(0, new NhanVien() { MaNhanVien =-1, TenNhanVien = "--Tất cả--"});
     //cbbNhanVien.DataSource = nvs;
     //cbbNhanVien.DisplayMember = "TenNhanVien";
     //cbbNhanVien.ValueMember = "MaNhanVien";
     DataFiller.fillPhongCombo(cbbPhong, append: true);
     var phong =(PhongTap) cbbPhong.SelectedItem;
     DataFiller.fillNhanVienCombo(cbbNhanVien, phong.MaPhongTap, append: true);
     dataGridView1.AutoGenerateColumns = false;
     cbbNhanVien.SelectedIndex = 0;
     nhanVienHienTai = nv;
     if (nv != null)
     {
         cbbNhanVien.SelectedValue = nv.MaNhanVien;
     }
 }
예제 #10
0
 public static bool IsKhongRangBuoc(NhanVien g)
 {
     using (var db = DBContext.GetContext())
     {
         var phieuThus = db.PhieuThu.Include(p => p.NhanVien).FirstOrDefault(p => p.NhanVien.MaNhanVien == g.MaNhanVien);
         if (phieuThus != null)
             return false;
         var his = db.HistoryNhanVien.Include(p => p.NhanVien).FirstOrDefault(p => p.NhanVien.MaNhanVien == g.MaNhanVien);
         if (his != null)
             return false;
         var khachLe = db.KhachLe.Include(p => p.NhanVien).FirstOrDefault(p => p.NhanVien.MaNhanVien == g.MaNhanVien);
         if (his != null)
             return false;
         var hoaDon = db.HoaDon.Include(p => p.NhanVien).FirstOrDefault(p => p.NhanVien.MaNhanVien == g.MaNhanVien);
         if (hoaDon != null)
             return false;
         if (g.MaNhanVien == Login1.TaiKhoanHienTai.MaNhanVien)
             return false;
         return true;
     }
 }
예제 #11
0
        public FrmLichSuPhieuThu(NhanVien nhanVienTruyenVao = null)
        {
            InitializeComponent();
            nhanVienHienTai = nhanVienTruyenVao;
            dataGridView1.AutoGenerateColumns = false;
            for (int i = 2010; i < 2250; i++)
            {
                cbbTheoThangNam.Items.Add(i);
                cbbTheoThangNam.SelectedIndex = 0;
            }
            cbbTheoThangThang.SelectedIndex = 0;
            phongHienTai = Login1.GetPhongHienTai();
            DataFiller.fillPhongCombo(cbbPhong, append:true);

            if (nhanVienTruyenVao != null) {
                cbbNhanVien.SelectedValue = nhanVienTruyenVao.MaNhanVien;
                cbbNhanVien.Enabled = cbbPhong.Enabled = false;
            }
            //loadData();
            loc();
               // loadEnable();
        }
예제 #12
0
 internal static CODE_RESULT_RETURN Add(NhanVien nv)
 {
     using (var context = DBContext.GetContext())
     {
         try
         {
             var n1 = context.NhanVien.FirstOrDefault(n => n.MaNhanVien == nv.MaNhanVien);
             if (n1 == null)
             {
                 //nv.Password = CryptoMd5.MD5Hash(nv.Password);
                 var quyen = context.Quyen.Find(nv.Quyen.MaQuyen);
                 var phong = context.PhongTap.Find(nv.PhongTap.MaPhongTap);
                 nv.Quyen = quyen;
                 nv.PhongTap = phong;
                 context.NhanVien.Add(nv);
                 context.SaveChanges();
                 return CODE_RESULT_RETURN.ThanhCong;
             }
             return CODE_RESULT_RETURN.MaTrung;
         }
         catch (DbEntityValidationException dbEx) {
             foreach (var validationErrors in dbEx.EntityValidationErrors)
             {
                 foreach (var validationError in validationErrors.ValidationErrors)
                 {
                     Trace.TraceInformation("Property: {0} Error: {1}",
                                             validationError.PropertyName,
                                             validationError.ErrorMessage);
                 }
             }
             return CODE_RESULT_RETURN.ThatBai;
         }
         catch(Exception ex)
         {
             Console.WriteLine(ex.Message);
             return CODE_RESULT_RETURN.ThatBai;
         }
     }
 }
 internal static void ChangePassword(NhanVien m_NguoiSuDung, string matKhauMoi)
 {
     using (var db = DBContext.GetContext())
     {
         NhanVien nguoiSuDung = db.NhanVien.Where(
             nsd => nsd.UserName == m_NguoiSuDung.UserName &&
                 nsd.Password == m_NguoiSuDung.Password).FirstOrDefault();
         if (nguoiSuDung == null)
             throw new Exception("Thông tin người sử dụng không đúng!");
         else
         {
             try
             {
                 nguoiSuDung.Password =CryptoMd5.MD5Hash( matKhauMoi);
                 db.SaveChanges();
             }
             catch
             {
                 throw new Exception("Không thể thay đổi mật khẩu được!");
             }
         }
     }
 }
 private void btnSave_Click(object sender, EventArgs e)
 {
     if (cbbPhong.GetSelectedDataRow() == null) {
         //cbbPhong.ShowPopup();
         //cbbPhong.Focus();
         //return;
     }
     if (dxValidationProvider1.Validate())
     {
         current = prepareNhanVien();
         if (isThem)
         {
             if (NhanVienController.Add(current) == CODE_RESULT_RETURN.ThanhCong)
             {
                 DialogResult = DialogResult.OK;
                 Close();
             }
             else
             {
                 MessageBox.Show("Có lỗi khi thêm");
             }
         }
         else
         {
             if (NhanVienController.Update(current) == CODE_RESULT_RETURN.ThanhCong)
             {
                 DialogResult = DialogResult.OK;
                 Close();
             }
             else
             {
                 MessageBox.Show("Có lỗi khi cập nhật");
             }
         }
     }
 }
 public FrmNhanVienEdit(NhanVien nv = null)
 {
     InitializeComponent();
     current = nv;
     if (current != null)
     {
         Text = "Chỉnh sửa nhân viên";
         loadField();
         isThem = false;
         cbbPhong.Enabled = false;
     }
     else
     {
         isThem = true;
     }
     cbbPhong.Properties.NullText = "Chọn một phòng tập";
     DataFiller.fillPhongCombo(cbbPhong);
     List<Quyen> quyens = QuyenController.GetList();
     cbbChucVu.DataSource = quyens;
     cbbChucVu.DisplayMember = "TenQuyen";
     cbbChucVu.ValueMember = "MaQuyen";
     cbbPhong.Properties.NullText = "Vui lòng chọn một phòng";
     cbbChucVu.SelectedIndex = 1;
 }
        NhanVien prepareNhanVien()
        {
            if (current == null)
            {
                current = new NhanVien()
                {
                    Password = "******"
                };
                current.Password = CryptoMd5.MD5Hash(current.Password);
            }
            current.DiaChi = txtDiaChi.Text.Trim();
            current.SoDienThoai = txtSoDienThoai.Text.Trim();
            current.TenNhanVien = txtTenNhanVien.Text.Trim();
            current.UserName = txtUserName.Text.Trim();
            //current.Password = "******";
            current.Quyen = (Quyen)cbbChucVu.SelectedItem;
            current.PhongTap = (PhongTap)cbbPhong.GetSelectedDataRow();

            var o = cbbPhong.GetSelectedDataRow();
            if (isHaveFile)
            {
                String fileName = opd.FileName;
                Bitmap bmp = new Bitmap(fileName);
                FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
                byte[] bimage = new byte[fs.Length];
                fs.Read(bimage, 0, Convert.ToInt32(fs.Length));
                fs.Close();

                byte[] Photo = bimage;
                current.Anh = Photo;
            }
            var phong = (PhongTap)cbbPhong.GetSelectedDataRow();
            current.PhongTap = phong;
            return current;
        }
예제 #17
0
 private void cbbNhanVien_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (cbbNhanVien.SelectedItem != null) {
         nhanVienHienTai = (NhanVien)cbbNhanVien.SelectedItem;
     }
 }
예제 #18
0
        private void btnDongY_Click(object sender, EventArgs e)
        {
            var tenDangNhap = txtTenDangNhap.Text;
            var matKhau = txtMatKhau.Text;

            var bw = new BackgroundWorker();
            bw.DoWork += (oSender, oE) =>
            {
                oE.Result = NhanVienController.Login(tenDangNhap, matKhau);
            };
            bw.RunWorkerCompleted += (oSender, oE) =>
            {
                if (this.Visible == false)
                    return;
                picProgress.Visible = false;
                btnDongY.Enabled = true;
                if (oE.Error != null)
                {
                    Utils.DialogUtils.ShowMessage("Lỗi trong quá trình đăng nhập " + oE.Error.Message);
                }
                else
                {
                    if (oE.Result == null || !(oE.Result is NhanVien))
                    {
                        Utils.DialogUtils.ShowMessage("Thông tin đăng nhập không hợp lệ");
                        txtMatKhau.Clear();
                        txtTenDangNhap.Focus();
                    }
                    else //if (this.NguoiSuDung != null)
                    {
                        var loginResult = oE.Result as NhanVien;
                        if (!loginResult.IsConLamViec)
                        {
                            MessageBox.Show("Tài khoản này không còn làm việc");
                            return;
                        }
                        if (loginResult.IsKhoa) {
                            MessageBox.Show("Tài khoản này đã bị khóa, vui lòng liên hệ admin");
                            return;
                        }
                        this.User = loginResult;
                        Login1.TaiKhoanHienTai = User;
                        //Kiểm tra người sử dụng còn có quyến sử dụng hệ thống hay không
                        //if (this.User.IsActive == false)
                        //{
                        //    Utils.DialogUtils.ShowMessage("Bạn đã bị thu quyền sử dụng trên hệ thống.\n\rVui lòng liên hệ với quản trị viên");
                        //    txtMatKhau.Clear();
                        //    txtTenDangNhap.Focus();
                        //    this.User = null;
                        //}
                        //else
                        //{
                            this.DialogResult = System.Windows.Forms.DialogResult.OK;
                            this.Close();
                        //}
                    }
                }
            };
            picProgress.Visible = true;
            btnDongY.Enabled = false;
            bw.RunWorkerAsync();
        }
예제 #19
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            errorProvider1.Clear();
            if (txtMathe.Text == "") {
                errorProvider1.SetError(txtMathe, "Chưa nhập mã thẻ");
                txtMathe.Focus();
                return;
            }
            if (txtUserName.Text == "") {
                errorProvider1.SetError(txtMathe, "Chưa nhập tên đăng nhập");
                txtUserName.Focus();
                return;
            }

            if (txtTenNhanVien. Text == "")
            {
                errorProvider1.SetError(txtTenNhanVien, "Chưa nhập tên nhân viên");
                txtTenNhanVien.Focus();
                return;
            }
            if (datNgaySinh.Value.Year == 1900)
            {
                errorProvider1.SetError(datNgaySinh, "Ngày sinh không hợp lệ");
                datNgaySinh.Focus();
                return;
            }

             if (current==null && txtPassword.Text == "")
            {
                errorProvider1.SetError(datNgaySinh, "Mật khẩu không được rỗng");
                txtPassword.Focus();
                return;
            }

            if (cbbPhong.GetSelectedDataRow() == null)
            {
                errorProvider1.SetError(cbbPhong, "Chưa chọn phòng");
                cbbPhong.Focus();
                return;
            }

            if (dxValidationProvider1.Validate())
            {
                current = prepareNhanVien();
                if (isThem)
                {
                    if (NhanVienController.Add(current) == CODE_RESULT_RETURN.ThanhCong)
                    {
                        DialogResult = DialogResult.OK;
                        Close();
                    }
                    else
                    {
                        MessageBox.Show("Có lỗi khi thêm");
                    }
                }
                else
                {
                    if (!NhanVienController.IsTrungMaNvKhac(current))
                    {
                        if (NhanVienController.Update(current) == CODE_RESULT_RETURN.ThanhCong)
                        {
                            DialogResult = DialogResult.OK;
                            Close();
                        }
                        else
                        {
                            MessageBox.Show("Có lỗi khi cập nhật");
                        }
                    }
                    else {
                        errorProvider1.SetError(txtMathe, "Mã thẻ này đã sử dụng cho nhân viên khác");
                        txtMathe.Focus();
                        return;
                    }
                }
            }
        }
 internal static CODE_RESULT_RETURN Update(NhanVien hv)
 {
     using (var db = DBContext.GetContext())
     {
         var hvc = db.NhanVien.FirstOrDefault(h => h.MaNhanVien == hv.MaNhanVien);
         if (hvc != null)
         {
             hvc.TenNhanVien = hv.TenNhanVien;
             hvc.UserName = hv.UserName;
             if (hv.PhongTap != null)
             {
                 var phongMoi = db.PhongTap.FirstOrDefault(p => p.MaPhongTap == hv.PhongTap.MaPhongTap);
                 hvc.PhongTap = phongMoi;
             }
             var quyen = db.Quyen.Find(hv.Quyen.MaQuyen);
             hvc.Quyen = quyen;
             hvc.SoDienThoai = hv.SoDienThoai;
             hvc.DiaChi = hv.DiaChi;
             hvc.Password = hvc.Password;
             hvc.Anh = hv.Anh;
             db.SaveChanges();
             return CODE_RESULT_RETURN.ThanhCong;
         }
         return CODE_RESULT_RETURN.ThatBai;
     }
 }
예제 #21
0
 internal static void taoHoaDon(HoaDon hoaDon, NhanVien banHienTai, string message)
 {
     save(hoaDon, banHienTai);
     MessageBox.Show(message);
 }
예제 #22
0
 internal static bool IsTrungMaNvKhac(NhanVien current)
 {
     var t = GetByMaThe(current.MaThe);
     return t != null && t.MaNhanVien != current.MaNhanVien;
 }
예제 #23
0
        internal static List<ThongKeSanPhamModel> ThongKeMuaVaoBanRa(DateTime start, DateTime end, int maPhong = -1,
            NhanVien nhanVienHienTai = null, bool isNhap = false)
        {
            List<ThongKeSanPhamModel> li = new List<ThongKeSanPhamModel>();
            using (var db = DBContext.GetContext())
            {

                var chiTietHoaDonTrongKhoang = db.ChiTietHoaDon.Include(c => c.HoaDon)
                    .Include(c => c.HoaDon.NhanVien)
                    .Include(c=>c.HoaDon.NhanVien.PhongTap).Include(c=>c.SanPham)
                    .Where(c=>c.HoaDon.NgayLap >= start && c.HoaDon.NgayLap <= end)
                    ;
                if (maPhong != -1)
                {
                    chiTietHoaDonTrongKhoang = chiTietHoaDonTrongKhoang
                        .Where(c => c.HoaDon.NhanVien.PhongTap.MaPhongTap == maPhong);
                }

                var tatCaHang = db.SanPham.ToList();
                var tatCaNhanVien = new List<NhanVien>();
                if (nhanVienHienTai != null && nhanVienHienTai.MaNhanVien != -1)
                {
                    tatCaNhanVien.Add(nhanVienHienTai);
                    chiTietHoaDonTrongKhoang = chiTietHoaDonTrongKhoang
                        .Where(c=>c.HoaDon.NhanVien.MaNhanVien == nhanVienHienTai.MaNhanVien);
                }
                else
                  tatCaNhanVien =  db.NhanVien.ToList();
                if (!isNhap)
                {
                    #region banHang
                    foreach (var sp in tatCaHang)
                    {
                        foreach (var nv in tatCaNhanVien)
                        {
                            ThongKeSanPhamModel tk = new ThongKeSanPhamModel()
                            {
                                SanPham = sp,
                                NhanVien = nv,
                                PhongTap = nv.PhongTap
                            };

                            tk.SoLuong = chiTietHoaDonTrongKhoang.ToList().Where(c => c.SanPham.MaSanPham == sp.MaSanPham
                                && c.HoaDon.NhanVien.MaNhanVien == nv.MaNhanVien).ToList().Sum(c => c.SoLuong);
                            tk.TongTien = chiTietHoaDonTrongKhoang.ToList()
                                .Where(c => c.SanPham.MaSanPham == sp.MaSanPham
                                && c.HoaDon.NhanVien.MaNhanVien == nv.MaNhanVien
                                ).ToList().Sum(c => c.SoLuong * c.Gia);
                            if (tk.SoLuong > 0)
                            {
                                li.Add(tk);
                            }
                        }
                    }
                    #endregion banHang
                }
                else
                {
                    #region nhapHang
                    foreach (var ct in chiTietHoaDonTrongKhoang) {
                        ThongKeSanPhamModel model = new ThongKeSanPhamModel() {
                            NhanVien = ct.HoaDon.NhanVien,
                            PhongTap = ct.HoaDon.NhanVien.PhongTap,
                            SanPham = ct.SanPham,
                            SoLuong = ct.SoLuong,
                            TongTien = ct.ThanhTien,
                            NgayNhap = ct.HoaDon.NgayLap
                        };
                        li.Add(model);
                    }

                    #endregion nhapHang

                }

                return li.OrderBy(l=>l.NhanVien.MaNhanVien).ToList();
            }
        }
예제 #24
0
 void wipeCard()
 {
     loadDefault();
     var checkin = isCheckin;
     nv = NhanVienController.GetByMaThe(txtMa.Text.Trim());
     if (nv != null)
     {
         if (checkin)
         {
             if (!NhanVienController.IsCheckedIn(nv.MaThe))
             {
                 var hh = new HistoryNhanVien()
                 {
                     IsCheckin = true,
                     NhanVien = nv,
                     ThoiGian = DateTime.Now,
                     Ca = Login1.CaHienTai
                 };
                 var r = HistotyNhanVienController.Add(hh);
                 if (r == CODE_RESULT_RETURN.ThanhCong)
                 {
                     loadData();
                     lblKetQua.Text = "Đã "+getTenHanhDong();
                     lblKetQua.ForeColor = Color.Green;
                 }
                 else
                 {
                     lblKetQua.Text = "Có lỗi khi "+getTenHanhDong();
                     lblKetQua.ForeColor = Color.Red;
                 }
             }
             else
             {
                 thongBaoDaLam();
             }
         }
         else {
             //Nguoi dung checkout
             if (!NhanVienController.IsCheckedOut(nv.MaThe))
             {
                 var hh = new HistoryNhanVien()
                 {
                     IsCheckin = false,
                     NhanVien = nv,
                     ThoiGian = DateTime.Now,
                     Ca = Login1.CaHienTai
                 };
                 var r = HistotyNhanVienController.Add(hh);
                 if (r == CODE_RESULT_RETURN.ThanhCong)
                 {
                     loadData();
                     lblKetQua.Visible = true;
                     lblKetQua.Text = "Đã checkout";
                     lblKetQua.ForeColor = Color.Green;
                 }
                 else
                 {
                     lblKetQua.Text = "Có lỗi khi checkout";
                     lblKetQua.ForeColor = Color.Red;
                 }
             }
             else
             {
                 //lblKetQua.ForeColor = Color.Purple;
                 //lblKetQua.Text = "Nhân viên này đã checkout, chưa checkin";
                 //loadData();
                 thongBaoDaLam();
             }
         }
     }
     else
     {
         lblKetQua.ForeColor = Color.Red;
         lblKetQua.Text = "Không có nhân viên này";
     }
 }
예제 #25
0
 public void Logout()
 {
     MainForm.User = null;
     lblLoginStatus.Text = "Chưa đăng nhập";
     rbBtnLogout.Enabled = rbBtnLogoutQuick.Enabled = false;
     rbBtnLogin.Enabled = true;
     rbBtnChangePassword.Enabled = false;
     rbBtnRole.Enabled = false;
     rbTabManager.Visible = rbTabOperator.Visible = rbTabStatistics.Visible = false;
     pnMain.Controls.Clear();
     LoadUcWelcome();
 }
예제 #26
0
 internal static CODE_RESULT_RETURN Update(NhanVien hv)
 {
     using (var db = DBContext.GetContext())
     {
         var nhanVienCu = db.NhanVien.FirstOrDefault(h => h.MaNhanVien == hv.MaNhanVien);
         if (nhanVienCu != null)
         {
             nhanVienCu.TenNhanVien = hv.TenNhanVien;
             nhanVienCu.UserName = hv.UserName;
             if (hv.PhongTap != null)
             {
                 var phongMoi = db.PhongTap.FirstOrDefault(p => p.MaPhongTap == hv.PhongTap.MaPhongTap);
                 nhanVienCu.PhongTap = phongMoi;
             }
             var quyen = db.Quyen.Find(hv.Quyen.MaQuyen);
             nhanVienCu.NgaySinh = hv.NgaySinh;
             nhanVienCu.Quyen = quyen;
             nhanVienCu.SoDienThoai = hv.SoDienThoai;
             nhanVienCu.DiaChi = hv.DiaChi;
             nhanVienCu.Password = hv.Password;
             nhanVienCu.IsKhoa = hv.IsKhoa;
             nhanVienCu.IsConLamViec = hv.IsConLamViec;
             nhanVienCu.Anh = hv.Anh;
             nhanVienCu.MaThe = hv.MaThe;
             db.SaveChanges();
             return CODE_RESULT_RETURN.ThanhCong;
         }
         return CODE_RESULT_RETURN.ThatBai;
     }
 }