//lưu
        private void btnLuu_Click(object sender, EventArgs e)
        {
            Nhanvien a = new Nhanvien();

            a.MaNV   = txt_manv.Text.Trim();
            a.TenNV  = txt_tennv.Text.Trim();
            a.Chucvu = txt_chucvu.Text.Trim();

            a.Diachi = txt_diachi.Text.Trim();
            a.Sdt    = int.Parse(txt_sdt.Text.Trim());

            if (a.MaNV == null || a.TenNV == "")
            {
                throw new Exception();
            }
            if (MessageBox.Show("Bạn có muốn Thêm NV ", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                if (BUS.BUS.them_NV(a) == 1)
                {
                    MessageBox.Show("Thêm Thành Công");
                    txt_manv.Enabled = false;
                }
            }

            xuat();
        }
        public async Task <ActionResult <Nhanvien> > EditNhanvien(Nhanvien nv)
        {
            if (nv.manhanvien == null || nv.manhanvien == "")
            {
                return(Ok(new { status = false, message = "Ma nhan khong ton tai" }));
            }

            var nhanvienmoi = await context.Nhanvien.FindAsync(nv.manhanvien);

            //var entity = await context.Nhanvien.FirstOrDefaultAsync(item => item.manhanvien == nv.manhanvien);

            if (nhanvienmoi == null)
            {
                return(Ok(new { status = false, message = "Nhan vien khong ton tai" }));
            }
            //nhanvienmoi = nv;

            context.Nhanvien.Attach(nv);


            try
            {
                context.Entry(nv).State = EntityState.Modified;
                await context.SaveChangesAsync();

                return(Ok(new { status = true, message = "Cap  nhat thanh cong", nhanvienmoi }));
            }
            catch (DbUpdateConcurrencyException)
            {
                return(StatusCode(500, "Internal Server Error"));
            }
        }
Example #3
0
        public void load()
        {
            nam.Checked            = true;
            cbchucvu.DataSource    = datachucvu.Danhsach().ToList();
            cbchucvu.DisplayMember = "Name";
            cbchucvu.ValueMember   = "ID";

            cbphongban.DataSource    = dataphongban.Danhsach().ToList();
            cbphongban.DisplayMember = "Name";
            cbphongban.ValueMember   = "ID";

            a = datanhanvien.tim(_id);

            manv.Text     = a.MaNV;
            name.Text     = a.Name1;
            ngaysinh.Text = (a.DOB == null)?"":a.DOB.ToString();
            if (a.Gioitinh.Trim() == "1")
            {
                nam.Checked = true;
            }
            else
            {
                Nu.Checked = true;
            }
            noio.Text                = a.Noiohiennay;
            ngayvaolam.Text          = a.Ngayvaolam.ToString();
            bangcap.Text             = a.Bangcap;
            sdt.Text                 = a.SDT;
            cmt.Text                 = a.CMT;
            cbchucvu.SelectedValue   = a.ChucvuID;
            cbphongban.SelectedValue = a.PhongbanID;
        }
Example #4
0
        public ActionResult Dangnhap(FormCollection collection)
        {
            var tendn   = collection["TenDN"];
            var matkhau = collection["Matkhau"];

            if (string.IsNullOrEmpty(tendn))
            {
                ViewData["Loi1"] = "Phải nhập tên đăng nhập";
            }

            else if (string.IsNullOrEmpty(matkhau))
            {
                ViewData["Loi2"] = "Phải nhập mật khẩu";
            }
            else
            {
                Nhanvien kh = kho.Nhanviens.SingleOrDefault(n => n.taikhoan == tendn && n.matkhau == matkhau);
                if (kh != null)
                {
                    Session["Taikhoan"] = kh;
                    return(RedirectToAction("DatHang", "Nhap"));
                }
                else
                {
                    ViewBag.Thongbao = "Tên đăng nhập hoặc mật khẩu k đúng";
                }
            }
            return(View());
        }
        private void cboUserGroupName_Leave(object sender, EventArgs e)
        {
            string     username = currentItem.Username;
            DataAccess da       = new DataAccess();
            Nhanvien   emp      = da.getNhanvienbyUserName(username);

            // Admin can not modify "Admin" GroupName
            if ((emp.Loai == "Quản lý") || (username == Program.username))
            {
                cboUserGroupName.Text = emp.Loai;
                return;
            }
            else
            {
                lblStatusThongTinTaiKhoan.Text = "";
                string s = cboUserGroupName.Text;
                if (!string.Equals(s, oldSelectedNhanvien.Loai))
                {
                    emp.Loai = s;
                    da.updateNhanvien(emp);
                    QuyenTruycap quyentruycap = getDefaultPermissionByGroupname(cboUserGroupName.Text);
                    quyentruycap.IDQuyentruycap = emp.IDQuyenTruycap;
                    quyentruycap.TenLoaiNV      = s;
                    quyentruycap.Ngaythietlap   = DateTime.Now.Date;
                    da.updateQuyenTruycap(quyentruycap);

                    int selectedIndex = currentIndex;
                    customListBoxOtherUser.Items.Clear();
                    LoadOtherUser("");
                    customListBoxOtherUser.SelectedIndex = selectedIndex;
                }
            }
        }
        private void txtPhone_Leave(object sender, EventArgs e)
        {
            string     username = currentItem.Username;
            DataAccess da       = new DataAccess();
            Nhanvien   emp      = da.getNhanvienbyUserName(username);
            string     s        = txtPhone.Text;

            try
            {
                double tmp;
                if (!double.TryParse(s, out tmp) && !string.IsNullOrEmpty(s))
                {
                    lblStatusThongTinTaiKhoan.Text = "Số điện thoại không hợp lệ!!!";
                    txtPhone.Text = emp.SoDT;
                    txtPhone.SelectAll();
                    return;
                }
            }
            catch
            {
                lblStatusThongTinTaiKhoan.Text = "Số điện thoại không hợp lệ!!!";
                txtPhone.Text = emp.SoDT;
                return;
            }
            lblStatusThongTinTaiKhoan.Text = "";
            emp.SoDT = s;

            da.updateNhanvien(emp);
        }
        private void txtName_Leave(object sender, EventArgs e)
        {
            string     username = currentItem.Username;
            DataAccess da       = new DataAccess();
            Nhanvien   emp      = da.getNhanvienbyUserName(username);
            string     s        = txtName.Text;

            if (s == "")
            {
                lblStatusThongTinTaiKhoan.Text = "Thông tin Họ và tên không hợp lệ";
                txtName.Text = emp.Ten;
                txtName.SelectAll();
                return;
            }
            lblStatusThongTinTaiKhoan.Text = "";
            emp.Ten = s;
            if (da.updateNhanvien(emp))
            {
                if (string.Equals(Program.username, currentItem.Username))
                {
                    customListBoxCurrentUser.Items.Clear();
                    LoadCurrentUser();
                }
                else
                {
                    LoadOtherUser("");
                }
            }
        }
        public async Task <IActionResult> deleteNhanvien(Nhanvien nv)
        {
            if (nv.manhanvien == null || nv.manhanvien == "")
            {
                return(NotFound(new Message()
                {
                    status = "404", message = "ma nhan vien khong nen bo trong"
                }));
            }
            var nhanvien = await context.Nhanvien.FindAsync(nv.manhanvien);

            if (nhanvien == null)
            {
                return(NotFound(new Message()
                {
                    status = "404", message = "nhan vien nay khong ton tai"
                }));
            }
            try
            {
                context.Nhanvien.Remove(nhanvien);
                await context.SaveChangesAsync();

                return(Ok(new { status = true, message = "Xoa nhan vien thanh cong" }));
            }
            catch (DbUpdateConcurrencyException)
            {
                return(NotFound(new Message()
                {
                    status = "404", message = "nhan vien nay khong ton tai"
                }));
            }
        }
Example #9
0
        private void nhânViênToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Nhanvien nv = new Nhanvien();

            nv.Show();
            this.Hide();
        }
        private void LoadCurrentUser()
        {
            DataAccess da     = new DataAccess();
            Nhanvien   nhvien = da.getNhanvienByUsername_Password(Program.username, Program.password);

            customListBoxCurrentUser.Items.Add(new BKIT.Entities.CustomListBoxItem(nhvien.Ten, nhvien.Username, nhvien.Loai));
        }
Example #11
0
        public Nhanvien getNhanvienByUsername(string p)
        {
            Nhanvien nv         = null;
            Database db         = DatabaseFactory.CreateDatabase();
            string   sqlCommand = "SELECT * FROM Nhanvien WHERE username = '******'";

            try
            {
                DbCommand dbCommand = db.GetSqlStringCommand(sqlCommand);
                using (IDataReader dataReader = db.ExecuteReader(dbCommand))
                {
                    while (dataReader.Read())
                    {
                        nv = new Nhanvien();
                        nv = (Nhanvien)getNhanvien(dataReader);
                    }
                    dataReader.Close();
                    dbCommand.Connection.Close();
                }
            }
            catch
            {
                return(null);
            }
            return(nv);
        }
Example #12
0
        private void btnLogin_Click(object sender, EventArgs e)
        {
            string username = this.txtUserName.Text;
            string password = this.txtPassword.Text;

            if (username != "" && password != "")
            {
                DataAccess da     = new DataAccess();
                Nhanvien   result = da.getNhanvienByUsername_Password(username, password);
                if (result != null)
                {
                    Program.userLevel    = (Level)(convertLoai2Level(result.Loai));
                    Program.isLogin      = true;
                    Program.IDNhanvien   = result.IDNhanvien;
                    Program.username     = result.Username;
                    Program.password     = result.Password;
                    Program.userFullName = result.Ten;
                    this.Close();
                }
                else
                {
                    lblMess.Text = "Thông tin đăng nhập không hợp lệ!";
                    txtUserName.Focus();
                }
            }
            else
            {
                lblMess.Text = "Thông tin đăng nhập không hợp lệ!";
                txtUserName.Focus();
            }
        }
Example #13
0
        public ActionResult EditProfile()
        {
            //nếu không đăng nhập hệ thống thì tự động bắn về trang Login
            if (LoggedInUser.NguoidungID == 0)
            {
                return(RedirectToAction("Index"));
            }
            int nguoiDungID = LoggedInUser.NguoidungID;
            var nguoiDung   = db.Nguoidungs.FirstOrDefault(p => p.NguoidungID == nguoiDungID);
            //kiểm tra xem có assoc được không
            int?nhanVienID = nguoiDung.NhanvienID;

            if (nhanVienID != null)
            {
                //lấy thông tin nhân viên
                var nhanVien = db.Nhanviens.FirstOrDefault(p => p.NhanvienID == nhanVienID);
                ViewData["nhanVien"] = nhanVien;
            }
            else
            {
                ViewData["nhanVien"] = new Nhanvien();
            }
            ViewData["nguoiDung"]     = nguoiDung;
            ViewBag.identicalPassword = true;
            //khu vực ViewData
            return(View());
        }
Example #14
0
        public ActionResult Chonhang(FormCollection collection)
        {
            Phieunhap   ddh = new Phieunhap();
            Nhanvien    nv  = (Nhanvien)Session["Taikhoan"];
            List <Nhap> gh  = Layds();

            ddh.NhanVien = nv.MaNV;
            ddh.Ngaylap  = DateTime.Now;

            kho.Phieunhaps.InsertOnSubmit(ddh);
            kho.SubmitChanges();
            foreach (var item in gh)
            {
                CTPHIEUNHAP ctpx = new CTPHIEUNHAP();
                ctpx.Manhap      = ddh.MaNhap;
                ctpx.MaMH        = item.iMaMH;
                ctpx.SoluongNhap = item.iSoluong;
                ctpx.Gianhap     = item.dDonggia;
                ctpx.Tongtien    = item.dThanhtien;
                kho.CTPHIEUNHAPs.InsertOnSubmit(ctpx);
                //ctdh.Masach = item.iMasach;
                //ctdh.Soluong = item.iSoluong;
                //ctdh.Dongia = (decimal)item.dDonggia;
                //data.CTDATHANGs.InsertOnSubmit(ctdh);
            }
            kho.SubmitChanges();
            Session["Nhap"] = null;
            return(RedirectToAction("Xacnhan", "Nhap"));
        }
Example #15
0
        public async Task <IActionResult> PutNhanvien(Nhanvien nhanvien)
        {
            //if (id != nhanvien.Manhanvien)
            //{
            //    return BadRequest();
            //}

            _context.Entry(nhanvien).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                //if (!NhanvienExists(id))
                //{
                //    return NotFound();
                //}
                //else
                //{
                //    throw;
                //}
            }

            return(NoContent());
        }
Example #16
0
        public bool edit(Nhanvien sua)
        {
            Nhanvien temp = mydatabase.Nhanviens.Where(p => p.id == sua.id).SingleOrDefault();

            if (temp == null)
            {
                return(false);
            }

            temp.Bangcap     = sua.Bangcap;
            temp.ChucvuID    = sua.ChucvuID;
            temp.CMT         = sua.CMT;
            temp.DOB         = sua.DOB;
            temp.Gioitinh    = sua.Gioitinh;
            temp.MaNV        = sua.MaNV;
            temp.Name1       = sua.Name1;
            temp.Ngayvaolam  = sua.Ngayvaolam;
            temp.Noiohiennay = sua.Noiohiennay;
            temp.PhongbanID  = sua.PhongbanID;
            temp.SDT         = sua.SDT;



            mydatabase.SaveChanges();
            return(true);
        }
        [HttpPost("create")] /* tạo nhân viên*/
        public async Task <IActionResult> Create([FromBody] Nhanvien nhanvien)
        {
            try
            {
                //nhanvien.MaNhanVien = db.Nhanvien.Max(t => t.MaNhanVien) + 1;
                db.Nhanvien.Add(nhanvien);
                db.SaveChanges();
                var singlenv  = db.Nhanvien.OrderByDescending(x => x.MaNhanVien).First();
                var GetSingle = from nv in db.Nhanvien
                                join pb in db.Phongban
                                on nv.MaPhongBan equals pb.MaPhongBan
                                where singlenv.MaNhanVien == nv.MaNhanVien
                                select new
                {
                    nv.HoTen,
                    nv.GioiTinh,
                    nv.NgaySinh,
                    nv.HoKhau,
                    nv.DienThoai,
                    pb.TenPhongBan,
                    nv.TenDangNhap,
                    nv.MatKhau,
                };

                return(Ok(GetSingle));
            }
            catch (Exception ex)
            {
                return(BadRequest());
            }
        }
Example #18
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Ten,Email,Diachi,Sdt,CreatedAt")] Nhanvien nhanvien)
        {
            if (id != nhanvien.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(nhanvien);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!NhanvienExists(nhanvien.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(nhanvien));
        }
Example #19
0
        public void PostEmployee(Nhanvien employee)
        {
            QLKhachsanEntities entity = new QLKhachsanEntities();

            entity.Nhanviens.Add(employee);
            entity.SaveChanges();
        }
        private void TabPagePersonalInfo_Update(string p)
        {
            CultureInfo enUS     = new CultureInfo("en-US");
            DateTime    datetime = new DateTime();
            DataAccess  da       = new DataAccess();
            Nhanvien    nhanvien = da.getNhanvienbyUserName(p);

            oldSelectedNhanvien.Ten      = txtName.Text = nhanvien.Ten;
            oldSelectedNhanvien.Gioitinh = cboSex.Text = nhanvien.Gioitinh;
            oldSelectedNhanvien.Chucvu   = txtPosition.Text = nhanvien.Chucvu;
            oldSelectedNhanvien.Diachi   = txtAddress.Text = nhanvien.Diachi;
            oldSelectedNhanvien.SoDT     = txtPhone.Text = nhanvien.SoDT;
            cboBirthDay.Text             = nhanvien.Ngaysinh.Day.ToString();
            cboBirthMonth.Text           = nhanvien.Ngaysinh.ToString("MM");
            txtBirthYear.Text            = nhanvien.Ngaysinh.Year.ToString();
            //string s = cboBirthDay.Text + "/" + cboBirthMonth.Text + "/" + txtBirthYear.Text;
            string s = cboBirthDay.Text + cboBirthMonth.Text + txtBirthYear.Text;

            oldSelectedNhanvien.Loai = cboUserGroupName.Text = nhanvien.Loai;
            DateTime.TryParseExact(s, "ddMMyyyy", enUS, DateTimeStyles.None, out datetime);
            oldSelectedNhanvien.Ngaysinh = datetime;
            //oldSelectedNhanvien.Ngaysinh = Convert.ToDateTime(s);


            // Load Avatar
            //Image image = CustomListBox.ImageFromStr(employee.Avatar);
            //pictureAvatar.Image = image;
        }
Example #21
0
        public List <Nhanvien> TimNhanvien(Nhanvien nv)
        {
            List <Nhanvien> list = GetAllNhanvien();
            List <Nhanvien> kq   = new List <Nhanvien>();

            if (string.IsNullOrEmpty(nv.Manv) && string.IsNullOrEmpty(nv.Tennv) && string.IsNullOrEmpty(nv.Diachi) && string.IsNullOrEmpty(nv.SDT) && nv.SNLV == 0 && nv.HSL == 0)
            {
                kq = list;
            }
            //Tim theo mã
            else if (nv.Manv != "")
            {
                for (int i = 0; i < list.Count; ++i)
                {
                    if (list[i].Manv == nv.Manv)
                    {
                        kq.Add(new Nhanvien(list[i]));
                    }
                }
            }
            else
            {
                kq = null;
            }
            return(kq);
        }
        public async Task <IActionResult> Edit(int id, [Bind("MaNv,HoTenNv,GioiTinh,NgaySinh,DiaChi,DienThoai")] Nhanvien nhanvien)
        {
            if (id != nhanvien.MaNv)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(nhanvien);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!NhanvienExists(nhanvien.MaNv))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(nhanvien));
        }
        public async Task <IActionResult> Edit(string id, [Bind("manhanvien,hoten,diachi,dienthoai,mabophan,ngaysinh,gioitinh,macv,TDVH,bacluong")] Nhanvien nhanvien)
        {
            if (id != nhanvien.manhanvien)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(nhanvien);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!NhanvienExists(nhanvien.manhanvien))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(nhanvien));
        }
Example #24
0
        private void gridViewNhanvien_CellValueChanging(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {
            if (e.RowHandle >= 0)
            {
                if (e.Column == colDeleteNhanvien)
                {
                    Nhanvien objNhanvien = new Nhanvien();
                    objNhanvien.IDNhanvien = Convert.ToInt32(gridViewNhanvien.GetRowCellValue(e.RowHandle, "IDNhanvien"));

                    if (Convert.ToBoolean(gridViewNhanvien.GetRowCellValue(e.RowHandle, colDeleteNhanvien)) == true)
                    {
                        //warnning
                        if (MessageBox.Show(this, "Bạn có muốn xóa Loại phòng này không?", "Cảnh báo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                        {
                            if (new DataAccess().deleteNhanvien(objNhanvien) == true)
                            {
                                ((frmMain)(this.MdiParent)).setStatus("Xóa Loại phòng thành công");
                                gridViewNhanvien.DeleteRow(e.RowHandle);
                            }
                            else
                            {
                                MessageBox.Show(this, "Xóa Loại phòng không thành công", "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                ((frmMain)(this.MdiParent)).setStatus("");
                            }
                        }
                        else
                        {
                            //set the image to uncheck
                            gridViewNhanvien.SetRowCellValue(e.RowHandle, colDeleteNhanvien, true);
                        }
                    }
                }
            }
        }
        public async Task <IActionResult> Delete([FromBody] Nhanvien model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    //1. business logic
                    //set Active to 0

                    //2. logically delete object
                    await repository.Delete(model.MaNv);

                    var novaticResponse = NovaResponse.SUCCESS(model);
                    return(Ok(novaticResponse));
                }
                catch (Exception ex)
                {
                    if (ex.GetType().FullName == "Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException")
                    {
                        return(NotFound());
                    }

                    return(BadRequest());
                }
            }
            return(BadRequest());
        }
Example #26
0
 public List <Nhanvien> LoadData()
 {
     try
     {
         dp.Connect();
         string          sqlstr = "SELECT * FROM NhanVien";
         List <Nhanvien> list   = new List <Nhanvien>();
         SqlDataReader   dr     = dp.ExecuteReader(sqlstr);
         //List<Nhanvien> list = new List<Nhanvien>();
         while (dr.Read())
         {
             string   maNV            = dr.GetString(0);
             string   hoTen           = dr.GetString(1);
             string   tenQuayGiaoDich = dr.GetString(2);
             string   diaChi          = dr.GetString(3);
             string   soDienThoai     = dr.GetString(4);
             Nhanvien N = new Nhanvien(maNV, hoTen, tenQuayGiaoDich, diaChi, soDienThoai);
             list.Add(N);
         }
         dr.Close();
         return(list);
     }
     catch (SqlException ex)
     {
         throw ex;
     }
     finally
     {
         dp.Disconnect();
     }
 }
        public async Task <IActionResult> Add([FromBody] Nhanvien model)
        {
            if (ModelState.IsValid)
            {
                //1. business logic

                //data validation
                if (model.TenNv.Length == 0)
                {
                    return(BadRequest());
                }
                //2. add new object
                try
                {
                    var newObj = await repository.Add(model);

                    if (newObj.MaNv != null)
                    {
                        var novaticResponse = NovaResponse.CREATED(model);
                        return(Created("", novaticResponse));
                    }
                    else
                    {
                        return(NotFound());
                    }
                }
                catch (Exception)
                {
                    return(BadRequest());
                }
            }
            return(BadRequest());
        }
Example #28
0
        public ActionResult DatHang(FormCollection collection)
        {
            Phieuxuat ddh = new Phieuxuat();
            Nhanvien  nv  = (Nhanvien)Session["Taikhoan"];

            try
            {
                List <Nhap> gh = Layds();
                ddh.NhanVien = nv.MaNV;
                ddh.Ngaylap  = DateTime.Now;

                kho.Phieuxuats.InsertOnSubmit(ddh);
                kho.SubmitChanges();
                foreach (var item in gh)
                {
                    CTPHIEUXUAT ctpn = new CTPHIEUXUAT();
                    ctpn.Maxuat      = ddh.MaXuat;
                    ctpn.MaMH        = item.iMaMH;
                    ctpn.SoluongXuat = item.iSoluong;
                    ctpn.GiaXuat     = item.dDonggia;
                    ctpn.TongTien    = item.dThanhtien;
                    kho.CTPHIEUXUATs.InsertOnSubmit(ctpn);
                }
                kho.SubmitChanges();
                //Session["Nhap"] = null;
                return(RedirectToAction("Xacnhan", "Nhap"));
            }
            catch
            {
                TempData["LoiSoLuong"] = "Số lượng xuất phải ít hơn số lượng mặt hàng trong kho!";
                return(RedirectToAction("DatHang"));
            }
        }
Example #29
0
        public IActionResult XemDanhSachHoaDonYeuCauHuy()
        {
            var dbContext = new shopContext();
            // lấy thông tin trong bảng hóa đơn
            var hoadon = (from hd in dbContext.Hoadon
                          join ps in dbContext.Phiship
                          on hd.PhiShipId equals ps.PhiShipId
                          join kh in dbContext.Khachhang
                          on hd.KhachHangId equals kh.KhachHangId
                          join nv in dbContext.Nhanvien
                          on hd.NhanVienId equals nv.NhanVienId into x
                          from subnv in x.DefaultIfEmpty()
                          where hd.TrangThai == "Yêu cầu hủy"
                          select new{
                hoadonid = hd.HoaDonId,
                ngaytao = hd.NgayTao,
                ngaygiao = hd.NgayGiao,
                sonha = hd.SoNha,
                quan = hd.Quan,
                phiship = ps.ChiPhi,
                thanhtoan = hd.TongTienThanhToan,
                trangthai = hd.TrangThai,
                nhanvien = subnv.HoTen,
                khachhang = kh.HoTen,
                tennguoinhan = hd.TenNguoiNhan,
                sdt = hd.Sdt,
                tienchuaship = hd.TongTienChuaShip,
                tiengiamgia = hd.TienGiamGia
            });
            List <Hoadon> ListHD = new List <Hoadon>();

            foreach (var item in hoadon)
            {
                Hoadon    hd = new Hoadon();
                Nhanvien  nv = new Nhanvien();
                Khachhang kh = new Khachhang();
                Phiship   ps = new Phiship();
                hd.HoaDonId          = item.hoadonid;
                hd.NgayTao           = item.ngaytao;
                hd.NgayGiao          = item.ngaygiao;
                hd.SoNha             = item.sonha;
                hd.Quan              = item.quan;
                ps.ChiPhi            = item.phiship;
                hd.TongTienThanhToan = item.thanhtoan;
                hd.TrangThai         = item.trangthai;
                nv.HoTen             = item.nhanvien;
                kh.HoTen             = item.khachhang;
                hd.TenNguoiNhan      = item.tennguoinhan;
                hd.Sdt = item.sdt;
                hd.TongTienChuaShip = item.tienchuaship;
                hd.TienGiamGia      = item.tiengiamgia;
                hd.NhanVien         = nv;
                hd.KhachHang        = kh;
                hd.PhiShip          = ps;
                ListHD.Add(hd);
            }
            ViewBag.dsYeuCauHuy = ListHD;
            return(View());
        }
        public ActionResult DeleteConfirmed(int id)
        {
            Nhanvien nhanvien = db.Nhanviens.Find(id);

            db.Nhanviens.Remove(nhanvien);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }