Beispiel #1
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                TBPOProduksiProduk poProduksiProduk = db.TBPOProduksiProduks.FirstOrDefault(item => item.IDPOProduksiProduk == Request.QueryString["id"]);

                TextBoxIDProyeksi.Text         = poProduksiProduk.IDProyeksi != null ? poProduksiProduk.IDProyeksi : "-Tidak Ada Proyeksi-";
                TextBoxIDPOProduksiProduk.Text = poProduksiProduk.IDPOProduksiProduk;
                TextBoxStatusHPP.Text          = Pengaturan.StatusJenisHPP(poProduksiProduk.EnumJenisHPP.Value);
                TextBoxPegawaiPIC.Text         = poProduksiProduk.TBPengguna1.NamaLengkap;
                TextBoxPembuat.Text            = poProduksiProduk.TBPengguna.NamaLengkap + " / " + poProduksiProduk.Tanggal.ToFormatTanggal();
                TextBoxKeterangan.Text         = poProduksiProduk.Keterangan;

                RepeaterDetail.DataSource = poProduksiProduk.TBPOProduksiProdukDetails.ToArray();
                RepeaterDetail.DataBind();
                LabelTotalJumlah.Text   = poProduksiProduk.TotalJumlah.ToFormatHargaBulat();
                LabelTotalSubtotal.Text = poProduksiProduk.SubtotalTotalHargaVendor.ToFormatHarga();
                LabelTotalSisa.Text     = poProduksiProduk.TBPOProduksiProdukDetails.Sum(data => data.Sisa).ToFormatHargaBulat();

                RepeaterKomposisi.DataSource = poProduksiProduk.TBPOProduksiProdukKomposisis.OrderBy(item => item.TBBahanBaku.Nama).ToArray();
                RepeaterKomposisi.DataBind();
                LabelTotalSubtotalKomposisi.Text = poProduksiProduk.TBPOProduksiProdukKomposisis.Sum(item => item.Subtotal).ToFormatHarga();

                RepeaterBiayaTambahan.DataSource = poProduksiProduk.TBPOProduksiProdukBiayaTambahans.OrderBy(item => item.TBJenisBiayaProduksi.Nama).ToArray();
                RepeaterBiayaTambahan.DataBind();
                LabelTotalSubtotalBiayaTambahan.Text = poProduksiProduk.TBPOProduksiProdukBiayaTambahans.Sum(item => item.Nominal).ToFormatHarga();

                RepeaterPengiriman.DataSource = db.TBPengirimanPOProduksiProduks.Where(item => item.IDPOProduksiProduk == Request.QueryString["id"]).Select(item => new
                {
                    item.IDPengirimanPOProduksiProduk,
                    item.Tanggal,
                    Pegawai = item.TBPengguna.NamaLengkap,
                    Cetak   = "return popitup('../CetakPengiriman.aspx?id=" + item.IDPengirimanPOProduksiProduk + "')"
                }).ToArray();
                RepeaterPengiriman.DataBind();

                RepeaterPenerimaan.DataSource = db.TBPenerimaanPOProduksiProduks.Where(item => item.IDPOProduksiProduk == Request.QueryString["id"]).Select(item => new
                {
                    item.IDPenerimaanPOProduksiProduk,
                    item.TanggalDatang,
                    Pegawai = item.TBPengguna.NamaLengkap,
                    Cetak   = "return popitup('../CetakPenerimaan.aspx?id=" + item.IDPenerimaanPOProduksiProduk + "')"
                });
                RepeaterPenerimaan.DataBind();

                if (poProduksiProduk.TBPenerimaanPOProduksiProduks.Count > 0 || poProduksiProduk.TBPengirimanPOProduksiProduks.Count > 0)
                {
                    ButtonEdit.Visible = false;
                }
            }
        }
    }
Beispiel #2
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                TBPOProduksiProduk poProduksiProduk = db.TBPOProduksiProduks.FirstOrDefault(item => item.IDPOProduksiProduk == Request.QueryString["id"]);

                TextBoxIDProyeksi.Text         = poProduksiProduk.IDProyeksi != null ? poProduksiProduk.IDProyeksi : "-Tidak Ada Proyeksi-";
                TextBoxIDPOProduksiProduk.Text = poProduksiProduk.IDPOProduksiProduk;
                TextBoxStatusHPP.Text          = Pengaturan.StatusJenisHPP(poProduksiProduk.EnumJenisHPP.Value);
                TextBoxPegawaiPIC.Text         = poProduksiProduk.TBPengguna1.NamaLengkap;
                TextBoxPembuat.Text            = poProduksiProduk.TBPengguna.NamaLengkap + " / " + poProduksiProduk.Tanggal.ToFormatTanggal();
                TextBoxTanggalJatuhTempo.Text  = poProduksiProduk.TanggalJatuhTempo.ToFormatTanggal();
                TextBoxTanggalPengiriman.Text  = poProduksiProduk.TanggalPengiriman.ToFormatTanggal();

                TextBoxVendor.Text   = poProduksiProduk.TBVendor.Nama;
                TextBoxEmail.Text    = poProduksiProduk.TBVendor.Email;
                TextBoxAlamat.Text   = poProduksiProduk.TBVendor.Alamat;
                TextBoxTelepon1.Text = poProduksiProduk.TBVendor.Telepon1;
                TextBoxTelepon2.Text = poProduksiProduk.TBVendor.Telepon2;

                RepeaterDetail.DataSource = poProduksiProduk.TBPOProduksiProdukDetails.ToArray();
                RepeaterDetail.DataBind();
                LabelTotalJumlah.Text   = poProduksiProduk.TotalJumlah.ToFormatHargaBulat();
                LabelTotalSubtotal.Text = poProduksiProduk.SubtotalTotalHargaVendor.ToFormatHarga();
                LabelTotalSisa.Text     = poProduksiProduk.TBPOProduksiProdukDetails.Sum(data => data.Sisa).ToFormatHargaBulat();

                TextBoxKeterangan.Text    = poProduksiProduk.Keterangan;
                TextBoxBiayaLainLain.Text = poProduksiProduk.BiayaLainLain.ToFormatHarga();
                TextBoxPotonganPO.Text    = poProduksiProduk.PotonganPOProduksiProduk.ToFormatHarga();
                LabelTax.Text             = "Tax (" + (poProduksiProduk.PersentaseTax * 100).ToFormatHarga() + "%)";
                TextBoxTax.Text           = poProduksiProduk.Tax.ToFormatHarga();
                TextBoxGrandtotal.Text    = poProduksiProduk.Grandtotal.ToFormatHarga();

                RepeaterPenerimaan.DataSource = db.TBPenerimaanPOProduksiProduks.Where(item => item.IDPOProduksiProduk == Request.QueryString["id"]).Select(item => new
                {
                    item.IDPenerimaanPOProduksiProduk,
                    item.TanggalDatang,
                    Pegawai = item.TBPengguna.NamaLengkap,
                    Cetak   = "return popitup('../CetakPenerimaan.aspx?id=" + item.IDPenerimaanPOProduksiProduk + "')"
                });
                RepeaterPenerimaan.DataBind();

                if (poProduksiProduk.TBPenerimaanPOProduksiProduks.Count > 0 || poProduksiProduk.TBPengirimanPOProduksiProduks.Count > 0)
                {
                    ButtonEdit.Visible = false;
                }
            }
        }
    }
Beispiel #3
0
    private void LoadData(bool GenerateExcel)
    {
        //DEFAULT
        TextBoxTanggalAwal.Text  = ((DateTime)ViewState["TanggalAwal"]).ToString("d MMMM yyyy");
        TextBoxTanggalAkhir.Text = ((DateTime)ViewState["TanggalAkhir"]).ToString("d MMMM yyyy");

        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            if (TextBoxTanggalAwal.Text == TextBoxTanggalAkhir.Text)
            {
                LabelPeriode.Text = TextBoxTanggalAwal.Text;
            }
            else
            {
                LabelPeriode.Text = TextBoxTanggalAwal.Text + " - " + TextBoxTanggalAkhir.Text;
            }

            TBPOProduksiBahanBaku[]                 daftarPOProduksiBahanBaku                 = db.TBPOProduksiBahanBakus.Where(item => item.IDTempat == DropDownListTempat.SelectedValue.ToInt() && item.Tanggal.Date >= DateTime.Parse(TextBoxTanggalAwal.Text).Date&& item.Tanggal.Date <= DateTime.Parse(TextBoxTanggalAkhir.Text).Date).ToArray();
            TBPOProduksiBahanBakuDetail[]           daftarPOProduksiBahanBakuDetail           = db.TBPOProduksiBahanBakuDetails.Where(item => item.TBPOProduksiBahanBaku.IDTempat == DropDownListTempat.SelectedValue.ToInt() && item.TBPOProduksiBahanBaku.Tanggal.Date >= DateTime.Parse(TextBoxTanggalAwal.Text).Date&& item.TBPOProduksiBahanBaku.Tanggal.Date <= DateTime.Parse(TextBoxTanggalAkhir.Text).Date).ToArray();
            TBPenerimaanPOProduksiBahanBakuDetail[] daftarPenerimaanPOProduksiBahanBakuDetail = db.TBPenerimaanPOProduksiBahanBakuDetails.Where(item => item.TBPenerimaanPOProduksiBahanBaku.TBPOProduksiBahanBaku.IDTempat == DropDownListTempat.SelectedValue.ToInt() && item.TBPenerimaanPOProduksiBahanBaku.TanggalTerima.Value.Date >= DateTime.Parse(TextBoxTanggalAwal.Text).Date&& item.TBPenerimaanPOProduksiBahanBaku.TanggalTerima.Value.Date <= DateTime.Parse(TextBoxTanggalAkhir.Text).Date).ToArray();

            #region Purchase Order
            var purchaseOrder = daftarPOProduksiBahanBaku.GroupBy(item => new
            {
                item.EnumJenisProduksi
            })
                                .Select(item => new
            {
                item.Key.EnumJenisProduksi,
                JenisPO           = Pengaturan.JenisPOProduksi(item.Key.EnumJenisProduksi, "BahanBaku"),
                Baru              = item.Count(),
                GrandtotalBaru    = item.Sum(data => data.Grandtotal),
                Proses            = item.Count(),
                GrandtotalProses  = item.Sum(data => data.Grandtotal),
                Selesai           = item.Count(),
                GrandtotalSelesai = item.Sum(data => data.Grandtotal),
                Total             = item.Count(),
                GrandtotalTotal   = item.Sum(data => data.Grandtotal),
                Progress          = Persentase(item.Count() == 0 ? -1 : ((decimal)item.Count() / (decimal)item.Count()) * 100),
            }).OrderBy(item => item.EnumJenisProduksi).ToArray();
            RepeaterPurchaseOrder.DataSource = purchaseOrder;
            RepeaterPurchaseOrder.DataBind();

            LabelBaru.Text              = purchaseOrder.Sum(item => item.Baru).ToFormatHargaBulat();
            LabelGrandtotalBaru.Text    = purchaseOrder.Sum(item => item.GrandtotalBaru).ToFormatHarga();
            LabelProses.Text            = purchaseOrder.Sum(item => item.Proses).ToFormatHargaBulat();
            LabeGrandtotalProses.Text   = purchaseOrder.Sum(item => item.GrandtotalProses).ToFormatHarga();
            LabelSelesai.Text           = purchaseOrder.Sum(item => item.Selesai).ToFormatHargaBulat();
            LabelGrandtotalSelesai.Text = purchaseOrder.Sum(item => item.GrandtotalSelesai).ToFormatHarga();
            LabelTotal.Text             = purchaseOrder.Sum(item => item.Total).ToFormatHargaBulat();
            LabelGrandtotalTotal.Text   = purchaseOrder.Sum(item => item.GrandtotalTotal).ToFormatHarga();
            #endregion

            #region Summary
            LabelPotongan.Text              = daftarPOProduksiBahanBaku.Sum(item => item.PotonganPOProduksiBahanBaku).ToFormatHarga();
            LabelBiayaLainLain.Text         = daftarPOProduksiBahanBaku.Sum(item => item.BiayaLainLain).ToFormatHarga();
            LabelTax.Text                   = daftarPOProduksiBahanBaku.Sum(item => item.Tax).ToFormatHarga();
            LabelGrandtotal.Text            = daftarPOProduksiBahanBaku.Sum(item => item.Grandtotal).ToFormatHarga();
            LabelHargaKomposisiDetail.Text  = daftarPOProduksiBahanBakuDetail.Sum(item => item.Jumlah * item.HargaPokokKomposisi).ToFormatHarga();
            LabelBiayaTambahanDetail.Text   = daftarPOProduksiBahanBakuDetail.Sum(item => item.Jumlah * item.BiayaTambahan).ToFormatHarga();
            LabelPotonganHargaDetail.Text   = daftarPOProduksiBahanBakuDetail.Sum(item => item.Jumlah * item.PotonganHargaSupplier).ToFormatHarga();
            LabelJumlahBahanBakuDetail.Text = daftarPOProduksiBahanBakuDetail.Sum(item => item.Jumlah).ToFormatHarga();
            LabelHargaSupplierDetail.Text   = daftarPOProduksiBahanBakuDetail.Sum(item => item.Jumlah * item.HargaSupplier).ToFormatHarga();
            LabelSubtotalDetail.Text        = daftarPOProduksiBahanBakuDetail.Sum(item => item.SubtotalHPP + item.SubtotalHargaSupplier).ToFormatHarga();
            #endregion

            #region Kategori
            RepeaterKategori.DataSource = daftarPOProduksiBahanBakuDetail.GroupBy(item => new
            {
                Kategori = item.TBBahanBaku.TBRelasiBahanBakuKategoriBahanBakus.Count > 0 ? item.TBBahanBaku.TBRelasiBahanBakuKategoriBahanBakus.FirstOrDefault().TBKategoriBahanBaku.Nama : ""
            })
                                          .Select(item => new
            {
                item.Key.Kategori,
                Jumlah   = item.Sum(data => data.Jumlah).ToFormatHarga(),
                Subtotal = item.Sum(data => data.SubtotalHPP + data.SubtotalHargaSupplier).ToFormatHarga()
            });
            RepeaterKategori.DataBind();
            #endregion

            #region
            //RepeaterPenerimaan.DataSource = daftarPenerimaanPOProduksiBahanBakuDetail.GroupBy(item => new
            //{
            //    item.TBBahanBaku,
            //    item.TBSatuan
            //}).Select(item => new
            //{
            //    BahanBaku = item.Key.TBBahanBaku.Nama,
            //    Satuan = item.Key.TBSatuan.Nama,
            //    Kategori = StokBahanBaku_Class.GabungkanSemuaKategoriBahanBaku(db, null, item.Key.TBBahanBaku),
            //    Diterima = item.Sum(data => data.Diterima).ToFormatHarga(),
            //    Subtotal = item.FirstOrDefault().TBPenerimaanPOProduksiBahanBaku.TBPOProduksiBahanBaku.EnumJenisProduksi != (int)PilihanEnumJenisProduksi.ProduksiSendiri ? item.Sum(data => data.SubtotalHargaSupplier).ToFormatHarga() : item.Sum(data => data.SubtotalHPP).ToFormatHarga()
            //});
            //RepeaterPenerimaan.DataBind();

            RepeaterPenerimaan.DataSource = daftarPenerimaanPOProduksiBahanBakuDetail.GroupBy(item => new
            {
                Kategori = StokBahanBaku_Class.GabungkanSemuaKategoriBahanBaku(db, null, item.TBBahanBaku)
            }).Select(item => new
            {
                Kategori = item.Key.Kategori,
                Diterima = item.Sum(data => data.Diterima).ToFormatHarga(),
                Subtotal = item.FirstOrDefault().TBPenerimaanPOProduksiBahanBaku.TBPOProduksiBahanBaku.EnumJenisProduksi != (int)PilihanEnumJenisProduksi.ProduksiSendiri ? item.Sum(data => data.SubtotalHargaSupplier).ToFormatHarga() : item.Sum(data => data.SubtotalHPP).ToFormatHarga()
            }).OrderBy(item => item.Kategori);
            RepeaterPenerimaan.DataBind();
            #endregion

            #region Jatuh Tempo
            decimal batas = db.TBStoreKonfigurasis.FirstOrDefault(item => item.IDStoreKonfigurasi == (int)EnumStoreKonfigurasi.JumlahHariSebelumJatuhTempo).Pengaturan.ToDecimal();
            LabelPanelSetengahJatuhTempo.Text = "1-" + Math.Floor(batas / 2).ToFormatHargaBulat() + " Hari";
            LabelPanelJatuhTempo.Text         = Math.Floor(batas / 2).ToFormatHargaBulat() + "-" + batas.ToFormatHargaBulat() + " Hari";

            var daftarJatuhTempo = daftarPOProduksiBahanBaku
                                   .Where(item => item.EnumJenisProduksi != (int)PilihanEnumJenisProduksi.ProduksiSendiri && ((int)((item.TanggalJatuhTempo.Value.Date - DateTime.Now.Date).TotalDays) < batas))
                                   .Select(item => new
            {
                ClassWarna = Warna((int)((item.TanggalJatuhTempo.Value.Date - DateTime.Now.Date).TotalDays), batas),
                Pengguna   = item.TBPengguna.NamaLengkap,
                item.IDPOProduksiBahanBaku,
                item.TBSupplier.Nama,
                item.EnumJenisProduksi,
                item.Tanggal,
                item.TanggalJatuhTempo,
                Jarak = (item.TanggalJatuhTempo.Value.Date - DateTime.Now.Date).TotalDays
            })
                                   .OrderBy(item => item.Jarak)
                                   .ToArray();

            if (DropDownListJatuhTempo.SelectedValue == "0")
            {
                RepeaterPOBahanBakuJatuhTempoSatu.DataSource = daftarJatuhTempo.Where(item => item.ClassWarna == "danger");
                RepeaterPOBahanBakuJatuhTempoSatu.DataBind();
                RepeaterPOBahanBakuJatuhTempoDua.DataSource = daftarJatuhTempo.Where(item => item.ClassWarna == "warning");
                RepeaterPOBahanBakuJatuhTempoDua.DataBind();
                RepeaterPOBahanBakuJatuhTempoTiga.DataSource = daftarJatuhTempo.Where(item => item.ClassWarna == string.Empty);
                RepeaterPOBahanBakuJatuhTempoTiga.DataBind();
            }
            else
            {
                RepeaterPOBahanBakuJatuhTempoSatu.DataSource = daftarJatuhTempo.Where(item => item.ClassWarna == "danger" && item.EnumJenisProduksi == DropDownListJatuhTempo.SelectedValue.ToInt());
                RepeaterPOBahanBakuJatuhTempoSatu.DataBind();
                RepeaterPOBahanBakuJatuhTempoDua.DataSource = daftarJatuhTempo.Where(item => item.ClassWarna == "warning" && item.EnumJenisProduksi == DropDownListJatuhTempo.SelectedValue.ToInt());
                RepeaterPOBahanBakuJatuhTempoDua.DataBind();
                RepeaterPOBahanBakuJatuhTempoTiga.DataSource = daftarJatuhTempo.Where(item => item.ClassWarna == string.Empty && item.EnumJenisProduksi == DropDownListJatuhTempo.SelectedValue.ToInt());
                RepeaterPOBahanBakuJatuhTempoTiga.DataBind();
            }

            #endregion
        }
    }