Esempio n. 1
0
 public static int AddPhieuThu(int nguoiDung, int khuVuc)
 {
     using (var db = new DB())
     {
         // ---- Tạo mới một đối tượng phiếu thu
         var phieuThu = new DAL.PhieuThu()
         {
             NguoiDung = nguoiDung,
             KhuVuc = khuVuc,
             // ---- Lấy thời gian hiện tại
             ThoiGian = DateTime.Now,
             // ---- Tổng tiền ban đầu bằng 0 khi thêm chi tiết sẽ tự cập nhật
             TongTien = 0,
             // ---- Tiền nhận cập nhật khi thanh toán phiếu thu
             TienNhan = 0,
             SoNguoi = 1,
             ThanhToan = false,
         };
         // ---- Thêm phiếu thu vào cơ sở dữ liệu
         db.PhieuThus.InsertOnSubmit(phieuThu);
         // ---- Cập nhật thay đổi
         db.SubmitChanges();
         // ---- Trả về PhieuThuID mới thêm vào
         return phieuThu.PhieuThuID;
     }
 }
Esempio n. 2
0
        public static bool DelKhuVuc(int id)
        {
            using (var db = new DB())
            {
                try
                {
                    // ---- Truy vấn đến đối tượng (đầu tiên) có id trùng với id truyền vào
                    var kv = db.KhuVucs.Single(p => p.KhuVucID.Equals(id));
                    // ---- Gọi phương thức xóa kv trên
                    db.KhuVucs.DeleteOnSubmit(kv);
                    // ---- Cập nhật lên cơ sở dữ liệu
                    db.SubmitChanges();
                    // ---- Báo xóa thành công
                    return true;
                }
                catch (SqlException)
                {
                    // ---- Trường hợp cơ sở dữ liệu không tồn tại id trùng
                    // ---- Trường hợp không xóa được do SQL error
                    // ---- Báo xóa không thành công
                    return false;
                }

            }
        }
Esempio n. 3
0
 public static bool DelNguoiDung(int id)
 {
     // ---- Nếu người dùng là Admin quản trị chính thì không xoá và trả về false
     if (CauHinh.AdminChinh() == id)
         return true;
     try
     {
         using (var db = new DB())
         {
             // ---- Truy vấn đến người dùng có id trùng với id truyền vào
             var nd = db.NguoiDungs.Single(p => p.NguoiDungID.Equals(id));
             // ---- Gọi phương thức xóa
             db.NguoiDungs.DeleteOnSubmit(nd);
             // ---- Cập nhật thay đổi CSDL
             db.SubmitChanges();
             //
             return true;
         }
     }
     catch (SqlException)
     {
         using (var db = new DB())
         {
             // ---- trường hợp không thể xóa do không tồn tại hoặc đang sử dụng
             // ---- Truy vấn đến người dùng có id trùng với id truyền vào
             var nd = db.NguoiDungs.Single(p => p.NguoiDungID.Equals(id));
             // ---- Đưa vào thùng rác (Đặt cờ xoá = true)
             nd.Xoa = true;
             // ---- Cập nhật thay đổi CSDL
             db.SubmitChanges();
             //
         }
         return false;
     }
 }
Esempio n. 4
0
        public static void SetAdminChinh(int admin)
        {
            using (var db = new DB())
            {
                var ad = db.CauHinhs.Single(p => p.TenCauHinh.Contains("Master Admin"));
                if (ad != null)
                {
                    ad.TuyChinh = admin;
                    db.SubmitChanges();
                }
                else
                {
                    db.CauHinhs.InsertOnSubmit(new DAL.CauHinh()
                    {
                        TenCauHinh = "Master Admin",
                        TuyChinh = admin
                    });
                    db.SubmitChanges();

                }
                db.SubmitChanges();
            }
        }
Esempio n. 5
0
        public static void AddKhuVuc(string ten, int soBan)
        {
            // ---- Tạo mới một đối tượng Khu Vực
            var kv = new DAL.KhuVuc()
            {
                Ten = ten,
                SoBan = soBan
            };

            // ---- Khai báo sử dụng biến db là đối tượng DB linq
            using (var db = new DB())
            {
                // ---- Gọi phương thức thêm mới một đối tượng khu vực
                db.KhuVucs.InsertOnSubmit(kv);
                // ---- Cập nhật vào cơ sở dữ liệu
                db.SubmitChanges();
            }
        }
Esempio n. 6
0
 public static bool DelPhieuThu(int phieuThu)
 {
     try
     {
         using (var db = new DB())
         {
             // ----  Truy vấn đến phiếu thu cần xóa
             var del = db.PhieuThus.Single(p => p.PhieuThuID.Equals(phieuThu));
             // ---- Xóa khỏi CSDL
             db.PhieuThus.DeleteOnSubmit(del);
             // ---- Cập nhật thay đổi
             db.SubmitChanges();
         }
         return true;
     }
     catch
     {
         return false;
     }
 }
Esempio n. 7
0
        public static void AddNguoiDung(string hoTen, string taiKhoan, string matKhau, bool quanTri)
        {
            using (var db = new DB())
            {
               // ---- Khởi tạo một đối tượng Người Dùng mới
                var nd = new DAL.NguoiDung()
                {
                    HoTen = hoTen,
                    TaiKhoan = taiKhoan,
                    MatKhau = matKhau,
                    QuanTri = quanTri,
                    Xoa = false
                };
                // ---- Thêm vào CSDL
                db.NguoiDungs.InsertOnSubmit(nd);

                // ---- Cập nhật thay đổi lên CSDL
                db.SubmitChanges();
            }
        }
Esempio n. 8
0
 public static bool UpdateKhuVuc(int phieuThu, int khuVuc)
 {
     try
     {
         using (var db = new DB())
         {
             // ----  Truy vấn đến phiếu thu cần xóa
             var pt = db.PhieuThus.Single(p => p.PhieuThuID.Equals(phieuThu));
             // --- Thay đổi giá trị
             pt.KhuVuc = khuVuc;
             // ---- Cập nhật thay đổi
             db.SubmitChanges();
         }
         return true;
     }
     catch
     {
         return false;
     }
 }
Esempio n. 9
0
        public static void UpdateChiTiet(int phieuThu, DataTable chiTiet)
        {
            using (var db = new DB())
            {
                // ---- Lấy danh sách items thuộc nhóm chính => số người
                var soNguoi =
                    chiTiet.Select()
                        .Where(p => p["Nhom"].Equals(DanhMuc.GetTenNhom(CauHinh.NhomChinh())))
                        .Sum(p => (int) p["SoLuong"]);
                // ---- Chuyển toàn bộ table chi tiết qua danh sách ChiTietPT
                var listMoi = chiTiet.Select().Select(p => new ChiTietPT()
                {
                    PhieuThu = phieuThu,
                    DanhMuc = (int) p["DanhMucID"],
                    SoLuong = (int) p["SoLuong"]
                });
                // ---- Danh sách các danh mục từ ChiTiet mới
                var danhMucMoi = listMoi.Select(p => p.DanhMuc);

                // ---- Truy vấn danh sách chi tiết gốc
                var listCu = db.ChiTietPTs.Where(p => p.PhieuThu.Equals(phieuThu));
                // ---- CDanh sách danh mục từ chi tiết gốc
                var danhMucCu = listCu.Select(p => p.DanhMuc);

                // ---- Nếu DS cũ rỗng thì thêm toàn bộ chi tiết trong list vào cơ sở dữ liệu
                if (listCu.Count() == 0)
                {
                    db.ChiTietPTs.InsertAllOnSubmit(listMoi);
                    db.SubmitChanges();
                }
                else
                {
                    // ------- Truy vấn danh sách phần tử trong danh sách cũ không tồn tại trong danh sách mới
                    var del = listCu.Where(p => !danhMucMoi.Contains(p.DanhMuc));
                    // ---- Xóa danh sách del khỏi CSDL
                    db.ChiTietPTs.DeleteAllOnSubmit(del);
                    // ---- Cập nhật thay đổi
                    db.SubmitChanges();

                    // ---- Truy vấn những phần tử trong list mới mà không tồn tại trong danh sách cũ
                    var neW = listMoi.Where(p => !danhMucCu.Contains(p.DanhMuc));
                    // ---- Thêm vào CSDL
                    db.ChiTietPTs.InsertAllOnSubmit(neW);
                    // ---- Cập nhật thay đổi
                    db.SubmitChanges();

                    // ---- Truy vấn những phần tử trong list mới mà danh mục nó tồn tại trong DS cũ nhưng khác về số lượng
                    var update = listMoi.Where(p =>listCu.Any(t=>t.DanhMuc.Equals(p.DanhMuc) && !t.SoLuong.Equals(p.SoLuong)));
                    foreach (var i in update)
                    {

                        // ---- Với mỗi chi tiết trùng thì cập nhật số lượng mới
                        db.ChiTietPTs.Single(p => i.DanhMuc.Equals(p.DanhMuc) && p.PhieuThu.Equals(phieuThu)).SoLuong = i.SoLuong;
                        // ---- Cập nhật thay đổi
                        db.SubmitChanges();
                    }
                }

                // ----- Cập nhật Tổng tiền cho phiếu thu vừa thao tác
                var pt = db.PhieuThus.Single(p => p.PhieuThuID.Equals(phieuThu));
                pt.TongTien = chiTiet.Select().Sum(p => (long) p["ThanhTien"]);
                pt.SoNguoi = soNguoi > 0 ? soNguoi : 1;
                // ----- Cập nhật thay đổi
                db.SubmitChanges();
            }
        }
Esempio n. 10
0
 public static bool ThanhToanPhieuThu(int phieuThu, int tienNhan)
 {
     try
     {
         using (var db = new DB())
         {
             // ----  Truy vấn đến phiếu thu cần xóa
             var pt = db.PhieuThus.Single(p => p.PhieuThuID.Equals(phieuThu));
             // ---- Thay đổi cờ thanh toán
             pt.ThanhToan = true;
             if (tienNhan > 0)
             {
                 pt.TienNhan = tienNhan;
             }
             else
             {
                 throw new Exception();
             }
             // ---- Cập nhật thay đổi
             db.SubmitChanges();
         }
         return true;
     }
     catch
     {
         return false;
     }
 }
Esempio n. 11
0
        public static void UpdateKhuVuc(int id, string ten, int soBan)
        {
            using (var db = new DB())
            {
                try
                {
                    // ---- Truy vấn đến đối tượng (đầu tiên) có id trùng với id truyền vào
                    var kv = db.KhuVucs.Single(p => p.KhuVucID.Equals(id));
                    // ---- Thay đổi giá trị
                    kv.Ten = ten;
                    kv.SoBan = soBan;
                    // ---- Cập nhật vào cơ sở dữ liệu
                    db.SubmitChanges();
                }
                catch
                {
                    // ---- Trường hợp cơ sở dữ liệu không tồn tại id trùng
                }

            }
        }
Esempio n. 12
0
 public static void UpdateNguoiDung(int id, string hoTen, string taiKhoan, string matKhau, bool quanTri)
 {
     using (var db = new DB())
     {
         // ---- Truy vấn người dùng (đầu tiên) có id truyền vào
         var nd = db.NguoiDungs.Single(p => p.NguoiDungID.Equals(id));
         // ---- Thay đổi giá trị
         nd.HoTen = hoTen;
         nd.TaiKhoan = taiKhoan;
         nd.MatKhau = matKhau;
         nd.QuanTri = quanTri;
         // ---- Cập nhật thay đổi lên CSDL
         db.SubmitChanges();
     }
 }
Esempio n. 13
0
 public static void PhucHoi(int id)
 {
     using (var db = new DB())
     {
         // ---- Truy vấn đến người dùng có id trùng với id truyền vào
         var nd = db.NguoiDungs.Single(p => p.NguoiDungID.Equals(id));
         // ---- Đặt lại cờ xoá bằng =false
         nd.Xoa = false;
         // ---- Cập nhật thay đổi CSDL
         db.SubmitChanges();
         //
     }
 }