public decimal TinhToanSoTienKhuyenMaiCuaSanPham(DateTime dt, string ProductGuid, string SizeGuid) { shSaleDetail saleDetail = KiemTraSanPhamNamTrongChuongTrinhKhuyenMai(dt, ProductGuid, SizeGuid); shSizeService _size = new shSizeService(); shSetSize size = _size.FindByKey(SizeGuid); if (size == null) { size = new shSetSize(); } decimal price = default(decimal); if (saleDetail.SaleDetailId > 0) // Tồn tại sản phẩm nằm trong danh sach được khuyến mại { if (saleDetail.CachTinhGiaTriKhuyenMai == CachTinhGiaTriKhuyenMai.GiamTheoPhanTramGiaTri.GetHashCode()) { price = size.PriceCurrent.GetValueOrDefault(0) - (size.PriceCurrent.GetValueOrDefault(0) * Convert.ToInt32(saleDetail.GiaTri)) / 100; } else if (saleDetail.CachTinhGiaTriKhuyenMai == CachTinhGiaTriKhuyenMai.GiamTheoSoTien.GetHashCode()) { price = size.PriceCurrent.GetValueOrDefault(0) - Convert.ToInt32(saleDetail.GiaTri); } return(Convert.ToInt32(price)); } return(price); }
public shSaleDetail KiemTraSanPhamNamTrongChuongTrinhKhuyenMai(DateTime dt, string ProductGuid, string SizeGuid) { shSale sale = ChuongTrinhKhuyenMaiHienTai(dt); shSaleDetail saleDetail = new shSaleDetail(); if (sale == null) { return(saleDetail); } shSaleDetailService _saleService = new shSaleDetailService(); IEnumerable <shSaleDetail> ds = _saleService.DanhSachBySaleGuid(sale.SaleGuid); if (sale.DieuKienApDung == DieuKienApDungKhuyenMai.TatCaSanPham.GetHashCode()) { saleDetail = ds.FirstOrDefault(); return(saleDetail); } else if (sale.DieuKienApDung == DieuKienApDungKhuyenMai.TheoDanhMuc.GetHashCode()) { shProductService _product = new shProductService(); shProduct product = _product.FindByKey(ProductGuid); foreach (var item in ds) { if (item.CategoryGuidProductGuid == product.CategoryGuid) { saleDetail = item; return(item); } } } else if (sale.DieuKienApDung == DieuKienApDungKhuyenMai.TheoSanPhamRiengBiet.GetHashCode()) { shProductService _product = new shProductService(); shProduct product = _product.FindByKey(ProductGuid); foreach (var item in ds) { if (item.CategoryGuidProductGuid == product.ProductGuid) { saleDetail = item; return(item); } } } return(saleDetail); }
public static MvcHtmlString ChuongTrinhKhuyenMaiSanPham(this HtmlHelper helper, string ProductGuid, int LoaiHienThi) { string html = string.Empty; shSaleService _sale = new shSaleService(); shSaleDetail saleDetail = _sale.KiemTraSanPhamNamTrongChuongTrinhKhuyenMai(DateTime.Now, ProductGuid, null); if (LoaiHienThi == 1) { html = SaleHelper.TenCachTinhGiaTriKhuyenMai(saleDetail.CachTinhGiaTriKhuyenMai.GetValueOrDefault(CachTinhGiaTriKhuyenMai.GiamTheoPhanTramGiaTri.GetHashCode())); } else if (LoaiHienThi == 2) { html = SizeHelper.FormatGiaTriKhuyenMai( saleDetail.CachTinhGiaTriKhuyenMai.GetValueOrDefault(CachTinhGiaTriKhuyenMai.GiamTheoPhanTramGiaTri.GetHashCode()), saleDetail.GiaTri); } else if (LoaiHienThi == 3) { html = saleDetail.StartDate.GetValueOrDefault(DateTime.Now).ToString("dd-MM") + " - " + saleDetail.EndDate.GetValueOrDefault(DateTime.Now).ToString("dd-MM"); } return(new MvcHtmlString(html)); }
public shSale ThemMoi_CapNhatKhuyenMai(string SaleGuid, string SaleName, string SaleCode, int?SaleStatus, string Description, string StartTime, string EndTime, int?CachTinhGiaTriKhuyenMai, decimal?Percent, double?USD, int?DieuKienApDung, string[] CagegoryChild, string[] ProductGuid1, int?UserId, bool Status, DateTime?CreateDate) { shSaleService _sale = new shSaleService(); shSale sale = new shSale(); // 1. Thêm mới bảng shSale #region shSale string GiaTri = string.Empty; if (CachTinhGiaTriKhuyenMai == C.Core.Common.CachTinhGiaTriKhuyenMai.GiamTheoPhanTramGiaTri.GetHashCode()) { GiaTri = Format.FormatDecimalToString(Percent.GetValueOrDefault(0)).Replace(",", ""); GiaTri = Convert.ToInt32(Percent.GetValueOrDefault(0)).ToString(); } else if (CachTinhGiaTriKhuyenMai == C.Core.Common.CachTinhGiaTriKhuyenMai.GiamTheoSoTien.GetHashCode()) { GiaTri = Convert.ToInt32(USD.GetValueOrDefault(0)).ToString(); } sale = Insert_Update( SaleGuid, null, SaleName, SaleCode, Description, CachTinhGiaTriKhuyenMai, GiaTri, DieuKienApDung, TypeHelper.ToDate(StartTime), TypeHelper.ToDate(EndTime), SaleStatus, UserId, null, Status, CreateDate); #endregion // 2. Thêm mới bảng shSaleDetail #region ShSaleDetail string MaCauHinh = Config.DieuKienApDungKhuyenMai_TatCaSanPham; List <string> DanhSach = new List <string>(); if (DieuKienApDung == DieuKienApDungKhuyenMai.TatCaSanPham.GetHashCode()) { MaCauHinh = Config.DieuKienApDungKhuyenMai_TatCaSanPham; DanhSach.Add(Config.DieuKienApDungKhuyenMai_MaCauHinh_TatCaSanPham); } else if (DieuKienApDung == DieuKienApDungKhuyenMai.TheoDanhMuc.GetHashCode()) { MaCauHinh = Config.DieuKienApDungKhuyenMai_TheoDanhMuc; DanhSach = CagegoryChild.ToList(); } else if (DieuKienApDung == DieuKienApDungKhuyenMai.TheoSanPhamRiengBiet.GetHashCode()) { MaCauHinh = Config.DieuKienApDungKhuyenMai_TheoSanPham; DanhSach = ProductGuid1.ToList(); } shSaleDetailService _saleService = new shSaleDetailService(); foreach (var item in DanhSach) { shSaleDetail saleDetail = _saleService.InsertOrUpdate( null, null, sale.SaleGuid, CachTinhGiaTriKhuyenMai, GiaTri, DieuKienApDung, TypeHelper.ToDate(StartTime), TypeHelper.ToDate(EndTime), null, null, null, null, null, null, null, true, DateTime.Now, MaCauHinh, item); } #endregion return(sale); }