예제 #1
0
    //CASE 6
    private string GenerateStoreKey()
    {
        try
        {
            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                StoreKey_Class ClassStoreKey = new StoreKey_Class(db, true);
                Store_Class    ClassStore    = new Store_Class(db);

                ClassStoreKey.Generate();

                return(JsonConvert.SerializeObject(new WebServiceResult
                {
                    EnumWebService = (int)EnumWebService.Success,
                    Pesan = "[BERHASIL GENERATE STORE KEY] : " + ClassStore.Data().Nama
                }, Formatting.Indented));
            }
        }
        catch (Exception ex)
        {
            LogError_Class Error = new LogError_Class(ex, "WebServiceTomahawk_GenerateStoreKey");

            return(JsonConvert.SerializeObject(new WebServiceResult
            {
                EnumWebService = (int)EnumWebService.Exception,
                Pesan = ex.Message
            }, Formatting.Indented));
        }
    }
예제 #2
0
    public void Generate()
    {
        if (db.TBStoreKeys.Count(item => item.IsAktif == false) == 0)
        {
            Store_Class           ClassStore           = new Store_Class(db, true);
            PengirimanEmail_Class PengirimanEmailClass = new PengirimanEmail_Class(db, true);
            List <TBStoreKey>     ListStoreKey         = new List <TBStoreKey>();

            var Data = db.TBStoreKeys.ToArray();

            var Tanggal = DateTime.Now.AddMonths(-1);

            while (ListStoreKey.Count < 12)
            {
                var Key = Guid.NewGuid();
                Tanggal = Tanggal.AddMonths(1);

                if (ListStoreKey.FirstOrDefault(item => item.IDStoreKey == Key) == null && Data.FirstOrDefault(item => item.IDStoreKey == Key || item.TanggalKey.Date == Tanggal.Date) == null)
                {
                    ListStoreKey.Add(new TBStoreKey
                    {
                        IDStore = 1,
                        //IDPenggunaAktif
                        IDStoreKey = Key,
                        TanggalKey = Tanggal
                                     //IsAktif
                                     //TanggalAktif
                    });
                }
            }

            db.TBStoreKeys.InsertAllOnSubmit(ListStoreKey);
            db.SubmitChanges();

            #region KIRIM EMAIL STORE KEY
            string Pesan = "Dear All,<br/><br/>Berikut Store Key untuk " + ClassStore.Data().Nama + " : <br/><br/>";

            foreach (var item in ListStoreKey)
            {
                Pesan += "<b>" + item.TanggalKey.ToFormatTanggal() + "</b><br/>" + item.IDStoreKey + "<br/><br/>";
            }

            PengirimanEmailClass.Kirim("*****@*****.**", "Store Key " + ClassStore.Data().Nama, Pesan);
            #endregion
        }
    }
예제 #3
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                Store_Class ClassStore = new Store_Class(db);

                if (!string.IsNullOrWhiteSpace(Request.QueryString["id"]) && !string.IsNullOrWhiteSpace(Request.QueryString["month"]) && !string.IsNullOrWhiteSpace(Request.QueryString["year"]))
                {
                    var DataStore = ClassStore.Data();
                    LabelNamaStore.Text   = DataStore.Nama;
                    LabelAlamatStore.Text = DataStore.Alamat;

                    //cari kategori tempat sesuai dengan yang dicari
                    var KategoriTempatDB = db.TBKategoriTempats.FirstOrDefault(item => item.IDKategoriTempat.ToString() == Request.QueryString["id"].ToString());

                    //cari forecast seluruh store dengan IDKategoriTempat yang sesuai
                    var forecastDB = db.TBForecasts.Where(item => item.TBTempat.IDKategoriTempat == KategoriTempatDB.IDKategoriTempat).ToArray();

                    var hasil = db.TBTransaksis.AsEnumerable()
                                .Where(item => item.TBTempat.TBKategoriTempat.IDKategoriTempat.ToString() == Request.QueryString["id"].ToString() &&
                                       item.TanggalTransaksi.Value.Year == int.Parse(Request.QueryString["year"].ToString()) &&
                                       item.TanggalTransaksi.Value.Month.ToString() == Request.QueryString["month"].ToString() &&
                                       item.IDStatusTransaksi == (int)EnumStatusTransaksi.Complete)
                                .GroupBy(item => new
                    {
                        IDTempat = item.IDTempat,
                        Tempat   = item.TBTempat.Nama,
                        item.TanggalTransaksi,
                        NamaPenggunaTransaksi = item.TBPengguna.NamaLengkap
                    }).Select(item => new
                    {
                        item.Key,
                        Qty              = item.Sum(item2 => item2.JumlahProduk),
                        ActualIncome     = item.Sum(item2 => item2.GrandTotal),
                        ForecastIncome   = forecastDB.FirstOrDefault(item2 => item2.Tanggal.Date == item.Key.TanggalTransaksi.Value.Date) == null ? 0 : forecastDB.FirstOrDefault(item2 => item2.Tanggal.Date == item.Key.TanggalTransaksi.Value.Date).Nominal,
                        ForecastQuantity = forecastDB.FirstOrDefault(item2 => item2.Tanggal.Date == item.Key.TanggalTransaksi.Value.Date) == null ? 0 : forecastDB.FirstOrDefault(item2 => item2.Tanggal.Date == item.Key.TanggalTransaksi.Value.Date).Quantity
                    }).ToArray().OrderBy(item => item.Key.Tempat).ThenBy(item2 => item2.Key.TanggalTransaksi);

                    RepeaterDataSales.DataSource = hasil;
                    RepeaterDataSales.DataBind();

                    if (hasil != null)
                    {
                        LabelTotalForecastQuantity.Text = hasil.Sum(item => item.ForecastQuantity).ToFormatHargaBulat();
                        LabelTotalForecastIncome.Text   = hasil.Sum(item => item.ForecastIncome).ToFormatHarga();
                        LabelTotalQty.Text          = hasil.Sum(item => item.Qty).ToFormatHargaBulat();
                        LabelTotalActualIncome.Text = hasil.Sum(item => item.ActualIncome).ToFormatHarga();

                        LabelNamaKategoriTempat.Text = KategoriTempatDB.Nama.ToUpper() + " " + DataStore.Nama.ToUpper();
                    }
                }
            }
        }
    }
예제 #4
0
    protected void ButtonPercobaanEmail_Click(object sender, EventArgs e)
    {
        using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
        {
            Store_Class ClassStore = new Store_Class(db);

            var Store = ClassStore.Data();

            try
            {
                Pengaturan.KirimEmail(TextBoxSMTPServer.Text, TextBoxSMTPPort.Text.ToInt(), TextBoxSMTPUser.Text, TextBoxSMTPPassword.Text, CheckBoxSecureSocketsLayer.Checked, true, TextBoxEmail.Text, "WIT. Management System", TextBoxPercobaanEmail.Text, "Test Email - WIT Enterprise System", "This is a test message, your server is now available to send email");
                LiteralWarning.Text = Alert_Class.Pesan(TipeAlert.Success, "mengirim test email");
            }
            catch (Exception ex)
            {
                LogError_Class LogError_Class = new LogError_Class(ex, "ButtonPercobaanEmail_Click");
                LiteralWarning.Text = Alert_Class.Pesan(TipeAlert.Danger, "mengirim test email gagal");
            }
        }
    }
예제 #5
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            using (DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext())
            {
                Store_Class ClassStore = new Store_Class(db);

                var Store = ClassStore.Data();

                if (Store != null)
                {
                    TextBoxNama.Text                   = Store.Nama;
                    TextBoxAlamat.Text                 = Store.Alamat;
                    TextBoxEmail.Text                  = Store.Email;
                    TextBoxKodePos.Text                = Store.KodePos;
                    TextBoxHandphone.Text              = Store.Handphone;
                    TextBoxTeleponLain.Text            = Store.TeleponLain;
                    TextBoxWebsite.Text                = Store.Website;
                    TextBoxSMTPServer.Text             = Store.SMTPServer;
                    TextBoxSMTPPort.Text               = Store.SMTPPort.ToString();
                    TextBoxSMTPUser.Text               = Store.SMTPUser;
                    TextBoxSMTPPassword.Text           = Store.SMTPPassword;
                    CheckBoxSecureSocketsLayer.Checked = Store.SecureSocketsLayer.Value;

                    ButtonSimpan.Text = "Ubah";
                }
                else
                {
                    ButtonSimpan.Text = "Tambah";
                }
            }

            ImageLogo.ImageUrl = "~/images/logo.jpg";
        }
    }
예제 #6
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            DataClassesDatabaseDataContext db = new DataClassesDatabaseDataContext();

            PenggunaLogin Pengguna = (PenggunaLogin)Session["PenggunaLogin"];

            Tempat_Class ClassTempat = new Tempat_Class(db);
            Store_Class  ClassStore  = new Store_Class(db);

            TBStore  Store  = ClassStore.Data();
            TBTempat Tempat = new TBTempat();

            if (!string.IsNullOrWhiteSpace(Request.QueryString["IDTempat"]))
            {
                Tempat = ClassTempat.Cari(Request.QueryString["IDTempat"].ToInt());
            }
            else
            {
                Tempat = ClassTempat.Cari(Pengguna.IDTempat);
            }

            LabelTempatStok.Text       = Tempat.Nama;
            LabelNamaStore.Text        = Store.Nama + " - " + Tempat.Nama;
            LabelAlamatStore.Text      = Tempat.Alamat;
            LabelTeleponStore.Text     = Tempat.Telepon1;
            LabelWebsite.Text          = Store.Website;
            HyperLinkEmail.Text        = Tempat.Email;
            HyperLinkEmail.NavigateUrl = Tempat.Email;

            LabelTanggalPrint.Text   = DateTime.Now.ToString("d MMMM yyyy HH:mm");
            LabelNamaPengguna.Text   = Pengguna.NamaLengkap;
            LabelNamaPengguna1.Text  = Pengguna.NamaLengkap;
            LabelTempatPengguna.Text = Pengguna.Tempat;

            #region TEMPAT
            var _stokProduk = db.TBStokProduks
                              .Where(item =>
                                     item.IDTempat == Tempat.IDTempat &&
                                     item.TBKombinasiProduk.TBProduk._IsActive);
            #endregion

            #region STATUS STOK
            if (Request.QueryString["IDJenisStok"] == "1")
            {
                _stokProduk = _stokProduk.Where(item => item.Jumlah > 0);
            }
            else if (Request.QueryString["IDJenisStok"] == "2")
            {
                _stokProduk = _stokProduk.Where(item => item.Jumlah == 0);
            }
            else if (Request.QueryString["IDJenisStok"] == "3")
            {
                _stokProduk = _stokProduk.Where(item => item.Jumlah < 0);
            }
            #endregion

            //KODE
            if (!string.IsNullOrWhiteSpace(Request.QueryString["Kode"]))
            {
                _stokProduk = _stokProduk.Where(item => item.TBKombinasiProduk.KodeKombinasiProduk.Contains(Request.QueryString["Kode"]));
            }

            //PRODUK
            if (!string.IsNullOrWhiteSpace(Request.QueryString["Produk"]))
            {
                _stokProduk = _stokProduk.Where(item => item.TBKombinasiProduk.TBProduk.Nama.Contains(Request.QueryString["Produk"]));
            }

            //WARNA
            if (Request.QueryString["IDWarna"] != "-1" && !string.IsNullOrWhiteSpace(Request.QueryString["IDWarna"]))
            {
                _stokProduk = _stokProduk.Where(item => item.TBKombinasiProduk.TBProduk.IDWarna == Request.QueryString["IDWarna"].ToInt());
            }

            #region HARGA JUAL
            if (!string.IsNullOrWhiteSpace(Request.QueryString["HargaJual"]))
            {
                if (Request.QueryString["HargaJual"].Contains("-"))
                {
                    string[] _angka = Request.QueryString["HargaJual"].Split('-');
                    _stokProduk = _stokProduk.Where(item => item.HargaJual >= _angka[0].ToDecimal() && item.HargaJual <= _angka[1].ToDecimal()).OrderBy(item => item.HargaJual);
                }
                else
                {
                    _stokProduk = _stokProduk.Where(item => item.HargaJual == Request.QueryString["HargaJual"].ToDecimal());
                }
            }
            #endregion

            //STOK PRODUK
            if (!string.IsNullOrWhiteSpace(Request.QueryString["Stok"]))
            {
                if (Request.QueryString["Stok"].Contains("-"))
                {
                    string[] _angka = Request.QueryString["Stok"].Split('-');
                    _stokProduk = _stokProduk.Where(item => item.Jumlah >= _angka[0].ToInt() && item.Jumlah <= _angka[1].ToInt()).OrderBy(item => item.Jumlah);
                }
                else
                {
                    _stokProduk = _stokProduk.Where(item => item.Jumlah == Request.QueryString["Stok"].ToInt());
                }
            }

            //PEMILIK PRODUK
            if (Request.QueryString["IDPemilikProduk"] != "-1" && !string.IsNullOrWhiteSpace(Request.QueryString["IDPemilikProduk"]))
            {
                _stokProduk = _stokProduk.Where(item => item.TBKombinasiProduk.TBProduk.IDPemilikProduk == Request.QueryString["IDPemilikProduk"].ToInt());
            }

            //ATRIBUT
            if (Request.QueryString["IDAtribut"] != "-1" && !string.IsNullOrWhiteSpace(Request.QueryString["IDAtribut"]))
            {
                _stokProduk = _stokProduk.Where(item => item.TBKombinasiProduk.IDAtributProduk == Request.QueryString["IDAtribut"].ToInt());
            }

            //KATEGORI
            if (Request.QueryString["IDKategori"] != "-1" && !string.IsNullOrWhiteSpace(Request.QueryString["IDKategori"]))
            {
                if (Request.QueryString["IDKategori"] == "0")
                {
                    _stokProduk = _stokProduk.Where(item => item.TBKombinasiProduk.TBProduk.TBRelasiProdukKategoriProduks.Count == 0);
                }
                else
                {
                    _stokProduk = _stokProduk.Where(item =>
                                                    item.TBKombinasiProduk.TBProduk.TBRelasiProdukKategoriProduks.Count > 0 &&
                                                    item.TBKombinasiProduk.TBProduk.TBRelasiProdukKategoriProduks.FirstOrDefault().IDKategoriProduk == int.Parse(Request.QueryString["IDKategori"]));
                }
            }

            var _dataStok = _stokProduk.Select(item => new StokProduk_Model
            {
                IDProduk          = item.TBKombinasiProduk.TBProduk.IDProduk,
                IDKombinasiProduk = item.IDKombinasiProduk,
                Kode      = item.TBKombinasiProduk.KodeKombinasiProduk,
                Atribut   = item.TBKombinasiProduk.TBAtributProduk.Nama,
                HargaJual = item.HargaJual.Value,
                Jumlah    = item.Jumlah.Value
            });

            if (_dataStok.Count() > 0)
            {
                var _dataProduk = _dataStok.Select(item => item.IDProduk).Distinct();

                var _produk = db.TBProduks
                              .Where(item => _dataProduk.Any(item2 => item2 == item.IDProduk))
                              .Select(item => new
                {
                    Produk        = item.Nama,
                    Kategori      = (item.TBRelasiProdukKategoriProduks.Count > 0) ? item.TBRelasiProdukKategoriProduks.FirstOrDefault().TBKategoriProduk.Nama : "",
                    PemilikProduk = item.TBPemilikProduk.Nama,
                    Warna         = item.TBWarna.Nama,
                    Stok          = _dataStok.Where(item2 => item2.IDProduk == item.IDProduk)
                }).OrderBy(item => item.Produk).ToList();

                LiteralLaporan.Text = string.Empty;
                int index       = 1;
                int indexVarian = 1;

                foreach (var item in _produk)
                {
                    indexVarian = 1;

                    LiteralLaporan.Text += "<tr>";

                    string rowspan = item.Stok.Count() >= 2 ? "rowspan='" + item.Stok.Count() + "'" : "";

                    LiteralLaporan.Text += "<td " + rowspan + " class='fitSize'>" + index++ + "</td>";
                    LiteralLaporan.Text += "<td " + rowspan + " class='fitSize'>" + item.Produk + "</td>";
                    LiteralLaporan.Text += "<td " + rowspan + " class='fitSize'>" + item.Warna + "</td>";
                    LiteralLaporan.Text += "<td " + rowspan + " class='fitSize'>" + item.PemilikProduk + "</td>";
                    LiteralLaporan.Text += "<td " + rowspan + " class='fitSize'>" + item.Kategori + "</td>";

                    foreach (var item2 in item.Stok)
                    {
                        if (indexVarian > 1)
                        {
                            LiteralLaporan.Text += "<tr>";
                        }

                        LiteralLaporan.Text += "<td class='fitSize'>" + item2.Kode + "</td>";
                        LiteralLaporan.Text += "<td class='fitSize'>" + item2.Atribut + "</td>";
                        LiteralLaporan.Text += "<td class='text-right'>" + item2.HargaJual.ToFormatHarga() + "</td>";
                        LiteralLaporan.Text += "<td class='text-right'>" + item2.Jumlah.ToFormatHargaBulat() + "</td>";
                        LiteralLaporan.Text += "<td class='text-right'>" + item2.Subtotal.ToFormatHarga() + "</td>";

                        LiteralLaporan.Text += "</tr>";

                        indexVarian++;
                    }
                }
            }

            LabelTotalQuantity.Text     = _dataStok.Sum(item => item.Jumlah).ToFormatHargaBulat();
            LabelRataRataHargaJual.Text = _dataStok.Average(item => item.HargaJual).ToFormatHarga();
            LabelGrandTotal.Text        = _dataStok.ToList().Sum(item => item.Subtotal).ToFormatHarga();

            LabelTotalQuantity1.Text     = LabelTotalQuantity.Text;
            LabelRataRataHargaJual1.Text = LabelRataRataHargaJual.Text;
            LabelGrandTotal1.Text        = LabelGrandTotal.Text;
        }
    }