Пример #1
0
        public ActionResult Login()
        {
            var countDB = db.Nguoidungs.Count();

            //set up tài khoản admin nếu hệ thống chưa có ai
            if (countDB == 0)
            {
                String firstHash  = String.Concat(UserInfo.CreateMD5("123456").ToLower(), "123456");
                String md5MatKhau = UserInfo.CreateMD5(firstHash);

                Nguoidung _ngDung = new Nguoidung();
                _ngDung.Taikhoan = "admin";
                _ngDung.Matkhau  = md5MatKhau.ToLower();
                _ngDung.Isadmin  = true;
                db.Nguoidungs.Add(_ngDung);
                db.SaveChanges();

                Dangnhap _dangNhap = new Dangnhap();
                _dangNhap.NguoidungID      = _ngDung.NguoidungID;
                _dangNhap.Solandangnhapsai = 0;
                db.Dangnhaps.Add(_dangNhap);
                db.SaveChanges();
            }
            return(View());
        }
Пример #2
0
        private void createBackupRecord(int nguoiDungId)
        {
            Backup backup = new Backup();

            backup.backup_date     = DateTime.Now.Date;
            backup.backup_filename = setupBackupFileName();
            backup.user_backup_id  = nguoiDungId;
            db.Backups.Add(backup);
            db.SaveChanges();
        }
Пример #3
0
        public ActionResult Create([Bind(Include = "ChucvuID,Ten")] Chucvu chucvu)
        {
            if (ModelState.IsValid)
            {
                db.Chucvus.Add(chucvu);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(chucvu));
        }
Пример #4
0
        /// <summary>
        /// Lưu tên controller vào db
        /// </summary>
        public void saveControllerName(int RowID, String RowValue)
        {
            Nhomchucnang _nhom = db.Nhomchucnangs.Find(RowID);

            if (_nhom != null)
            {
                _nhom.Ten             = RowValue;
                db.Entry(_nhom).State = EntityState.Modified;
                db.SaveChanges();
            }
        }
Пример #5
0
        public ActionResult Create([Bind(Include = "LoaiapgiaID,Ten")] Loaiapgia loaiapgia)
        {
            if (ModelState.IsValid)
            {
                db.Loaiapgias.Add(loaiapgia);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(loaiapgia));
        }
Пример #6
0
        public ActionResult Create([Bind(Include = "PhongbanID,ChinhanhID,Ten")] Phongban phongban)
        {
            if (ModelState.IsValid)
            {
                db.Phongbans.Add(phongban);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.ChinhanhID = new SelectList(db.Chinhanhs, "ChinhanhID", "Ten", phongban.ChinhanhID);
            return(View(phongban));
        }
Пример #7
0
        public ActionResult Create([Bind(Include = "ApgiaID,Ten,LoaiapgiaID,Denmuc,Gia")] Apgia apgia)
        {
            if (ModelState.IsValid)
            {
                db.Apgias.Add(apgia);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.LoaiapgiaID = new SelectList(db.Loaiapgias, "LoaiapgiaID", "Ten", apgia.LoaiapgiaID);
            return(View(apgia));
        }
Пример #8
0
        public void generateChiSoFromNearestMonth(int currentMonth, int currentYear, int nhanVienId, int tuyenKHID)
        {
            DateTime thangNamGanNhat = getThangNamGanNhatThuocHoaDon(tuyenKHID, currentMonth, currentYear);
            int      previousMonth   = thangNamGanNhat.Month;
            int      previousYear    = thangNamGanNhat.Year;

            if (previousYear != 1)
            {
                var hoaDonNuocsThangTruoc = getHoaDonThang(previousMonth, previousYear, tuyenKHID);
                var hoaDonNuocsHienTai    = getHoaDonThang(currentMonth, currentYear, tuyenKHID);

                int countHoaDonsThangTruoc   = hoaDonNuocsThangTruoc.Count();
                int countHoaDonsThangHienTai = hoaDonNuocsHienTai.Count();

                if (countHoaDonsThangTruoc != 0)
                {
                    foreach (var hoaDonNuocThangTruoc in hoaDonNuocsThangTruoc)
                    {
                        HoaDonNuocHaDong.Models.SoLieuTieuThu.HoaDonNuoc hoaDonNuoc = hoaDonNuocsHienTai.FirstOrDefault(p => p.Thang == currentMonth && p.Nam == currentYear && p.KhachHangID == hoaDonNuocThangTruoc.KhachHangID);
                        if (hoaDonNuoc == null)
                        {
                            Hoadonnuoc hoaDonThangHienTai = new Hoadonnuoc();
                            hoaDonThangHienTai.ThangHoaDon = currentMonth;
                            hoaDonThangHienTai.NamHoaDon   = currentYear;
                            if (hoaDonNuocThangTruoc.NgayKetThucSuDung == null || hoaDonNuocThangTruoc.NgayKetThucSuDung == DateTime.MinValue)
                            {
                                hoaDonThangHienTai.Ngaybatdausudung = hoaDonNuocThangTruoc.NgayBatDauSuDung;
                            }
                            else
                            {
                                hoaDonThangHienTai.Ngaybatdausudung = hoaDonNuocThangTruoc.NgayKetThucSuDung;
                            }

                            hoaDonThangHienTai.KhachhangID   = hoaDonNuocThangTruoc.KhachHangID;
                            hoaDonThangHienTai.NhanvienID    = nhanVienId;
                            hoaDonThangHienTai.Trangthaixoa  = false;
                            hoaDonThangHienTai.Trangthaithu  = false;
                            hoaDonThangHienTai.Trangthaiin   = false;
                            hoaDonThangHienTai.Trangthaichot = false;
                            db.Hoadonnuocs.Add(hoaDonThangHienTai);
                            db.SaveChanges();
                            //Thêm chi tiết hóa đơn nước tháng sau
                            Chitiethoadonnuoc chiTiet = new Chitiethoadonnuoc();
                            chiTiet.HoadonnuocID = hoaDonThangHienTai.HoadonnuocID;
                            chiTiet.Chisocu      = hoaDonNuocThangTruoc.ChiSoMoi;
                            db.Chitiethoadonnuocs.Add(chiTiet);
                        }
                    }
                    db.SaveChanges();
                }
            }
        }
Пример #9
0
        /// <summary>
        /// Đẩy danh sách khách hàng lên
        /// </summary>
        /// <param name="TTDocSau"></param>
        /// <param name="TTDocTruoc"></param>
        /// <param name="tuyen"></param>
        public static void pullKhachHangLen(int TTDocSau, int TTDocTruoc, int tuyen)
        {
            var khachHang = db.Khachhangs.Where(p => p.TTDoc <= TTDocSau && p.TTDoc >= TTDocTruoc && p.TuyenKHID == tuyen && p.IsDelete == false).ToList();

            foreach (var item in khachHang)
            {
                Khachhang kH       = db.Khachhangs.Find(item.KhachhangID);
                int       thuTuDoc = kH.TTDoc.Value;
                kH.TTDoc             = thuTuDoc - 1;
                db.Entry(item).State = EntityState.Modified;
                db.SaveChanges();
            }
        }
Пример #10
0
        public ActionResult Create([Bind(Include = "PhuongxaID,QuanhuyenID,Ten,IsDelete")] Phuongxa phuongxa)
        {
            phuongxa.IsDelete = false;
            if (ModelState.IsValid)
            {
                db.Phuongxas.Add(phuongxa);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.QuanhuyenID = new SelectList(db.Quanhuyens.Where(p => p.IsDelete == false || p.IsDelete == null), "QuanhuyenID", "Ten");
            return(View(phuongxa));
        }
Пример #11
0
        public ActionResult Create([Bind(Include = "ToQuanHuyenID,Ma,SoCN,QuanHuyenID,IsDelete,PhongbanID")] ToQuanHuyen chinhanh)
        {
            if (ModelState.IsValid)
            {
                db.ToQuanHuyens.Add(chinhanh);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewData["phongBan"] = new SelectList(db.Phongbans.ToList(), "PhongbanID", "Ten");

            ViewBag.QuanhuyenID = new SelectList(db.Quanhuyens.Where(p => p.IsDelete == false || p.IsDelete == null), "QuanhuyenID", "Ten", chinhanh.QuanHuyenID);
            return(View(chinhanh));
        }
Пример #12
0
        public ActionResult Create([Bind(Include = "HoadonnuocID,Ngayhoadown,KhachhangID,NhanvienID,Sohoadon,Kyhieu,Tongsotieuthu,Trangthaithu,Trangthaiin")] Hoadonnuoc hoadonnuoc)
        {
            if (ModelState.IsValid)
            {
                db.Hoadonnuocs.Add(hoadonnuoc);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.KhachhangID = new SelectList(db.Khachhangs, "KhachhangID", "Sotaikhoan", hoadonnuoc.KhachhangID);
            ViewBag.NhanvienID  = new SelectList(db.Nhanviens, "NhanvienID", "Ten", hoadonnuoc.NhanvienID);
            return(View(hoadonnuoc));
        }
Пример #13
0
        public ActionResult Create([Bind(Include = "ToID,ChinhanhID,PhuongxaID,Ten,Diachi")] To to)
        {
            if (ModelState.IsValid)
            {
                db.Toes.Add(to);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.ChinhanhID = new SelectList(db.Chinhanhs, "ChinhanhID", "Ten", to.ChinhanhID);
            ViewBag.PhuongxaID = new SelectList(db.Phuongxas, "PhuongxaID", "Ten", to.PhuongxaID);
            return(View(to));
        }
Пример #14
0
        public ActionResult Create([Bind(Include = "QuanhuyenID,Ten,DienThoai,DienThoai2,DienThoai3,IsDelete")] Quanhuyen quanhuyen)
        {
            quanhuyen.IsDelete = false;
            if (ModelState.IsValid)
            {
                quanhuyen.Ten = quanhuyen.Ten.Trim();
                db.Quanhuyens.Add(quanhuyen);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(quanhuyen));
        }
Пример #15
0
        public ActionResult Create([Bind(Include = "Id,Tieude,Noidung,Nguoitao,Ngaytao,Nguoichinhsua,Ngaychinhsua")] Thongbao thongbao)
        {
            if (ModelState.IsValid)
            {
                int currentLoggedInNguoiDungId = LoggedInUser.NguoidungID;
                thongbao.Nguoitao      = currentLoggedInNguoiDungId;
                thongbao.Ngaytao       = DateTime.Now;
                thongbao.Nguoichinhsua = currentLoggedInNguoiDungId;
                thongbao.Ngaychinhsua  = DateTime.Now;
                db.Thongbaos.Add(thongbao);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(thongbao));
        }
Пример #16
0
        /// <summary>
        /// Đẩy danh sách khách hàng xuống
        /// </summary>
        /// <param name="TTDoc"></param>
        /// <param name="tuyen"></param>
        public string pushKhachHangXuong(int TTDoc, int tuyen, long createdTime)
        {
            HoaDonHaDongEntities _db = new HoaDonHaDongEntities();
            var khachHang            = _db.Khachhangs.Where(p => p.TTDoc >= TTDoc && p.TuyenKHID == tuyen && p.IsDelete == false).ToList();

            foreach (var item in khachHang)
            {
                if (item.TTDoc >= TTDoc)
                {
                    if (createdTime > item.UpdatedTime || item.UpdatedTime == null)
                    {
                        Khachhang kH = _db.Khachhangs.Find(item.KhachhangID);
                        if (kH.Ngaykyhopdong == null)
                        {
                            kH.Ngaykyhopdong = new DateTime(1970, 1, 1);
                        }
                        int thuTuDoc = kH.TTDoc.Value;
                        kH.TTDoc = thuTuDoc + 1;
                        _db.Entry(item).State = EntityState.Modified;
                        _db.SaveChanges();
                    }
                }
            }
            return("");
        }
Пример #17
0
        private void appendToLogTable(int chucNangID)
        {
            Lichsusudungct lichSu = new Lichsusudungct();

            lichSu.ChucnangID  = chucNangID;
            lichSu.NguoidungID = LoggedInUser.NguoidungID;
            lichSu.Thoigian    = DateTime.Now;
            db.Lichsusudungcts.Add(lichSu);
            db.SaveChanges();
        }
Пример #18
0
 public ActionResult Create(FormCollection form)
 {
     try
     {
         int    quanHuyenID = form["QuanHuyenID"] == null ? 0 : Convert.ToInt32(form["QuanHuyenID"]);
         int    phuongXaID  = form["PhuongXaID"] == null ? 0 : Convert.ToInt32(form["PhuongXaID"]);
         String name        = form["Ten"] == null ? "" : form["Ten"].ToString();
         // TODO: Add insert logic here
         Cumdancu cumdancu = new Cumdancu();
         cumdancu.Ten        = name;
         cumdancu.PhuongxaID = phuongXaID;
         cumdancu.IsDelete   = false;
         db.Cumdancus.Add(cumdancu);
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     catch
     {
         ViewBag.QuanhuyenID = new SelectList(db.Quanhuyens.Where(p => p.IsDelete == false || p.IsDelete == null), "QuanhuyenID", "Ten");
         ViewBag.PhuongXaID  = new SelectList(db.Phuongxas.Where(p => p.IsDelete == false || p.IsDelete == null), "PhuongXaID", "Ten");
         return(View());
     }
 }
Пример #19
0
        /// <summary>
        /// Lưu chỉ số tổng hợp cho khách hàng
        /// </summary>
        /// <param name="KhachHangID"></param>
        /// <param name="isPhanTram"></param>
        /// <param name="SH"></param>
        /// <param name="KD"></param>
        /// <param name="SX"></param>
        public void saveGiaTongHop(int KhachHangID, byte isPhanTram, double SH, double KD, double HC, double CC, double SX, int month, short year)
        {
            HoaDonHaDongEntities _db = new HoaDonHaDongEntities();

            _db.Apgiatonghops.RemoveRange(_db.Apgiatonghops.Where(p => p.KhachhangID == KhachHangID).ToList());
            if (KD != -1)
            {
                Apgiatonghop apTongHopKD = new Apgiatonghop();
                apTongHopKD.KhachhangID  = KhachHangID;
                apTongHopKD.IsDelete     = false;
                apTongHopKD.CachTinh     = isPhanTram;
                apTongHopKD.IDLoaiApGia  = KhachHang.KINHDOANHDICHVU; //KD
                apTongHopKD.SanLuong     = KD;
                apTongHopKD.NamTongHop   = year;
                apTongHopKD.ThangTongHop = month;
                _db.Apgiatonghops.Add(apTongHopKD);
                _db.SaveChanges();
            }
            if (HC != -1)
            {
                Apgiatonghop apTongHopHC = new Apgiatonghop();
                apTongHopHC.KhachhangID  = KhachHangID;
                apTongHopHC.IsDelete     = false;
                apTongHopHC.CachTinh     = isPhanTram;
                apTongHopHC.IDLoaiApGia  = KhachHang.COQUANHANHCHINH; //HC
                apTongHopHC.SanLuong     = HC;
                apTongHopHC.NamTongHop   = year;
                apTongHopHC.ThangTongHop = month;
                _db.Apgiatonghops.Add(apTongHopHC);
                _db.SaveChanges();
            }
            if (CC != -1)
            {
                Apgiatonghop apTongHopCC = new Apgiatonghop();
                apTongHopCC.KhachhangID  = KhachHangID;
                apTongHopCC.IsDelete     = false;
                apTongHopCC.CachTinh     = isPhanTram;
                apTongHopCC.IDLoaiApGia  = KhachHang.DONVISUNGHIEP; //CC
                apTongHopCC.SanLuong     = CC;
                apTongHopCC.NamTongHop   = year;
                apTongHopCC.ThangTongHop = month;
                _db.Apgiatonghops.Add(apTongHopCC);
                _db.SaveChanges();
            }
            if (SX != -1)
            {
                Apgiatonghop apTongHopSX = new Apgiatonghop();
                apTongHopSX.KhachhangID  = KhachHangID;
                apTongHopSX.IsDelete     = false;
                apTongHopSX.CachTinh     = isPhanTram;
                apTongHopSX.IDLoaiApGia  = KhachHang.SANXUAT; //SX
                apTongHopSX.SanLuong     = SX;
                apTongHopSX.NamTongHop   = year;
                apTongHopSX.ThangTongHop = month;
                _db.Apgiatonghops.Add(apTongHopSX);
                _db.SaveChanges();
            }
            if (SH != -1)
            {
                Apgiatonghop apTongHop = new Apgiatonghop();
                apTongHop.KhachhangID  = KhachHangID;
                apTongHop.IsDelete     = false;
                apTongHop.CachTinh     = isPhanTram;
                apTongHop.IDLoaiApGia  = KhachHang.SINHHOAT; //SH
                apTongHop.SanLuong     = SH;
                apTongHop.NamTongHop   = year;
                apTongHop.ThangTongHop = month;
                _db.Apgiatonghops.Add(apTongHop);
                _db.SaveChanges();
            }
        }
Пример #20
0
        public void updateLichSuHoaDon(int HoaDonID, int thangHoaDon, int namHoaDon, String tenKH, String diaChi, String MST, String maKH, int TuyenKHID, String soHD,
                                       int chiSoCu, int ChiSoMoi, int TongTieuThu, double SH1, double SH1Price, double SH2, double SH2Price, double SH3, double SH3Price, double SH4, double SH4Price, double HC, double HCPrice,
                                       double CC, double CCPrice, double SX, double SXPrice, double KD, double KDPrice, double DinhMuc, double Thue, double TienThueVAT, double TileBVMT,
                                       double BVMTPrice, double TongCong, String bangChu, String TTVoOng, String ThuNgan, int tuyen, int TTDoc, double chiSoCongDon, string ngayBatDau, string ngayKetThuc)
        {
            Lichsuhoadon lichSuHoaDon = db.Lichsuhoadons.FirstOrDefault(p => p.HoaDonID == HoaDonID);

            if (lichSuHoaDon != null)
            {
                lichSuHoaDon.HoaDonID        = HoaDonID;
                lichSuHoaDon.ThangHoaDon     = thangHoaDon;
                lichSuHoaDon.NamHoaDon       = namHoaDon;
                lichSuHoaDon.TenKH           = tenKH;
                lichSuHoaDon.Diachi          = diaChi;
                lichSuHoaDon.MST             = MST == null ? "" : MST;
                lichSuHoaDon.MaKH            = maKH;
                lichSuHoaDon.TuyenKHID       = TuyenKHID;
                lichSuHoaDon.SoHopDong       = soHD;
                lichSuHoaDon.ChiSoCu         = chiSoCu;
                lichSuHoaDon.ChiSoMoi        = ChiSoMoi;
                lichSuHoaDon.SanLuongTieuThu = TongTieuThu;
                lichSuHoaDon.SH1             = SH1;
                lichSuHoaDon.SH1Price        = SH1Price;
                lichSuHoaDon.SH2             = SH2;
                lichSuHoaDon.SH2Price        = SH2Price;
                lichSuHoaDon.SH3             = SH3;
                lichSuHoaDon.SH3Price        = SH3Price;
                lichSuHoaDon.SH4             = SH4;
                lichSuHoaDon.SH4Price        = SH4Price;
                lichSuHoaDon.HC              = HC;
                lichSuHoaDon.HCPrice         = HCPrice;
                lichSuHoaDon.CC              = CC;
                lichSuHoaDon.CCPrice         = CCPrice;
                lichSuHoaDon.SX              = SX;
                lichSuHoaDon.SXPrice         = SXPrice;
                lichSuHoaDon.KD              = KD;
                lichSuHoaDon.KDPrice         = KDPrice;
                lichSuHoaDon.TruocThue       = DinhMuc;
                lichSuHoaDon.ThueSuat        = Thue;
                lichSuHoaDon.ThueSuatPrice   = TienThueVAT;
                lichSuHoaDon.TileBVMT        = TileBVMT;
                lichSuHoaDon.PhiBVMT         = BVMTPrice;
                lichSuHoaDon.TongCong        = TongCong;
                lichSuHoaDon.BangChu         = ConvertMoney.So_chu(TongCong);
                lichSuHoaDon.TTVoOng         = TTVoOng;
                lichSuHoaDon.TTThungan       = ThuNgan;
                lichSuHoaDon.TuyenKHID       = tuyen;
                lichSuHoaDon.TTDoc           = TTDoc;
                lichSuHoaDon.ChiSoCongDon    = chiSoCongDon;
                lichSuHoaDon.NgayBatDau      = ngayBatDau;
                lichSuHoaDon.NgayKetThuc     = ngayKetThuc;
                db.Entry(lichSuHoaDon).State = EntityState.Modified;
                db.SaveChanges();
            }
            else
            {
                addLichSuHoaDon(HoaDonID, thangHoaDon, namHoaDon, tenKH, diaChi, MST, maKH, TuyenKHID, soHD,
                                chiSoCu, ChiSoMoi, TongTieuThu, SH1, SH1Price, SH2, SH2Price, SH3, SH3Price, SH4, SH4Price, HC, HCPrice,
                                CC, CCPrice, SX, SXPrice, KD, KDPrice, DinhMuc, Thue, TienThueVAT, TileBVMT,
                                BVMTPrice, TongCong, bangChu, TTVoOng, ThuNgan, tuyen, TTDoc, chiSoCongDon, ngayBatDau, ngayKetThuc);
            }
        }
Пример #21
0
        /// <summary>
        /// Thêm mới hóa đơn cho tháng sau
        /// </summary>
        /// <param name="KHID"></param>
        /// <param name="HoaDonID"></param>
        /// <param name="ChiSoCuoi"></param>
        public static void themMoiHoaDonThangSau(int KHID, int ChiSoCuoi, int nhanvienID, int?_month, int?_year, DateTime ngayBatDau)
        {
            int month = _month.Value; int year = _year.Value;

            //thêm 1 record vào tháng sau trong trường hợp chưa có
            //nếu tháng sau = 12 thì chuyển năm
            if (month + 1 > 12)
            {
                //ngayHoaDon = new DateTime(DateTime.Now.Year + 1, 1,15);
                month = 1;
                year  = _year.Value + 1;
            }
            //nếu không thì vẫn chuyển năm như bình thường
            else
            {
                month = month + 1;
            }
            var hoaDonNuocThangSau = db.Hoadonnuocs.FirstOrDefault(p => p.KhachhangID == KHID && p.ThangHoaDon == month && p.NamHoaDon == year);

            //nếu k có trong db mới tiến hành add record
            if (hoaDonNuocThangSau == null)
            {
                Hoadonnuoc hoaDonThangSau = new Hoadonnuoc();
                hoaDonThangSau.Ngayhoadon  = null;
                hoaDonThangSau.KhachhangID = KHID;

                //lấy hóa đơn tháng sau dựa trên thứ tự đọc của hóa đơn tháng trước
                hoaDonThangSau.ThangHoaDon      = month;
                hoaDonThangSau.NamHoaDon        = year;
                hoaDonThangSau.NhanvienID       = nhanvienID;
                hoaDonThangSau.Ngaybatdausudung = ngayBatDau;
                db.Hoadonnuocs.Add(hoaDonThangSau);
                db.SaveChanges();

                //tạo new record chi tiết hóa đơn nước vào tháng sau
                Chitiethoadonnuoc chiTietThangSau = new Chitiethoadonnuoc();
                chiTietThangSau.HoadonnuocID = hoaDonThangSau.HoadonnuocID;
                chiTietThangSau.Chisocu      = ChiSoCuoi;
                db.Chitiethoadonnuocs.Add(chiTietThangSau);
                db.SaveChanges();
            }

            //nếu có record trong tháng sau thì cập nhật lại ngày bắt đầu và các thông số liên quan
            else
            {
                hoaDonNuocThangSau.Ngaybatdausudung = ngayBatDau;
                db.SaveChanges();
                var chiTietHoaDonNuocExist = hoaDonNuocThangSau.Chitiethoadonnuocs.FirstOrDefault();
                //nếu k có trong db thì add
                if (chiTietHoaDonNuocExist == null)
                {
                    //tạo new record chi tiết hóa đơn nước vào tháng sau
                    Chitiethoadonnuoc chiTietThangSau = new Chitiethoadonnuoc();
                    chiTietThangSau.HoadonnuocID = hoaDonNuocThangSau.HoadonnuocID;
                    chiTietThangSau.Chisocu      = ChiSoCuoi;
                    db.Chitiethoadonnuocs.Add(chiTietThangSau);
                    db.SaveChanges();
                }
                else
                {
                    chiTietHoaDonNuocExist.Chisocu = ChiSoCuoi;
                    db.SaveChanges();
                }
            }
        }
Пример #22
0
        public ActionResult Index(FormCollection form)
        {
            //Sesssion sử dụng cho việc giữ dữ  liệu của dropdownlist
            Session["selectedNhanvien"]      = "";
            Session["solieuTieuThuNhanvien"] = "";

            String tenDangNhap = form["username"];
            String matKhau     = form["password"];
            //mã hóa password 2 lần, chuyển về lowercase sau đó mã hóa lần 2
            String firstHash = String.Concat(UserInfo.CreateMD5(matKhau).ToLower(), matKhau);

            String md5MatKhau = UserInfo.CreateMD5(firstHash);

            // Response.Write(UserInfo.CreateMD5(UserInfo.CreateMD5("123456")+"123456")); Response.End();
            //kiểm tra DB, nếu empty thì quay lại trang đăng nhập, nếu > 0 thì
            var countRecordDB = db.Nguoidungs.Count();

            TempData["message"] = null;
            if (countRecordDB > 0)
            {
                //kiểm tra username của người dùng, nếu không có trong db thì không cần check nữa
                var nguoiDung = db.Nguoidungs.Where(p => p.Taikhoan == tenDangNhap);
                if (nguoiDung.Count() > 0)
                {
                    //lấy mật khẩu trong DB ra và đối chiều vs mật khẩu ng dùng nhập vào, nếu thành công thì điều hướng về trang tương ứng về role
                    var passwordDB = nguoiDung.First().Matkhau;
                    //lưu session cho nguoiDungID và tên đăng nhập
                    int nguoiDungID = nguoiDung.First().NguoidungID;

                    if (passwordDB.ToLower() == md5MatKhau.ToLower())
                    {
                        //cập nhật lại state đăng nhập, reset số lần đăng nhập sai về 0
                        Dangnhap dangNhap = info.getDangNhap(nguoiDungID);
                        //nếu thời gian hiện tại > thời gian hết hạn khóa thì cho đăng nhập
                        if (dangNhap != null)
                        {
                            if (dangNhap.Thoigianhethankhoa == null)
                            {
                                dangNhap.Thoigiandangnhap   = DateTime.Now;
                                dangNhap.Trangthaikhoa      = false;
                                dangNhap.Solandangnhapsai   = 0;
                                dangNhap.Thoigianhethankhoa = null;
                                //  db.Dangnhaps.Attach(dangNhap);
                                db.Entry(dangNhap).State = EntityState.Modified;
                                db.SaveChanges();
                                //lưu session liên quan
                                Session["nguoiDungID"] = nguoiDungID;
                                Session["tenDangNhap"] = tenDangNhap;
                                //tuyến người dùng hiện đang đăng nhập
                                var tuyenID = (from i in db.Tuyentheonhanviens
                                               join r in db.Nhanviens on i.NhanVienID equals r.NhanvienID
                                               join s in db.Nguoidungs on r.NhanvienID equals s.NhanvienID
                                               where s.NguoidungID == nguoiDungID
                                               select new
                                {
                                    TuyenKHID = i.TuyenKHID,
                                    NhanVienID = i.NhanVienID
                                }).ToList();
                                //nếu rỗng tuyến
                                if (tuyenID != null)
                                {
                                    String dsTuyen = "";
                                    foreach (var item in tuyenID)
                                    {
                                        dsTuyen = dsTuyen + item.TuyenKHID + ",";
                                    }
                                    //loại bỏ dấu , ở cuối chuỗi nếu ds tuyến ko rỗng
                                    if (!String.IsNullOrEmpty(dsTuyen))
                                    {
                                        dsTuyen = dsTuyen.Remove(dsTuyen.Length - 1);
                                    }
                                    Session["tuyenID"] = dsTuyen;

                                    var hasTuyenID = tuyenID.FirstOrDefault();
                                    if (hasTuyenID != null)
                                    {
                                        Session["nhanVienID"] = hasTuyenID.NhanVienID;
                                    }
                                }
                                bool checkAdmin = UserInfo.checkAdmin(nguoiDungID);
                                //lấy Phòng ban obj
                                if (!checkAdmin)
                                {
                                    Phongban phongBan = info.getPhongBan(nguoiDungID);
                                    if (phongBan != null)
                                    {
                                        Session["phongBan"] = phongBan.PhongbanID;
                                        List <int> kinhDoanhList = db.Phongbans.Where(p => p.Ten.Contains("kinh")).Select(p => p.PhongbanID).ToList();
                                        List <int> thuNganList   = db.Phongbans.Where(p => p.Ten.Contains("thu")).Select(p => p.PhongbanID).ToList();
                                        List <int> inHoaDonList  = db.Phongbans.Where(p => p.Ten.Contains("in")).Select(p => p.PhongbanID).ToList();
                                        //kinh doanh
                                        if (kinhDoanhList.Contains(phongBan.PhongbanID))
                                        {
                                            return(RedirectToAction("index", "Khachhang"));
                                        }
                                        //thu ngân
                                        else if (thuNganList.Contains(phongBan.PhongbanID))
                                        {
                                            return(RedirectToAction("Index", "Congno"));
                                        }
                                        //in hóa đơn
                                        else
                                        {
                                            return(RedirectToAction("index", "Print"));
                                        }
                                    }
                                }
                                //nếu là admin
                                else
                                {
                                    return(RedirectToAction("Index", "Quanhuyen"));
                                }
                            }
                        }
                    }

                    //nếu đăng nhập thất bại, tính số lần đăng nhập, nếu > 5 sẽ tiến hành khóa tài khoản trong khoảng thời gian nào đó, nếu nhập sai quá nhiều (bội của 5) thì cộng dồn
                    //thời gian hết hạn khóa.
                    else
                    {
                        Dangnhap dangNhap         = info.getDangNhap(nguoiDungID);
                        int      soLanDangNhapSai = UserInfo.getSoLanDangNhapSai(nguoiDungID);
                        //nếu số lần nhập lớn hơn SOLANDANGNHAPSAI thì khóa tài khoản, set ngày hết hạn = ngày bây h + 5

                        if (dangNhap != null)
                        {
                            if (soLanDangNhapSai >= UserInfo.SOLANDANGNHAPSAI)
                            {
                                //cập nhật thời gian đăng nhập
                                dangNhap.Thoigiandangnhap = DateTime.Now;
                                dangNhap.Trangthaikhoa    = true;

                                //cộng dồn thời gian nếu đăng nhập sai quá nhiều, nếu nhập sai 5 lần liên tiếp sẽ cộng dồn thời gian hết hạn lên
                                if (dangNhap.Solandangnhapsai % 5 == 0)
                                {
                                    if (dangNhap.Thoigianhethankhoa != null)
                                    {
                                        dangNhap.Thoigianhethankhoa = dangNhap.Thoigianhethankhoa.Value.AddDays(UserInfo.DATETHRESHOLD);
                                        //reset số lần đăng nhập sai về 0
                                    }
                                    else
                                    {
                                        dangNhap.Thoigianhethankhoa = DateTime.Now.AddDays(UserInfo.DATETHRESHOLD);
                                    }
                                    dangNhap.Solandangnhapsai = 0;
                                }
                                //nếu không thì cứ tiếp tục cộng thêm số lần đăng nhập sai
                                else
                                {
                                    dangNhap.Solandangnhapsai = dangNhap.Solandangnhapsai + 1;
                                }
                                TempData["message"] = "Tài khoản của bạn đã bị khóa " + UserInfo.DATETHRESHOLD + " ngày do nhập sai password quá 5 lần. Xin hãy quay trở lại sau";
                            }
                            //nếu đã có nhưng chưa < số lần đăng nhập sai thì cập nhật thông tin đăng nhập, hiện thông báo kiểm tra lại mật khẩu
                            else
                            {
                                dangNhap.Thoigiandangnhap = DateTime.Now;
                                dangNhap.Solandangnhapsai = dangNhap.Solandangnhapsai + 1;
                                TempData["message"]       = "Xin hãy kiểm tra lại mật khẩu";
                            }
                            //Attach và chuyển object state
                            //db.Dangnhaps.Attach(dangNhap);
                            db.Entry(dangNhap).State = EntityState.Modified;
                        }
                        //nếu ko có thì thêm mới
                        else
                        {
                            Dangnhap dangNhapThatBai = new Dangnhap();
                            dangNhapThatBai.NguoidungID      = nguoiDungID;
                            dangNhapThatBai.Thoigiandangnhap = DateTime.Now;
                            dangNhapThatBai.Trangthaikhoa    = false;
                            dangNhapThatBai.Solandangnhapsai = 1;
                            db.Dangnhaps.Add(dangNhapThatBai);
                            TempData["message"] = "Xin hãy kiểm tra lại mật khẩu";
                        }
                        db.SaveChanges();
                    }
                }
                else
                {
                    TempData["message"] = "Không có thông tin người dùng trong hệ thống";
                }
            }

            return(RedirectToAction("Index", "Home"));
            //return null;
        }
Пример #23
0
        /// <summary>
        /// Lưu thông tin giá đặc biệt
        /// </summary>
        /// <param name="KhachHangID"></param>
        /// <param name="isPhanTram"></param>
        /// <param name="SH"></param>
        /// <param name="KD"></param>
        /// <param name="HC"></param>
        /// <param name="CC"></param>
        /// <param name="SX"></param>
        /// <param name="month"></param>
        /// <param name="year"></param>
        public void saveGiaDacBiet(int KhachHangID, double SH, double KD, double HC, double CC, double SX, double SH1, double SH2, double SH3, double SH4, int month, int year)
        {
            HoaDonHaDongEntities db = new HoaDonHaDongEntities();

            //xóa record ứng với áp giá tổng hợp của khách hàng đó
            db.Apgiatonghops.RemoveRange(db.Apgiatonghops.Where(p => p.KhachhangID == KhachHangID && p.ThangTongHop == month && p.NamTongHop == year));
            if (KD != -1)
            {
                Apgiatonghop apTongHopKD = new Apgiatonghop();
                apTongHopKD.KhachhangID  = KhachHangID;
                apTongHopKD.IsDelete     = false;
                apTongHopKD.IDLoaiApGia  = KhachHang.KINHDOANHDICHVU; //KD
                apTongHopKD.SanLuong     = KD;
                apTongHopKD.NamTongHop   = year;
                apTongHopKD.ThangTongHop = month;
                db.Apgiatonghops.Add(apTongHopKD);
            }
            if (HC != -1)
            {
                Apgiatonghop apTongHopHC = new Apgiatonghop();
                apTongHopHC.KhachhangID  = KhachHangID;
                apTongHopHC.IsDelete     = false;
                apTongHopHC.IDLoaiApGia  = KhachHang.COQUANHANHCHINH; //HC
                apTongHopHC.SanLuong     = HC;
                apTongHopHC.NamTongHop   = year;
                apTongHopHC.ThangTongHop = month;
                db.Apgiatonghops.Add(apTongHopHC);
            }
            if (CC != -1)
            {
                Apgiatonghop apTongHopCC = new Apgiatonghop();
                apTongHopCC.KhachhangID  = KhachHangID;
                apTongHopCC.IsDelete     = false;
                apTongHopCC.IDLoaiApGia  = KhachHang.DONVISUNGHIEP; //CC
                apTongHopCC.SanLuong     = CC;
                apTongHopCC.NamTongHop   = year;
                apTongHopCC.ThangTongHop = month;
                db.Apgiatonghops.Add(apTongHopCC);
            }
            if (SX != -1)
            {
                Apgiatonghop apTongHopSX = new Apgiatonghop();
                apTongHopSX.KhachhangID  = KhachHangID;
                apTongHopSX.IsDelete     = false;
                apTongHopSX.IDLoaiApGia  = KhachHang.SANXUAT; //SX
                apTongHopSX.SanLuong     = SX;
                apTongHopSX.NamTongHop   = year;
                apTongHopSX.ThangTongHop = month;
                db.Apgiatonghops.Add(apTongHopSX);
            }
            if (SH != -1)
            {
                Apgiatonghop apTongHop = new Apgiatonghop();
                apTongHop.KhachhangID  = KhachHangID;
                apTongHop.IsDelete     = false;
                apTongHop.IDLoaiApGia  = KhachHang.SINHHOAT; //SH
                apTongHop.SanLuong     = SH;
                apTongHop.NamTongHop   = year;
                apTongHop.ThangTongHop = month;
                db.Apgiatonghops.Add(apTongHop);
            }

            if (SH1 != -1)
            {
                Apgiatonghop apTongHop = new Apgiatonghop();
                apTongHop.KhachhangID  = KhachHangID;
                apTongHop.IsDelete     = false;
                apTongHop.IDLoaiApGia  = KhachHang.SH1; //SH
                apTongHop.SanLuong     = SH1;
                apTongHop.NamTongHop   = year;
                apTongHop.ThangTongHop = month;
                db.Apgiatonghops.Add(apTongHop);
            }

            if (SH2 != -1)
            {
                Apgiatonghop apTongHop = new Apgiatonghop();
                apTongHop.KhachhangID  = KhachHangID;
                apTongHop.IsDelete     = false;
                apTongHop.IDLoaiApGia  = KhachHang.SH2; //SH
                apTongHop.SanLuong     = SH2;
                apTongHop.NamTongHop   = year;
                apTongHop.ThangTongHop = month;
                db.Apgiatonghops.Add(apTongHop);
            }

            if (SH3 != -1)
            {
                Apgiatonghop apTongHop = new Apgiatonghop();
                apTongHop.KhachhangID  = KhachHangID;
                apTongHop.IsDelete     = false;
                apTongHop.IDLoaiApGia  = KhachHang.SH3; //SH
                apTongHop.SanLuong     = SH3;
                apTongHop.NamTongHop   = year;
                apTongHop.ThangTongHop = month;
                db.Apgiatonghops.Add(apTongHop);
            }

            if (SH4 != -1)
            {
                Apgiatonghop apTongHop = new Apgiatonghop();
                apTongHop.KhachhangID  = KhachHangID;
                apTongHop.IsDelete     = false;
                apTongHop.IDLoaiApGia  = KhachHang.SH4; //SH
                apTongHop.SanLuong     = SH4;
                apTongHop.NamTongHop   = year;
                apTongHop.ThangTongHop = month;
                db.Apgiatonghops.Add(apTongHop);
            }
            db.SaveChanges();
        }