Esempio n. 1
0
    private void LoadData()
    {
        PenggunaLogin Pengguna = (PenggunaLogin)Session["PenggunaLogin"];

        //Literal LiteralChart = (Literal)this.Page.Master.FindControl("LiteralChart");
        LiteralChart.Text = string.Empty;

        Konfigurasi_Class Konfigurasi_Class = new Konfigurasi_Class(Pengguna.IDGrupPengguna);

        DateTime[] BulanIni  = new DateTime[2];
        DateTime[] BulanLalu = new DateTime[2];
        DateTime[] HariIni   = new DateTime[2];
        DateTime[] Kemarin   = new DateTime[2];

        BulanIni  = Pengaturan.BulanIni();
        BulanLalu = Pengaturan.BulanSebelumnya();
        HariIni   = Pengaturan.HariIni();
        Kemarin   = Pengaturan.HariSebelumnya();

        #region Aktifitas Transaksi
        if (Konfigurasi_Class.ValidasiKonfigurasi(EnumKonfigurasi.AktifitasTransaksi))
        {
            PanelAktifitasTransaksi1.Visible = true;
            PanelAktifitasTransaksi2.Visible = true;
            PanelAktifitasTransaksi3.Visible = true;

            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                var _transaksiBulanIni = db.TBTransaksis
                                         .Where(item =>
                                                item.TanggalTransaksi.Value.Date >= BulanIni[0] &&
                                                item.TanggalTransaksi.Value.Date <= BulanIni[1] &&
                                                item.IDStatusTransaksi == 5)
                                         .Select(item => new
                {
                    item.IDTempat,
                    item.TanggalTransaksi,
                    item.JumlahProduk,
                    item.GrandTotal
                }).ToArray();

                if (DropDownListTempat.SelectedValue != "0")
                {
                    _transaksiBulanIni = _transaksiBulanIni.Where(item => item.IDTempat == DropDownListTempat.SelectedValue.ToInt()).ToArray();
                }

                var _transaksiHariIni = _transaksiBulanIni
                                        .Where(item =>
                                               item.TanggalTransaksi.Value.Date >= HariIni[0] &&
                                               item.TanggalTransaksi.Value.Date <= HariIni[1]).ToArray();

                var _transaksiKemarin = _transaksiBulanIni
                                        .Where(item =>
                                               item.TanggalTransaksi.Value.Date >= Kemarin[0] &&
                                               item.TanggalTransaksi.Value.Date <= Kemarin[1]).ToArray();

                var _transaksiBulanLalu = db.TBTransaksis
                                          .Where(item =>
                                                 item.TanggalTransaksi.Value.Date >= BulanLalu[0] &&
                                                 item.TanggalTransaksi.Value.Date <= BulanLalu[1] &&
                                                 item.IDStatusTransaksi == 5)
                                          .Select(item => new
                {
                    item.IDTempat,
                    item.TanggalTransaksi,
                    item.JumlahProduk,
                    item.GrandTotal
                }).ToArray();

                if (DropDownListTempat.SelectedValue != "0")
                {
                    _transaksiBulanLalu = _transaksiBulanLalu.Where(item => item.IDTempat == DropDownListTempat.SelectedValue.ToInt()).ToArray();
                }

                var _pelangganBulanIni = db.TBPelanggans
                                         .Where(item =>
                                                item.TanggalDaftar.Value.Date >= BulanIni[0] &&
                                                item.TanggalDaftar.Value.Date <= BulanIni[1]).ToArray();

                var _pelangganHariIni = _pelangganBulanIni
                                        .Where(item =>
                                               item.TanggalDaftar.Value.Date >= HariIni[0] &&
                                               item.TanggalDaftar.Value.Date <= HariIni[1]).Count();

                var _pelangganKemarin = _pelangganBulanIni
                                        .Where(item =>
                                               item.TanggalDaftar.Value.Date >= Kemarin[0] &&
                                               item.TanggalDaftar.Value.Date <= Kemarin[1]).Count();

                var _pelangganBulanLalu = db.TBPelanggans
                                          .Where(item =>
                                                 item.TanggalDaftar.Value.Date >= BulanLalu[0] &&
                                                 item.TanggalDaftar.Value.Date <= BulanLalu[1]).Count();

                #region GRAFIK TRANSAKSI
                string ResultTransaksi = string.Empty;

                ResultTransaksi += "var dataChart = [";

                var _dataTransaksi = _transaksiBulanIni
                                     .GroupBy(item => item.TanggalTransaksi.Value.Date)
                                     .Select(item => new
                {
                    Key        = item.Key,
                    GrandTotal = item.Sum(item2 => item2.GrandTotal) ?? 0
                }).ToArray();

                for (DateTime date = BulanIni[0]; date <= BulanIni[1]; date = date.AddDays(1))
                {
                    var     _transaksi  = _dataTransaksi.FirstOrDefault(item => item.Key.Date == date.Date);
                    decimal _grandTotal = 0;

                    if (_transaksi != null)
                    {
                        _grandTotal = _transaksi.GrandTotal;
                    }

                    ResultTransaksi += "{ 'y': '" + date.Day + "', 'Transaksi': " + _grandTotal + " }, ";
                }

                ResultTransaksi += "]; Morris.Area({ element: 'graph2', behaveLikeLine: true, data: dataChart, xkey: 'y', ";

                ResultTransaksi += "ykeys: ['Transaksi'], ";
                ResultTransaksi += "labels: ['Transaksi'], ";
                ResultTransaksi += "lineColors:['#0aa699'], ";
                ResultTransaksi += " parseTime: false}); eval(dataChart);";

                LiteralChart.Text += "<script>";
                LiteralChart.Text += "$(document).ready(function () { " + ResultTransaksi + " }); ";
                LiteralChart.Text += "function pageLoad(sender, args) { if (args.get_isPartialLoad()) { " + ResultTransaksi + " }}; ";
                LiteralChart.Text += "</script>";
                #endregion

                #region GRAFIK TRANSAKSI PELANGGAN
                LiteralChart.Text += "<script> $(function () { var dataChart = [";

                var dataTransaksi = _transaksiBulanIni
                                    .GroupBy(item => item.TanggalTransaksi.Value.Date)
                                    .Select(item => new
                {
                    Key    = item.Key,
                    Jumlah = item.Count()
                }).ToArray();

                var dataPelanggan = _pelangganBulanIni
                                    .GroupBy(item => item.TanggalDaftar.Value.Date)
                                    .Select(item => new
                {
                    Key    = item.Key,
                    Jumlah = item.Count()
                }).ToArray();

                for (DateTime date = BulanIni[0]; date <= BulanIni[1]; date = date.AddDays(1))
                {
                    var _transaksi       = dataTransaksi.FirstOrDefault(item => item.Key.Date == date.Date);
                    int _jumlahTransaksi = 0;

                    if (_transaksi != null)
                    {
                        _jumlahTransaksi = _transaksi.Jumlah;
                    }

                    var _pelanggan       = dataPelanggan.FirstOrDefault(item => item.Key.Date == date.Date);
                    int _jumlahPelanggan = 0;

                    if (_pelanggan != null)
                    {
                        _jumlahPelanggan = _pelanggan.Jumlah;
                    }

                    LiteralChart.Text += "{ 'y': '" + date.Day + "', 'Transaksi': " + _jumlahTransaksi + ", 'Pelanggan': " + _jumlahPelanggan + " },";
                }

                LiteralChart.Text += "]; Morris.Line({ element: 'graph', data: dataChart, xkey: 'y',";

                LiteralChart.Text += "ykeys: ['Transaksi', 'Pelanggan'],";
                LiteralChart.Text += "labels: ['Transaksi', 'Pelanggan'],";
                LiteralChart.Text += "lineColors:['#0aa699','#d1dade'],";

                LiteralChart.Text += " parseTime: false}); eval(dataChart); });";
                LiteralChart.Text += "</script>";
                #endregion

                var GrandTotalBulanIni  = _transaksiBulanIni.Sum(item => item.GrandTotal);
                var GrandTotalBulanLalu = _transaksiBulanLalu.Sum(item => item.GrandTotal);

                if (GrandTotalBulanIni >= GrandTotalBulanLalu)
                {
                    LabelAktifitasBulanIni.Attributes.Add("class", "label label-success");
                    LabelAktifitasBulanLalu.Attributes.Add("class", "label label-danger");
                }
                else
                {
                    LabelAktifitasBulanIni.Attributes.Add("class", "label label-danger");
                    LabelAktifitasBulanLalu.Attributes.Add("class", "label label-success");
                }

                LabelPenjualanBulanIni.Text = GrandTotalBulanIni.ToFormatHarga();
                LabelQuantityBulanIni.Text  = _transaksiBulanIni.Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                LabelPelangganBulanIni.Text = _pelangganBulanIni.Count().ToFormatHargaBulat();
                LabelTransaksiBulanIni.Text = _transaksiBulanIni.Count().ToFormatHargaBulat();

                LabelPenjualanBulanLalu.Text = GrandTotalBulanLalu.ToFormatHarga();
                LabelQuantityBulanLalu.Text  = _transaksiBulanLalu.Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                LabelPelangganBulanLalu.Text = _pelangganBulanLalu.ToFormatHarga();
                LabelTransaksiBulanLalu.Text = _transaksiBulanLalu.Count().ToFormatHargaBulat();

                var GrandTotalHariIni = _transaksiHariIni.Sum(item => item.GrandTotal);
                var GrandTotalKemarin = _transaksiKemarin.Sum(item => item.GrandTotal);

                if (GrandTotalHariIni >= GrandTotalKemarin)
                {
                    LabelAktifitasHariIni.Attributes.Add("class", "label label-success");
                    LabelAktifitasKemarin.Attributes.Add("class", "label label-danger");
                }
                else
                {
                    LabelAktifitasHariIni.Attributes.Add("class", "label label-danger");
                    LabelAktifitasKemarin.Attributes.Add("class", "label label-success");
                }

                LabelPenjualanHariIni.Text = GrandTotalHariIni.ToFormatHarga();
                LabelQuantityHariIni.Text  = _transaksiHariIni.Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                LabelPelangganHariIni.Text = _pelangganHariIni.ToFormatHarga();
                LabelTransaksiHariIni.Text = _transaksiHariIni.Count().ToFormatHargaBulat();

                LabelPenjualanKemarin.Text = GrandTotalKemarin.ToFormatHarga();
                LabelQuantityKemarin.Text  = _transaksiKemarin.Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                LabelPelangganKemarin.Text = _pelangganKemarin.ToFormatHarga();
                LabelTransaksiKemarin.Text = _transaksiKemarin.Count().ToFormatHargaBulat();
            }
        }
        else
        {
            PanelAktifitasTransaksi1.Visible = false;
            PanelAktifitasTransaksi2.Visible = false;
            PanelAktifitasTransaksi3.Visible = false;
        }
        #endregion

        #region Stok Produk Habis
        if (Konfigurasi_Class.ValidasiKonfigurasi(EnumKonfigurasi.StokProdukHabis))
        {
            panelStokProdukHabis.Visible = true;

            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                var StokProdukHabis = db.TBStokProduks
                                      .Where(item => item.Jumlah <= item.JumlahMinimum)
                                      .Select(item => new
                {
                    item.IDTempat,
                    Tempat = item.TBTempat.Nama,
                    item.TBKombinasiProduk.Nama,
                    item.Jumlah
                })
                                      .OrderBy(item => item.Jumlah)
                                      .ToArray();

                if (DropDownListTempat.SelectedValue != "0")
                {
                    StokProdukHabis = StokProdukHabis.Where(item => item.IDTempat == DropDownListTempat.SelectedValue.ToInt()).ToArray();
                }

                LabelJumlahStokProdukHabis.Text = StokProdukHabis.Count().ToFormatHargaBulat();

                RepeaterDataStokProduk.DataSource = StokProdukHabis;
                RepeaterDataStokProduk.DataBind();
            }
        }
        else
        {
            panelStokProdukHabis.Visible = false;
        }
        #endregion
    }
Esempio n. 2
0
 protected void ButtonBulanSebelumnya_Click(object sender, EventArgs e)
 {
     ViewState["TanggalAwal"]  = Pengaturan.BulanSebelumnya()[0];
     ViewState["TanggalAkhir"] = Pengaturan.BulanSebelumnya()[1];
     LoadData();
 }
Esempio n. 3
0
 protected void ButtonBulanSebelumnya_Click(object sender, EventArgs e)
 {
     LoadData(Pengaturan.BulanSebelumnya()[0], Pengaturan.BulanSebelumnya()[1]);
 }
Esempio n. 4
0
    private void LoadData()
    {
        PenggunaLogin Pengguna = (PenggunaLogin)Session["PenggunaLogin"];

        Konfigurasi_Class Konfigurasi_Class = new Konfigurasi_Class(Pengguna.IDGrupPengguna);

        DateTime[] BulanIni  = new DateTime[2];
        DateTime[] BulanLalu = new DateTime[2];
        DateTime[] HariIni   = new DateTime[2];
        DateTime[] Kemarin   = new DateTime[2];

        BulanIni  = Pengaturan.BulanIni();
        BulanLalu = Pengaturan.BulanSebelumnya();
        HariIni   = Pengaturan.HariIni();
        Kemarin   = Pengaturan.HariSebelumnya();

        #region Aktifitas Transaksi
        if (Konfigurasi_Class.ValidasiKonfigurasi(EnumKonfigurasi.AktifitasTransaksi))
        {
            PanelAktifitasTransaksi1.Visible = true;
            //////PanelAktifitasTransaksi2.Visible = true;
            PanelAktifitasTransaksi3.Visible = true;

            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                var _transaksi = db.TBTransaksis
                                 .Where(item => item.IDTempat == Pengguna.IDTempat &&
                                        item.TanggalOperasional.Value.Date >= BulanLalu[0] &&
                                        item.TanggalOperasional.Value.Date <= BulanIni[1] &&
                                        item.IDStatusTransaksi == (int)EnumStatusTransaksi.Complete)
                                 .Select(item => new
                {
                    item.IDTempat,
                    item.TanggalOperasional,
                    item.JumlahProduk,
                    item.GrandTotal
                }).ToArray();

                var _transaksiHariIni = _transaksi
                                        .Where(item =>
                                               item.TanggalOperasional.Value.Date >= HariIni[0] &&
                                               item.TanggalOperasional.Value.Date <= HariIni[1]).ToArray();

                var _transaksiKemarin = _transaksi
                                        .Where(item =>
                                               item.TanggalOperasional.Value.Date >= Kemarin[0] &&
                                               item.TanggalOperasional.Value.Date <= Kemarin[1]).ToArray();

                var _pelanggan = db.TBPelanggans
                                 .Where(item =>
                                        item.TanggalDaftar.Value.Date >= BulanLalu[0] &&
                                        item.TanggalDaftar.Value.Date <= BulanIni[1]).ToArray();

                var _pelangganBulanLalu = db.TBPelanggans
                                          .Where(item =>
                                                 item.TanggalDaftar.Value.Date >= BulanLalu[0] &&
                                                 item.TanggalDaftar.Value.Date <= BulanLalu[1]).Count();

                #region GRAFIK TRANSAKSI
                string ResultTransaksi = string.Empty;

                var _dataTransaksi = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanIni[0] && item.TanggalOperasional.Value.Date <= BulanIni[1])
                                     .GroupBy(item => item.TanggalOperasional.Value.Day)
                                     .Select(item => new
                {
                    Key        = item.Key,
                    GrandTotal = item.Sum(item2 => item2.GrandTotal) ?? 0
                }).ToArray();

                Random rd = new Random();

                string[] labelsXTanggal = Manage.GetRangeDayOfMonth(Manage.GetJamServer());

                ReportChart_Class     ClassReport = new ReportChart_Class();
                ReportChartLine_Class LineSingle  = new ReportChartLine_Class();
                LineSingle.Label = "My dataset";
                LineSingle.Color = Manage.GetHexadecimalSAP(EnumColorSAP.Hue1);
                LineSingle.Data  = new List <string>();
                foreach (var item in labelsXTanggal)
                {
                    if (_dataTransaksi.FirstOrDefault(item2 => item2.Key.ToString() == item) != null)
                    {
                        LineSingle.Data.Add(_dataTransaksi.FirstOrDefault(item2 => item2.Key.ToString() == item).GrandTotal.ToString());
                    }
                    else
                    {
                        LineSingle.Data.Add("0");
                    }
                }
                LiteralChartPenjualan.Text = ClassReport.GetChartTrendAnalysis("CanvasChartPenjualan", string.Empty, "Tanggal", "Sales", labelsXTanggal, LineSingle);
                #endregion

                #region GRAFIK TRANSAKSI PELANGGAN
                //LiteralChart.Text += "<script> $(function () { var dataChart = [";

                //var dataTransaksi = _transaksiBulanIni
                //    .GroupBy(item => item.TanggalOperasional.Value.Date)
                //    .Select(item => new
                //    {
                //        Key = item.Key,
                //        Jumlah = item.Count()
                //    }).ToArray();

                //var dataPelanggan = _pelangganBulanIni
                //    .GroupBy(item => item.TanggalDaftar.Value.Date)
                //    .Select(item => new
                //    {
                //        Key = item.Key,
                //        Jumlah = item.Count()
                //    }).ToArray();

                //for (DateTime date = BulanIni[0]; date <= BulanIni[1]; date = date.AddDays(1))
                //{
                //    var _transaksi = dataTransaksi.FirstOrDefault(item => item.Key.Date == date.Date);
                //    int _jumlahTransaksi = 0;

                //    if (_transaksi != null)
                //        _jumlahTransaksi = _transaksi.Jumlah;

                //    var _pelanggan = dataPelanggan.FirstOrDefault(item => item.Key.Date == date.Date);
                //    int _jumlahPelanggan = 0;

                //    if (_pelanggan != null)
                //        _jumlahPelanggan = _pelanggan.Jumlah;

                //    LiteralChart.Text += "{ 'y': '" + date.Day + "', 'Transaksi': " + _jumlahTransaksi + ", 'Pelanggan': " + _jumlahPelanggan + " },";
                //}

                //LiteralChart.Text += "]; Morris.Line({ element: 'graph', data: dataChart, xkey: 'y',";

                //LiteralChart.Text += "ykeys: ['Transaksi', 'Pelanggan'],";
                //LiteralChart.Text += "labels: ['Transaksi', 'Pelanggan'],";
                //LiteralChart.Text += "lineColors:['#0aa699','#d1dade'],";

                //LiteralChart.Text += " parseTime: false}); eval(dataChart); });";
                //LiteralChart.Text += "</script>";
                #endregion

                LabelPenjualanBulanIni.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanIni[0] && item.TanggalOperasional.Value.Date <= BulanIni[1]).Sum(item => item.GrandTotal).ToFormatHarga();
                LabelQuantityBulanIni.Text  = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanIni[0] && item.TanggalOperasional.Value.Date <= BulanIni[1]).Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                LabelPelangganBulanIni.Text = _pelanggan.Where(item => item.TanggalDaftar.Value.Date >= BulanIni[0] && item.TanggalDaftar.Value.Date <= BulanIni[1]).Count().ToFormatHargaBulat();
                LabelTransaksiBulanIni.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanIni[0] && item.TanggalOperasional.Value.Date <= BulanIni[1]).Count().ToFormatHargaBulat();

                LabelPenjualanBulanLalu.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanLalu[0] && item.TanggalOperasional.Value.Date <= BulanLalu[1]).Sum(item => item.GrandTotal).ToFormatHarga();
                LabelQuantityBulanLalu.Text  = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanLalu[0] && item.TanggalOperasional.Value.Date <= BulanLalu[1]).Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                LabelPelangganBulanLalu.Text = _pelanggan.Where(item => item.TanggalDaftar.Value.Date >= BulanLalu[0] && item.TanggalDaftar.Value.Date <= BulanLalu[1]).ToFormatHargaBulat();
                LabelTransaksiBulanLalu.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanLalu[0] && item.TanggalOperasional.Value.Date <= BulanLalu[1]).Count().ToFormatHargaBulat();

                LabelPenjualanHariIni.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= HariIni[0] && item.TanggalOperasional.Value.Date <= HariIni[1]).Sum(item => item.GrandTotal).ToFormatHarga();
                LabelQuantityHariIni.Text  = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= HariIni[0] && item.TanggalOperasional.Value.Date <= HariIni[1]).Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                LabelPelangganHariIni.Text = _pelanggan.Where(item => item.TanggalDaftar.Value.Date >= HariIni[0] && item.TanggalDaftar.Value.Date <= HariIni[1]).Count().ToFormatHargaBulat();
                LabelTransaksiHariIni.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= HariIni[0] && item.TanggalOperasional.Value.Date <= HariIni[1]).Count().ToFormatHargaBulat();

                LabelPenjualanKemarin.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= Kemarin[0] && item.TanggalOperasional.Value.Date <= Kemarin[1]).Sum(item => item.GrandTotal).ToFormatHarga();
                LabelQuantityKemarin.Text  = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= Kemarin[0] && item.TanggalOperasional.Value.Date <= Kemarin[1]).Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                LabelPelangganKemarin.Text = _pelanggan.Where(item => item.TanggalDaftar.Value.Date >= Kemarin[0] && item.TanggalDaftar.Value.Date <= Kemarin[1]).Count().ToFormatHargaBulat();
                LabelTransaksiKemarin.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= Kemarin[0] && item.TanggalOperasional.Value.Date <= Kemarin[1]).Count().ToFormatHargaBulat();
            }
        }
        else
        {
            PanelAktifitasTransaksi1.Visible = false;
            //////PanelAktifitasTransaksi2.Visible = false;
            PanelAktifitasTransaksi3.Visible = false;
        }
        #endregion

        #region Transaksi Terakhir
        if (Konfigurasi_Class.ValidasiKonfigurasi(EnumKonfigurasi.TransaksiTerakhir))
        {
            panelTransaksiTerakhir.Visible = true;

            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                var TransaksiTerakhir = db.TBTransaksis
                                        .Where(item => item.IDStatusTransaksi.HasValue && item.IDTempat == Pengguna.IDTempat)
                                        .Select(item => new
                {
                    item.IDTransaksi,
                    item.IDTempat,
                    item.Nomor,
                    item.TanggalTransaksi,
                    Persentase = Persentase(item.IDStatusTransaksi.Value, item.TBStatusTransaksi.Nama),
                    item.JumlahProduk,
                    item.GrandTotal
                }).OrderByDescending(item => item.Nomor).Take(10).ToArray();

                RepeaterOrder.DataSource = TransaksiTerakhir;
                RepeaterOrder.DataBind();
            }
        }
        else
        {
            panelTransaksiTerakhir.Visible = false;
        }
        #endregion

        LoadStokHabis(Konfigurasi_Class);

        #region PO Bahan BakuJatuh Tempo

        if (Konfigurasi_Class.ValidasiKonfigurasi(EnumKonfigurasi.POBahanBakuJatuhTempo))
        {
            PanelPOBahanBakuJatuhTempo.Visible = true;

            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                decimal batas = db.TBStoreKonfigurasis.FirstOrDefault(item => item.IDStoreKonfigurasi == (int)EnumStoreKonfigurasi.JumlahHariSebelumJatuhTempo).Pengaturan.ToDecimal();
                RepeaterPOBahanBakuJatuhTempo.DataSource = db.TBPOProduksiBahanBakus
                                                           .Where(item => item.IDTempat == Pengguna.IDTempat && 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),
                    item.IDPOProduksiBahanBaku,
                    item.TBSupplier.Nama,
                    item.Tanggal,
                    item.TanggalJatuhTempo,
                })
                                                           .OrderBy(item => item.Tanggal)
                                                           .ToArray();
                RepeaterPOBahanBakuJatuhTempo.DataBind();
            }
        }
        else
        {
            PanelPOBahanBakuJatuhTempo.Visible = false;
        }
        #endregion

        #region PO Bahan BakuJatuh Tempo

        if (Konfigurasi_Class.ValidasiKonfigurasi(EnumKonfigurasi.POProdukJatuhTempo))
        {
            PanelPOBahanBakuJatuhTempo.Visible = true;

            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                decimal batas = db.TBStoreKonfigurasis.FirstOrDefault(item => item.IDStoreKonfigurasi == (int)EnumStoreKonfigurasi.JumlahHariSebelumJatuhTempo).Pengaturan.ToDecimal();
                RepeaterPOProdukJatuhTempo.DataSource = db.TBPOProduksiProduks
                                                        .Where(item => item.IDTempat == Pengguna.IDTempat && 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),
                    item.IDPOProduksiProduk,
                    item.TBVendor.Nama,
                    item.Tanggal,
                    item.TanggalJatuhTempo
                })
                                                        .OrderBy(item => item.Tanggal)
                                                        .ToArray();
                RepeaterPOProdukJatuhTempo.DataBind();
            }
        }
        else
        {
            PanelPOProdukJatuhTempo.Visible = false;
        }
        #endregion
    }
Esempio n. 5
0
    private void LoadData()
    {
        PenggunaLogin Pengguna = (PenggunaLogin)Session["PenggunaLogin"];

        Konfigurasi_Class Konfigurasi_Class = new Konfigurasi_Class(Pengguna.IDGrupPengguna);

        DateTime[] BulanIni  = new DateTime[2];
        DateTime[] BulanLalu = new DateTime[2];
        DateTime[] HariIni   = new DateTime[2];
        DateTime[] Kemarin   = new DateTime[2];

        BulanIni  = Pengaturan.BulanIni();
        BulanLalu = Pengaturan.BulanSebelumnya();
        HariIni   = Pengaturan.HariIni();
        Kemarin   = Pengaturan.HariSebelumnya();

        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            var _transaksi = db.TBTransaksis
                             .Where(item => item.IDTempat == Pengguna.IDTempat &&
                                    item.TanggalOperasional.Value.Date >= BulanIni[0] &&
                                    item.TanggalOperasional.Value.Date <= BulanIni[1] &&
                                    item.IDStatusTransaksi == (int)EnumStatusTransaksi.Complete)
                             .Select(item => new
            {
                item.IDTempat,
                item.IDTransaksi,
                item.TanggalOperasional,
                Pelanggan = item.TBPelanggan.NamaLengkap,
                item.JumlahProduk,
                item.GrandTotal
            }).ToArray();

            var _prooduk = db.TBTransaksiDetails
                           .Where(item => item.TBTransaksi.IDTempat == Pengguna.IDTempat &&
                                  item.TBTransaksi.TanggalOperasional.Value.Date >= BulanIni[0] &&
                                  item.TBTransaksi.TanggalOperasional.Value.Date <= BulanIni[1] &&
                                  item.TBTransaksi.IDStatusTransaksi == (int)EnumStatusTransaksi.Complete)
                           .Select(item => new
            {
                item.TBKombinasiProduk.KodeKombinasiProduk,
                Produk        = item.TBKombinasiProduk.TBProduk.Nama,
                AtributProduk = item.TBKombinasiProduk.TBAtributProduk.Nama,
                JumlahProduk  = item.Quantity,
                Subtotal      = item.Subtotal
            }).ToArray();

            #region Aktifitas Transaksi
            if (Konfigurasi_Class.ValidasiKonfigurasi(EnumKonfigurasi.AktifitasTransaksi))
            {
                //////PanelAktifitasTransaksi1.Visible = true;
                //////PanelAktifitasTransaksi2.Visible = true;
                PanelAktifitasTransaksi3.Visible = true;

                string[]              labelsXTanggal = Manage.GetRangeDayOfMonth(Manage.GetJamServer());
                ReportChart_Class     ClassReport    = new ReportChart_Class();
                ReportChartLine_Class LineSingle     = new ReportChartLine_Class();
                var SourceGrafik = _transaksi
                                   .GroupBy(item => item.TanggalOperasional.Value.Day)
                                   .Select(item => new
                {
                    Key          = item.Key,
                    Transaksi    = item.Count(),
                    GrandTotal   = item.Sum(item2 => item2.GrandTotal) ?? 0,
                    JumlahProduk = item.Sum(item2 => item2.JumlahProduk) ?? 0
                }).ToArray();

                #region GRAFIK TRANSAKSI
                ReportChartLine_Class LineSinglePenjualan = new ReportChartLine_Class();
                LineSinglePenjualan.Color = Manage.GetHexadecimalSAP(EnumColorSAP.Hue1);
                LineSinglePenjualan.Data  = new List <string>();
                foreach (var item in labelsXTanggal)
                {
                    if (SourceGrafik.FirstOrDefault(item2 => item2.Key.ToString() == item) != null)
                    {
                        LineSinglePenjualan.Data.Add(SourceGrafik.FirstOrDefault(item2 => item2.Key.ToString() == item).GrandTotal.ToString());
                    }
                    else
                    {
                        LineSinglePenjualan.Data.Add("0");
                    }
                }
                LiteralChartPenjualan.Text = ClassReport.GetChartTrendAnalysis("CanvasChartPenjualan", string.Empty, "Tanggal", "Sales", labelsXTanggal, LineSinglePenjualan);
                #endregion

                #region GRAFIK TRANSAKSI
                ReportChartLine_Class LineSingleTransaksi = new ReportChartLine_Class();
                LineSingleTransaksi.Color = Manage.GetHexadecimalSAP(EnumColorSAP.Hue1);
                LineSingleTransaksi.Data  = new List <string>();
                foreach (var item in labelsXTanggal)
                {
                    if (SourceGrafik.FirstOrDefault(item2 => item2.Key.ToString() == item) != null)
                    {
                        LineSingleTransaksi.Data.Add(SourceGrafik.FirstOrDefault(item2 => item2.Key.ToString() == item).Transaksi.ToString());
                    }
                    else
                    {
                        LineSingleTransaksi.Data.Add("0");
                    }
                }
                LiteralChartTransaksi.Text = ClassReport.GetChartTrendAnalysis("CanvasChartTransaksi", string.Empty, "Tanggal", "Transaksi", labelsXTanggal, LineSingleTransaksi);
                #endregion

                #region GRAFIK JUMLAH PRODUK
                ReportChartLine_Class LineSingleJumlahProduk = new ReportChartLine_Class();
                LineSingleJumlahProduk.Color = Manage.GetHexadecimalSAP(EnumColorSAP.Hue1);
                LineSingleJumlahProduk.Data  = new List <string>();
                foreach (var item in labelsXTanggal)
                {
                    if (SourceGrafik.FirstOrDefault(item2 => item2.Key.ToString() == item) != null)
                    {
                        LineSingleJumlahProduk.Data.Add(SourceGrafik.FirstOrDefault(item2 => item2.Key.ToString() == item).JumlahProduk.ToString());
                    }
                    else
                    {
                        LineSingleJumlahProduk.Data.Add("0");
                    }
                }
                LiteralChartJumlahProduk.Text = ClassReport.GetChartTrendAnalysis("CanvasChartJumlahProduk", string.Empty, "Tanggal", "Jumlah", labelsXTanggal, LineSingleJumlahProduk);
                #endregion

                LabelPenjualanBulanIni.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanIni[0] && item.TanggalOperasional.Value.Date <= BulanIni[1]).Sum(item => item.GrandTotal).ToFormatHarga();
                LabelQuantityBulanIni.Text  = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanIni[0] && item.TanggalOperasional.Value.Date <= BulanIni[1]).Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                //LabelPelangganBulanIni.Text = _pelanggan.Where(item => item.TanggalDaftar.Value.Date >= BulanIni[0] && item.TanggalDaftar.Value.Date <= BulanIni[1]).Count().ToFormatHargaBulat();
                LabelTransaksiBulanIni.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanIni[0] && item.TanggalOperasional.Value.Date <= BulanIni[1]).Count().ToFormatHargaBulat();

                //LabelPenjualanBulanLalu.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanLalu[0] && item.TanggalOperasional.Value.Date <= BulanLalu[1]).Sum(item => item.GrandTotal).ToFormatHarga();
                //LabelQuantityBulanLalu.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanLalu[0] && item.TanggalOperasional.Value.Date <= BulanLalu[1]).Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                //LabelPelangganBulanLalu.Text = _pelanggan.Where(item => item.TanggalDaftar.Value.Date >= BulanLalu[0] && item.TanggalDaftar.Value.Date <= BulanLalu[1]).ToFormatHargaBulat();
                //LabelTransaksiBulanLalu.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= BulanLalu[0] && item.TanggalOperasional.Value.Date <= BulanLalu[1]).Count().ToFormatHargaBulat();

                //LabelPenjualanHariIni.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= HariIni[0] && item.TanggalOperasional.Value.Date <= HariIni[1]).Sum(item => item.GrandTotal).ToFormatHarga();
                //LabelQuantityHariIni.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= HariIni[0] && item.TanggalOperasional.Value.Date <= HariIni[1]).Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                //LabelPelangganHariIni.Text = _pelanggan.Where(item => item.TanggalDaftar.Value.Date >= HariIni[0] && item.TanggalDaftar.Value.Date <= HariIni[1]).Count().ToFormatHargaBulat();
                //LabelTransaksiHariIni.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= HariIni[0] && item.TanggalOperasional.Value.Date <= HariIni[1]).Count().ToFormatHargaBulat();

                //LabelPenjualanKemarin.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= Kemarin[0] && item.TanggalOperasional.Value.Date <= Kemarin[1]).Sum(item => item.GrandTotal).ToFormatHarga();
                //LabelQuantityKemarin.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= Kemarin[0] && item.TanggalOperasional.Value.Date <= Kemarin[1]).Sum(item => item.JumlahProduk).ToFormatHargaBulat();
                //LabelPelangganKemarin.Text = _pelanggan.Where(item => item.TanggalDaftar.Value.Date >= Kemarin[0] && item.TanggalDaftar.Value.Date <= Kemarin[1]).Count().ToFormatHargaBulat();
                //LabelTransaksiKemarin.Text = _transaksi.Where(item => item.TanggalOperasional.Value.Date >= Kemarin[0] && item.TanggalOperasional.Value.Date <= Kemarin[1]).Count().ToFormatHargaBulat();
            }
            else
            {
                //////PanelAktifitasTransaksi1.Visible = false;
                //////PanelAktifitasTransaksi2.Visible = false;
                PanelAktifitasTransaksi3.Visible = false;
            }
            #endregion

            #region Transaksi Terakhir
            if (Konfigurasi_Class.ValidasiKonfigurasi(EnumKonfigurasi.TransaksiTerakhir))
            {
                panelTransaksiTerakhir.Visible = true;

                RepeaterTopTransaksi.DataSource = _transaksi.OrderByDescending(item => item.GrandTotal).Take(5);
                RepeaterTopTransaksi.DataBind();

                RepeaterTopProduk.DataSource = _prooduk.OrderByDescending(item => item.JumlahProduk).Take(5);
                RepeaterTopProduk.DataBind();
            }
            else
            {
                panelTransaksiTerakhir.Visible = false;
            }
            #endregion

            LoadStokHabis(Konfigurasi_Class);

            #region PO Bahan BakuJatuh Tempo

            if (Konfigurasi_Class.ValidasiKonfigurasi(EnumKonfigurasi.POBahanBakuJatuhTempo))
            {
                PanelPOBahanBakuJatuhTempo.Visible = true;

                decimal batas = db.TBStoreKonfigurasis.FirstOrDefault(item => item.IDStoreKonfigurasi == (int)EnumStoreKonfigurasi.JumlahHariSebelumJatuhTempo).Pengaturan.ToDecimal();
                RepeaterPOBahanBakuJatuhTempo.DataSource = db.TBPOProduksiBahanBakus
                                                           .Where(item => item.IDTempat == Pengguna.IDTempat && 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),
                    item.IDPOProduksiBahanBaku,
                    item.TBSupplier.Nama,
                    item.Tanggal,
                    item.TanggalJatuhTempo,
                })
                                                           .OrderBy(item => item.Tanggal)
                                                           .ToArray();
                RepeaterPOBahanBakuJatuhTempo.DataBind();
            }
            else
            {
                PanelPOBahanBakuJatuhTempo.Visible = false;
            }
            #endregion

            #region PO Bahan BakuJatuh Tempo

            if (Konfigurasi_Class.ValidasiKonfigurasi(EnumKonfigurasi.POProdukJatuhTempo))
            {
                PanelPOBahanBakuJatuhTempo.Visible = true;

                decimal batas = db.TBStoreKonfigurasis.FirstOrDefault(item => item.IDStoreKonfigurasi == (int)EnumStoreKonfigurasi.JumlahHariSebelumJatuhTempo).Pengaturan.ToDecimal();
                RepeaterPOProdukJatuhTempo.DataSource = db.TBPOProduksiProduks
                                                        .Where(item => item.IDTempat == Pengguna.IDTempat && 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),
                    item.IDPOProduksiProduk,
                    item.TBVendor.Nama,
                    item.Tanggal,
                    item.TanggalJatuhTempo
                })
                                                        .OrderBy(item => item.Tanggal)
                                                        .ToArray();
                RepeaterPOProdukJatuhTempo.DataBind();
            }
            else
            {
                PanelPOProdukJatuhTempo.Visible = false;
            }
        }
        #endregion
    }
Esempio n. 6
0
 protected void ButtonBulanLalu_Click(object sender, EventArgs e)
 {
     ExportLaporan(Pengaturan.BulanSebelumnya()[0], Pengaturan.BulanSebelumnya()[1]);
 }
Esempio n. 7
0
 protected void ButtonBulanSebelumnya_Click(object sender, EventArgs e)
 {
     TextBoxTanggalAwal.Text  = Pengaturan.BulanSebelumnya()[0].ToFormatDateMedium();
     TextBoxTanggalAkhir.Text = Pengaturan.BulanSebelumnya()[1].ToFormatDateMedium();
     LoadData();
 }