public static TinhTienTheoKm GetThongSoTinhTen(int LoaiXe) { TinhTienTheoKm objTinhTien = new TinhTienTheoKm(); objTinhTien.LoaiXe = 0; DataTable dt = new DataTable(); dt = new Data.TinhTienTheoKm().GetThongSoTinhTien(LoaiXe); if ((dt != null) && (dt.Rows.Count > 0)) { objTinhTien.KmMoCua = float.Parse(dt.Rows[0]["KmMoCua"].ToString()); objTinhTien.GiaMoCua = float.Parse(dt.Rows[0]["GiaMoCua"].ToString()); objTinhTien.KmNguong1 = float.Parse(dt.Rows[0]["KmNguong1"].ToString()); objTinhTien.GiaNguong1 = float.Parse(dt.Rows[0]["GiaNguong1"].ToString()); objTinhTien.KmNguong2 = dt.Rows[0]["KmNguong2"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["KmNguong2"].ToString()); objTinhTien.GiaNguong2 = dt.Rows[0]["GiaNguong2"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["GiaNguong2"].ToString()); objTinhTien.KmNguong3 = dt.Rows[0]["KmNguong3"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["KmNguong3"].ToString()); objTinhTien.GiaNguong3 = dt.Rows[0]["GiaNguong3"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["GiaNguong3"].ToString()); objTinhTien.N1_ChieuDiTu = dt.Rows[0]["N1_ChieuDiTu"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["N1_ChieuDiTu"].ToString()); objTinhTien.N1_ChieuDiDen = dt.Rows[0]["N1_ChieuDiDen"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["N1_ChieuDiDen"].ToString()); objTinhTien.N1_Giam = dt.Rows[0]["N1_Giam"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["N1_Giam"].ToString()); objTinhTien.N2_ChieuDiTu = dt.Rows[0]["N2_ChieuDiTu"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["N2_ChieuDiTu"].ToString()); objTinhTien.N2_Giam = dt.Rows[0]["N2_Giam"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["N2_Giam"].ToString()); objTinhTien.IsAll = dt.Rows[0]["IsAll"] != DBNull.Value && bool.Parse(dt.Rows[0]["IsAll"].ToString()); objTinhTien.KmNguong2Chieu = dt.Rows[0]["KmNguong2Chieu"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["KmNguong2Chieu"].ToString()); objTinhTien.TiLeGiamGia2Chieu = dt.Rows[0]["TiLeGiamGiaHaiChieu"] == DBNull.Value ? 0 : float.Parse(dt.Rows[0]["TiLeGiamGiaHaiChieu"].ToString()); objTinhTien.LoaiXe = (int)dt.Rows[0]["LoaiXe"]; if (dt.Rows[0]["ThongTinThueBao"] != null) { objTinhTien.ThongTinThueBao = dt.Rows[0]["ThongTinThueBao"].ToString(); } } return(objTinhTien); }
private static TinhTienTheoKm GetThongSoTinhTen(bool LoaiCuoc, int LoaiXe) { TinhTienTheoKm objTinhTien = new TinhTienTheoKm(); objTinhTien.LoaiXe = 0; DataTable dt = new DataTable(); dt = new Data.TinhTienTheoKm().GetThongSoTinhTien(LoaiCuoc, LoaiXe); if ((dt != null) && (dt.Rows.Count > 0)) { objTinhTien.KmMoCua = float.Parse(dt.Rows[0]["KmMoCua"].ToString()); objTinhTien.GiaMoCua = float.Parse(dt.Rows[0]["GiaMoCua"].ToString()); objTinhTien.KmNguong1 = float.Parse(dt.Rows[0]["KmNguong1"].ToString()); objTinhTien.GiaNguong1 = float.Parse(dt.Rows[0]["GiaNguong1"].ToString()); objTinhTien.GiaNguong2 = float.Parse(dt.Rows[0]["GiaNguong2"].ToString()); objTinhTien.KmNguong2Chieu = float.Parse(dt.Rows[0]["KmNguong2Chieu"].ToString()); objTinhTien.TiLeGiamGia2Chieu = float.Parse(dt.Rows[0]["TiLeGiamGiaHaiChieu"].ToString()); objTinhTien.LoaiXe = (int)dt.Rows[0]["LoaiXe"]; objTinhTien.LoaiCuoc = Convert.ToBoolean(dt.Rows[0]["LoaiCuoc"]); if (dt.Rows[0]["ThongTinThueBao"] != null) { objTinhTien.ThongTinThueBao = dt.Rows[0]["ThongTinThueBao"].ToString(); } } return(objTinhTien); }
//public TinhTienTheoKm(int LoaiXe, float SoKm) //{ // TinhTienTheoKm objTinhTien = TinhTienTheoKm.GetThongSoTinhTen(LoaiXe); // this.GiaMoCua = objTinhTien.GiaMoCua; // this.KmMoCua = objTinhTien.KmMoCua; // this.GiaNguong1 = objTinhTien.GiaNguong1; // this.GiaNguong2 = objTinhTien.GiaNguong2; // this.KmNguong1 = objTinhTien.KmNguong1; // this.KmNguong2Chieu = objTinhTien.KmNguong2Chieu; // this.LoaiXe = objTinhTien.LoaiXe; // this.TiLeGiamGia2Chieu = objTinhTien.TiLeGiamGia2Chieu; // this.ThongTinThueBao = objTinhTien.ThongTinThueBao; // this.mTongTien1Chieu = TinhTien1Chieu(SoKm); // if (SoKm <= KmNguong2Chieu) mTongTien2Chieu = mTongTien1Chieu; // else this.mTongTien2Chieu = ((100 - TiLeGiamGia2Chieu) / 100) * mTongTien1Chieu; //} public TinhTienTheoKm(int LoaiXe, float SoKm, bool flgTong = false) { TinhTienTheoKm objTinhTien = GetThongSoTinhTen(LoaiXe); GiaMoCua = objTinhTien.GiaMoCua; KmMoCua = objTinhTien.KmMoCua; KmNguong1 = objTinhTien.KmNguong1; GiaNguong1 = objTinhTien.GiaNguong1; KmNguong2 = objTinhTien.KmNguong2; GiaNguong2 = objTinhTien.GiaNguong2; KmNguong3 = objTinhTien.KmNguong3; GiaNguong3 = objTinhTien.GiaNguong3; N1_ChieuDiTu = objTinhTien.N1_ChieuDiTu; N1_ChieuDiDen = objTinhTien.N1_ChieuDiDen; N1_Giam = objTinhTien.N1_Giam; N2_ChieuDiTu = objTinhTien.N2_ChieuDiTu; N2_Giam = objTinhTien.N2_Giam; IsAll = objTinhTien.IsAll; KmNguong2Chieu = objTinhTien.KmNguong2Chieu; TiLeGiamGia2Chieu = objTinhTien.TiLeGiamGia2Chieu; ThongTinThueBao = objTinhTien.ThongTinThueBao; if (flgTong) { SoKm = SoKm / 2; } mTongTien1Chieu = TinhTien1Chieu_New(SoKm); if (SoKm >= N1_ChieuDiTu && SoKm <= N1_ChieuDiDen && N1_Giam > 0) { mTongTien2Chieu = mTongTien1Chieu * ((100 - N1_Giam) / 100); } else if (SoKm > N2_ChieuDiTu && N2_Giam > 0) { if (IsAll) { mTongTien2Chieu = mTongTien1Chieu * ((100 - N2_Giam) / 100); } else { float TienGiamNgon = TinhTien1Chieu_New(SoKm - N2_ChieuDiTu); mTongTien2Chieu = (mTongTien1Chieu - TienGiamNgon) * ((100 - N2_Giam) / 100); } } else { mTongTien2Chieu = mTongTien1Chieu; } }
/// <summary> //ham tinh toan gia cuoc cho TaxiCP // - lay thong so khai bao cua giá cước // - neu IsTaxi = true thi tinh cho taxicp // //Công thức tính : //2 chieu : 4 cho // - [12 k + 29km x 10k + ((tongkm- 30) x 6.5 ) ] --> 1 chieu // - 12 k + 29km x 10k + ((tongkm- 30) x 6.5 ) x 07 --> 2chieu //2 chieu : 7 chỗ // - [12 k + 29km x 10k + (tongkm- 30) x 7.5 ) ] 1 chieu // 12 k + 29km x 10k + (tongkm- 30) x 7.5 ) x 0.7 --> 2 chieu /// </summary> public TinhTienTheoKm(bool LoaiCuoc, int LoaiXe, float SoKm, bool IsTaxiCP) { TinhTienTheoKm objTinhTien = TinhTienTheoKm.GetThongSoTinhTen(LoaiCuoc, LoaiXe); this.GiaMoCua = objTinhTien.GiaMoCua; this.KmMoCua = objTinhTien.KmMoCua; this.GiaNguong1 = objTinhTien.GiaNguong1; this.GiaNguong2 = objTinhTien.GiaNguong2; this.KmNguong1 = objTinhTien.KmNguong1; this.KmNguong2Chieu = objTinhTien.KmNguong2Chieu; this.LoaiXe = objTinhTien.LoaiXe; this.TiLeGiamGia2Chieu = objTinhTien.TiLeGiamGia2Chieu; this.mTongTien1Chieu = TinhTien1Chieu_CP(SoKm); this.mTongTien2Chieu = TinhTien2Chieu_CP(SoKm * 2); }
public TinhTienTheoKm(bool LoaiCuoc, int LoaiXe, float SoKm) { TinhTienTheoKm objTinhTien = GetThongSoTinhTen(LoaiCuoc, LoaiXe); this.GiaMoCua = objTinhTien.GiaMoCua; this.KmMoCua = objTinhTien.KmMoCua; this.GiaNguong1 = objTinhTien.GiaNguong1; this.GiaNguong2 = objTinhTien.GiaNguong2; this.KmNguong1 = objTinhTien.KmNguong1; this.KmNguong2Chieu = objTinhTien.KmNguong2Chieu; this.LoaiXe = objTinhTien.LoaiXe; this.TiLeGiamGia2Chieu = objTinhTien.TiLeGiamGia2Chieu; this.ThongTinThueBao = objTinhTien.ThongTinThueBao; this.mTongTien1Chieu = TinhTien1Chieu(SoKm); if (SoKm <= KmNguong2Chieu) { mTongTien2Chieu = mTongTien1Chieu; } else { this.mTongTien2Chieu = ((100 - TiLeGiamGia2Chieu) / 100) * mTongTien1Chieu; } }