示例#1
0
    protected void ButtonSimpanDetail_Click(object sender, EventArgs e)
    {
        if (Page.IsValid)
        {
            if (TextBoxJumlah.Text.ToDecimal() > 0)
            {
                using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
                {
                    PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"];

                    List <POProduksiDetail_Model> ViewStateListDetail = (List <POProduksiDetail_Model>)ViewState["ViewStateListDetail"];

                    POProduksiDetail_Model detail = ViewStateListDetail.FirstOrDefault(item => item.IDStokProduk == DropDownListStokProduk.SelectedValue.ToInt());

                    if (detail == null)
                    {
                        TBStokProduk stokProduk = db.TBStokProduks.FirstOrDefault(item => item.IDStokProduk == DropDownListStokProduk.SelectedValue.ToInt());

                        detail                     = new POProduksiDetail_Model();
                        detail.IDProduk            = stokProduk.TBKombinasiProduk.IDProduk;
                        detail.IDKombinasiProduk   = stokProduk.IDKombinasiProduk;
                        detail.IDStokProduk        = stokProduk.IDStokProduk;
                        detail.Kode                = stokProduk.TBKombinasiProduk.KodeKombinasiProduk;
                        detail.Produk              = stokProduk.TBKombinasiProduk.TBProduk.Nama;
                        detail.Atribut             = stokProduk.TBKombinasiProduk.TBAtributProduk.Nama;
                        detail.KombinasiProduk     = stokProduk.TBKombinasiProduk.Nama;
                        detail.HargaPokokKomposisi = 0;
                        detail.BiayaTambahan       = 0;
                        detail.TotalHPP            = 0;
                        detail.Harga               = 0;
                        detail.PotonganHarga       = 0;
                        detail.TotalHarga          = detail.Harga - detail.PotonganHarga;
                        detail.Jumlah              = TextBoxJumlah.Text.ToDecimal().ToInt();
                        detail.Sisa                = detail.Jumlah;
                        ViewStateListDetail.Add(detail);
                    }
                    else
                    {
                        detail.Jumlah = TextBoxJumlah.Text.ToDecimal().ToInt();
                        detail.Sisa   = detail.Jumlah;
                    }

                    ViewState["ViewStateListDetail"] = ViewStateListDetail;

                    if (RadioButtonListStatusHPP.SelectedValue == ((int)PilihanEnumJenisHPP.Komposisi).ToString())
                    {
                        PengaturanHPPKomposisi(db);
                    }
                    else
                    {
                        PengaturanHPPRataRata();
                    }
                }

                LoadData();
            }
        }
    }
示例#2
0
    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();
    }
示例#3
0
    protected void ButtonSimpanDetail_Click(object sender, EventArgs e)
    {
        if (Page.IsValid)
        {
            if (TextBoxJumlah.Text.ToDecimal().ToInt() > 0)
            {
                using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
                {
                    List <POProduksiDetail_Model> ViewStateListDetail = (List <POProduksiDetail_Model>)ViewState["ViewStateListDetail"];

                    POProduksiDetail_Model detail = ViewStateListDetail.FirstOrDefault(item => item.IDStokProduk == DropDownListStokProduk.SelectedValue.ToInt());

                    if (detail == null)
                    {
                        TBStokProduk stokProduk = db.TBStokProduks.FirstOrDefault(item => item.IDStokProduk == DropDownListStokProduk.SelectedValue.ToInt());

                        detail                     = new POProduksiDetail_Model();
                        detail.IDProduk            = stokProduk.TBKombinasiProduk.IDProduk;
                        detail.IDKombinasiProduk   = stokProduk.IDKombinasiProduk;
                        detail.IDStokProduk        = stokProduk.IDStokProduk;
                        detail.Kode                = stokProduk.TBKombinasiProduk.KodeKombinasiProduk;
                        detail.Produk              = stokProduk.TBKombinasiProduk.TBProduk.Nama;
                        detail.Atribut             = stokProduk.TBKombinasiProduk.TBAtributProduk.Nama;
                        detail.KombinasiProduk     = stokProduk.TBKombinasiProduk.Nama;
                        detail.HargaPokokKomposisi = 0;
                        detail.BiayaTambahan       = 0;
                        detail.TotalHPP            = detail.BiayaTambahan + detail.HargaPokokKomposisi;
                        detail.Harga               = TextBoxHargaVendor.Text.ToDecimal();
                        detail.PotonganHarga       = TextBoxPotonganHargaVendor.Text.ToDecimal();
                        detail.TotalHarga          = detail.Harga - detail.PotonganHarga;
                        detail.Jumlah              = TextBoxJumlah.Text.ToDecimal().ToInt();
                        detail.Sisa                = detail.Jumlah;

                        ViewStateListDetail.Add(detail);
                    }
                    else
                    {
                        detail.Harga         = TextBoxHargaVendor.Text.ToDecimal();
                        detail.PotonganHarga = TextBoxPotonganHargaVendor.Text.ToDecimal();
                        detail.TotalHarga    = detail.Harga - detail.PotonganHarga;
                        detail.Jumlah        = TextBoxJumlah.Text.ToDecimal().ToInt();
                        detail.Sisa          = detail.Jumlah;
                    }

                    ViewState["ViewStateListDetail"] = ViewStateListDetail;
                }

                LoadData();
            }
        }
    }
示例#4
0
    protected void ButtonSimpanDetail_Click(object sender, EventArgs e)
    {
        if (Page.IsValid)
        {
            if (TextBoxJumlah.Text.ToDecimal() > 0)
            {
                using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
                {
                    List <POProduksiDetail_Model> ViewStateListDetail = (List <POProduksiDetail_Model>)ViewState["ViewStateListDetail"];

                    POProduksiDetail_Model detail = ViewStateListDetail.FirstOrDefault(item => item.IDStokBahanBaku == DropDownListStokBahanBaku.SelectedValue.ToInt());

                    if (detail == null)
                    {
                        TBStokBahanBaku stokBahanBaku = db.TBStokBahanBakus.FirstOrDefault(item => item.IDStokBahanBaku == DropDownListStokBahanBaku.SelectedValue.ToInt());

                        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               = TextBoxHargaSupplier.Text.ToDecimal();
                        detail.PotonganHarga       = TextBoxPotonganHargaSupplier.Text.ToDecimal();
                        detail.TotalHarga          = detail.Harga - detail.PotonganHarga;
                        detail.Jumlah              = TextBoxJumlah.Text.ToDecimal();
                        detail.Sisa                = detail.Jumlah;
                        ViewStateListDetail.Add(detail);
                    }
                    else
                    {
                        detail.Harga         = TextBoxHargaSupplier.Text.ToDecimal();
                        detail.PotonganHarga = TextBoxPotonganHargaSupplier.Text.ToDecimal();
                        detail.TotalHarga    = detail.Harga - detail.PotonganHarga;
                        detail.Jumlah        = TextBoxJumlah.Text.ToDecimal();
                        detail.Sisa          = detail.Jumlah;
                    }

                    ViewState["ViewStateListDetail"] = ViewStateListDetail;
                }

                LoadData();
            }
        }
    }
示例#5
0
    private void LoadProyeksi(DataClassesDatabaseDataContext db, string IDProyeksi)
    {
        PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"];

        TextBoxIDProyeksi.Text = IDProyeksi;
        TextBoxPegawai.Text    = pengguna.NamaLengkap;

        TBProyeksiDetail[]            proyeksiDetail      = db.TBProyeksiDetails.Where(item => item.IDProyeksi == TextBoxIDProyeksi.Text).OrderBy(item => item.TBKombinasiProduk.Nama).ToArray();
        TBStokProduk[]                daftarStokProduk    = db.TBStokProduks.AsEnumerable().Where(item => item.IDTempat == pengguna.IDTempat && proyeksiDetail.Any(data => data.IDKombinasiProduk == item.IDKombinasiProduk)).OrderBy(item => item.TBKombinasiProduk.Nama).ToArray();
        List <POProduksiDetail_Model> ViewStateListDetail = (List <POProduksiDetail_Model>)ViewState["ViewStateListDetail"];

        DropDownListStokProduk.DataSource     = daftarStokProduk.Select(item => new { item.IDStokProduk, item.TBKombinasiProduk.Nama }).Distinct().OrderBy(item => item.Nama).ToArray();
        DropDownListStokProduk.DataTextField  = "Nama";
        DropDownListStokProduk.DataValueField = "IDStokProduk";
        DropDownListStokProduk.DataBind();

        foreach (var item in proyeksiDetail.Where(item => item.Sisa > 0))
        {
            TBStokProduk stokProduk = daftarStokProduk.FirstOrDefault(data => data.IDKombinasiProduk == item.IDKombinasiProduk);

            POProduksiDetail_Model detail = new POProduksiDetail_Model();
            detail.IDProduk          = stokProduk.TBKombinasiProduk.IDProduk;
            detail.IDKombinasiProduk = stokProduk.IDKombinasiProduk;
            detail.IDStokProduk      = stokProduk.IDStokProduk;
            detail.Kode                = stokProduk.TBKombinasiProduk.KodeKombinasiProduk;
            detail.Produk              = stokProduk.TBKombinasiProduk.TBProduk.Nama;
            detail.Atribut             = stokProduk.TBKombinasiProduk.TBAtributProduk.Nama;
            detail.KombinasiProduk     = stokProduk.TBKombinasiProduk.Nama;
            detail.HargaPokokKomposisi = 0;
            detail.BiayaTambahan       = 0;
            detail.TotalHPP            = 0;
            detail.Harga               = 0;
            detail.PotonganHarga       = 0;
            detail.TotalHarga          = detail.Harga - detail.PotonganHarga;
            detail.Jumlah              = item.Sisa;
            detail.Sisa                = detail.Jumlah;
            ViewStateListDetail.Add(detail);
        }
        ViewState["ViewStateListDetail"] = ViewStateListDetail;

        PengaturanHPPKomposisi(db);

        LoadData();
    }
示例#6
0
    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();
    }
示例#7
0
    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();
    }
示例#8
0
    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();
    }
示例#9
0
    private void LoadProyeksi(DataClassesDatabaseDataContext db, string IDProyeksi)
    {
        PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"];

        TextBoxIDProyeksi.Text = IDProyeksi;
        TextBoxPegawai.Text    = pengguna.NamaLengkap;

        TBVendor vendor = null;

        if (DropDownListVendor.SelectedValue == "0")
        {
            HiddenFieldTax.Value = "0";
            LabelTax.Text        = "Tax (0%)";
        }
        else
        {
            vendor = db.TBVendors.FirstOrDefault(item => item.IDVendor == DropDownListVendor.SelectedValue.ToInt());

            HiddenFieldTax.Value = vendor.PersentaseTax.ToString();
            LabelTax.Text        = "Tax (" + (vendor.PersentaseTax * 100).ToFormatHarga() + "%)";
        }

        TBProyeksiDetail[] proyeksiDetail   = db.TBProyeksiDetails.Where(item => item.IDProyeksi == TextBoxIDProyeksi.Text).OrderBy(item => item.TBKombinasiProduk.Nama).ToArray();
        TBStokProduk[]     daftarStokProduk = db.TBStokProduks.AsEnumerable().Where(item => item.IDTempat == pengguna.IDTempat && proyeksiDetail.Any(data => data.IDKombinasiProduk == item.IDKombinasiProduk)).OrderBy(item => item.TBKombinasiProduk.Nama).ToArray();
        DropDownListStokProduk.DataSource     = daftarStokProduk.Select(item => new { item.IDStokProduk, item.TBKombinasiProduk.Nama });
        DropDownListStokProduk.DataTextField  = "Nama";
        DropDownListStokProduk.DataValueField = "IDStokProduk";
        DropDownListStokProduk.DataBind();

        List <POProduksiDetail_Model> ViewStateListDetail = (List <POProduksiDetail_Model>)ViewState["ViewStateListDetail"];

        foreach (var item in proyeksiDetail.Where(item => item.Sisa > 0))
        {
            TBStokProduk stokProduk = daftarStokProduk.FirstOrDefault(data => data.IDKombinasiProduk == item.IDKombinasiProduk);

            POProduksiDetail_Model detail = new POProduksiDetail_Model();
            detail.IDProduk          = stokProduk.TBKombinasiProduk.IDProduk;
            detail.IDKombinasiProduk = stokProduk.IDKombinasiProduk;
            detail.IDStokProduk      = stokProduk.IDStokProduk;
            detail.Kode                = stokProduk.TBKombinasiProduk.KodeKombinasiProduk;
            detail.Produk              = stokProduk.TBKombinasiProduk.TBProduk.Nama;
            detail.Atribut             = stokProduk.TBKombinasiProduk.TBAtributProduk.Nama;
            detail.KombinasiProduk     = stokProduk.TBKombinasiProduk.Nama;
            detail.HargaPokokKomposisi = 0;
            detail.BiayaTambahan       = 0;
            detail.TotalHPP            = detail.BiayaTambahan + detail.HargaPokokKomposisi;
            detail.Harga               = vendor == null ? 0 : vendor.TBHargaVendors.FirstOrDefault(data => data.IDStokProduk == stokProduk.IDStokProduk) == null ? 0 : vendor.TBHargaVendors.FirstOrDefault(data => data.IDStokProduk == stokProduk.IDStokProduk).Harga.Value;
            detail.PotonganHarga       = 0;
            detail.TotalHarga          = detail.Harga - detail.PotonganHarga;
            detail.Jumlah              = item.Sisa;
            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();
    }
示例#10
0
    private void LoadPOLama(DataClassesDatabaseDataContext db, string IDPOProduksiProduk)
    {
        PenggunaLogin pengguna = (PenggunaLogin)Session["PenggunaLogin"];

        TBPOProduksiProduk poProduksiProduk = db.TBPOProduksiProduks.FirstOrDefault(item => item.IDPOProduksiProduk == IDPOProduksiProduk);

        TextBoxIDProyeksi.Text = poProduksiProduk.IDProyeksi != null ? poProduksiProduk.IDProyeksi : string.Empty;
        TextBoxPegawai.Text    = pengguna.NamaLengkap;
        DropDownListPenggunaPIC.SelectedValue = poProduksiProduk.IDPenggunaPIC.ToString();
        TextBoxTanggal.Text           = poProduksiProduk.Tanggal.ToString("d MMMM yyyy");
        TextBoxTanggalJatuhTempo.Text = poProduksiProduk.TanggalJatuhTempo != null?poProduksiProduk.TanggalJatuhTempo.Value.ToString("d MMMM yyyy") : DateTime.Now.ToString("d MMMM yyyy");

        TextBoxTanggalPengiriman.Text = poProduksiProduk.TanggalPengiriman != null?poProduksiProduk.TanggalPengiriman.Value.ToString("d MMMM yyyy") : DateTime.Now.ToString("d MMMM yyyy");

        DropDownListVendor.SelectedValue = poProduksiProduk.IDVendor.ToString();

        TextBoxAlamat.Text   = poProduksiProduk.TBVendor.Alamat;
        TextBoxEmail.Text    = poProduksiProduk.TBVendor.Email;
        TextBoxTelepon1.Text = poProduksiProduk.TBVendor.Telepon1;
        TextBoxTelepon2.Text = poProduksiProduk.TBVendor.Telepon2;
        HiddenFieldTax.Value = poProduksiProduk.TBVendor.PersentaseTax.ToString();
        LabelTax.Text        = "Tax (" + (poProduksiProduk.TBVendor.PersentaseTax * 100).ToFormatHarga() + "%)";

        TBStokProduk[] daftarStokProduk = null;
        if (TextBoxIDProyeksi.Text != string.Empty)
        {
            TBProyeksiDetail[] proyeksiDetail = db.TBProyeksiDetails.Where(item => item.IDProyeksi == TextBoxIDProyeksi.Text).OrderBy(item => item.TBKombinasiProduk.Nama).ToArray();
            daftarStokProduk = db.TBStokProduks.AsEnumerable().Where(item => item.IDTempat == pengguna.IDTempat && proyeksiDetail.Any(data => data.IDKombinasiProduk == item.IDKombinasiProduk)).OrderBy(item => item.TBKombinasiProduk.Nama).ToArray();
        }
        else
        {
            daftarStokProduk = db.TBStokProduks.Where(item => item.IDTempat == pengguna.IDTempat).ToArray();
        }
        DropDownListStokProduk.DataSource     = daftarStokProduk.Select(item => new { item.IDStokProduk, item.TBKombinasiProduk.Nama });
        DropDownListStokProduk.DataTextField  = "Nama";
        DropDownListStokProduk.DataValueField = "IDStokProduk";
        DropDownListStokProduk.DataBind();

        List <POProduksiDetail_Model> ViewStateListDetail = (List <POProduksiDetail_Model>)ViewState["ViewStateListDetail"];

        foreach (var item in poProduksiProduk.TBPOProduksiProdukDetails)
        {
            TBStokProduk stokProduk = daftarStokProduk.FirstOrDefault(data => data.IDKombinasiProduk == item.IDKombinasiProduk);

            POProduksiDetail_Model detail = new POProduksiDetail_Model();
            detail.IDProduk          = stokProduk.TBKombinasiProduk.IDProduk;
            detail.IDKombinasiProduk = stokProduk.IDKombinasiProduk;
            detail.IDStokProduk      = stokProduk.IDStokProduk;
            detail.Kode                = stokProduk.TBKombinasiProduk.KodeKombinasiProduk;
            detail.Produk              = stokProduk.TBKombinasiProduk.TBProduk.Nama;
            detail.Atribut             = stokProduk.TBKombinasiProduk.TBAtributProduk.Nama;
            detail.KombinasiProduk     = stokProduk.TBKombinasiProduk.Nama;
            detail.HargaPokokKomposisi = 0;
            detail.BiayaTambahan       = 0;
            detail.TotalHPP            = detail.BiayaTambahan + detail.HargaPokokKomposisi;
            detail.Harga               = item.HargaVendor;
            detail.PotonganHarga       = item.PotonganHargaVendor;
            detail.TotalHarga          = detail.Harga - detail.PotonganHarga;
            detail.Jumlah              = item.Jumlah;
            detail.Sisa                = detail.Jumlah;

            ViewStateListDetail.Add(detail);
        }
        ViewState["ViewStateListDetail"] = ViewStateListDetail;

        TextBoxKeterangan.Text    = poProduksiProduk.Keterangan;
        TextBoxBiayaLainLain.Text = poProduksiProduk.BiayaLainLain.ToString();
        TextBoxPotonganPO.Text    = poProduksiProduk.PotonganPOProduksiProduk.ToString();
        LoadData();

        decimal subtotal = (LabelTotalSubtotal.Text.ToDecimal() + poProduksiProduk.BiayaLainLain.Value - poProduksiProduk.PotonganPOProduksiProduk.Value);
        decimal tax      = subtotal * HiddenFieldTax.Value.ToDecimal();

        TextBoxTax.Text        = tax.ToFormatHarga();
        TextBoxGrandtotal.Text = (subtotal + tax).ToFormatHarga();

        CariHargaSupplierVendor();
    }