void LoadManagers()
 {
     using (var context = new SaleReportModel())
     {
         var managers = context.Managers.OrderBy(m => m.Name).ToList();
         comboBoxManager.DataSource    = managers;
         comboBoxManager.DisplayMember = "Name";
     }
 }
Example #2
0
        void AddSaleToGrid(Backend.Objects.Sale sale)
        {
            //Fill Grid [ SalesGrid ] With Rows
            SaleReportModel saleReportModel = new SaleReportModel
            {
                Sale     = sale,
                Currency = Store.CurrencySign,
            };

            //Add To Grid
            SalesGrid.Controls.Add(saleReportModel);
        }
Example #3
0
        public HttpResponseMessage Report()
        {
            try
            {
                string   tempPath    = ConfigurationManager.AppSettings["TempPath"];
                long     ticks       = DateTime.Now.Ticks;
                string   fileName    = $"SalesReport-{ticks}.xls";
                string   fullName    = $"{tempPath}\\" + fileName;
                List <M> allAsync    = service.GetAll();
                string   headerValue = "Sale Report \n Printed " + DateTime.Now.ToString("dd-MM-yyyy");
                //List<SaleReportModel> reportdata = allAsync.Select(x => new SaleReportModel (x)).ToList();
                List <SaleReportModel> reportdata = allAsync.Select(x => new SaleReportModel(x)).ToList();
                SaleReportModel        item       = new SaleReportModel
                {
                    Memo         = "Total",
                    BarcodePrice = reportdata.Sum(x => x.BarcodePrice),
                    Discount     = reportdata.Sum(x => x.Discount),
                    Total        = reportdata.Sum(x => x.Total),
                    CostPrice    = reportdata.Sum(x => x.CostPrice),
                    CashReceived = reportdata.Where(x => x.SaleType.Equals("Cash")).Sum(x => x.Total),
                    CardReceived = reportdata.Where(x => x.SaleType.Equals("Card")).Sum(x => x.Total),
                    InvoiceDate  = DateTime.Now
                };

                reportdata.Add(item);
                GenericReportGenerator <SaleReportModel> .WriteExcel(reportdata, headerValue, fullName);

                HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);
                var stream = new FileStream(fullName, FileMode.Open);
                result.Content = new StreamContent(stream);
                result.Content.Headers.ContentType        = new MediaTypeHeaderValue("application/octet-stream");
                result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
                {
                    FileName = fileName
                };
                return(result);
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
        private void buttonGenerateData_Click(object sender, EventArgs e)
        {
            int            managerCount;
            List <Client>  clients;
            List <Product> products;

            dataGridView.Rows.Clear();
            Random rng = new Random(DateTime.Now.Millisecond);

            dateTimePicker.Value = new DateTime(DateTime.Now.Year, DateTime.Now.Month, rng.Next(1, DateTime.Now.Day + 1));

            using (var context = new SaleReportModel())
            {
                managerCount = context.Managers.Count();
                clients      = context.Clients.OrderBy(c => c.Name).ToList();
                products     = context.Products.OrderBy(c => c.Name).ToList();
            }

            comboBoxManager.SelectedIndex = rng.Next(0, managerCount);
            var records = rng.Next(5, 11);

            for (int i = 0; i < records; i++)
            {
                var client   = clients[rng.Next(0, clients.Count)];
                var product  = products[rng.Next(0, products.Count)];
                var quantity = rng.Next(1, 11);
                var price    = quantity * product.Price;
                var date     = new DateTime(dateTimePicker.Value.Year, dateTimePicker.Value.Month, rng.Next(1, dateTimePicker.Value.Day + 1));
                dataGridView.Rows.Add(date.ToString("dd.MM.yyyy"), client.Name, product.Name, price.ToString(CultureInfo.InvariantCulture));
            }

            if (checkBoxWrite.Checked)
            {
                buttonAddFile_Click(sender, e);
            }
        }