private static string HediyeUrunTekHtml(UrunHediyeTek hediyeTek)
        {
            StringBuilder sb = new StringBuilder();

            if (hediyeTek.UrunAdi != null)
            {
                sb.Append("<div class='hediyeSol'>");
                sb.Append("<img class='hediyeImg'  src='/Products/Small/" + hediyeTek.ResimAdi + "' />");
                sb.Append("</div>");

                sb.Append("<div class='hediyeSag'>");
                sb.Append("<span class='hediyeTitle' >Hediye Solüsyon</span>");
                sb.Append(hediyeTek.UrunAdi);
                sb.Append("<br/>");
                sb.Append("<span class='hediye-fiyat'>");
                sb.Append(hediyeTek.UrunFiyat.ToString("n") + hediyeTek.Doviz);
                sb.Append("</span>");
                sb.Append("</div");
                sb.Append("<div class='clear'></div>");
            }

            return sb.ToString();

        }
        public static SepetResponse ConvertToSepetResponse(this List<Sepet> sepet)
        {
            SepetResponse response;

            List<SepetGridResponse> sepetGridResponse = new List<SepetGridResponse>();
            List<SepetToplamIslem> sepetToplamResponse = new List<SepetToplamIslem>();
            UrunHediyeTek hediyeTek = new UrunHediyeTek();

            foreach (Sepet spt in sepet)
            {
                SepetGridResponse res = new SepetGridResponse();

                res.Id = spt.SepetId.ToString();
                res.Resim = spt.ResimAdi;
                res.StokCins = spt.StokCins;
                res.Urun = spt.UrunAdi;
                res.UrunLink = LinkBulding.Urun("sepet", spt.UrunId, spt.UrunAdi);
                res.KDV = AritmetikIslemler.sepetKDV(spt.UrunKDV);
                res.Miktar = spt.Miktar.ToString();
                res.Fiyat = SepetOperasyon.FiyatVeParaBirimi(spt.UrunFiyat, spt.Doviz);
                res.Birim = SepetToplamIslem.SepetBirimToplam(spt.UrunFiyat, spt.Miktar, spt.Doviz);
                res.SagAdet = spt.SagAdet.ToString();
                res.SolAdet = spt.SolAdet.ToString();
                res.SolBilgi = SepetOperasyon.SolBilgiHtml(spt.SolBilgi);
                res.SagBilgi = SepetOperasyon.SagBilgiHtml(spt.SagBilgi);
                res.HediyeHTML = HediyeHtml(spt.ObjHediye);
               
                if (hediyeTek.UrunAdi == null)
                {
                    hediyeTek = UrunDB.HediyeUrun(spt.UrunId);
                    res.HediyeUrunTekHTML = HediyeUrunTekHtml(hediyeTek);
                }

                sepetGridResponse.Add(res);

                // Sepet Toplam Fiyat İşlemi
                SepetToplamIslem islem = sepetToplamResponse.Find(item => item.UrunId == spt.UrunId);
              
                if (islem != null )
                {
                    sepetToplamResponse.Remove(islem);
                    islem.Miktar += spt.Miktar;
                    if (spt.ObjHediye.Id > 0)
                    {
                        islem.Hediye = spt.ObjHediye.Id;  
                    }
                    
                    sepetToplamResponse.Add(islem);
                }
                else
                {
                    sepetToplamResponse.Add(new SepetToplamIslem
                    {
                        UrunId = spt.UrunId,
                        Fiyat = spt.UrunFiyat,
                        Doviz = spt.Doviz,
                        Miktar = spt.Miktar,
                        KDV = spt.UrunKDV,
                        Hediye = spt.ObjHediye.Id
                    });
                }
            }

            response = SepetToplamIslem.SepetToplamIslemleri(sepetToplamResponse);

            response.SepetGride = sepetGridResponse;

            return response;
        }
        public static List<SiparisDetay> DetayUrunListe(int siparisId)
        {
            try
            {
                SqlParameter parametre = new SqlParameter("@siparisId", siparisId);
                List<SiparisDetay> siparisler = new List<SiparisDetay>();
                UrunHediyeTek hediyeTek = new UrunHediyeTek();

                using (SqlDataReader dr = SqlHelper.ExecuteReader("siparis_DetayGetir", parametre))
                {
                    while (dr.Read())
                    {
                        UrunHediye _hediye = new UrunHediye();

                        if (!dr.IsDBNull(dr.GetOrdinal("hediyeId")))
                        {
                            _hediye.Id = dr.GetInt32(dr.GetOrdinal("hediyeId"));
                        }

                        if (_hediye.Id > 0)
                        {
                            _hediye.Resim = dr.GetString(dr.GetOrdinal("resim"));
                            _hediye.UrunAdi = dr.GetString(dr.GetOrdinal("hediyeAdi"));
                            _hediye.Secenek = dr.GetString(dr.GetOrdinal("hediyeBilgi"));
                        }

                        SiparisDetay siparis = new SiparisDetay
                        {
                            urunId = dr.GetInt32(dr.GetOrdinal("urunId")),
                            resimAdi = dr.GetString(dr.GetOrdinal("resimAdi")),
                            urunAdi = dr.GetString(dr.GetOrdinal("urunAdi")),
                            urunKodu = dr.GetString(dr.GetOrdinal("urunKodu")),
                            urunKDV = dr.GetInt32(dr.GetOrdinal("urunKDV")),
                            adet = dr.GetInt32(dr.GetOrdinal("adet")),
                            fiyat = dr.GetDecimal(dr.GetOrdinal("fiyat")),
                            sagAdet = dr.GetInt32(dr.GetOrdinal("sagAdet")),
                            solAdet = dr.GetInt32(dr.GetOrdinal("solAdet")),
                            sagBilgi = SepetOperasyon.SagBilgiHtml(dr.GetString(dr.GetOrdinal("sagBilgi"))),
                            solBilgi = SepetOperasyon.SolBilgiHtml(dr.GetString(dr.GetOrdinal("solBilgi"))),
                            stokCins = dr.GetString(dr.GetOrdinal("stokCins")),
                            //kampanya = dr.GetString(dr.GetOrdinal("kampanya")),
                            KdvDahilFiyat = SiparisOperasyon.KDVDahilFiyat(dr.GetDecimal(dr.GetOrdinal("fiyat")),
                                                        dr.GetInt32(dr.GetOrdinal("urunKDV"))),

                            Birim = SiparisOperasyon.BirimToplam(dr.GetDecimal(dr.GetOrdinal("fiyat")),
                                                        dr.GetInt32(dr.GetOrdinal("adet"))),
                            HediyeHTML = HediyeHtml(_hediye)
                        };

                        if (hediyeTek.UrunAdi == null)
                        {
                            hediyeTek = UrunDB.HediyeUrun(siparis.urunId);
                            siparis.HediyeUrunTekHTML = HediyeUrunTekHtml(hediyeTek);
                        }

                         siparisler.Add(siparis);
                    }
                }

                return siparisler;
            }
            catch (Exception)
            {
                throw;
            }
        }
        public static UrunHediyeTek HediyeUrun(int id)
        {
            UrunHediyeTek hediye = new UrunHediyeTek();
            try
            {
                SqlParameter parametre = new SqlParameter("@id", id);

                using (SqlDataReader dr = SqlHelper.ExecuteReader("urunKampanya_Getir", parametre))
                {
                    while (dr.Read())
                    {
                        hediye.ResimAdi = dr.GetString(dr.GetOrdinal("resimAdi"));
                        hediye.UrunFiyat = dr.GetDecimal(dr.GetOrdinal("urunFiyat"));
                        hediye.Doviz = dr.GetString(dr.GetOrdinal("doviz"));
                        hediye.UrunAdi = dr.GetString(dr.GetOrdinal("urunAdi"));
                    }
                }

                return hediye;
            }
            catch (Exception)
            {
                throw;
            }
        }