public ActionResult SaveOldPatientBill(OldPatientReportBillViewModel oldPatientReportBillViewModel)
        {
            //Patient Age Change
            var patient = _context.Patients.Single(p => p.Id == oldPatientReportBillViewModel.PatientId);

            if (!(patient.Age == oldPatientReportBillViewModel.Patient.Age))
            {
                patient.Age = oldPatientReportBillViewModel.Patient.Age;
                _context.SaveChanges();
            }
            //
            var reports = new List <Report>();

            foreach (var report in oldPatientReportBillViewModel.Reports)
            {
                var newReport = new Report
                {
                    ConsultingPathologistId = _context.Defaultvalues.Single(d => d.Id == 1).Id,
                    Date             = oldPatientReportBillViewModel.Report.Date,
                    DateAdded        = DateTime.Now,
                    DigitalSignature = oldPatientReportBillViewModel.Report.DigitalSignature,
                    DoctorId         = oldPatientReportBillViewModel.Report.DoctorId,
                    InvestigatedBy   = oldPatientReportBillViewModel.Report.InvestigatedBy,
                    PatientId        = oldPatientReportBillViewModel.PatientId,
                    ReportBy         = oldPatientReportBillViewModel.Report.ReportBy,
                    TestTitleId      = report.TestTitleId,
                    Price            = report.Price
                };
                _context.Reports.Add(newReport);
                _context.SaveChanges();
                reports.Add(newReport);
            }

            var bill = new Bill
            {
                PatientId = oldPatientReportBillViewModel.PatientId,
                DoctorId  = oldPatientReportBillViewModel.Report.DoctorId,
                BillBy    = "",
                Date      = oldPatientReportBillViewModel.Report.Date,
                Discount  = oldPatientReportBillViewModel.Bill.Discount
            };

            _context.Bills.Add(bill);
            _context.SaveChanges();



            foreach (var report in reports)
            {
                var newBillItem = new Billitem
                {
                    BillId   = bill.Id,
                    ReportId = report.Id
                };
                _context.BillItems.Add(newBillItem);
                _context.SaveChanges();
            }
            return(null);
        }
        public ActionResult SaveBill(BillFormViewModel billFormViewModel)
        {
            //if (!ModelState.IsValid)
            //{
            //    return HttpNotFound();
            //}
            var patient = billFormViewModel.Patient;

            _context.Patients.Add(patient);
            _context.SaveChanges();
            var patientId = patient.Id;
            var reports   = new List <Report>();



            billFormViewModel.Bill.Date      = DateTime.Now;
            billFormViewModel.Bill.DoctorId  = billFormViewModel.Report.DoctorId;
            billFormViewModel.Bill.PatientId = patientId;
            billFormViewModel.Bill.BillBy    = "";

            var bill = billFormViewModel.Bill;

            _context.Bills.Add(bill);
            _context.SaveChanges();

            foreach (var report in billFormViewModel.Reports)
            {
                //if (!test.HasValue)
                //{
                //    continue;
                //}
                var Newreport = new Report
                {
                    PatientId               = patient.Id,
                    Date                    = billFormViewModel.Report.Date,
                    TestTitleId             = report.TestTitleId,
                    Price                   = report.Price,
                    DateAdded               = DateTime.Now,
                    DoctorId                = billFormViewModel.Report.DoctorId,
                    ReportBy                = "",
                    InvestigatedBy          = "",
                    DigitalSignature        = billFormViewModel.Report.DigitalSignature,
                    ConsultingPathologistId = _context.Defaultvalues.Single(d => d.Id == 1).Id
                };
                _context.Reports.Add(Newreport);
                reports.Add(Newreport);
                _context.SaveChanges();
            }

            foreach (var report in reports)
            {
                var billitem = new Billitem {
                    BillId = bill.Id, ReportId = report.Id
                };
                _context.BillItems.Add(billitem);
                _context.SaveChanges();
            }
            return(RedirectToAction("index", "Report"));
        }
Пример #3
0
        public static ObservableCollection <Billitem> LoadForBill(int billId)
        {
            using (SqlConnection connection = new SqlConnection(ApplicationA.CONNECTION_STRING))
            {
                ObservableCollection <Billitem> items = new ObservableCollection <Billitem>();

                connection.Open();

                DataSet dataSet = new DataSet();

                SqlCommand command = connection.CreateCommand();
                command.CommandText = @"Select * From bill_item Where bill_id = @Bill_Id;";

                SqlDataAdapter dataAdapter = new SqlDataAdapter(command);

                try
                {
                    command.Parameters.Add(new SqlParameter("@Bill_Id", billId));
                    dataAdapter.Fill(dataSet, "bill_item");

                    foreach (DataRow row in dataSet.Tables["bill_item"].Rows)
                    {
                        int    id       = (int)row["id"];
                        int    carpetId = (int)row["carpet_id"];
                        int    quantity = (int)row["quantity"];
                        double price    = (double)row["price"];

                        Billitem item = new Billitem(id, carpetId, price, quantity);

                        items.Add(item);
                    }
                }
                catch (SqlException e)
                {
                    MessageBox.Show("SQL Exception");
                    ApplicationA.WriteToLog(e.StackTrace);
                }
                catch (InvalidOperationException a)
                {
                    MessageBox.Show("InvalidOperationException");
                    ApplicationA.WriteToLog(a.StackTrace);
                }
                catch (ArgumentException g)
                {
                    MessageBox.Show("ArgumentException");
                    ApplicationA.WriteToLog(g.StackTrace);
                }
                catch (NullReferenceException n)
                {
                    MessageBox.Show("NullReferenceException");
                    ApplicationA.WriteToLog(n.StackTrace);
                }

                return(items);
            }
        }
Пример #4
0
        private static void fillBillItem(Billitem billitem, int start_num, Worksheet sheet)
        {
            double length  = billitem.Carpet.Length;
            double width   = billitem.Carpet.Width;
            double surface = length * width * billitem.Quantity;
            double sum     = Math.Round(surface * billitem.Price, 2);

            List <string> items = new List <string> {
                ITEM_NAME, length.ToString(), width.ToString(), UNIT_NAME, billitem.Quantity.ToString(),
                Math.Round(billitem.Price, 2).ToString(), Math.Round(surface, 2).ToString(), sum.ToString(), sum.ToString()
            };

            for (int i = 0; i < items.Count; i++)
            {
                sheet.Range[columns[i] + start_num].Text = items[i];
            }
        }
Пример #5
0
        public static bool Add(Billitem item, Bill bill)
        {
            using (SqlConnection connection = new SqlConnection(ApplicationA.CONNECTION_STRING))
            {
                bool valid = false;

                connection.Open();

                SqlCommand command = connection.CreateCommand();
                command.CommandText = @"Insert Into bill_item Values(@Carpet,@Price,@Bill);";

                try
                {
                    command.Parameters.Add(new SqlParameter("@Carpet", item.Carpet.Id));
                    command.Parameters.Add(new SqlParameter("@Price", item.Price));
                    command.Parameters.Add(new SqlParameter("@Bill", bill.Id));

                    command.ExecuteNonQuery();

                    valid = true;
                }
                catch (SqlException e)
                {
                    MessageBox.Show(ApplicationA.DATABASE_ERROR_MESSAGE);
                    ApplicationA.WriteToLog(e.StackTrace);
                }
                catch (InvalidOperationException a)
                {
                    MessageBox.Show(ApplicationA.DATABASE_ERROR_MESSAGE);
                    ApplicationA.WriteToLog(a.StackTrace);
                }
                catch (ArgumentException g)
                {
                    MessageBox.Show(ApplicationA.DATABASE_ERROR_MESSAGE);
                    ApplicationA.WriteToLog(g.StackTrace);
                }
                catch (NullReferenceException n)
                {
                    MessageBox.Show(ApplicationA.DATABASE_ERROR_MESSAGE);
                    ApplicationA.WriteToLog(n.StackTrace);
                }

                return(valid);
            }
        }
        private void addtocartBtn_Click(object sender, EventArgs e)
        {
            string itemname   = itemTbox.Text;
            string unitprice  = priceTbox.Text;
            string quantity   = quantityselector.Value.ToString();
            string totalprice = totalTbox.Text;

            Billitem billitem = new Billitem()
            {
                itemname   = itemname,
                unitprice  = unitprice,
                quantity   = quantity,
                totalprice = totalprice
            };

            cartlist.Add(billitem);


            cartloader();

            clearbox();
        }
Пример #7
0
        public static void editExcelFile(Company company, bool print)
        {
            Bill b          = company.Bill;
            int  dateYvalue = 40 + b.Items.Count - 1;

            //Load Workbook
            Workbook workbook = new Workbook();

            workbook.LoadFromFile(ApplicationA.FILE_NAME_BILL);

            //Edit Text
            Worksheet sheet = workbook.Worksheets[0];

            sheet.Range["H3"].Text = company.Name;
            sheet.Range["H4"].Text = company.Address;
            sheet.Range["H5"].Text = company.City;
            sheet.Range["H3"].Style.Font.IsBold = true;
            sheet.Range["H4"].Style.Font.IsBold = true;
            sheet.Range["H5"].Style.Font.IsBold = true;

            sheet.Range["J7"].Text = company.Pib;

            sheet.Range["H13"].Text = b.BillNumForYear + "-" + MonthHelper.getIntFromMonth(b.TrafficMonth) + "-" + (b.TrafficYear - 2000);

            sheet.Range["H16"].Text = b.TrafficMonth;

            if (b.Items.Count > 1)
            {
                sheet.InsertRow(28, b.Items.Count - 1);
                sheet.Copy(sheet.Range["A28"], sheet.Range["A28:A" + (26 + b.Items.Count - 1)], true);
                sheet.Range["B40" + dateYvalue].Text = b.BillDate.Day + "-" + b.BillDate.Month + "-" + b.BillDate.Year;

                setBorders(27, b.Items.Count + 1, sheet);

                for (int i = 0; i < b.Items.Count; i++)
                {
                    fillBillItem(b.Items[i], 28 + i, sheet);
                }

                sheet.Range["K" + (29 + b.Items.Count - 1)].Text = BillMaxHelper.getBillValue(b).ToString();
                sheet.Range["B" + dateYvalue].Text = b.BillDate.Day + "-" + b.BillDate.Month + "-" + b.BillDate.Year;
            }
            else
            {
                Billitem item = b.Items[0];
                double   sum  = item.Carpet.Width * item.Carpet.Length * item.Price;

                fillBillItem(b.Items[0], 28, sheet);
                sheet.Range["B40"].Text = b.BillDate.Day + "-" + b.BillDate.Month + "-" + b.BillDate.Year;
                sheet.Range["K29"].Text = Math.Round(sum, 2).ToString();
            }

            //Save and Launch
            //workbook.SaveToFile("EditSheet.xlsx", ExcelVersion.Version2010);
            //System.Diagnostics.Process.Start("EditSheet.xlsx");

            if (print)
            {
                if (b.Dispatcher != "")
                {
                    sheet.Range["F12"].Text = "";
                    sheet.Range["F13"].Text = DISPATCHER;
                }
                //PrintHelper.printExcelDoc(workbook);
            }
        }