コード例 #1
0
ファイル: DoanKhachBus.cs プロジェクト: cuong1010/XDMHPL_Tour
 public DoanKhachViewModel getDetail(int?id)
 {
     try
     {
         DoanKhachViewModel result = new DoanKhachViewModel();
         DoanKhach          doan   = db.DoanKhaches.Find(id);
         result.maDoan        = doan.Id;
         result.soluong       = doan.SLCho - getSoLuong(doan.Id);
         result.tenDoan       = doan.TenGoi;
         result.tenTour       = doan.Tour.TenGoi;
         result.thongtin      = doan.Tour.DacDiem;
         result.ngayKhoiHanh  = doan.NgayKhoiHanh;
         result.ngayKetThuc   = doan.NgayKetThuc;
         result.danhsachkhach = getListKhachHang(id);
         result.nhanvien      = getListNhanVien(id);
         result.dstienan      = db.TienAnTheoDoans.Where(c => c.DoanKhachId == id).ToList();
         result.dstienKs      = db.KhachSanTheoDoans.Where(c => c.DoanKhachId == id).ToList();
         result.dstienpt      = db.PhuongTienTheoDoans.Where(c => c.DoanKhachId == id).ToList();
         result.dstienkhac    = db.ChiPhiKhacTheoDoans.Where(c => c.DoanKhachId == id).ToList();
         return(result);
     }
     catch (Exception e)
     {
         return(null);
     }
 }
コード例 #2
0
        public String PhanCong(NhanVienTheoDoan nv)
        {
            List <NhanVienTheoDoan> list = db.NhanVienTheoDoans.Where(c => c.idNhanVien == nv.idNhanVien).ToList();
            DateTime starttime           = db.DoanKhaches.Find(nv.idDoanKhach).NgayKhoiHanh;
            DateTime endtime             = db.DoanKhaches.Find(nv.idDoanKhach).NgayKetThuc;

            foreach (NhanVienTheoDoan item in list)
            {
                DoanKhach doan = db.DoanKhaches.Find(item.idDoanKhach);
                if (doan.NgayKhoiHanh.Date > starttime && endtime > doan.NgayKhoiHanh)
                {
                    return("Trùng Lịch!! chọn lại");
                }
                if (doan.NgayKhoiHanh < starttime && doan.NgayKetThuc > starttime)
                {
                    return("Trùng Lịch!!! chọn lại");
                }
                if (doan.NgayKhoiHanh == starttime)
                {
                    return("Trùng Lịch!!! chọn lại");
                }
            }
            db.NhanVienTheoDoans.Add(nv);
            db.SaveChanges();
            return(null);
        }
コード例 #3
0
ファイル: DoanKhachBus.cs プロジェクト: cuong1010/XDMHPL_Tour
        public bool TinhTongTien(int id)
        {
            DoanKhach doan = db.DoanKhaches.Find(id);
            int       tong = 0;

            foreach (KhachSanTheoDoan item in db.KhachSanTheoDoans.Where(c => c.DoanKhachId == id))
            {
                tong += item.GiaTien;
            }
            foreach (TienAnTheoDoan item in db.TienAnTheoDoans.Where(c => c.DoanKhachId == id))
            {
                tong += item.GiaTien;
            }
            foreach (PhuongTienTheoDoan item in db.PhuongTienTheoDoans.Where(c => c.DoanKhachId == id))
            {
                tong += item.GiaTien;
            }
            foreach (ChiPhiKhacTheoDoan item in db.ChiPhiKhacTheoDoans.Where(c => c.DoanKhachId == id))
            {
                tong += item.GiaTien;
            }
            doan.TongChiPhi      = tong;
            doan.isEdit          = true;
            db.Entry(doan).State = EntityState.Modified;
            db.SaveChanges();
            return(true);
        }
コード例 #4
0
ファイル: DoanKhachBus.cs プロジェクト: cuong1010/XDMHPL_Tour
        public String getTenTour(int?id)
        {
            var       doankhaches = db.DoanKhaches.Include(c => c.Tour).ToList();
            DoanKhach doan        = doankhaches.Find(c => c.Id == id);

            return(doan.Tour.TenGoi);
        }
コード例 #5
0
 public NhanVienViewModel ThongTinNV(int?id)
 {
     try
     {
         NhanVienViewModel result = new NhanVienViewModel();
         NhanVien          nv     = db.NhanViens.Find(id);
         result.tenNV = nv.TenNhanVien;
         List <PhanCongViewModel> phancong = new List <PhanCongViewModel>();
         List <NhanVienTheoDoan>  list     = db.NhanVienTheoDoans.Where(c => c.idNhanVien == id).ToList();
         result.TinhTrang = "Rãnh Rỗi";
         foreach (NhanVienTheoDoan item in list)
         {
             PhanCongViewModel pc   = new PhanCongViewModel();
             DoanKhach         doan = db.DoanKhaches.Find(item.idDoanKhach);
             pc.TenDoan = doan.TenGoi;
             pc.TuNgay  = doan.NgayKhoiHanh;
             pc.DenNgay = doan.NgayKetThuc;
             pc.ChucVu  = db.NhiemVus.Find(item.idNhiemVu).TenNhiemVu;
             pc.TenTour = db.Tours.Find(doan.TourId).TenGoi;
             if (doan.NgayKhoiHanh.Date <= DateTime.Now.Date && doan.NgayKetThuc.Date >= DateTime.Now.Date)
             {
                 result.TinhTrang = "Đang Hoạt Động Trong Đoàn";
             }
             phancong.Add(pc);
         }
         result.PhanCong = phancong;
         return(result);
     }
     catch (Exception e)
     {
         return(null);
     }
 }
コード例 #6
0
        public ActionResult DeleteConfirmed(int id)
        {
            DoanKhach doanKhach = db.DoanKhaches.Find(id);

            db.DoanKhaches.Remove(doanKhach);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
コード例 #7
0
        public ActionResult PhanCong(int?id)
        {
            DoanKhach        dk   = db.DoanKhaches.Find(id);
            List <DoanKhach> list = new List <DoanKhach>();

            list.Add(dk);
            ViewBag.idNhiemVu   = new SelectList(db.NhiemVus, "Id", "TenNhiemVu");
            ViewBag.idNhanVien  = new SelectList(db.NhanViens, "Id", "TenNhanVien");
            ViewBag.idDoanKhach = new SelectList(list, "Id", "TenGoi");
            return(View());
        }
コード例 #8
0
        public ActionResult DangKy(int?id)
        {
            List <DoanKhach> list = new List <DoanKhach>();
            DoanKhach        doan = db.DoanKhaches.Find(id);

            list.Add(doan);
            ViewBag.DoanKhachId  = new SelectList(list, "Id", "TenGoi");
            ViewBag.KhachHangId  = new SelectList(db.KhachHangs, "Id", "HoTen");
            ViewBag.tenTour      = bus.getTenTour(id);
            ViewBag.ngayKhoiHanh = doan.NgayKhoiHanh.Date.ToString();
            ViewBag.ngayKetThuc  = doan.NgayKetThuc.Date.ToString();
            return(View());
        }
コード例 #9
0
ファイル: BusTour.cs プロジェクト: cuong1010/XDMHPL_Tour
        private int timgiacuatour(DoanKhach k, Tour t)
        {
            int gia = 0;

            for (int i = t.GiaTours.Count - 1; i >= 0; i--)
            {
                if (k.NgayKhoiHanh >= t.GiaTours.ElementAt(i).NgayCapNhat)
                {
                    gia = t.GiaTours.ElementAt(i).Gia;
                }
            }
            return(gia);
        }
コード例 #10
0
        // GET: DoanKhaches/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DoanKhach doanKhach = db.DoanKhaches.Find(id);

            if (doanKhach == null)
            {
                return(HttpNotFound());
            }
            return(View(doanKhach));
        }
コード例 #11
0
        public ActionResult Create([Bind(Include = "Id,TenGoi,NgayKhoiHanh,NgayKetThuc,TongKS,TongAn,TongPT,TongKhac,TourId,SLCho")] DoanKhach doanKhach)
        {
            if (ModelState.IsValid)
            {
                String error = bus.CreateDoan(doanKhach);
                if (error != null)
                {
                    ViewBag.error  = error;
                    ViewBag.TourId = new SelectList(db.Tours, "Id", "TenGoi");
                    return(View());
                }
                return(RedirectToAction("Index"));
            }

            ViewBag.TourId = new SelectList(db.Tours, "Id", "TenGoi", doanKhach.TourId);
            return(View(doanKhach));
        }
コード例 #12
0
ファイル: DoanKhachBus.cs プロジェクト: cuong1010/XDMHPL_Tour
 public String CreateDoan(DoanKhach doan)
 {
     try
     {
         if (doan.NgayKhoiHanh.Date < DateTime.Now.Date)
         {
             return("Ngày khởi hành phải lớn hơn ngày hiện hành!!!");
         }
         if (doan.NgayKhoiHanh.Date > doan.NgayKetThuc.Date)
         {
             return("Ngày khởi hành phải bé hơn ngày kết thúc !!!!");
         }
         db.DoanKhaches.Add(doan);
         db.SaveChanges();
         return(null);
     }
     catch (Exception e)
     {
         return("Có Lỗi xảy ra: " + e);
     }
 }
コード例 #13
0
 public ActionResult DangKy([Bind(Include = "Id,DoanKhachId,KhachHangId")] DSKhachTheoDoan dSKhachTheoDoan)
 {
     if (ModelState.IsValid)
     {
         if (bus.Dangky(dSKhachTheoDoan))
         {
             return(RedirectToAction("Index"));
         }
         else
         {
             ViewBag.error = "Lỗi xảy ra!, Kiểm tra lại số lượng hoặc đã đăng ký vui lòng thử lại sau!";
             DoanKhach doan = db.DoanKhaches.Find(dSKhachTheoDoan.Id);
             ViewBag.DoanKhachId  = new SelectList(db.DoanKhaches, "Id", "TenGoi");
             ViewBag.KhachHangId  = new SelectList(db.KhachHangs, "Id", "HoTen");
             ViewBag.tenTour      = bus.getTenTour(dSKhachTheoDoan.Id);
             ViewBag.ngayKhoiHanh = doan.NgayKhoiHanh.Date.ToString();
             ViewBag.ngayKetThuc  = doan.NgayKetThuc.Date.ToString();
             return(View());
         }
     }
     ViewBag.DoanKhachId = new SelectList(db.DoanKhaches, "Id", "TenGoi", dSKhachTheoDoan.DoanKhachId);
     ViewBag.KhachHangId = new SelectList(db.KhachHangs, "Id", "HoTen", dSKhachTheoDoan.KhachHangId);
     return(View(dSKhachTheoDoan));
 }
コード例 #14
0
ファイル: DoanKhachBus.cs プロジェクト: cuong1010/XDMHPL_Tour
 public bool Dangky(DSKhachTheoDoan ds)
 {
     try
     {
         DoanKhach doan  = db.DoanKhaches.Find(ds.DoanKhachId);
         int       count = db.DSKhachTheoDoans.Count(c => c.DoanKhachId == ds.DoanKhachId);
         if (doan.SLCho > count)
         {
             DSKhachTheoDoan result = db.DSKhachTheoDoans.Where(c => c.DoanKhachId == ds.DoanKhachId).ToList().Find(c => c.KhachHangId == ds.KhachHangId);
             if (result == null)
             {
                 db.DSKhachTheoDoans.Add(ds);
                 db.SaveChanges();
                 return(true);
             }
             return(false);
         }
         return(false);
     }
     catch (Exception e)
     {
         return(false);
     }
 }
コード例 #15
0
 public void Update(DoanKhach entity)
 {
     _context.DoanKhachs.Update(entity);
     _context.SaveChanges();
 }
コード例 #16
0
 public void Delete(DoanKhach entity)
 {
     entity.isDeleted = Status.Deleted;
     _context.DoanKhachs.Update(entity);
     _context.SaveChanges();
 }
コード例 #17
0
 public void Add(DoanKhach entity)
 {
     _context.DoanKhachs.Add(entity);
     _context.SaveChanges();
 }
コード例 #18
0
        private void init()
        {
            if (formType != EditState.View)
            {
                IEnumerable <Tour> Tours = _tourRepository.getAll();
                foreach (Tour tourm in Tours)
                {
                    tourd.Items.Add(tourm.Ten);
                }
            }
            datestart.Value = DateTime.Now.Date;
            dateend.Value   = DateTime.Now.Date;

            switch (formType)
            {
            case EditState.Create:
                tourd.SelectedIndex = 0;
                break;

            case EditState.Edit:
                //Init Data to DoanForm
                DoanKhach dk_init = _doanRepo.getById(id);
                mad.Text           = dk_init.MaDoan;
                tend.Text          = dk_init.TenDoan;
                tourd.SelectedItem = dk_init.Tour.Ten;
                statusd.Text       = dk_init.Chitiet;
                datestart.Value    = dk_init.DateStart;
                dateend.Value      = dk_init.DateEnd;

                if (dk_init.DateStart <= DateTime.Now.Date)
                {
                    mad.ReadOnly      = true;
                    tend.ReadOnly     = true;
                    statusd.ReadOnly  = true;
                    datestart.Enabled = false;
                    dateend.Enabled   = false;
                    Save.Enabled      = false;
                    cp_btn.Enabled    = false;
                    nv_btn.Enabled    = false;
                    hk_btn.Enabled    = false;
                    tourd.Enabled     = false;
                }

                //HanhKhach
                foreach (var hk in dk_init.CTDoans)
                {
                    data_hk.Rows.Add(hk.HanhKhach.MaKhach, hk.HanhKhach.Ten, hk.HanhKhach.SDT);
                }
                //NhanVien
                foreach (var nv in dk_init.NV_VTs)
                {
                    data_nv.Rows.Add(nv.NhanVien.MaNV, nv.NhanVien.Ten, nv.ViTri);
                }
                //ChiTieu
                foreach (var ct in dk_init.CTChitieus)
                {
                    data_cp.Rows.Add(ct.ChiTieu.Ten, ct.TienCT);
                }
                break;

            case EditState.View:
                DoanKhach dk_init1 = _doanRepo.getById(id);
                mad.Text  = dk_init1.MaDoan;
                tend.Text = dk_init1.TenDoan;
                tourd.Items.Add(dk_init1.Tour.Ten);
                tourd.SelectedIndex = 0;
                statusd.Text        = dk_init1.Chitiet;
                datestart.Value     = dk_init1.DateStart;
                dateend.Value       = dk_init1.DateEnd;

                //HanhKhach
                foreach (var hk in dk_init1.CTDoans)
                {
                    data_hk.Rows.Add(hk.HanhKhach.MaKhach, hk.HanhKhach.Ten, hk.HanhKhach.SDT);
                }
                //NhanVien
                foreach (var nv in dk_init1.NV_VTs)
                {
                    data_nv.Rows.Add(nv.NhanVien.MaNV, nv.NhanVien.Ten, nv.ViTri);
                }
                //ChiTieu
                foreach (var ct in dk_init1.CTChitieus)
                {
                    data_cp.Rows.Add(ct.ChiTieu.Ten, ct.TienCT);
                }
                mad.ReadOnly      = true;
                tend.ReadOnly     = true;
                statusd.ReadOnly  = true;
                datestart.Enabled = false;
                dateend.Enabled   = false;
                Save.Enabled      = false;
                break;
            }
        }
コード例 #19
0
        private void save()
        {
            //init Create Type
            DoanKhach doan  = new DoanKhach();
            Tour      tour1 = _tourRepository.getByName(tourd.SelectedItem.ToString());

            //init Edit Type
            if (formType == EditState.Edit)
            {
                doan = _doanRepo.getById(id);
                if (tour1.TourId != doan.TourId)
                {
                    doan.Gia = tour1.Gias.LastOrDefault();
                }
            }



            //Add value to each of column doan

            doan.MaDoan    = mad.Text;
            doan.TenDoan   = tend.Text;
            doan.Tour      = tour1;
            doan.Chitiet   = statusd.Text;
            doan.DateStart = datestart.Value.Date;
            doan.DateEnd   = dateend.Value.Date;

            //NhanVien
            List <NV_VT> doan_nvs = new List <NV_VT>();

            foreach (DataGridViewRow row in data_nv.Rows)
            {
                NV_VT    doan_nv  = new NV_VT();
                NhanVien nhanvien = _nvRepo.getById(0, row.Cells[0].Value.ToString());
                doan_nv.NhanVien  = nhanvien;
                doan_nv.DoanKhach = doan;
                doan_nv.ViTri     = row.Cells[2].Value.ToString();
                doan_nvs.Add(doan_nv);
            }
            doan.NV_VTs = doan_nvs;

            //HanhKhach
            List <CTDoan> cTDoans = new List <CTDoan>();

            foreach (DataGridViewRow row in data_hk.Rows)
            {
                CTDoan    cTDoan = new CTDoan();
                HanhKhach hk     = _hkRepo.getById(0, row.Cells[0].Value.ToString());
                cTDoan.HanhKhach = hk;
                cTDoan.DoanKhach = doan;
                cTDoans.Add(cTDoan);
            }
            doan.CTDoans = cTDoans;

            //ChiTieu
            List <CTChitieu> cTChiTieus = new List <CTChitieu>();

            foreach (DataGridViewRow row in data_cp.Rows)
            {
                CTChitieu cTChiTieu = new CTChitieu();
                ChiTieu   ct        = _ctRepo.getByName(row.Cells[0].Value.ToString());
                cTChiTieu.ChiTieu   = ct;
                cTChiTieu.TienCT    = row.Cells[1].Value.ToString();
                cTChiTieu.DoanKhach = doan;
                cTChiTieus.Add(cTChiTieu);
            }
            doan.CTChitieus = cTChiTieus;
            if (formType == EditState.Edit)
            {
                _doanRepo.Update(doan);
            }
            else
            {
                doan.Gia         = doan.Tour.Gias.LastOrDefault();
                doan.DateCreated = DateTime.Now;
                _doanRepo.Add(doan);
            }
        }