protected void btnThemTangPham_Click(object sender, EventArgs e) { TangPham tangPham = new TangPham(); if (txtTenTangPham.Text == "") { lblTenTangPham.Text = "Chưa nhập tên tặng phẩm"; return; } else { tangPham.TenTangPham = txtTenTangPham.Text; lblTenTangPham.Text = ""; } if (txtDiemThuongYC.Text == "") { lblDiemThuongYC.Text = "Chưa nhập điểm thưởng yêu cầu"; return; } else { int i; if (int.TryParse(txtDiemThuongYC.Text, out i)) { tangPham.DiemThuongYC = int.Parse(txtDiemThuongYC.Text); lblDiemThuongYC.Text = ""; } else { lblDiemThuongYC.Text = "Điểm thưởng chỉ chứa số"; return; } } if (txtSoLuongTP.Text == "") { lblSoLuongTP.Text = "Chưa nhập số lượng tặng phẩm"; return; } else { int i; if (int.TryParse(txtSoLuongTP.Text, out i)) { tangPham.SoLuongTP = tangPham.SoLuongConLai = int.Parse(txtSoLuongTP.Text); lblSoLuongTP.Text = ""; } else { lblSoLuongTP.Text = "Số lượng tặng phẩm chỉ chứa số"; return; } } if (txtSoLuongToiDa.Text == "") { lblSoLuongTPToiDa.Text = "Chưa nhập số lượng tặng phẩm tối đa"; return; } else { int i; if (int.TryParse(txtSoLuongToiDa.Text, out i)) { if (i <= tangPham.SoLuongTP) { tangPham.SoLuongToiDa = int.Parse(txtSoLuongToiDa.Text); lblSoLuongTPToiDa.Text = ""; } else { lblSoLuongTPToiDa.Text = "Số lượng tặng phẩm tối đa phải nhỏ hơn hoặc bằng số lượng tặng phẩm"; return; } } else { lblSoLuongTPToiDa.Text = "Số lượng tặng phẩm tối đa chỉ chứa số"; return; } } if (fileUploadTP.PostedFile != null) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(Server.MapPath("Path_Gift.xml")); XmlElement xmlPath = (XmlElement)xmlDoc.SelectSingleNode("/PATH_GIFT"); string savePath = MapPath(xmlPath.InnerText.Trim() + fileUploadTP.PostedFile.FileName); fileUploadTP.PostedFile.SaveAs(savePath); tangPham.HinhAnh = xmlPath.InnerText.Trim() + fileUploadTP.PostedFile.FileName; } else { tangPham.HinhAnh = "~/image-gift/gift-icon.gif"; } lstTangPham.Add(tangPham); txtDiemThuongYC.Text = ""; txtSoLuongToiDa.Text = ""; txtSoLuongTP.Text = ""; txtTenTangPham.Text = ""; lblDiemThuongYC.Text = ""; lblHinhAnhTP.Text = ""; lblSoLuongTP.Text = ""; lblSoLuongTPToiDa.Text = ""; lblTenTangPham.Text = ""; }
protected void imgButtonThanhToan_Click(object sender, ImageClickEventArgs e) { // kiểm tra tặng phẩm lblLoiChonTP.Text = ""; List<ChiTietDonDatHang> lstChiTietDDH = new List<ChiTietDonDatHang>(); int tongDiemThuongYC = 0; int tongDiemThuong = int.Parse(lblTongDiemThuong.Text); for (int i = 0; i < dlDanhSachTangPham.Items.Count; i++) { TextBox txtSoLuongTP = dlDanhSachTangPham.Items[i].FindControl("txtSoLuongTP") as TextBox; int soluongTP = 0; if (!int.TryParse(txtSoLuongTP.Text, out soluongTP)) { lblLoiChonTP.Text = "Số lượng tặng phẩm phải là số."; txtSoLuongMuaSP.Focus(); return; } if (soluongTP == 0) { continue; } HiddenField hidField = dlDanhSachTangPham.Items[i].FindControl("hidMaTangPham") as HiddenField; TangPham tangPham = new TangPham(); tangPham = TangPham.LayTangPhamTheoMa(int.Parse(hidField.Value)); // kiểm tra số lượng tối đa if (soluongTP > tangPham.SoLuongToiDa) { lblLoiChonTP.Text = "Số lượng tặng phẩm " + tangPham.TenTangPham + " phải nhỏ hơn hoặc bằng số lượng tối đa."; txtSoLuongTP.Focus(); return; } // kiểm tra số lượng còn lại if (soluongTP > tangPham.SoLuongConLai) { lblLoiChonTP.Text = "Số lượng tặng phẩm " + tangPham.TenTangPham + " phải nhỏ hơn hoặc bằng số lượng tồn."; txtSoLuongTP.Focus(); return; } ChiTietDonDatHang ctDDH = new ChiTietDonDatHang(); ctDDH.MaTangPham = tangPham.MaTangPham; ctDDH.SoLuong = soluongTP; tongDiemThuongYC += tangPham.DiemThuongYC * ctDDH.SoLuong; // kiểm tra tổng điểm yêu cầu so với điểm thưởng người mua có if (tongDiemThuongYC > tongDiemThuong) { lblLoiChonTP.Text = "Số điểm thưởng không đủ để chọn."; txtSoLuongTP.Focus(); return; } lstChiTietDDH.Add(ctDDH); } // insert đơn đặt hàng DonDatHang donDatHang = new DonDatHang(); donDatHang.NgayDat = DateTime.Now; donDatHang.SoLuongDat = int.Parse(txtSoLuongMuaSP.Text); donDatHang.TrangThai = 1; donDatHang.MaKhachHang = (Int32)Session["Id"]; donDatHang.MaSanPham = g_SanPham.MaSanPham; donDatHang.MaDaiLy = int.Parse(dropListDaiLy.SelectedItem.Value); donDatHang.ThanhTien = donDatHang.SoLuongDat * g_SanPham.DonGia; donDatHang.NgayNhanHang = g_SanPham.ThoiGianBD_NhanHang; if (DonDatHang.ThemDonDatHang(donDatHang) > 0) { panelDatHang.Visible = false; string mess = String.Empty; // insert chi tiết tặng phẩm foreach (ChiTietDonDatHang ctddh in lstChiTietDDH) { ctddh.MaDDH = donDatHang.MaDDH; if (ChiTietDonDatHang.ThemChiTietDonDatHang(ctddh, tongDiemThuong) == 0) { mess += TangPham.LayTangPhamTheoMa(ctddh.MaTangPham).TenTangPham + " - "; continue; } } //kiểm tra xem thêm chi tiết tặng phẩm có bị lỗi hay hông if (mess.Length > 0) { pnlKetQuaDatHang.Visible = true; lblKetQuaDatHang.Text = "Không thể chọn các tặng phẩm " + mess + " , bạn có thể cập nhật tặng phẩm."; } else { pnlKetQuaDatHang.Visible = true; lblKetQuaDatHang.Text = "Đơn hàng của bạn đã thêm thành công. <br> Ngày nhận sản phẩm của bạn là từ ngày " + String.Format("{0:D}",g_SanPham.ThoiGianBD_NhanHang) + " đến ngày " + String.Format("{0:D}", g_SanPham.ThoiGianKT_NhanHang); } } else { pnlKetQuaDatHang.Visible = true; lblKetQuaDatHang.Text = "Đơn đặt hàng của bạn bị lỗi, bạn hãy thử lại."; } }
/// <summary> /// Thêm tặng phẩm /// Thu Hà - 27/5/2011 /// </summary> /// <param name="tangPhamDto"></param> /// <returns></returns> public static int ThemTangPham(TangPham tangPhamDto) { int res = 0; try { List<SqlParameter> lstParam = new List<SqlParameter>(); lstParam.Add(new SqlParameter("@tentangpham", tangPhamDto.TenTangPham)); lstParam.Add(new SqlParameter("@diemthuongyc", tangPhamDto.DiemThuongYC)); lstParam.Add(new SqlParameter("@soluongtp",tangPhamDto.SoLuongTP)); lstParam.Add(new SqlParameter("@soluongtoida",tangPhamDto.SoLuongToiDa)); lstParam.Add(new SqlParameter("@soluongconlai",tangPhamDto.SoLuongConLai)); lstParam.Add(new SqlParameter("@masanpham",tangPhamDto.MaSanPham)); lstParam.Add(new SqlParameter("@hinhanh",tangPhamDto.HinhAnh)); res = SqlDataAccessHelper.ExecuteNoneQuery("spThemTangPham", lstParam); } catch { return 0; } return res; }
/// <summary> /// Lấy ds tặng phẩm theo mã sản phẩm /// Thu Hà : 27/5/2011 /// </summary> /// <param name="maSP">Mã sản phẩm</param> /// <returns></returns> public static List<TangPham> LayDSTangPhamTheoMaSP(int maSP) { List<TangPham> lstTangPham = new List<TangPham>(); try { List<SqlParameter> lstParam = new List<SqlParameter>(); lstParam.Add(new SqlParameter("@masanpham", maSP)); DataTable dt = new DataTable(); dt = SqlDataAccessHelper.ExecuteQuery("spLayDSTangPhamTheoMaSP", lstParam); foreach (DataRow dtRow in dt.Rows) { TangPham tangPham = new TangPham(); tangPham.MaTangPham = int.Parse(dtRow["MaTangPham"].ToString()); tangPham.TenTangPham = dtRow["TenTangPham"].ToString(); tangPham.SoLuongTP = int.Parse(dtRow["SoLuongTP"].ToString()); tangPham.SoLuongToiDa = int.Parse(dtRow["SoLuongToiDa"].ToString()); tangPham.SoLuongConLai = int.Parse(dtRow["SoLuongConLai"].ToString()); tangPham.DiemThuongYC = int.Parse(dtRow["DiemThuongYC"].ToString()); tangPham.MaSanPham = int.Parse(dtRow["MaSanPham"].ToString()); tangPham.HinhAnh = dtRow["HinhAnh"].ToString(); lstTangPham.Add(tangPham); } } catch { lstTangPham = new List<TangPham>(); } return lstTangPham; }
/// <summary> /// Lấy tặng phẩm theo mã TP /// Thu Hà : 27/5/2011 /// </summary> /// <param name="maTP"></param> /// <returns></returns> public static TangPham LayTangPhamTheoMa(int maTP) { TangPham tangPham = new TangPham(); try { List<SqlParameter> lstParam = new List<SqlParameter>(); lstParam.Add(new SqlParameter("@matangpham",maTP)); DataTable dt = new DataTable(); dt = SqlDataAccessHelper.ExecuteQuery("spLayTangPhamTheoMaTP", lstParam); if (dt.Rows.Count > 0) { DataRow dtRow = dt.Rows[0]; tangPham.MaTangPham = int.Parse(dtRow["MaTangPham"].ToString()); tangPham.TenTangPham = dtRow["TenTangPham"].ToString(); tangPham.SoLuongTP = int.Parse(dtRow["SoLuongTP"].ToString()); tangPham.SoLuongToiDa = int.Parse(dtRow["SoLuongToiDa"].ToString()); tangPham.SoLuongConLai = int.Parse(dtRow["SoLuongConLai"].ToString()); tangPham.DiemThuongYC = int.Parse(dtRow["DiemThuongYC"].ToString()); tangPham.MaSanPham = int.Parse(dtRow["MaSanPham"].ToString()); tangPham.HinhAnh = dtRow["HinhAnh"].ToString(); } } catch { tangPham = new TangPham(); } return tangPham; }