Ejemplo n.º 1
0
        private void generateBangThuTienKhoanThu(int bangThuTienId, int khoiId, DateTime ngayTinh, ViewBangThuTienRow preMonthViewBangThuTien)
        {
            KhoanThuHangNamTableAdapter     khoanThuHangNamTableAdapter     = (KhoanThuHangNamTableAdapter)StaticDataFacade.Get(StaticDataKeys.AdapterKhoanThuHangNam);
            BangThuTienTableAdapter         bangThuTienTableAdapter         = (BangThuTienTableAdapter)StaticDataFacade.Get(StaticDataKeys.AdapterBangThuTien);
            BangThuTienKhoanThuTableAdapter bangThuTienKhoanThuTableAdapter = (BangThuTienKhoanThuTableAdapter)StaticDataFacade.Get(StaticDataKeys.AdapterBangThuTienKhoanThu);

            int[]      khoanThuIds       = new int[] { BangThuTienConstant.KhoanThuIdBanTru, BangThuTienConstant.KhoanThuIdHocPhi, BangThuTienConstant.KhoanThuIdPhuPhi, BangThuTienConstant.KhoanThuIdTienAnSua, BangThuTienConstant.KhoanThuIdAnSang, BangThuTienConstant.KhoanThuIdAnToi };
            List <int> ignoreKhoanThuIds = getKhoanThuIdsToIgnoreGenerating(preMonthViewBangThuTien);

            QLMamNon.Dao.QLMamNonDs.KhoanThuHangNamDataTable khoanThuHangNamTable = khoanThuHangNamTableAdapter.GetKhoanThuHangNamByParams(String.Join(",", khoanThuIds), khoiId, ngayTinh);
            BangThuTienDataTable bangThuTienTable = bangThuTienTableAdapter.GetDataById(bangThuTienId);

            QLMamNon.Dao.QLMamNonDs.BangThuTienRow bangThuTienRow = bangThuTienTable[0];

            foreach (QLMamNon.Dao.QLMamNonDs.KhoanThuHangNamRow row in khoanThuHangNamTable)
            {
                long soTien = 0;

                if (!ignoreKhoanThuIds.Contains(row.KhoanThuId))
                {
                    soTien = BangThuTienUtil.CalculateSoTienPhi(khoiId, 0, row.SoTien, row.KhoanThuId);
                }

                bangThuTienKhoanThuTableAdapter.Insert(row.KhoanThuId, bangThuTienId, soTien);

                if (soTien != 0)
                {
                    switch (row.KhoanThuId)
                    {
                    case BangThuTienConstant.KhoanThuIdAnSang:
                        bangThuTienRow.SoTienAnSangThangNay = soTien;
                        break;

                    case BangThuTienConstant.KhoanThuIdAnToi:
                        bangThuTienRow.SoTienAnToiThangNay = soTien;
                        break;

                    default:
                        break;
                    }
                }
            }

            bangThuTienTableAdapter.Update(bangThuTienRow);
        }
Ejemplo n.º 2
0
        public static void RecalculateBangThuTienKhoanThuList(LopKhoiTableAdapter lopKhoiTableAdapter,
                                                              KhoanThuHangNamTableAdapter khoanThuHangNamTableAdapter,
                                                              QLMamNon.Dao.QLMamNonDs.ViewBangThuTienRow viewBangThuTienRow)
        {
            int khoiId = StaticDataUtil.GetKhoiIdByLopId(lopKhoiTableAdapter, viewBangThuTienRow.LopId).Value;

            int[] khoanThuIds = new int[] { BangThuTienConstant.KhoanThuIdBanTru, BangThuTienConstant.KhoanThuIdHocPhi, BangThuTienConstant.KhoanThuIdPhuPhi, BangThuTienConstant.KhoanThuIdTienAnSua, BangThuTienConstant.KhoanThuIdAnSang, BangThuTienConstant.KhoanThuIdAnToi };
            QLMamNon.Dao.QLMamNonDs.KhoanThuHangNamDataTable khoanThuHangNamTable = khoanThuHangNamTableAdapter.GetKhoanThuHangNamByParams(String.Join(",", khoanThuIds), khoiId, viewBangThuTienRow.NgayTinh);

            foreach (QLMamNon.Dao.QLMamNonDs.KhoanThuHangNamRow row in khoanThuHangNamTable)
            {
                long soTien = BangThuTienUtil.CalculateSoTienPhi(khoiId, viewBangThuTienRow.SXThangTruoc, row.SoTien, row.KhoanThuId);
                switch (row.KhoanThuId)
                {
                case BangThuTienConstant.KhoanThuIdTienAnSua:
                    viewBangThuTienRow.TienAnSua = soTien;
                    break;

                case BangThuTienConstant.KhoanThuIdPhuPhi:
                    viewBangThuTienRow.PhuPhi = soTien;
                    break;

                case BangThuTienConstant.KhoanThuIdBanTru:
                    viewBangThuTienRow.BanTru = soTien;
                    break;

                case BangThuTienConstant.KhoanThuIdHocPhi:
                    viewBangThuTienRow.HocPhi = soTien;
                    break;

                default:
                    break;
                }
            }

            viewBangThuTienRow.KhoanThuChinh = viewBangThuTienRow.TienAnSua + viewBangThuTienRow.PhuPhi + viewBangThuTienRow.BanTru + viewBangThuTienRow.HocPhi;
            viewBangThuTienRow.ThanhTien     = BangThuTienUtil.CalculateThanhTien(viewBangThuTienRow);
        }