protected void RepeaterJenisBiayaProduksi_ItemCommand1(object source, RepeaterCommandEventArgs e)
    {
        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            if (e.CommandName == "Hapus")
            {
                db.TBJenisBiayaProduksis.DeleteOnSubmit(db.TBJenisBiayaProduksis.FirstOrDefault(item => item.IDJenisBiayaProduksi == e.CommandArgument.ToInt()));
                db.SubmitChanges();

                LoadData(db, db.TBBahanBakus.FirstOrDefault(item => item.IDBahanBaku == Request.QueryString["id"].ToInt()));

                LoadDataDropDownListJenisBiayaProduksi(db);

                LoadDataJenisBiayaProduksi(db);
            }
            else if (e.CommandName == "Ubah")
            {
                TBJenisBiayaProduksi jenisBiayaProduksi = db.TBJenisBiayaProduksis.FirstOrDefault(item => item.IDJenisBiayaProduksi == e.CommandArgument.ToInt());

                if (jenisBiayaProduksi != null)
                {
                    HiddenFieldIDJenisBiayaProduksi.Value = jenisBiayaProduksi.IDJenisBiayaProduksi.ToString();
                    TextBoxNamaJenisBiayaProduksi.Text    = jenisBiayaProduksi.Nama;

                    ButtonOkJenisBiayaProduksi.Text = "Ubah";
                }
            }
        }
    }
    protected void ButtonOkJenisBiayaProduksi_Click(object sender, EventArgs e)
    {
        if (Page.IsValid)
        {
            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                if (ButtonOkJenisBiayaProduksi.Text == "Tambah")
                {
                    db.TBJenisBiayaProduksis.InsertOnSubmit(new TBJenisBiayaProduksi {
                        Nama = TextBoxNamaJenisBiayaProduksi.Text
                    });
                }
                else if (ButtonOkJenisBiayaProduksi.Text == "Ubah")
                {
                    TBJenisBiayaProduksi jenisBiayaProduksi = db.TBJenisBiayaProduksis.FirstOrDefault(item => item.IDJenisBiayaProduksi == HiddenFieldIDJenisBiayaProduksi.Value.ToInt());
                    jenisBiayaProduksi.Nama = TextBoxNamaJenisBiayaProduksi.Text;
                }

                db.SubmitChanges();

                LoadDataJenisBiayaProduksi(db);
                LoadDataDropDownListJenisBiayaProduksi(db);

                TextBoxNamaJenisBiayaProduksi.Text = string.Empty;
                ButtonOkJenisBiayaProduksi.Text    = "Tambah";
            }
        }
    }
 private TBJenisBiayaProduksi cariJenisBiayaProduksi(DataClassesDatabaseDataContext db, int iDJenisBiayaProduksi, string nama)
 {
     if (iDJenisBiayaProduksi == 0)
     {
         TBJenisBiayaProduksi jenisBiayaProduksi = new TBJenisBiayaProduksi {
             Nama = nama
         };
         db.TBJenisBiayaProduksis.InsertOnSubmit(jenisBiayaProduksi);
         return(jenisBiayaProduksi);
     }
     else
     {
         return(db.TBJenisBiayaProduksis.FirstOrDefault(item => item.IDJenisBiayaProduksi == iDJenisBiayaProduksi));
     }
 }
    protected void ButtonSimpanBiayaProduksi_Click(object sender, EventArgs e)
    {
        if (Page.IsValid)
        {
            if (Pengaturan.FormatAngkaInput(TextBoxBiayaProduksi.Text) > 0)
            {
                using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
                {
                    PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"];

                    List <StokBahanBaku_Model> komposisiProduk = (List <StokBahanBaku_Model>)ViewState["KomposisiProduk"];
                    decimal hargaPokokKomposisi = komposisiProduk.Sum(item => item.SubtotalHargaBeli);
                    List <JenisBiayaProduksi_Model> biayaProduksi = (List <JenisBiayaProduksi_Model>)ViewState["BiayaProduksi"];

                    var biaya = biayaProduksi.FirstOrDefault(item => item.Nama == TextBoxNamaJenisBiayaProduksi.Text);
                    if (biaya == null)
                    {
                        TBJenisBiayaProduksi jenisBiayaProduksi = null;

                        if (DropDownListJenisBiayaProduksi.SelectedValue == "0")
                        {
                            DropDownListJenisBiayaProduksi.Items.Insert(DropDownListJenisBiayaProduksi.Items.Count, new ListItem {
                                Text = TextBoxNamaJenisBiayaProduksi.Text, Value = TextBoxNamaJenisBiayaProduksi.Text
                            });
                        }
                        else
                        {
                            jenisBiayaProduksi = db.TBJenisBiayaProduksis.FirstOrDefault(item => item.Nama == DropDownListJenisBiayaProduksi.SelectedItem.Text);
                        }

                        JenisBiayaProduksi_Model JenisBiayaProduksi_Model = new JenisBiayaProduksi_Model
                        {
                            IDJenisBiayaProduksi = jenisBiayaProduksi == null ? 0 : jenisBiayaProduksi.IDJenisBiayaProduksi,
                            Nama = jenisBiayaProduksi == null ? TextBoxNamaJenisBiayaProduksi.Text : jenisBiayaProduksi.Nama,
                            EnumBiayaProduksi = RadioButtonListEnumBiayaProduksi.SelectedValue == "Persentase" ? (int)PilihanBiayaProduksi.Persen : (int)PilihanBiayaProduksi.Harga,
                            Persentase        = RadioButtonListEnumBiayaProduksi.SelectedValue == "Persentase" ? (Pengaturan.FormatAngkaInput(TextBoxBiayaProduksi.Text) / 100) : 0,
                            Nominal           = RadioButtonListEnumBiayaProduksi.SelectedValue == "Persentase" ? 0 : Pengaturan.FormatAngkaInput(TextBoxBiayaProduksi.Text)
                        };

                        biayaProduksi.Add(JenisBiayaProduksi_Model);
                    }
                    else
                    {
                        biaya.EnumBiayaProduksi = RadioButtonListEnumBiayaProduksi.SelectedValue == "Persentase" ? (int)PilihanBiayaProduksi.Persen : (int)PilihanBiayaProduksi.Harga;
                        biaya.Persentase        = RadioButtonListEnumBiayaProduksi.SelectedValue == "Persentase" ? (Pengaturan.FormatAngkaInput(TextBoxBiayaProduksi.Text) / 100) : 0;
                        biaya.Nominal           = RadioButtonListEnumBiayaProduksi.SelectedValue == "Persentase" ? 0 : Pengaturan.FormatAngkaInput(TextBoxBiayaProduksi.Text);
                    }

                    LoadKomposisiProduk(komposisiProduk, biayaProduksi);
                    LoadBiayaProduksi(komposisiProduk, biayaProduksi);

                    ViewState["KomposisiProduk"] = komposisiProduk;
                    ViewState["BiayaProduksi"]   = biayaProduksi;
                }
            }
        }

        CollapseBiayaProduksi.Attributes.Add("class", "collapse in");
        CollapseKomposisiProduk.Attributes.Add("class", "collapse");
        TextBoxBiayaProduksi.Text = string.Empty;
        TextBoxBiayaProduksi.Focus();
    }