protected void RepeaterData_ItemCommand(object source, RepeaterCommandEventArgs e) { if (e.CommandName == "Batal") { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; TBPOProduksiBahanBakuRetur poProduksiBahanBakuRetur = db.TBPOProduksiBahanBakuReturs.FirstOrDefault(item => item.IDPOProduksiBahanBakuRetur == e.CommandArgument.ToString()); poProduksiBahanBakuRetur.EnumStatusRetur = (int)EnumStatusPORetur.Batal; foreach (var item in poProduksiBahanBakuRetur.TBPOProduksiBahanBakuReturDetails) { StokBahanBaku_Class.UpdateBertambahBerkurang( db: db, tanggal: DateTime.Now, idPengguna: pengguna.IDPengguna, stokBahanBaku: item.TBStokBahanBaku, jumlahStok: item.Jumlah.Value, hargaBeli: item.HargaBeli.Value, satuanBesar: true, enumJenisPerpindahanStok: EnumJenisPerpindahanStok.TransaksiBatal, keterangan: "(" + item.TBStokBahanBaku.TBBahanBaku.Nama + ") Pembatalan Retur PO #" + e.CommandArgument.ToString()); } db.SubmitChanges(); LoadData(); } } }
protected void CheckBoxPilihRetur_CheckedChanged(object sender, EventArgs e) { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { decimal TotalRetur = 0; foreach (RepeaterItem item in RepeaterRetur.Items) { CheckBox CheckBoxPilihRetur = (CheckBox)item.FindControl("CheckBoxPilihRetur"); Label LabelIDPOProduksiBahanBakuRetur = (Label)item.FindControl("LabelIDPOProduksiBahanBakuRetur"); if (CheckBoxPilihRetur.Checked == true) { TBPOProduksiBahanBakuRetur POProduksiBahanBakuRetur = db.TBPOProduksiBahanBakuReturs.FirstOrDefault(item2 => item2.IDPOProduksiBahanBakuRetur == LabelIDPOProduksiBahanBakuRetur.Text); TotalRetur += POProduksiBahanBakuRetur.Grandtotal.Value; } } LabelTotalRetur.Text = TotalRetur.ToFormatHarga(); TextBoxTotalPenagihan.Text = (LabelTotalPenerimaan.Text.ToDecimal() - LabelTotalRetur.Text.ToDecimal() - LabelTotalDownPayment.Text.ToDecimal()).ToFormatHarga(); } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; TBStore store = db.TBStores.FirstOrDefault(); LabelNamaStore.Text = store.Nama; TBPOProduksiBahanBakuRetur dataRetur = db.TBPOProduksiBahanBakuReturs.FirstOrDefault(item => item.IDPOProduksiBahanBakuRetur == Request.QueryString["id"]); var detailRetur = dataRetur.TBPOProduksiBahanBakuReturDetails.Select(item => new { item.TBStokBahanBaku.TBBahanBaku.Nama, item.HargaRetur, item.Jumlah, item.Subtotal, Satuan = item.TBStokBahanBaku.TBBahanBaku.TBSatuan1.Nama }); RepeaterDetail.DataSource = detailRetur; RepeaterDetail.DataBind(); LabelIDReturBahanBaku.Text = dataRetur.IDPOProduksiBahanBakuRetur; LabelPengguna.Text = dataRetur.TBPengguna.NamaLengkap; LabelIDPenerimaanPOProduksiBahanBaku.Text = dataRetur.IDPenerimaanPOProduksiBahanBaku == null ? "-" : dataRetur.IDPenerimaanPOProduksiBahanBaku; LabelSupplier.Text = dataRetur.TBSupplier.Nama; LabelTanggalRetur.Text = dataRetur.TanggalRetur.ToFormatTanggalJam(); LabelIDPenagihan.Text = dataRetur.IDPOProduksiBahanBakuPenagihan == null ? "-" : dataRetur.IDPOProduksiBahanBakuPenagihan; LabelTotalSubtotal.Text = dataRetur.Grandtotal.Value.ToFormatHarga(); LabelStatusRetur.Text = Pengaturan.StatusPOProduksi(dataRetur.EnumStatusRetur.Value); LabelKeterangan.Text = dataRetur.Keterangan; } } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { TBPOProduksiBahanBakuRetur POProduksiBahanBakuRetur = db.TBPOProduksiBahanBakuReturs.FirstOrDefault(item => item.IDPOProduksiBahanBakuRetur == Request.QueryString["id"]); TextBoxIDPOProduksiBahanBakuRetur.Text = POProduksiBahanBakuRetur.IDPOProduksiBahanBakuRetur; TextBoxIDPenerimaanPOProduksiBahanBaku.Text = POProduksiBahanBakuRetur.IDPenerimaanPOProduksiBahanBaku != null ? POProduksiBahanBakuRetur.IDPenerimaanPOProduksiBahanBaku : string.Empty; TextBoxPegawai.Text = POProduksiBahanBakuRetur.TBPengguna.NamaLengkap; TextBoxTanggal.Text = POProduksiBahanBakuRetur.TanggalRetur.ToFormatTanggal(); TextBoxIDPOProduksiBahanBakuPenagihan.Text = POProduksiBahanBakuRetur.IDPOProduksiBahanBakuPenagihan != null ? POProduksiBahanBakuRetur.IDPOProduksiBahanBakuPenagihan : string.Empty; TextBoxStatus.Text = Pengaturan.StatusPOProduksi(POProduksiBahanBakuRetur.EnumStatusRetur.Value);; TextBoxSupplier.Text = POProduksiBahanBakuRetur.TBSupplier.Nama; TextBoxEmail.Text = POProduksiBahanBakuRetur.TBSupplier.Email; TextBoxAlamat.Text = POProduksiBahanBakuRetur.TBSupplier.Alamat; TextBoxTelepon1.Text = POProduksiBahanBakuRetur.TBSupplier.Telepon1; TextBoxTelepon2.Text = POProduksiBahanBakuRetur.TBSupplier.Telepon2; RepeaterDetail.DataSource = POProduksiBahanBakuRetur.TBPOProduksiBahanBakuReturDetails.Select(item => new { item.TBStokBahanBaku.TBBahanBaku.Nama, item.HargaRetur, item.Jumlah, item.Subtotal, Satuan = item.TBSatuan.Nama });; RepeaterDetail.DataBind(); LabelTotalSubtotal.Text = POProduksiBahanBakuRetur.Grandtotal.Value.ToFormatHarga(); TextBoxKeterangan.Text = string.Empty; } } }
protected void ButtonSimpan_Click(object sender, EventArgs e) { if (Page.IsValid) { peringatan.Visible = false; PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; string IDPOProduksiBahanBakuPenagihan = string.Empty; TBPOProduksiBahanBakuPenagihan produksiBahanBakuPenagihan = null; bool statusBerhasil = false; try { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { db.Proc_InsertPOProduksiBahanBakuPenagihan(ref IDPOProduksiBahanBakuPenagihan, DropDownListSupplier.SelectedValue.ToInt(), pengguna.IDTempat, pengguna.IDPengguna, TextBoxTanggal.Text.ToDateTime().AddHours(DateTime.Now.Hour).AddMinutes(DateTime.Now.Minute)); produksiBahanBakuPenagihan = db.TBPOProduksiBahanBakuPenagihans.FirstOrDefault(item => item.IDPOProduksiBahanBakuPenagihan == IDPOProduksiBahanBakuPenagihan); foreach (RepeaterItem item in RepeaterDetailPenerimaan.Items) { CheckBox CheckBoxPilihPenerimaan = (CheckBox)item.FindControl("CheckBoxPilihPenerimaan"); Label LabelIDPenerimaanPOProduksiBahanBaku = (Label)item.FindControl("LabelIDPenerimaanPOProduksiBahanBaku"); if (CheckBoxPilihPenerimaan.Checked == true) { TBPenerimaanPOProduksiBahanBaku penerimaanPOProduksiBahanBaku = db.TBPenerimaanPOProduksiBahanBakus.FirstOrDefault(item2 => item2.IDPenerimaanPOProduksiBahanBaku == LabelIDPenerimaanPOProduksiBahanBaku.Text); penerimaanPOProduksiBahanBaku.TBPOProduksiBahanBakuPenagihan = produksiBahanBakuPenagihan; } } foreach (RepeaterItem item in RepeaterRetur.Items) { CheckBox CheckBoxPilihRetur = (CheckBox)item.FindControl("CheckBoxPilihRetur"); Label LabelIDPOProduksiBahanBakuRetur = (Label)item.FindControl("LabelIDPOProduksiBahanBakuRetur"); if (CheckBoxPilihRetur.Checked == true) { TBPOProduksiBahanBakuRetur POProduksiBahanBakuRetur = db.TBPOProduksiBahanBakuReturs.FirstOrDefault(item2 => item2.IDPOProduksiBahanBakuRetur == LabelIDPOProduksiBahanBakuRetur.Text); POProduksiBahanBakuRetur.TBPOProduksiBahanBakuPenagihan = produksiBahanBakuPenagihan; POProduksiBahanBakuRetur.EnumStatusRetur = (int)EnumStatusPORetur.Proses; } } foreach (RepeaterItem item in RepeaterDownPayment.Items) { Label LabelIDPOProduksiBahanBaku = (Label)item.FindControl("LabelIDPOProduksiBahanBaku"); TBPOProduksiBahanBaku POProduksiBahanBaku = db.TBPOProduksiBahanBakus.FirstOrDefault(item2 => item2.IDPOProduksiBahanBaku == LabelIDPOProduksiBahanBaku.Text); POProduksiBahanBaku.TBPOProduksiBahanBakuPenagihan = produksiBahanBakuPenagihan; } produksiBahanBakuPenagihan.TotalPenerimaan = LabelTotalPenerimaan.Text.ToDecimal(); produksiBahanBakuPenagihan.TotalRetur = LabelTotalRetur.Text.ToDecimal(); produksiBahanBakuPenagihan.TotalDownPayment = LabelTotalDownPayment.Text.ToDecimal(); produksiBahanBakuPenagihan.TotalBayar = 0; produksiBahanBakuPenagihan.StatusPembayaran = false; produksiBahanBakuPenagihan.Keterangan = TextBoxKeterangan.Text; if (TextBoxTotalPenagihan.Text.ToDecimal() > 0) { db.SubmitChanges(); statusBerhasil = true; } else { db.TBPOProduksiBahanBakuPenagihans.DeleteOnSubmit(produksiBahanBakuPenagihan); LabelPeringatan.Text = "Total tagihan dibawah 0"; peringatan.Visible = true; } } } catch (Exception ex) { if (statusBerhasil != true) { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { produksiBahanBakuPenagihan = db.TBPOProduksiBahanBakuPenagihans.FirstOrDefault(item => item.IDPOProduksiBahanBakuPenagihan == IDPOProduksiBahanBakuPenagihan); if (produksiBahanBakuPenagihan != null) { produksiBahanBakuPenagihan.TBPenerimaanPOProduksiBahanBakus.ToList().ForEach(item => item.IDPOProduksiBahanBakuPenagihan = null); db.TBPOProduksiBahanBakuPenagihans.DeleteOnSubmit(produksiBahanBakuPenagihan); db.SubmitChanges(); IDPOProduksiBahanBakuPenagihan = string.Empty; } } } LogError_Class LogError = new LogError_Class(ex, "Invoice Purchase Order Bahan Baku (ButtonSimpan_Click by : " + pengguna.NamaLengkap + ")"); LabelPeringatan.Text = "Terjadi kesalahan, silahkan cek kembali data yang diinputkan"; peringatan.Visible = true; } finally { if (statusBerhasil == true) { Response.Redirect("Default.aspx"); } } } }
protected void ButtonSimpan_Click(object sender, EventArgs e) { if (Page.IsValid) { //DateTime tanggalretur = DateTime.Parse(TextBoxTanggalRetur.Text + " " + DateTime.Now.ToString("HH:mm:ss tt")); peringatan.Visible = false; PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"]; List <StokBahanBaku_Model> ViewStateListDetail = (List <StokBahanBaku_Model>)ViewState["ViewStateListDetail"]; if (ViewStateListDetail.Count > 0) { string IDPOProduksiBahanBakuRetur = string.Empty; TBPOProduksiBahanBakuRetur POBahanBakuRetur = null; bool statusBerhasil = false; try { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { db.Proc_InsertPOProduksiBahanBakuRetur(ref IDPOProduksiBahanBakuRetur, pengguna.IDTempat, DropDownListSupplier.SelectedValue.ToInt(), pengguna.IDPengguna, TextBoxTanggal.Text.ToDateTime().AddHours(DateTime.Now.Hour).AddMinutes(DateTime.Now.Minute)); POBahanBakuRetur = db.TBPOProduksiBahanBakuReturs.FirstOrDefault(item => item.IDPOProduksiBahanBakuRetur == IDPOProduksiBahanBakuRetur); POBahanBakuRetur.IDPenerimaanPOProduksiBahanBaku = DropDownListPenerimaan.SelectedValue != "0" ? DropDownListPenerimaan.SelectedValue : null; POBahanBakuRetur.TBPOProduksiBahanBakuReturDetails.AddRange(ViewStateListDetail.OrderBy(item => item.BahanBaku).Select(item => new TBPOProduksiBahanBakuReturDetail { TBStokBahanBaku = db.TBStokBahanBakus.FirstOrDefault(item2 => item2.IDStokBahanBaku == item.IDStokBahanBaku), IDSatuan = item.IDSatuan, HargaBeli = item.HargaBeli, HargaRetur = item.HargaSupplier, Jumlah = item.Jumlah })); POBahanBakuRetur.Grandtotal = POBahanBakuRetur.TBPOProduksiBahanBakuReturDetails.Sum(item => item.Jumlah * item.HargaRetur); POBahanBakuRetur.EnumStatusRetur = (int)EnumStatusPORetur.Baru; POBahanBakuRetur.Keterangan = TextBoxKeterangan.Text; foreach (var item in POBahanBakuRetur.TBPOProduksiBahanBakuReturDetails) { StokBahanBaku_Class.UpdateBertambahBerkurang( db: db, tanggal: DateTime.Now, idPengguna: pengguna.IDPengguna, stokBahanBaku: item.TBStokBahanBaku, jumlahStok: item.Jumlah.Value, hargaBeli: item.HargaBeli.Value, satuanBesar: true, enumJenisPerpindahanStok: EnumJenisPerpindahanStok.ReturKeTempatProduksi, keterangan: "(" + item.TBStokBahanBaku.TBBahanBaku.Nama + ") Retur PO #" + IDPOProduksiBahanBakuRetur); } db.SubmitChanges(); statusBerhasil = true; } } catch (Exception ex) { if (statusBerhasil != true) { using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext()) { POBahanBakuRetur = db.TBPOProduksiBahanBakuReturs.FirstOrDefault(item => item.IDPOProduksiBahanBakuRetur == IDPOProduksiBahanBakuRetur); if (POBahanBakuRetur != null) { db.TBPOProduksiBahanBakuReturDetails.DeleteAllOnSubmit(POBahanBakuRetur.TBPOProduksiBahanBakuReturDetails); db.TBPOProduksiBahanBakuReturs.DeleteOnSubmit(POBahanBakuRetur); db.SubmitChanges(); IDPOProduksiBahanBakuRetur = string.Empty; } } } LogError_Class LogError = new LogError_Class(ex, "Retur PO Bahan Baku (ButtonSimpan_Click by : " + pengguna.NamaLengkap + ")"); LabelPeringatan.Text = "Terjadi kesalahan, silahkan cek kembali data yang diinputkan"; peringatan.Visible = true; } finally { if (statusBerhasil == true) { Response.Redirect("Default.aspx"); } } } else { LabelPeringatan.Text = "Tidak ada Bahan Baku yang dipilih"; peringatan.Visible = true; } } }