private void LoadProyeksi(DataClassesDatabaseDataContext db, string IDProyeksi, string level) { PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; TextBoxIDProyeksi.Text = IDProyeksi; TextBoxPegawai.Text = pengguna.NamaLengkap; TBProyeksiKomposisi[] proyeksiKomposisi = null; if (!string.IsNullOrEmpty(level)) { proyeksiKomposisi = db.TBProyeksiKomposisis.Where(item => item.IDProyeksi == IDProyeksi && item.LevelProduksi == level.ToInt() && item.BahanBakuDasar == false).OrderBy(data => data.TBBahanBaku.Nama).ToArray(); } else { proyeksiKomposisi = db.TBProyeksiKomposisis.Where(item => item.IDProyeksi == IDProyeksi && item.BahanBakuDasar == false).OrderBy(data => data.TBBahanBaku.Nama).ToArray(); } TBStokBahanBaku[] daftarStokBahanBaku = db.TBStokBahanBakus.AsEnumerable().Where(item => item.IDTempat == pengguna.IDTempat && proyeksiKomposisi.Any(data => data.IDBahanBaku == item.IDBahanBaku)).OrderBy(item => item.TBBahanBaku.Nama).ToArray(); DropDownListStokBahanBaku.DataSource = daftarStokBahanBaku.Select(item => new { item.IDStokBahanBaku, item.TBBahanBaku.Nama }).ToArray(); DropDownListStokBahanBaku.DataTextField = "Nama"; DropDownListStokBahanBaku.DataValueField = "IDStokBahanBaku"; DropDownListStokBahanBaku.DataBind(); List <POProduksiDetail_Model> ViewStateListDetail = (List <POProduksiDetail_Model>)ViewState["ViewStateListDetail"]; foreach (var item in proyeksiKomposisi.Where(item => item.Sisa > 0)) { TBStokBahanBaku stokBahanBaku = daftarStokBahanBaku.FirstOrDefault(data => data.IDBahanBaku == item.IDBahanBaku); POProduksiDetail_Model detail = new POProduksiDetail_Model(); detail.IDBahanBaku = stokBahanBaku.TBBahanBaku.IDBahanBaku; detail.IDSatuan = stokBahanBaku.TBBahanBaku.IDSatuanKonversi; detail.IDStokBahanBaku = stokBahanBaku.IDStokBahanBaku; detail.Kode = stokBahanBaku.TBBahanBaku.KodeBahanBaku; detail.BahanBaku = stokBahanBaku.TBBahanBaku.Nama; detail.Satuan = stokBahanBaku.TBBahanBaku.TBSatuan1.Nama; detail.HargaPokokKomposisi = 0; detail.BiayaTambahan = 0; detail.TotalHPP = detail.BiayaTambahan + detail.HargaPokokKomposisi; detail.Harga = 0; detail.PotonganHarga = 0; detail.TotalHarga = detail.Harga - detail.PotonganHarga; detail.Jumlah = item.Sisa / stokBahanBaku.TBBahanBaku.Konversi.Value; detail.Sisa = detail.Jumlah; ViewStateListDetail.Add(detail); } ViewState["ViewStateListDetail"] = ViewStateListDetail; LabelSatuan.Text = "/" + daftarStokBahanBaku.FirstOrDefault(item => item.IDStokBahanBaku == DropDownListStokBahanBaku.SelectedValue.ToInt()).TBBahanBaku.TBSatuan1.Nama; PengaturanHPPKomposisi(db); LoadData(); }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; TextBoxTanggal.Text = DateTime.Now.ToString("d MMMM yyyy"); DropDownListSupplier.DataSource = db.TBSuppliers.OrderBy(item => item.Nama).ToArray(); DropDownListSupplier.DataTextField = "Nama"; DropDownListSupplier.DataValueField = "IDSupplier"; DropDownListSupplier.DataBind(); DropDownListSupplier.Items.Insert(0, new ListItem { Text = "-Pilih Supplier-", Value = "0" }); DropDownListPenerimaan.Items.Insert(0, new ListItem { Text = "-Tanpa Penerimaan-", Value = "-" }); TBStokBahanBaku[] daftarStokBahanBaku = db.TBStokBahanBakus.Where(item => item.IDTempat == pengguna.IDTempat).ToArray(); DropDownListStokBahanBaku.DataSource = daftarStokBahanBaku.Select(item => new { item.IDStokBahanBaku, item.TBBahanBaku.Nama }).OrderBy(item => item.Nama).ToArray(); DropDownListStokBahanBaku.DataTextField = "Nama"; DropDownListStokBahanBaku.DataValueField = "IDStokBahanBaku"; DropDownListStokBahanBaku.DataBind(); if (DropDownListStokBahanBaku.Items.Count == 0) { ButtonSimpanDetail.Enabled = false; ButtonSimpan.Enabled = false; } else { TBStokBahanBaku stokBahanBaku = daftarStokBahanBaku.FirstOrDefault(item => item.IDStokBahanBaku == DropDownListStokBahanBaku.SelectedValue.ToInt()); TextBoxHarga.Text = (stokBahanBaku.HargaBeli.Value * stokBahanBaku.TBBahanBaku.Konversi.Value).ToFormatHarga(); LabelSatuan.Text = "/" + stokBahanBaku.TBBahanBaku.TBSatuan1.Nama; } ViewState["ViewStateListDetail"] = new List <StokBahanBaku_Model>(); } } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; TextBoxIDProyeksi.Text = string.Empty; TextBoxPegawai.Text = pengguna.NamaLengkap; TextBoxTanggal.Text = DateTime.Now.ToString("d MMMM yyyy"); TextBoxTanggalPengiriman.Text = DateTime.Now.ToString("d MMMM yyyy"); Pengguna dmPengguna = new Pengguna(); DropDownListPenggunaPIC.DataSource = dmPengguna.CariBawahanSemua(db.TBPenggunas.FirstOrDefault(item => item.IDPengguna == pengguna.IDPengguna)).OrderBy(item => item.LevelJabatan).ThenBy(item => item.NamaLengkap); DropDownListPenggunaPIC.DataTextField = "NamaLengkap"; DropDownListPenggunaPIC.DataValueField = "IDPengguna"; DropDownListPenggunaPIC.DataBind(); DropDownListPenggunaPIC.Items.Insert(0, new ListItem { Text = pengguna.NamaLengkap, Value = pengguna.IDPengguna.ToString() }); TBBahanBaku[] daftarBahanBaku = db.TBBahanBakus.OrderBy(item => item.Nama).ToArray(); if (daftarBahanBaku.Count() == 0) { ButtonSimpanBahanBaku.Enabled = false; } else { TBBahanBaku bahanBaku = daftarBahanBaku.FirstOrDefault(); DropDownListBahanBaku.DataSource = daftarBahanBaku; DropDownListBahanBaku.DataTextField = "Nama"; DropDownListBahanBaku.DataValueField = "IDBahanBaku"; DropDownListBahanBaku.DataBind(); DropDownListSatuan.Items.Clear(); DropDownListSatuan.DataBind(); DropDownListSatuan.Items.Insert(0, new ListItem { Text = bahanBaku.TBSatuan1.Nama, Value = bahanBaku.IDSatuanKonversi.ToString() }); if (bahanBaku.TBSatuan != bahanBaku.TBSatuan1) { DropDownListSatuan.Items.Insert(1, new ListItem { Text = bahanBaku.TBSatuan.Nama, Value = bahanBaku.IDSatuan.ToString() }); } HiddenFieldHargaBeli.Value = bahanBaku.TBStokBahanBakus.FirstOrDefault(item => item.IDTempat == pengguna.IDTempat).HargaBeli.ToString(); HiddenFieldKonversi.Value = bahanBaku.Konversi.ToString(); } TBJenisBiayaProduksi[] daftarjenisBiayaProduksi = db.TBJenisBiayaProduksis.OrderBy(item => item.Nama).ToArray(); if (daftarjenisBiayaProduksi.Count() == 0) { ButtonSimpanBiayaTambahan.Enabled = false; } else { DropDownListJenisBiayaProduksi.DataSource = db.TBJenisBiayaProduksis.Select(item => new { item.IDJenisBiayaProduksi, item.Nama }).OrderBy(item => item.Nama).ToArray(); DropDownListJenisBiayaProduksi.DataTextField = "Nama"; DropDownListJenisBiayaProduksi.DataValueField = "IDJenisBiayaProduksi"; DropDownListJenisBiayaProduksi.DataBind(); } ViewState["ViewStateListDetail"] = new List <POProduksiDetail_Model>(); ViewState["ViewStateListKomposisi"] = new List <POProduksiKomposisi_Model>(); ViewState["ViewStateListBiayaTambahan"] = new List <POProduksiBiayaTambahan_Model>(); if (!string.IsNullOrEmpty(Request.QueryString["baru"])) { LoadPOLama(db, Request.QueryString["baru"]); } else if (!string.IsNullOrEmpty(Request.QueryString["edit"])) { LoadPOLama(db, Request.QueryString["edit"]); } else if (!string.IsNullOrEmpty(Request.QueryString["proy"]) && !string.IsNullOrEmpty(Request.QueryString["level"])) { LoadProyeksi(db, Request.QueryString["proy"], Request.QueryString["level"]); } else { TBStokBahanBaku[] daftarStokBahanBaku = db.TBStokBahanBakus.Where(item => item.IDTempat == pengguna.IDTempat).ToArray(); DropDownListStokBahanBaku.DataSource = daftarStokBahanBaku.Select(item => new { item.IDStokBahanBaku, item.TBBahanBaku.Nama }).OrderBy(item => item.Nama).ToArray(); DropDownListStokBahanBaku.DataTextField = "Nama"; DropDownListStokBahanBaku.DataValueField = "IDStokBahanBaku"; DropDownListStokBahanBaku.DataBind(); if (DropDownListStokBahanBaku.Items.Count == 0) { ButtonSimpanDetail.Enabled = false; ButtonSimpan.Enabled = false; } else { LabelSatuan.Text = "/" + daftarStokBahanBaku.FirstOrDefault(item => item.IDStokBahanBaku == DropDownListStokBahanBaku.SelectedValue.ToInt()).TBBahanBaku.TBSatuan1.Nama; } } } } }
private void LoadPOLama(DataClassesDatabaseDataContext db, string IDPOProduksiBahanBaku) { PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; TBPOProduksiBahanBaku poProduksiBahanBaku = db.TBPOProduksiBahanBakus.FirstOrDefault(item => item.IDPOProduksiBahanBaku == IDPOProduksiBahanBaku); TextBoxIDProyeksi.Text = poProduksiBahanBaku.IDProyeksi != null ? poProduksiBahanBaku.IDProyeksi : string.Empty; TextBoxPegawai.Text = pengguna.NamaLengkap; DropDownListPenggunaPIC.SelectedValue = poProduksiBahanBaku.IDPenggunaPIC.ToString(); TextBoxTanggal.Text = poProduksiBahanBaku.Tanggal.ToString("d MMMM yyyy"); TextBoxTanggalPengiriman.Text = poProduksiBahanBaku.TanggalPengiriman != null?poProduksiBahanBaku.TanggalPengiriman.Value.ToString("d MMMM yyyy") : DateTime.Now.ToString("d MMMM yyyy"); TBStokBahanBaku[] daftarStokBahanBaku = null; if (TextBoxIDProyeksi.Text != string.Empty) { if (poProduksiBahanBaku.LevelProduksi != null) { TBProyeksiKomposisi[] proyeksiKomposisi = db.TBProyeksiKomposisis.Where(item => item.IDProyeksi == TextBoxIDProyeksi.Text && item.LevelProduksi == poProduksiBahanBaku.LevelProduksi && item.BahanBakuDasar == false).OrderBy(data => data.TBBahanBaku.Nama).ToArray(); daftarStokBahanBaku = db.TBStokBahanBakus.AsEnumerable().Where(item => item.IDTempat == pengguna.IDTempat && proyeksiKomposisi.Any(data => data.IDBahanBaku == item.IDBahanBaku)).OrderBy(item => item.TBBahanBaku.Nama).ToArray(); } else { TBProyeksiKomposisi[] proyeksiKomposisi = db.TBProyeksiKomposisis.Where(item => item.IDProyeksi == TextBoxIDProyeksi.Text && item.BahanBakuDasar == false).OrderBy(data => data.TBBahanBaku.Nama).ToArray(); daftarStokBahanBaku = db.TBStokBahanBakus.AsEnumerable().Where(item => item.IDTempat == pengguna.IDTempat && proyeksiKomposisi.Any(data => data.IDBahanBaku == item.IDBahanBaku)).OrderBy(item => item.TBBahanBaku.Nama).ToArray(); } } else { daftarStokBahanBaku = db.TBStokBahanBakus.Where(item => item.IDTempat == pengguna.IDTempat).ToArray(); } DropDownListStokBahanBaku.DataSource = daftarStokBahanBaku.Select(item => new { item.IDStokBahanBaku, item.TBBahanBaku.Nama }); DropDownListStokBahanBaku.DataTextField = "Nama"; DropDownListStokBahanBaku.DataValueField = "IDStokBahanBaku"; DropDownListStokBahanBaku.DataBind(); List <POProduksiDetail_Model> ViewStateListDetail = (List <POProduksiDetail_Model>)ViewState["ViewStateListDetail"]; foreach (var item in poProduksiBahanBaku.TBPOProduksiBahanBakuDetails) { TBStokBahanBaku stokBahanBaku = daftarStokBahanBaku.FirstOrDefault(data => data.IDBahanBaku == item.IDBahanBaku); POProduksiDetail_Model detail = new POProduksiDetail_Model(); detail.IDBahanBaku = stokBahanBaku.TBBahanBaku.IDBahanBaku; detail.IDSatuan = item.IDSatuan; detail.IDStokBahanBaku = stokBahanBaku.IDStokBahanBaku; detail.Kode = stokBahanBaku.TBBahanBaku.KodeBahanBaku; detail.BahanBaku = stokBahanBaku.TBBahanBaku.Nama; detail.Satuan = item.TBSatuan.Nama; detail.HargaPokokKomposisi = 0; detail.BiayaTambahan = 0; detail.TotalHPP = detail.BiayaTambahan + detail.HargaPokokKomposisi; detail.Harga = 0; detail.PotonganHarga = 0; detail.TotalHarga = detail.Harga - detail.PotonganHarga; detail.Jumlah = item.Jumlah; detail.Sisa = detail.Jumlah; ViewStateListDetail.Add(detail); } ViewState["ViewStateListDetail"] = ViewStateListDetail; LabelSatuan.Text = "/" + daftarStokBahanBaku.FirstOrDefault(item => item.IDStokBahanBaku == DropDownListStokBahanBaku.SelectedValue.ToInt()).TBBahanBaku.TBSatuan1.Nama; RadioButtonListStatusHPP.SelectedValue = poProduksiBahanBaku.EnumJenisHPP.ToString(); if (RadioButtonListStatusHPP.SelectedValue == ((int)PilihanEnumJenisHPP.Komposisi).ToString()) { PengaturanHPPKomposisi(db); } else { List <POProduksiKomposisi_Model> ViewStateListKomposisi = (List <POProduksiKomposisi_Model>)ViewState["ViewStateListKomposisi"]; List <POProduksiBiayaTambahan_Model> ViewStateListBiayaTambahan = (List <POProduksiBiayaTambahan_Model>)ViewState["ViewStateListBiayaTambahan"]; ViewStateListKomposisi.AddRange(poProduksiBahanBaku.TBPOProduksiBahanBakuKomposisis.Select(item => new POProduksiKomposisi_Model { IDBahanBaku = item.IDBahanBaku, IDSatuan = item.IDSatuan, BahanBaku = item.TBBahanBaku.Nama, Satuan = item.TBSatuan.Nama, HargaBeli = item.HargaBeli, JumlahKebutuhan = item.Kebutuhan, JumlahSisa = 0, JumlahKurang = 0 })); ViewState["ViewStateListKomposisi"] = ViewStateListKomposisi; ViewStateListBiayaTambahan.AddRange(poProduksiBahanBaku.TBPOProduksiBahanBakuBiayaTambahans.Select(item => new POProduksiBiayaTambahan_Model { IDJenisBiayaProduksi = item.IDJenisBiayaProduksi, Nama = item.TBJenisBiayaProduksi.Nama, JumlahProduksi = 1, Biaya = item.Nominal })); ViewState["ViewStateListBiayaTambahan"] = ViewStateListBiayaTambahan; PengaturanHPPRataRata(); } TextBoxKeterangan.Text = poProduksiBahanBaku.Keterangan; LoadData(); }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; TextBoxIDProyeksi.Text = string.Empty; TextBoxPegawai.Text = pengguna.NamaLengkap; TextBoxTanggal.Text = DateTime.Now.ToString("d MMMM yyyy"); TextBoxTanggalJatuhTempo.Text = DateTime.Now.ToString("d MMMM yyyy"); TextBoxTanggalPengiriman.Text = DateTime.Now.ToString("d MMMM yyyy"); Pengguna dmPengguna = new Pengguna(); DropDownListPenggunaPIC.DataSource = dmPengguna.CariBawahanSemua(db.TBPenggunas.FirstOrDefault(item => item.IDPengguna == pengguna.IDPengguna)).OrderBy(item => item.LevelJabatan).ThenBy(item => item.NamaLengkap); DropDownListPenggunaPIC.DataTextField = "NamaLengkap"; DropDownListPenggunaPIC.DataValueField = "IDPengguna"; DropDownListPenggunaPIC.DataBind(); DropDownListPenggunaPIC.Items.Insert(0, new ListItem { Text = pengguna.NamaLengkap, Value = pengguna.IDPengguna.ToString() }); DropDownListSupplier.DataSource = db.TBSuppliers.OrderBy(item => item.Nama).ToArray(); DropDownListSupplier.DataTextField = "Nama"; DropDownListSupplier.DataValueField = "IDSupplier"; DropDownListSupplier.DataBind(); DropDownListSupplier.Items.Insert(0, new ListItem { Text = "-Pilih Supplier-", Value = "0" }); ViewState["ViewStateListDetail"] = new List <POProduksiDetail_Model>(); if (!string.IsNullOrEmpty(Request.QueryString["baru"])) { LoadPOLama(db, Request.QueryString["baru"]); } else if (!string.IsNullOrEmpty(Request.QueryString["edit"])) { LoadPOLama(db, Request.QueryString["edit"]); } else if (!string.IsNullOrEmpty(Request.QueryString["proy"])) { LoadProyeksi(db, Request.QueryString["proy"]); } else { TBStokBahanBaku[] daftarStokBahanBaku = db.TBStokBahanBakus.Where(item => item.IDTempat == pengguna.IDTempat).ToArray(); DropDownListStokBahanBaku.DataSource = daftarStokBahanBaku.Select(item => new { item.IDStokBahanBaku, item.TBBahanBaku.Nama }).OrderBy(item => item.Nama).ToArray(); DropDownListStokBahanBaku.DataTextField = "Nama"; DropDownListStokBahanBaku.DataValueField = "IDStokBahanBaku"; DropDownListStokBahanBaku.DataBind(); if (DropDownListStokBahanBaku.Items.Count == 0) { ButtonSimpanDetail.Enabled = false; ButtonSimpan.Enabled = false; } else { LabelSatuan.Text = "/" + daftarStokBahanBaku.FirstOrDefault(item => item.IDStokBahanBaku == DropDownListStokBahanBaku.SelectedValue.ToInt()).TBBahanBaku.TBSatuan1.Nama; } } } } }
private void LoadPOLama(DataClassesDatabaseDataContext db, string IDPOProduksiBahanBaku) { PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; TBPOProduksiBahanBaku poProduksiBahanBaku = db.TBPOProduksiBahanBakus.FirstOrDefault(item => item.IDPOProduksiBahanBaku == IDPOProduksiBahanBaku); TextBoxIDProyeksi.Text = poProduksiBahanBaku.IDProyeksi != null ? poProduksiBahanBaku.IDProyeksi : string.Empty; TextBoxPegawai.Text = pengguna.NamaLengkap; DropDownListPenggunaPIC.SelectedValue = poProduksiBahanBaku.IDPenggunaPIC.ToString(); TextBoxTanggal.Text = poProduksiBahanBaku.Tanggal.ToString("d MMMM yyyy"); TextBoxTanggalJatuhTempo.Text = poProduksiBahanBaku.TanggalJatuhTempo != null?poProduksiBahanBaku.TanggalJatuhTempo.Value.ToString("d MMMM yyyy") : DateTime.Now.ToString("d MMMM yyyy"); TextBoxTanggalPengiriman.Text = poProduksiBahanBaku.TanggalPengiriman != null?poProduksiBahanBaku.TanggalPengiriman.Value.ToString("d MMMM yyyy") : DateTime.Now.ToString("d MMMM yyyy"); DropDownListSupplier.SelectedValue = poProduksiBahanBaku.IDSupplier.ToString(); HiddenFieldTax.Value = poProduksiBahanBaku.TBSupplier.PersentaseTax.ToString(); LabelTax.Text = "Tax (" + (poProduksiBahanBaku.TBSupplier.PersentaseTax * 100).ToFormatHarga() + "%)"; TBStokBahanBaku[] daftarStokBahanBaku = null; if (TextBoxIDProyeksi.Text != string.Empty) { var proyeksiKomposisi = db.TBProyeksiKomposisis.Where(item => item.IDProyeksi == TextBoxIDProyeksi.Text && item.BahanBakuDasar == true).GroupBy(item => new { item.IDBahanBaku }).ToArray(); daftarStokBahanBaku = db.TBStokBahanBakus.AsEnumerable().Where(item => item.IDTempat == pengguna.IDTempat && proyeksiKomposisi.Any(data => data.Key.IDBahanBaku == item.IDBahanBaku)).OrderBy(item => item.TBBahanBaku.Nama).ToArray(); } else { daftarStokBahanBaku = db.TBStokBahanBakus.Where(item => item.IDTempat == pengguna.IDTempat).ToArray(); } DropDownListStokBahanBaku.DataSource = daftarStokBahanBaku.Select(item => new { item.IDStokBahanBaku, item.TBBahanBaku.Nama }); DropDownListStokBahanBaku.DataTextField = "Nama"; DropDownListStokBahanBaku.DataValueField = "IDStokBahanBaku"; DropDownListStokBahanBaku.DataBind(); List <POProduksiDetail_Model> ViewStateListDetail = (List <POProduksiDetail_Model>)ViewState["ViewStateListDetail"]; foreach (var item in poProduksiBahanBaku.TBPOProduksiBahanBakuDetails) { TBStokBahanBaku stokBahanBaku = daftarStokBahanBaku.FirstOrDefault(data => data.IDBahanBaku == item.IDBahanBaku); POProduksiDetail_Model detail = new POProduksiDetail_Model(); detail.IDBahanBaku = stokBahanBaku.TBBahanBaku.IDBahanBaku; detail.IDSatuan = item.IDSatuan; detail.IDStokBahanBaku = stokBahanBaku.IDStokBahanBaku; detail.Kode = stokBahanBaku.TBBahanBaku.KodeBahanBaku; detail.BahanBaku = stokBahanBaku.TBBahanBaku.Nama; detail.Satuan = item.TBSatuan.Nama; detail.HargaPokokKomposisi = 0; detail.BiayaTambahan = 0; detail.TotalHPP = detail.BiayaTambahan + detail.HargaPokokKomposisi; detail.Harga = item.HargaSupplier; detail.PotonganHarga = item.PotonganHargaSupplier; detail.TotalHarga = detail.Harga - detail.PotonganHarga; detail.Jumlah = item.Jumlah; detail.Sisa = detail.Jumlah; ViewStateListDetail.Add(detail); } ViewState["ViewStateListDetail"] = ViewStateListDetail; TextBoxKeterangan.Text = poProduksiBahanBaku.Keterangan; TextBoxBiayaLainLain.Text = poProduksiBahanBaku.BiayaLainLain.ToFormatHarga(); TextBoxPotonganPO.Text = poProduksiBahanBaku.PotonganPOProduksiBahanBaku.ToFormatHarga(); LoadData(); decimal subtotal = (LabelTotalSubtotal.Text.ToDecimal() + poProduksiBahanBaku.BiayaLainLain.Value - poProduksiBahanBaku.PotonganPOProduksiBahanBaku.Value); decimal tax = subtotal * HiddenFieldTax.Value.ToDecimal(); TextBoxTax.Text = tax.ToFormatHarga(); TextBoxGrandtotal.Text = (subtotal + tax).ToFormatHarga(); CariHargaSupplierVendor(); }
private void LoadProyeksi(DataClassesDatabaseDataContext db, string IDProyeksi) { PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; TextBoxIDProyeksi.Text = IDProyeksi; TextBoxPegawai.Text = pengguna.NamaLengkap; TBSupplier supplier = null; if (DropDownListSupplier.SelectedValue == "0") { HiddenFieldTax.Value = "0"; LabelTax.Text = "Tax (0%)"; } else { supplier = db.TBSuppliers.FirstOrDefault(item => item.IDSupplier == DropDownListSupplier.SelectedValue.ToInt()); HiddenFieldTax.Value = supplier.PersentaseTax.ToString(); LabelTax.Text = "Tax (" + (supplier.PersentaseTax * 100).ToFormatHarga() + "%)"; } var proyeksiKomposisi = db.TBProyeksiKomposisis.Where(item => item.IDProyeksi == IDProyeksi && item.BahanBakuDasar == true && (DropDownListSupplier.SelectedValue != "0" ? db.TBHargaSuppliers.Where(item2 => item2.IDSupplier == DropDownListSupplier.SelectedValue.ToInt()).Any(item2 => item2.TBStokBahanBaku.IDBahanBaku == item.IDBahanBaku) : true)) .GroupBy(item => new { item.TBBahanBaku }) .Select(item => new { item.Key, Sisa = item.Sum(x => x.Sisa), }).OrderBy(data => data.Key.TBBahanBaku.Nama); TBStokBahanBaku[] daftarStokBahanBaku = db.TBStokBahanBakus.AsEnumerable().Where(item => item.IDTempat == pengguna.IDTempat && proyeksiKomposisi.Any(data => data.Key.TBBahanBaku.IDBahanBaku == item.IDBahanBaku)).OrderBy(item => item.TBBahanBaku.Nama).ToArray(); DropDownListStokBahanBaku.DataSource = daftarStokBahanBaku.Select(item => new { item.IDStokBahanBaku, item.TBBahanBaku.Nama }).ToArray(); DropDownListStokBahanBaku.DataTextField = "Nama"; DropDownListStokBahanBaku.DataValueField = "IDStokBahanBaku"; DropDownListStokBahanBaku.DataBind(); List <POProduksiDetail_Model> ViewStateListDetail = (List <POProduksiDetail_Model>)ViewState["ViewStateListDetail"]; foreach (var item in proyeksiKomposisi.Where(item => item.Sisa > 0)) { TBStokBahanBaku stokBahanBaku = daftarStokBahanBaku.FirstOrDefault(data => data.IDBahanBaku == item.Key.TBBahanBaku.IDBahanBaku); POProduksiDetail_Model detail = new POProduksiDetail_Model(); detail.IDBahanBaku = stokBahanBaku.TBBahanBaku.IDBahanBaku; detail.IDSatuan = stokBahanBaku.TBBahanBaku.IDSatuanKonversi; detail.IDStokBahanBaku = stokBahanBaku.IDStokBahanBaku; detail.Kode = stokBahanBaku.TBBahanBaku.KodeBahanBaku; detail.BahanBaku = stokBahanBaku.TBBahanBaku.Nama; detail.Satuan = stokBahanBaku.TBBahanBaku.TBSatuan1.Nama; detail.HargaPokokKomposisi = 0; detail.BiayaTambahan = 0; detail.TotalHPP = detail.BiayaTambahan + detail.HargaPokokKomposisi; detail.Harga = supplier == null ? 0 : supplier.TBHargaSuppliers.FirstOrDefault(data => data.IDStokBahanBaku == stokBahanBaku.IDStokBahanBaku) == null ? 0 : supplier.TBHargaSuppliers.FirstOrDefault(data => data.IDStokBahanBaku == stokBahanBaku.IDStokBahanBaku).Harga.Value; detail.PotonganHarga = 0; detail.TotalHarga = detail.Harga - detail.PotonganHarga; detail.Jumlah = item.Sisa / stokBahanBaku.TBBahanBaku.Konversi.Value; detail.Sisa = detail.Jumlah; ViewStateListDetail.Add(detail); } ViewState["ViewStateListDetail"] = ViewStateListDetail; LoadData(); decimal subtotal = LabelTotalSubtotal.Text.ToDecimal(); decimal tax = subtotal * HiddenFieldTax.Value.ToDecimal(); TextBoxTax.Text = tax.ToFormatHarga(); TextBoxGrandtotal.Text = (subtotal + tax).ToFormatHarga(); CariHargaSupplierVendor(); }