Пример #1
0
        public bool deleteChiTieu(int maChiTieu)
        {
            try
            {
                _connectionToDatabase.RunInTransaction(
                    () =>
                {
                    CHITIEU currentChiTieu = _connectionToDatabase.Table <CHITIEU>().Where(ic =>
                                                                                           (ic.MaChiTieu == maChiTieu)).FirstOrDefault();
                    if (currentChiTieu == null)
                    {
                        throw new Exception("Không tìm thấy chi tiêu có mã '" + maChiTieu + "'");
                    }
                    THUCHITHANG thuChiThang = _connectionToDatabase.Table <THUCHITHANG>().Where(ie =>
                                                                                                (ie.MaThuChiThang == currentChiTieu.MaThuChiThang)).FirstOrDefault();
                    if (thuChiThang == null)
                    {
                        throw new Exception("Không tìm thấy thu-chi tháng với mã '" + currentChiTieu.MaThuChiThang + "'");
                    }

                    _connectionToDatabase.Delete(currentChiTieu);
                    thuChiThang.SoDu += (Int32)(currentChiTieu.SoTien);
                    _connectionToDatabase.Update(thuChiThang);
                });

                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #2
0
        public bool deleteThuNhap(int maThuNhap)
        {
            try
            {
                _connectionToDatabase.RunInTransaction(
                    () =>
                {
                    THUNHAP currentThuNhap = _connectionToDatabase.Table <THUNHAP>().Where(ic =>
                                                                                           (ic.MaThuNhap == maThuNhap)).FirstOrDefault();
                    if (currentThuNhap == null)
                    {
                        throw new Exception("Không tìm thấy thu nhập có mã '" + maThuNhap + "'");
                    }
                    THUCHITHANG thuChiThang = _connectionToDatabase.Table <THUCHITHANG>().Where(ie =>
                                                                                                (ie.MaThuChiThang == currentThuNhap.MaThuChiThang)).FirstOrDefault();
                    if (thuChiThang == null)
                    {
                        throw new Exception("Không tìm thấy thu-chi tháng với mã '" + currentThuNhap.MaThuChiThang + "'");
                    }

                    _connectionToDatabase.Delete(currentThuNhap);
                    thuChiThang.SoDu -= (Int32)(currentThuNhap.SoTien);
                    _connectionToDatabase.Update(thuChiThang);
                });

                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #3
0
 public bool deleteThuChiThang(int maThuChiThang)
 {
     try
     {
         _connectionToDatabase.RunInTransaction(
             async() =>
         {
             THUCHITHANG thuChiThang = await getThuChiThang(maThuChiThang);
             if (thuChiThang == null)
             {
                 throw new Exception("Không tìm thấy bản ghi thu-chi tháng này.");
             }
             var allThuNhap = await getAllThuNhap(thuChiThang.MaThuChiThang);
             foreach (THUNHAP tn in allThuNhap)
             {
                 await _connectionToDatabaseAsync.DeleteAsync(tn);
             }
             var allChiTieu = await getAllChiTieu(thuChiThang.MaThuChiThang);
             foreach (CHITIEU ct in allChiTieu)
             {
                 await _connectionToDatabaseAsync.DeleteAsync(ct);
             }
             await _connectionToDatabaseAsync.DeleteAsync(thuChiThang);
         });
         return(true);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Пример #4
0
        public async Task <bool> insertThuChiThang(THUCHITHANG thuChiThang)
        {
            try
            {
                NGUOIDUNG nguoiDung = await _connectionToDatabaseAsync.Table <NGUOIDUNG>().Where(nd =>
                                                                                                 (nd.MaNguoiDung == thuChiThang.MaNguoiDung)).FirstOrDefaultAsync();

                if (nguoiDung == null)
                {
                    throw new Exception("Không tìm thấy người dùng này.");
                }
                THUCHITHANG currentThuChiThang = await getThuChiThang(thuChiThang.MaNguoiDung, thuChiThang.Thang, thuChiThang.Nam);

                if (currentThuChiThang != null)
                {
                    throw new Exception("Thu-chi tháng " + thuChiThang.Thang + " năm " + thuChiThang.Nam + " tương ứng với người dùng này đã tồn tại.");
                }
                await _connectionToDatabaseAsync.InsertAsync(thuChiThang);

                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #5
0
        public async Task <THUCHITHANG> getThuChiThang(int maNguoiDung, int thang, int nam)
        {
            try
            {
                THUCHITHANG thuChiThang = await _connectionToDatabaseAsync.Table <THUCHITHANG>().Where(ie =>
                                                                                                       (ie.MaNguoiDung == maNguoiDung && ie.Thang == thang && ie.Nam == nam)).FirstOrDefaultAsync();

                return(thuChiThang);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #6
0
        public async Task <List <THUNHAP> > getAllThuNhap(int maThuChiThang)
        {
            try
            {
                THUCHITHANG thuChiThang = await getThuChiThang(maThuChiThang);

                if (thuChiThang == null)
                {
                    throw new Exception("Không tìm thấy bản ghi thu-chi tháng này.");
                }
                List <THUNHAP> allThuNhap = await _connectionToDatabaseAsync.Table <THUNHAP>().Where(ic =>
                                                                                                     (ic.MaThuChiThang == maThuChiThang)).ToListAsync();

                return(allThuNhap);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #7
0
 public bool insertChiTieu(CHITIEU chiTieu)
 {
     try
     {
         _connectionToDatabase.RunInTransaction(
             () =>
         {
             NHOMCHITIEU nhomChiTieu = _connectionToDatabase.Table <NHOMCHITIEU>().Where(ie =>
                                                                                         (ie.MaNhomChiTieu == chiTieu.MaNhomChiTieu)).FirstOrDefault();
             if (nhomChiTieu == null)
             {
                 throw new Exception("Không tìm nhóm chi tiêu này.");
             }
             THUCHITHANG thuChiThang = _connectionToDatabase.Table <THUCHITHANG>().Where(ie =>
                                                                                         (ie.MaThuChiThang == chiTieu.MaThuChiThang)).FirstOrDefault();
             if (thuChiThang == null)
             {
                 throw new Exception("Không tìm thấy thu-chi tháng với mã '" + chiTieu.MaThuChiThang + "'");
             }
             CHITIEU currentChiTieu = _connectionToDatabase.Table <CHITIEU>().Where(ct =>
                                                                                    (ct.MaChiTieu == chiTieu.MaChiTieu)).FirstOrDefault();
             if (currentChiTieu != null)
             {
                 throw new Exception("Chi tiêu với mã tương ứng đã tồn tại.");
             }
             _connectionToDatabase.Insert(chiTieu);
             thuChiThang.SoDu -= (Int32)chiTieu.SoTien;
             _connectionToDatabase.Update(thuChiThang);
         });
         return(true);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Пример #8
0
 public bool insertThuNhap(THUNHAP thuNhap)
 {
     try
     {
         _connectionToDatabase.RunInTransaction(
             () =>
         {
             NHOMTHUNHAP nhomThuNhap = _connectionToDatabase.Table <NHOMTHUNHAP>().Where(ie =>
                                                                                         (ie.MaNhomThuNhap == thuNhap.MaNhomThuNhap)).FirstOrDefault();
             if (nhomThuNhap == null)
             {
                 throw new Exception("Không tìm nhóm thu nhập này.");
             }
             THUCHITHANG thuChiThang = _connectionToDatabase.Table <THUCHITHANG>().Where(ie =>
                                                                                         (ie.MaThuChiThang == thuNhap.MaThuChiThang)).FirstOrDefault();
             if (thuChiThang == null)
             {
                 throw new Exception("Không tìm thấy thu-chi tháng với mã '" + thuNhap.MaThuChiThang + "'");
             }
             THUNHAP currentThuNhap = _connectionToDatabase.Table <THUNHAP>().Where(tn =>
                                                                                    (tn.MaThuNhap == thuNhap.MaThuNhap)).FirstOrDefault();
             if (currentThuNhap != null)
             {
                 throw new Exception("Thu nhập với mã này đã tồn tại.");
             }
             _connectionToDatabase.Insert(thuNhap);
             thuChiThang.SoDu += (Int32)thuNhap.SoTien;
             _connectionToDatabase.Update(thuChiThang);
         });
         return(true);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        private async Task<bool> asyncDataThuChiThang(int maNguoiDung)
        {
            try
            {
                List<THUCHITHANG> localListThuChiThang = await _localModel.getAllThuChiThang(maNguoiDung);
                ObservableCollection<ServerDatabaseService.ThuChiThang> serverListThuChiThang = new ObservableCollection<ServerDatabaseService.ThuChiThang>();
                foreach (THUCHITHANG cv in localListThuChiThang)
                {
                    ServerDatabaseService.ThuChiThang thuChiThang = new ServerDatabaseService.ThuChiThang();
                    thuChiThang.MaThuChiThang = cv.MaThuChiThang;
                    thuChiThang.MaNguoiDung = cv.MaNguoiDung;
                    thuChiThang.Thang = cv.Thang;
                    thuChiThang.Nam = cv.Nam;
                    thuChiThang.SoDu = cv.SoDu;
                    serverListThuChiThang.Add(thuChiThang);
                }
                var respone = await _serverModel.dataSynceThuChiThangAsync(serverListThuChiThang, maNguoiDung);
                serverListThuChiThang = respone.Body.dataSynceThuChiThangResult;

                var thamSo = await _serverModel.getThamSoAsync("ThuChiThang");
                int maThuChiThang = thamSo.Body.getThamSoResult.GiaTri;

                foreach (ServerDatabaseService.ThuChiThang cv in serverListThuChiThang)
                {
                    THUCHITHANG thuChiThang = await _localModel.getThuChiThang(cv.MaThuChiThang);
                    if (thuChiThang == null)        // add new
                    {
                        thuChiThang = new THUCHITHANG(cv.MaThuChiThang, cv.MaNguoiDung, cv.Thang, cv.Nam, (Int32)cv.SoDu);
                        await _localModel.insertThuChiThang(thuChiThang);
                        await _localModel.updateThamSo("ThuChiThang", (++maThuChiThang));
                    }
                    else        // update
                    {
                        // Không có update
                    }
                }
                return true;
            }
            catch (EndpointNotFoundException e)
            {
                throw new HttpRequestException("Không thể kết nối đến server. Vui lòng kiểm tra kết nối internet và thử lại.");
            }
            catch (HttpRequestException e)
            {
                throw new HttpRequestException("Không thể kết nối đến server. Vui lòng kiểm tra kết nối internet và thử lại.");
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #10
0
 public async Task<bool> insertThuChiThang(THUCHITHANG thuChiThang)
 {
     try
     {
         NGUOIDUNG nguoiDung = await _connectionToDatabaseAsync.Table<NGUOIDUNG>().Where(nd =>
         (nd.MaNguoiDung == thuChiThang.MaNguoiDung)).FirstOrDefaultAsync();
         if (nguoiDung == null)
             throw new Exception("Không tìm thấy người dùng này.");
         THUCHITHANG currentThuChiThang = await getThuChiThang(thuChiThang.MaNguoiDung, thuChiThang.Thang, thuChiThang.Nam);
         if (currentThuChiThang != null)
             throw new Exception("Thu-chi tháng " + thuChiThang.Thang + " năm " + thuChiThang.Nam + " tương ứng với người dùng này đã tồn tại.");
         await _connectionToDatabaseAsync.InsertAsync(thuChiThang);
         return true;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }