Пример #1
0
    protected void RepeaterCart_ItemCommand(object source, RepeaterCommandEventArgs e)
    {
        if (e.CommandName == "Hapus")
        {
            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                PelangganLogin Pelanggan = (PelangganLogin)Session["PelangganLogin"];

                //MENCARI TRANSAKSI SESSION
                var TransaksiECommerce = db.TBTransaksiECommerces
                                         .FirstOrDefault(item => item.IDPelanggan == Pelanggan.IDPelanggan);

                var TransaksiECommerceDetail = TransaksiECommerce.TBTransaksiECommerceDetails
                                               .FirstOrDefault(item => item.IDTransaksiECommerceDetail == e.CommandArgument.ToInt());

                if (TransaksiECommerceDetail != null)
                {
                    db.TBTransaksiECommerceDetails.DeleteOnSubmit(TransaksiECommerceDetail);
                    db.SubmitChanges();
                }

                LoadData();
            }
        }
    }
Пример #2
0
    private void LoadData()
    {
        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            PelangganLogin Pelanggan = (PelangganLogin)Session["PelangganLogin"];

            //MENCARI TRANSAKSI SESSION
            var TransaksiECommerceDetail = db.TBTransaksiECommerceDetails
                                           .Where(item => item.TBTransaksiECommerce.IDPelanggan == Pelanggan.IDPelanggan);

            if (TransaksiECommerceDetail.Count() > 0)
            {
                MultiView1.ActiveViewIndex = 1;

                RepeaterCart.DataSource = TransaksiECommerceDetail
                                          .Select(item => new
                {
                    item.IDTransaksiECommerceDetail,
                    Foto = "/images/cover/" + item.TBStokProduk.TBKombinasiProduk.IDProduk + ".jpg",
                    item.TBStokProduk.TBKombinasiProduk.Nama,
                    item.Quantity,
                    Harga = item.TBStokProduk.HargaJual,
                    Total = (item.Quantity * item.TBStokProduk.HargaJual)
                })
                                          .ToArray();
                RepeaterCart.DataBind();
            }
            else
            {
                MultiView1.ActiveViewIndex = 0;
            }
        }
    }
Пример #3
0
    protected void ButtonProsesPemesanan_Click(object sender, EventArgs e)
    {
        if (RadioButtonListJenisPembayaran.SelectedValue == "")
        {
            LiteralWarningPilihMetodePembayaran.Text = "Metode Pembayaran belum dipilih";
            return;
        }
        else
        {
            LiteralWarningPilihMetodePembayaran.Text = "";
        }

        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            //VALIDASI STOK PRODUK
            ValidasiStokProdukTransaksi(db);

            PelangganLogin Pelanggan = (PelangganLogin)Session["PelangganLogin"];

            //MENCARI TRANSAKSI SESSION
            var TransaksiECommerce = db.TBTransaksiECommerces
                                     .FirstOrDefault(item => item.IDPelanggan == Pelanggan.IDPelanggan);

            //INSERT TRANSAKSI
            Transaksi_Class Transaksi = new Transaksi_Class((int)EnumPengguna.RendyHerdiawan, 1, DateTime.Now);

            Transaksi.IDJenisTransaksi = (int)EnumJenisTransaksi.ECommerce;

            foreach (var item in TransaksiECommerce.TBTransaksiECommerceDetails)
            {
                int IDDetailTransaksi = Transaksi.TambahDetailTransaksi(item.TBStokProduk.IDKombinasiProduk, item.Quantity);

                if (item.TBStokProduk.DiscountStore != 0)
                {
                    Transaksi.UbahPotonganHargaJualProduk(IDDetailTransaksi, item.TBStokProduk.DiscountStore.ToFormatHarga());
                }
            }

            Transaksi.PengaturanPelanggan(Pelanggan.IDPelanggan);
            Transaksi.BiayaPengiriman = 0;

            Transaksi.IDStatusTransaksi = (int)EnumStatusTransaksi.AwaitingPayment;
            Transaksi.StatusPrint       = true;

            Transaksi.ConfirmTransaksi(db);

            //MENGHAPUS DATA TRANSAKSI ECOMMERCE
            db.TBTransaksiECommerceDetails.DeleteAllOnSubmit(TransaksiECommerce.TBTransaksiECommerceDetails);
            db.TBTransaksiECommerces.DeleteOnSubmit(TransaksiECommerce);

            db.SubmitChanges();

            Response.Redirect("Thankyou.aspx?order=" + Transaksi.IDWMSTransaksi);
        }
    }
Пример #4
0
    int IDTempat = 1; //DEFAULT TEMPAT

    protected void Page_Init(object sender, EventArgs e)
    {
        #region VALIDASI FITUR ECOMMERCE
        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            StoreKonfigurasi_Class StoreKonfigurasi_Class = new StoreKonfigurasi_Class();

            if (!bool.Parse(StoreKonfigurasi_Class.Pengaturan(db, EnumStoreKonfigurasi.FiturECommerce)))
                Response.Redirect("/WITAdministrator/Default.aspx");
        }
        #endregion

        //CEK APAKAH SESSION ADA
        if (Session["PelangganLogin"] == null)
        {
            if (Request.Cookies["WMSCommerce"] != null)
            {
                //JIKA MEMILIKI COOKIES
                //LOGIN PELANGGAN MENGGUNAKAN IDWMSPelangganEnkripsi
                PelangganLogin Pelanggan = new PelangganLogin(Request.Cookies["WMSCommerce"].Value);

                if (Pelanggan.IDPelanggan > 0)
                {
                    Session["PelangganLogin"] = Pelanggan;
                    Session.Timeout = 525000;

                    //MEMBUAT COOKIES ENCRYPT
                    Response.Cookies["WMSCommerce"].Value = Pelanggan.IDWMSPelangganEnkripsi;
                    Response.Cookies["WMSCommerce"].Expires = DateTime.Now.AddYears(1);
                }
                else
                    MembuatPelanggan(); //PELANGGAN TIDAK DITEMUKAN
            }
            else
                MembuatPelanggan(); //JIKA COOKIES TIDAK ADA

        }

        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            PelangganLogin PelangganLogin = (PelangganLogin)Session["PelangganLogin"];
            //MENCARI TRANSAKSI SESSION
            var TransaksiECommerceDetail = db.TBTransaksiECommerceDetails
                .Where(item => item.TBTransaksiECommerce.IDPelanggan == PelangganLogin.IDPelanggan);

            LiteralTotalQuantity.Text = TransaksiECommerceDetail.Count().ToString();
        }

        Session.Timeout = 525000;

        ////////////PelangganLogin PelangganLogin = (PelangganLogin)Session["PelangganLogin"];
        ////////////Response.Write("_IDWMSPelangan : " + PelangganLogin.IDWMSPelanggan);
        ////////////Response.Write("<br/>IDPelanggan : " + PelangganLogin.IDPelanggan + "<br/><br/>");
    }
Пример #5
0
    protected void ButtonAddToCart_Click1(object sender, EventArgs e)
    {
        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            PelangganLogin Pelanggan = (PelangganLogin)Session["PelangganLogin"];

            //MENCARI TRANSAKSI SESSION
            var TransaksiECommerce = db.TBTransaksiECommerces
                .FirstOrDefault(item => item.IDPelanggan == Pelanggan.IDPelanggan);

            if (TransaksiECommerce == null)
            {
                TransaksiECommerce = new TBTransaksiECommerce
                {
                    //IDTransaksiECommerce
                    IDPelanggan = Pelanggan.IDPelanggan,
                    _IDWMSPelanggan = Pelanggan.IDWMSPelanggan,
                    _TanggalInsert = DateTime.Now
                };

                db.TBTransaksiECommerces.InsertOnSubmit(TransaksiECommerce);
            }

            TransaksiECommerce.TBTransaksiECommerceDetails.Add(new TBTransaksiECommerceDetail
            {
                TBTransaksiECommerce = TransaksiECommerce,
                //IDTransaksiECommerceDetail
                IDStokProduk = DropDownListStokProduk.SelectedValue.ToInt(),
                Quantity = TextBoxQuantity.Text.ToInt(),
                _TanggalInsert = DateTime.Now
            });

            db.SubmitChanges();
        }

        Response.Redirect("Cart.aspx");

        //PENGATURAN PELANGGAN DI TRANSAKSI
        //PengaturanPelanggan(Pelanggan.IDPelanggan);

        //ClassTransaksi Transaksi = new ClassTransaksi(1, 1, DateTime.Now);

        //Transaksi.TambahDetailTransaksi(DropDownListKombinasiProduk.SelectedValue.ToInt(), TextBoxQuantity.Text.ToInt());

        //Transaksi.IDStatusTransaksi = (int)EnumStatusTransaksi.AwaitingPayment;
        //Transaksi.StatusPrint = true;

        //Transaksi.ConfirmTransaksi(db);
        //db.SubmitChanges();
    }
Пример #6
0
    private void LoadData()
    {
        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            PelangganLogin Pelanggan = (PelangganLogin)Session["PelangganLogin"];

            //MENCARI TRANSAKSI SESSION
            var TransaksiECommerce = db.TBTransaksiECommerces
                                     .FirstOrDefault(item => item.IDPelanggan == Pelanggan.IDPelanggan);

            if (TransaksiECommerce != null)
            {
                var TransaksiECommerceDetail = TransaksiECommerce.TBTransaksiECommerceDetails;

                StokProduk_Class ClassStokProduk = new StokProduk_Class(db);

                var Result = ClassStokProduk.ValidasiStokProdukTransaksi(TransaksiECommerceDetail.ToArray());

                LiteralWarning.Text = "";

                foreach (var item in Result)
                {
                    LiteralWarning.Text += item + "<br/>";
                }

                MultiView1.ActiveViewIndex = 1;

                RepeaterCart.DataSource = TransaksiECommerceDetail
                                          .Select(item => new
                {
                    item.IDTransaksiECommerceDetail,
                    Foto = "/images/cover/" + item.TBStokProduk.TBKombinasiProduk.IDProduk + ".jpg",
                    item.TBStokProduk.TBKombinasiProduk.Nama,
                    item.Quantity,
                    Harga = item.TBStokProduk.HargaJual,
                    Total = (item.Quantity * item.TBStokProduk.HargaJual)
                })
                                          .ToArray();
                RepeaterCart.DataBind();

                var total = TransaksiECommerceDetail.Sum(item => item.Quantity * item.TBStokProduk.HargaJual).ToString();
                LiteralTotal.Text = total.ToFormatHarga();
            }
            else
            {
                MultiView1.ActiveViewIndex = 0;
            }
        }
    }
Пример #7
0
    public void ValidasiStokProdukTransaksi(DataClassesDatabaseDataContext db)
    {
        PelangganLogin Pelanggan = (PelangganLogin)Session["PelangganLogin"];

        //MENCARI TRANSAKSI SESSION
        var TransaksiECommerce = db.TBTransaksiECommerces
                                 .FirstOrDefault(item => item.IDPelanggan == Pelanggan.IDPelanggan);

        StokProduk_Class ClassStokProduk = new StokProduk_Class(db);

        var Result = ClassStokProduk.ValidasiStokProdukTransaksi(TransaksiECommerce.TBTransaksiECommerceDetails.ToArray());

        if (Result.Count > 0)
        {
            Response.Redirect("_Cart.aspx");
        }
    }
Пример #8
0
    private void MembuatPelanggan()
    {
        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            #region MEMBUAT PELANGGAN
            //DEFAULT PENGGUNA
            PenggunaLogin Pengguna = new PenggunaLogin(IDPengguna, IDTempat);

            Pelanggan_Class ClassPelanggan = new Pelanggan_Class(db, Pengguna);
            Alamat_Class    ClassAlamat    = new Alamat_Class();

            //MENAMBAH DATA PELANGGAN
            var Pelanggan = ClassPelanggan.Tambah(
                IDGrupPelanggan: IDGrupPelanggan,
                IDPenggunaPIC: IDPengguna,
                NamaLengkap: "",
                Username: "",
                Password: "",
                Email: "",
                Handphone: "",
                TeleponLain: "",
                TanggalLahir: DateTime.Now,
                Deposit: 0,
                Catatan: "",
                _IsActive: true
                );

            //MENAMBAH DATA ALAMAT
            ClassAlamat.Tambah(db, 0, Pelanggan, "", "", 0, "");
            db.SubmitChanges();
            #endregion

            PelangganLogin PelangganLogin = new PelangganLogin(Pelanggan._IDWMS);

            Session["PelangganLogin"] = PelangganLogin;
            Session.Timeout           = 525000;

            //MEMBUAT COOKIES ENCRYPT
            Response.Cookies["WMSCommerce"].Value   = PelangganLogin.IDWMSPelangganEnkripsi;
            Response.Cookies["WMSCommerce"].Expires = DateTime.Now.AddYears(1);
        }
    }
Пример #9
0
    protected void ButtonLanjutkanKePengiriman_Click(object sender, EventArgs e)
    {
        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            PelangganLogin Pelanggan = (PelangganLogin)Session["PelangganLogin"];

            var Data = db.TBPelanggans
                       .FirstOrDefault(item => item.IDPelanggan == Pelanggan.IDPelanggan);

            if (Data != null)
            {
                //IDGrupPelanggan

                Data.NamaLengkap = TextBoxNamaLengkap.Text;
                Data.Email       = TextBoxAlamatEmail.Text;
                Data.Handphone   = TextBoxNomorTelepon.Text;
                Data.Username    = TextBoxAlamatEmail.Text;

                var Alamat = Data.TBAlamats
                             .OrderByDescending(item => item.IDAlamat)
                             .FirstOrDefault();

                if (string.IsNullOrWhiteSpace(Alamat.AlamatLengkap))
                {
                    //IDAlamat
                    //IDPelanggan
                    //IDNegara
                    //IDProvinsi
                    //IDKota

                    Alamat.NamaLengkap   = TextBoxNamaLengkap.Text;
                    Alamat.AlamatLengkap = TextBoxAlamat.Text;
                    Alamat.KodePos       = TextBoxKodePos.Text;
                    Alamat.Handphone     = TextBoxNomorTelepon.Text;

                    Alamat.Negara    = DropDownListNegara.SelectedItem.Text;
                    Alamat.Provinsi  = DropDownListProvinsi.SelectedItem.Text;
                    Alamat.Kota      = DropDownListKota.SelectedItem.Text;
                    Alamat.Kecamatan = DropDownListKecamatan.SelectedItem.Text;

                    //Keterangan
                    //BiayaPengiriman
                    //TeleponLain
                }
                else
                {
                    Data.TBAlamats.Add(new TBAlamat
                    {
                        //IDAlamat
                        //IDPelanggan
                        //IDNegara
                        //IDProvinsi
                        //IDKota

                        NamaLengkap   = TextBoxNamaLengkap.Text,
                        AlamatLengkap = TextBoxAlamat.Text,
                        KodePos       = TextBoxKodePos.Text,
                        Handphone     = TextBoxNomorTelepon.Text,

                        Negara    = DropDownListNegara.SelectedItem.Text,
                        Provinsi  = DropDownListProvinsi.SelectedItem.Text,
                        Kota      = DropDownListKota.SelectedItem.Text,
                        Kecamatan = DropDownListKecamatan.SelectedItem.Text,

                        //Keterangan
                        //BiayaPengiriman
                        //TeleponLain
                    });
                }

                db.SubmitChanges();

                //MENCARI TRANSAKSI SESSION
                var TransaksiECommerce = db.TBTransaksiECommerces
                                         .FirstOrDefault(item => item.IDPelanggan == Pelanggan.IDPelanggan);

                var TotalBerat = TransaksiECommerce.TBTransaksiECommerceDetails
                                 .Sum(item => item.Quantity * item.TBStokProduk.TBKombinasiProduk.Berat).Value;

                TotalBerat = TotalBerat * 1000; //KONVERSI KE GRAM

                //REQUEST DATA BIAYA
                using (WebClient webClient = new WebClient())
                {
                    var Values = new NameValueCollection();
                    Values["key"] = "4fd02ed39a703a1d052da67aebdf8d2d";

                    Values["origin"]     = "23";
                    Values["originType"] = "subdistrict";

                    Values["destination"]     = "23";
                    Values["destinationType"] = "subdistrict";

                    Values["weight"]  = TotalBerat.ToString(); //GRAM
                    Values["courier"] = "jne:jnt:pos:tiki";    // //jne, pos, tiki, rpx, esl, pcp, pandu, wahana, sicepat, jnt, pahala, cahaya, sap, jet, indah, dse, slis, first, ncs, star, nss

                    var Respose = webClient.UploadValues(new Uri("https://pro.rajaongkir.com/api/cost"), Values);

                    string Result = Encoding.Default.GetString(Respose);

                    var ResultJson = JsonConvert.DeserializeObject <RajaOngkir_Biaya.Rootobject>(Result);

                    List <string> ListKurir = new List <string>();

                    foreach (var item in ResultJson.rajaongkir.results)
                    {
                        //"code":"jne",
                        //"name":"Jalur Nugraha Ekakurir (JNE)",

                        if (item.costs.Count() > 0)
                        {
                            foreach (var item2 in item.costs)
                            {
                                //"service":"OKE",
                                //"description":"Ongkos Kirim Ekonomis",

                                if (item2.cost.Count() > 0)
                                {
                                    foreach (var item3 in item2.cost)
                                    {
                                        //"value":26000,
                                        //"etd":"6-7",
                                        //"note":""

                                        ListKurir.Add(item.name + " - " + item2.description + " " + item3.value.ToFormatHarga());
                                    }
                                }
                            }
                        }
                    }

                    RadioButtonListKurir.DataSource = ListKurir;
                    RadioButtonListKurir.DataBind();
                }
            }
            else
            {
                Response.Redirect("_Cart.aspx");
            }

            //LOAD DATA PELANGGAN
            LiteralNamaLengkap.Text  = TextBoxNamaLengkap.Text;
            LiteralAlamat.Text       = TextBoxAlamat.Text;
            LiteralKecamatan.Text    = DropDownListKecamatan.SelectedItem.Text;
            LiteralKota.Text         = DropDownListKota.SelectedItem.Text;
            LiteralProvinsi.Text     = DropDownListProvinsi.SelectedItem.Text;
            LiteralKodePos.Text      = TextBoxKodePos.Text;
            LiteralNegara.Text       = DropDownListNegara.SelectedItem.Text;
            LiteralNomorTelepon.Text = TextBoxNomorTelepon.Text;
        }
    }
Пример #10
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                //VALIDASI STOK PRODUK
                ValidasiStokProdukTransaksi(db);

                //PROVINSI
                DropDownListProvinsi.DataSource     = db.TBKurirProvinsis.OrderBy(item => item.Nama).ToArray();
                DropDownListProvinsi.DataValueField = "IDKurirProvinsi";
                DropDownListProvinsi.DataTextField  = "Nama";
                DropDownListProvinsi.DataBind();
                DropDownListProvinsi.Items.Insert(0, new ListItem {
                    Selected = true, Text = "- Pilih Provinsi -", Value = "0"
                });

                PelangganLogin Pelanggan = (PelangganLogin)Session["PelangganLogin"];

                var Data = db.TBPelanggans
                           .FirstOrDefault(item => item.IDPelanggan == Pelanggan.IDPelanggan);

                if (Data != null)
                {
                    TextBoxNamaLengkap.Text  = Data.NamaLengkap;
                    TextBoxAlamatEmail.Text  = Data.Email;
                    TextBoxNomorTelepon.Text = Data.Handphone;

                    var Alamat = Data.TBAlamats
                                 .OrderByDescending(item => item.IDAlamat)
                                 .FirstOrDefault();

                    if (Alamat != null)
                    {
                        TextBoxAlamat.Text  = Alamat.AlamatLengkap;
                        TextBoxKodePos.Text = Alamat.KodePos;
                    }

                    //MENCARI TRANSAKSI SESSION
                    var TransaksiECommerceDetail = db.TBTransaksiECommerceDetails
                                                   .Where(item => item.TBTransaksiECommerce.IDPelanggan == Pelanggan.IDPelanggan);

                    if (TransaksiECommerceDetail.Count() > 0)
                    {
                        RepeaterCart.DataSource = TransaksiECommerceDetail
                                                  .Select(item => new
                        {
                            item.IDTransaksiECommerceDetail,
                            Foto = "/images/cover/" + item.TBStokProduk.TBKombinasiProduk.IDProduk + ".jpg",
                            item.TBStokProduk.TBKombinasiProduk.Nama,
                            item.Quantity,
                            Harga = item.TBStokProduk.HargaJual,
                            Total = (item.Quantity * item.TBStokProduk.HargaJual)
                        })
                                                  .ToArray();
                        RepeaterCart.DataBind();
                    }
                    else
                    {
                        Response.Redirect("_Cart.aspx");
                    }
                }
                else
                {
                    Response.Redirect("_Cart.aspx");
                }
            }
        }
    }
Пример #11
0
    protected void ButtonMulai_Click(object sender, EventArgs e)
    {
        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            Pelanggan_Class ClassPelanggan = new Pelanggan_Class(db);

            var Pelanggan = ClassPelanggan.Cari(TextBoxEmail.Text, TextBoxHandphone.Text);

            if (Pelanggan != null)
            {
                ClassPelanggan.Ubah(
                    IDPelanggan: Pelanggan.IDPelanggan,
                    NamaLengkap: TextBoxNama.Text,
                    Email: TextBoxEmail.Text,
                    Handphone: Pengaturan.InputHandphone(TextBoxHandphone.Text)
                    );
            }
            else
            {
                ClassPelanggan.Tambah(
                    IDGrupPelanggan: (int)EnumGrupPelanggan.Customer,
                    IDPenggunaPIC: (int)EnumPengguna.RendyHerdiawan,
                    NamaLengkap: TextBoxNama.Text,
                    Username: "",
                    Password: "",
                    Email: TextBoxEmail.Text,
                    Handphone: Pengaturan.InputHandphone(TextBoxHandphone.Text),
                    TeleponLain: "",
                    TanggalLahir: DateTime.Now,
                    Deposit: 0,
                    Catatan: "",
                    _IsActive: true
                    );
            }

            db.SubmitChanges();

            //MEMBUAT SESSION PELANGGAN
            PelangganLogin pelangganLogin = new PelangganLogin(Pelanggan._IDWMS);

            Session["PelangganLogin"] = pelangganLogin;

            int  nomor  = LabelNomor.Text.ToInt() + 1;
            bool status = true;

            while (status)
            {
                //MENCARI PERTANYAAN PERTAMA
                var Pertanyaan = db.TBSoalPertanyaans.FirstOrDefault(item => item.IDSoal == Request.QueryString["id"].ToInt() && item.Nomor == nomor);

                if (Pertanyaan != null)
                {
                    if (db.TBSoalJawabanPelanggans.FirstOrDefault(item => item.IDPelanggan == pelangganLogin.IDPelanggan && item.TBSoalJawaban.IDSoalPertanyaan == Pertanyaan.IDSoalPertanyaan) != null)
                    {
                        nomor++;
                    }
                    else
                    {
                        LabelNomor.Text      = Pertanyaan.Nomor.ToString();
                        LabelPertanyaan.Text = Pertanyaan.Isi;

                        RadioButtonListJawaban.DataSource     = Pertanyaan.TBSoalJawabans.ToArray();
                        RadioButtonListJawaban.DataValueField = "IDSoalJawaban";
                        RadioButtonListJawaban.DataTextField  = "Isi";
                        RadioButtonListJawaban.DataBind();

                        MultiViewSurvei.ActiveViewIndex = 1;
                        status = false;
                    }
                }
                else
                {
                    MultiViewSurvei.ActiveViewIndex = 2;
                    status = false;
                }
            }
        }
    }
Пример #12
0
    protected void ButtonSelanjutnya_Click(object sender, EventArgs e)
    {
        if (RadioButtonListJawaban.SelectedItem != null)
        {
            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                //MENYIMPAN JAWABAN PELANGGAN
                PelangganLogin pelangganLogin = (PelangganLogin)Session["PelangganLogin"];

                //MENCARI APAKAH SUDAH PERNAH MENJAWAB SEBELUMNYA
                TBSoalJawabanPelanggan soalJawabanPelanggan = db.TBSoalJawabanPelanggans
                                                              .FirstOrDefault(item =>
                                                                              item.IDPelanggan == pelangganLogin.IDPelanggan &&
                                                                              item.IDSoalJawaban == int.Parse(RadioButtonListJawaban.SelectedValue));

                if (soalJawabanPelanggan != null)
                {
                    soalJawabanPelanggan.IDSoalJawaban = int.Parse(RadioButtonListJawaban.SelectedValue);
                }
                else
                {
                    db.TBSoalJawabanPelanggans.InsertOnSubmit(new TBSoalJawabanPelanggan
                    {
                        IDPelanggan   = pelangganLogin.IDPelanggan,
                        IDSoalJawaban = RadioButtonListJawaban.SelectedValue.ToInt()
                    });
                }

                db.SubmitChanges();

                int  nomor  = LabelNomor.Text.ToInt() + 1;
                bool status = true;

                while (status)
                {
                    TBSoalPertanyaan Pertanyaan = db.TBSoalPertanyaans.FirstOrDefault(item => item.IDSoal == Request.QueryString["id"].ToInt() && item.Nomor == nomor);

                    if (Pertanyaan != null)
                    {
                        if (db.TBSoalJawabanPelanggans.FirstOrDefault(item => item.IDPelanggan == pelangganLogin.IDPelanggan && item.TBSoalJawaban.IDSoalPertanyaan == Pertanyaan.IDSoalPertanyaan) != null)
                        {
                            nomor++;
                        }
                        else
                        {
                            LabelNomor.Text      = Pertanyaan.Nomor.ToString();
                            LabelPertanyaan.Text = Pertanyaan.Isi;

                            RadioButtonListJawaban.DataSource     = Pertanyaan.TBSoalJawabans.ToArray();
                            RadioButtonListJawaban.DataValueField = "IDSoalJawaban";
                            RadioButtonListJawaban.DataTextField  = "Isi";
                            RadioButtonListJawaban.DataBind();

                            status = false;
                        }
                    }
                    else
                    {
                        MultiViewSurvei.ActiveViewIndex = 2;
                        status = false;
                    }
                }
            }
        }
    }
Пример #13
0
    protected void ButtonProsesPemesanan_Click(object sender, EventArgs e)
    {
        if (RadioButtonListJenisPembayaran.SelectedValue == "")
        {
            LiteralWarningPilihMetodePembayaran.Text = "Metode Pembayaran belum dipilih";
            PembayaranValidasi.Visible = true;
            return;
        }
        else
        {
            LiteralWarningPilihMetodePembayaran.Text = "";
            PembayaranValidasi.Visible = false;
        }


        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            //VALIDASI STOK PRODUK
            ValidasiStokProdukTransaksi(db);

            PelangganLogin Pelanggan = (PelangganLogin)Session["PelangganLogin"];

            //MENCARI TRANSAKSI SESSION
            var TransaksiECommerce = db.TBTransaksiECommerces
                                     .FirstOrDefault(item => item.IDPelanggan == Pelanggan.IDPelanggan);

            //INSERT TRANSAKSI
            Transaksi_Class Transaksi = new Transaksi_Class((int)EnumPengguna.RendyHerdiawan, 1, DateTime.Now);

            Transaksi.IDJenisTransaksi = (int)EnumJenisTransaksi.ECommerce;

            foreach (var item in TransaksiECommerce.TBTransaksiECommerceDetails)
            {
                int IDDetailTransaksi = Transaksi.TambahDetailTransaksi(item.TBStokProduk.IDKombinasiProduk, item.Quantity);

                if (item.TBStokProduk.DiscountStore != 0)
                {
                    Transaksi.UbahPotonganHargaJualProduk(IDDetailTransaksi, item.TBStokProduk.DiscountStore.ToFormatHarga());
                }
            }

            Transaksi.PengaturanPelanggan(Pelanggan.IDPelanggan);
            Transaksi.BiayaPengiriman = RadioButtonListKurir.SelectedValue.ToDecimal();

            Transaksi.IDStatusTransaksi = (int)EnumStatusTransaksi.AwaitingPayment;
            Transaksi.StatusPrint       = true;

            Transaksi.ConfirmTransaksi(db);

            //KIRIM EMAIL NOTIFIKASI
            using (StreamReader reader = new StreamReader(HttpContext.Current.Server.MapPath("/frontend/assets/email-template/awaiting-payment.html")))
            {
                string body       = "";
                string listProduk = "";
                body = reader.ReadToEnd();
                body = body.Replace("{nama_customer}", TransaksiECommerce.TBPelanggan.NamaLengkap);
                body = body.Replace("{nomor_order}", Transaksi.IDTransaksi);
                foreach (var item in TransaksiECommerce.TBTransaksiECommerceDetails)
                {
                    listProduk += "<tr><td>" + item.TBStokProduk.TBKombinasiProduk.Nama + "</td><td>" + item.TBStokProduk.HargaJual.ToFormatHarga() + "</td><td>" + item.Quantity + "</td><td style='text-align:right;'>" + (item.Quantity * item.TBStokProduk.HargaJual).ToFormatHarga() + "</td></tr>";
                }
                body = body.Replace("{list_produk}", listProduk);
                body = body.Replace("{subtotal}", Transaksi.Subtotal.ToFormatHarga());
                body = body.Replace("{biaya_pengiriman}", Transaksi.BiayaPengiriman.ToString().ToFormatHarga());
                body = body.Replace("{grand_total}", Transaksi.GrandTotal.ToFormatHarga());
                body = body.Replace("{nama_toko}", "Trendsetter");
                body = body.Replace("{logo_email}", "http://ecommerce.wit.co.id/assets/images/email_logo/email_logo.png");
                body = body.Replace("{url_konfirmasi}", "http://wit.co.id");
                body = body.Replace("{url_website}", "http://localhost:54517/");
                SendEmail(TransaksiECommerce.TBPelanggan.Email, "Trendsetter", "Order Notification", body);
            }

            //MENGHAPUS DATA TRANSAKSI ECOMMERCE
            db.TBTransaksiECommerceDetails.DeleteAllOnSubmit(TransaksiECommerce.TBTransaksiECommerceDetails);
            db.TBTransaksiECommerces.DeleteOnSubmit(TransaksiECommerce);

            db.SubmitChanges();

            Response.Redirect("Thankyou.aspx?order=" + Transaksi.IDWMSTransaksi);
        }
    }