Example #1
0
 public Fine Update(Fine fineUpdate)
 {
     _context.Attach(fineUpdate).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
     _context.Entry(fineUpdate).Reference(o => o.Member).IsModified = true;
     _context.SaveChangesAsync();
     return(fineUpdate);
 }
Example #2
0
        public BaseEntity BuildObject(Dictionary <string, object> row)
        {
            var Company = new Company
            {
                IdCompany = GetIntValue(row, IDCOMPANY)
            };
            var Terminal = new Terminal
            {
                IdTerminal = GetIntValue(row, IDTERMINAL)
            };
            var FineType = new FineType
            {
                IdType = GetIntValue(row, IDFINETYPE)
            };
            var Fine = new Fine
            {
                IdFine          = GetIntValue(row, IDFINE),
                FineDescription = GetStringValue(row, DESCRIPTION),
                FineDate        = GetDateValue(row, DATE),
                Company         = Company,
                Terminal        = Terminal,
                FType           = FineType
            };

            return(Fine);
        }
        protected void OnButtonCloseRouteListClicked(object sender, EventArgs e)
        {
            var valid = new QSValidator <RouteList>(Entity,
                                                    new Dictionary <object, object>
            {
                { "NewStatus", RouteListStatus.Closed }
            });

            if (valid.RunDlgIfNotValid((Window)this.Toplevel))
            {
                return;
            }

            if (Entity.ConfirmedDistance < Entity.ActualDistance && !Entity.Car.IsCompanyHavings)
            {
                decimal excessKM            = Entity.ActualDistance - Entity.ConfirmedDistance;
                decimal redundantPayForFuel = Entity.GetLitersOutlayed(excessKM) * Entity.Car.FuelType.Cost;
                string  fineReason          = "Перевыплата топлива";
                var     fine = new Fine();
                fine.Fill(redundantPayForFuel, Entity, fineReason, DateTime.Today, Entity.Driver);
                fine.Author = EmployeeRepository.GetEmployeeForCurrentUser(UoW);
                fine.UpdateWageOperations(UoWGeneric);
                UoWGeneric.Save(fine);
            }
            else
            {
                Entity.RecalculateFuelOutlay();
            }

            yspinConfirmedDistance.Sensitive = false;
            buttonConfirm.Sensitive          = false;
            buttonCloseRouteList.Sensitive   = false;

            Entity.ConfirmMileage(UoWGeneric);
        }
    /*
     * SubmitFine_Click()
     *
     * This method fires when the user clicks the submit fine button in the Add Fine dialog.
     * It takes the information from the dialog boxes and creates a Fine object,
     * then it performs a PUT request on the API to add it to the database.
     *
     */
    protected void SubmitFine_Click(object sender, EventArgs e)
    {
        Fine   f = new Fine();
        int    mid;
        double amount;

        Int32.TryParse(txtMemberId.Text, out mid);
        Double.TryParse(txtAmount.Text, out amount);

        f.member_id   = mid;
        f.amount      = amount;
        f.description = txtFineDescription.Text;

        JavaScriptSerializer serializer = new JavaScriptSerializer();
        string json = serializer.Serialize(f);

        using (var client = new WebClient())
        {
            client.Headers.Add(HttpRequestHeader.ContentType, "application/json");
            client.Headers.Add(Utilities.getApiKey());

            try
            {
                client.UploadString(new Uri("http://api.sparklib.org/api/fines"), "POST", json);
                var response = client.ResponseHeaders;

                Response.Redirect("Circulations.aspx");
            }
            catch (Exception ex)
            {
            }
        }
    }
        private void AddFine_Click(object sender, RoutedEventArgs e)
        {
            Fine fine = new Fine();

            fine.Show();
            this.Close();
        }
Example #6
0
        public async Task <IActionResult> EditPenalty(Fine fine)
        {
            if (_signInManager.Context.User.Identity.IsAuthenticated)
            {
                if (_signInManager.Context.User.IsInRole("DepartmentHead"))
                {
                    await Initializer.InitialLayout("Department", ViewBag, _db, _signInManager, "Penalty/Edit");

                    if (fine != null)
                    {
                        Fine EditBonus = await _db.Fines
                                         .Where(f => f.Id == fine.Id)
                                         .Include(f => f.Employee)
                                         .FirstOrDefaultAsync();

                        if (EditBonus != null)
                        {
                            EditBonus.Price = fine.Price;
                            if (fine.Employee.LastCalculate < fine.GivenDate)
                            {
                                EditBonus.GivenDate = fine.GivenDate;
                            }
                            else
                            {
                                ModelState.AddModelError("", "You can't change this time");
                            }
                            await _db.SaveChangesAsync();
                        }
                        return(RedirectToAction("Penalty", new { id = EditBonus.EmployeeId }));
                    }
                    return(View(fine));
                }
            }
            return(RedirectToAction("Forbidden", "Error"));
        }
Example #7
0
        public JsonResult UpdateFine(int ID, Fine fine)
        {
            FineController obj      = new FineController();
            var            response = obj.Put(ID, fine);

            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Example #8
0
        public JsonResult AddFine(Fine fine)
        {
            FineController obj      = new FineController();
            var            response = obj.Post(fine);

            return(Json(((Fine)(((System.Net.Http.ObjectContent)(response.Content)).Value)).Id, JsonRequestBehavior.AllowGet));
        }
Example #9
0
        public ActionResult Calculate(Fine fine)
        {
            // The fine object contains user inputs from view
            if (!ModelState.IsValid) // validation fails
            {
                return(View(fine));  // returns the view with errors
            }

            // Calculate the cumulative fine and its breakdown
            double fineTotal     = 0.0;
            string fineBreakdown = "";

            for (int count = 1; count <= fine.NumBooksOverdue; count++)
            {
                double fineForEachBook = count * fine.FineRate * fine.NumDaysOverdue;
                fineTotal     += fineForEachBook;
                fineBreakdown += $"Overdue cost for Book {count} = ${fineForEachBook:#,##0.00}<br />";
            }
            fine.FineAmt = fineTotal;

            // Prepare the ViewData to be used in Calculate.cshtml view
            ViewData["ShowResult"]    = true;
            ViewData["FineBreakdown"] = fineBreakdown;

            // Route to Calculate.cshtml view to display result
            return(View(fine));
        }
Example #10
0
        public static void CreateFine(Reservation reservation, DateTime end)
        {
            Debug.WriteLine("=========================================================");
            Debug.WriteLine("You gonna get fined boy");
            Debug.WriteLine("{0} {1}", DateTime.Now, end);
            Debug.WriteLine("=========================================================");

            TimeSpan time = DateTime.Now.Subtract(end);
            Fine     fine = Fine.SelectByReservation(reservation.id);

            //Debug.WriteLine("=========================================================");
            //Debug.WriteLine("Time spent");
            //Debug.WriteLine(time.TotalMinutes);
            //Debug.WriteLine("=========================================================");
            if (fine == null)
            {
                fine = new Fine(DateTime.Now, GetFineAmmount(time), FineState.Formed, reservation.id);
                Fine.Create(fine);
            }
            else
            {
                Fine.UpdateFineSum(fine, GetFineAmmount(time));
                //Debug.WriteLine("=========================================================");
                //Debug.WriteLine("Minutes");
                //Debug.WriteLine(duration.TotalMinutes);
                //Debug.WriteLine("=========================================================");
            }
        }
        public async Task <IActionResult> Edit(long id, Fine fine)
        {
            if (id != fine.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(fine);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!FineExists(fine.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["RentalId"] = new SelectList(_context.Rentals, "Id", "ContractNumber", fine.RentalId);
            return(View(fine));
        }
    /*
     * addFineRow()
     *
     * Params: Fine f -> The fine object with which to derive data for the row to be returned.
     *
     * This method takes a fine object and uses it to create a Row for the fine table.
     *
     * Returns: A TableRow constructed from the Fine object passed in.
     *
     */
    private TableRow addFineRow(Fine f)
    {
        TableRow ret = new TableRow();

        ret.TableSection = TableRowSection.TableBody;

        ret.Cells.Add(Utilities.addCell(f.fine_id.ToString()));
        ret.Cells.Add(Utilities.addCell(f.member_id.ToString()));

        var client = new WebClient();

        client.Headers.Add(Utilities.getApiKey());
        try
        {
            var    response = client.DownloadString("http://api.sparklib.org/api/member?member_id=" + f.member_id.ToString());
            Member m        = new JavaScriptSerializer().Deserialize <Member>(response);
            ret.Cells.Add(Utilities.addCell(m.first_name + " " + m.last_name));
        }
        catch (Exception error)
        {
            Console.WriteLine(error.Message);
            ret.Cells.Add(Utilities.addCell("N/A"));
        }

        ret.Cells.Add(Utilities.addCell(f.description));
        ret.Cells.Add(Utilities.addCell("$" + f.amount.ToString("F2")));
        ret.Cells.Add(addButtonCell_Fine(f.fine_id));

        return(ret);
    }
        public ActionResult DeleteConfirmed(int id)
        {
            Fine fine = db.Fines.Find(id);

            db.Fines.Remove(fine);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #14
0
        public Fine Delete(int id)
        {
            Fine fine        = _context.Fines.FirstOrDefault(x => x.Id == id);
            Fine deletedFine = _context.Fines.Remove(fine).Entity;

            _context.SaveChangesAsync();
            return(fine);
        }
Example #15
0
 public void createFine(Fine fine)
 {
     using (var context = new TennisContext())
     {
         context.Fines.Add(fine);
         context.SaveChanges();
     }
 }
Example #16
0
 public void modifyFine(Fine fine)
 {
     using (var context = new TennisContext())
     {
         context.Entry(fine).State = EntityState.Modified;
         context.SaveChanges();
     }
 }
Example #17
0
        private void PayFineButton_Click(object sender, RoutedEventArgs e)
        {
            var  bookIssues = new BookIssues();
            Fine fine       = new Fine();

            bookIssues.MemberCardNo = int.Parse(MembercardnoComboBox.Text);
            bookIssues.BookID       = BookIDTextBox.Text;

            bookIssues.BookName   = BookNameTextBox.Text;
            bookIssues.MemberName = MembernameTextBox.Text;

            bookIssues.DateIssues = BookissuesDatePicker.Text;
            bookIssues.DateExpiry = BookexpiryDatePicker.Text;

            fine.today  = DateTime.Today.ToString();
            fine.amount = FineAmountTextBox.Text;


            int totalbooks = Counttotalbooks() + 1;

            //string ConnectionString = @"Server=.\SQLEXPRESS;Database=Library;Integrated Security=True";

            //string query = string.Format("update book set b_noofbooks ='" + totalbooks + "' where b_id ='" + BookIDComboBox.Text + "'");

            string query = string.Format("update book set b_noofbooks ='" + totalbooks + "' where b_id ='" + BookIDTextBox.Text + "'");

            string query1 = string.Format("delete  from returnbook where r_mcardno='" + MembercardnoComboBox.SelectedItem + "'");

            string query2 = string.Format("insert into finebook values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}')",
                                          bookIssues.MemberCardNo, bookIssues.MemberName, bookIssues.BookID, bookIssues.BookName, bookIssues.DateIssues,
                                          bookIssues.DateExpiry, fine.today, fine.amount);


            SqlConnection connection = new SqlConnection(ConnectionString);

            try
            {
                connection.Open();
                SqlCommand cmd  = new SqlCommand(query, connection);
                SqlCommand cmd1 = new SqlCommand(query1, connection);
                SqlCommand cmd2 = new SqlCommand(query2, connection);
                cmd.ExecuteNonQuery();
                cmd1.ExecuteNonQuery();
                cmd2.ExecuteNonQuery();

                MessageBox.Show(" thank you!!! You paid the accumulate fine.\n Book is updated and cleared from returning!!");
                connection.Close();

                MembernameTextBox.Text = "";
                BookIDTextBox.Text     = "";
                BookNameTextBox.Text   = "";
                FineAmountTextBox.Text = "";
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Example #18
0
        public ActionResult <Fine> Put(int id, [FromBody] Fine fine)
        {
            if (id < 0 || id != fine.Id)
            {
                return(BadRequest("parameter id and Fine id must be a match"));
            }

            return(_fineService.UpdateFine(fine));
        }
Example #19
0
        public Fine Get(int id)
        {
            Fine objFine = unitOfWork.FineRepository.GetById(id);

            if (objFine == null)
            {
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
            }
            return(objFine);
        }
Example #20
0
        public ActionResult Calculate()
        {
            // Prepare the ViewData to be use in Calculate.cshtml view
            ViewData["ShowResult"] = false;
            Fine fine = new Fine();

            fine.DueDate  = DateTime.Today;
            fine.FineRate = 0.50;
            return(View(fine));
        }
Example #21
0
 public ActionResult Edit([Bind(Include = "Id,PlayerId,FineDate,Amount")] Fine fine)
 {
     if (ModelState.IsValid)
     {
         repo.modifyFine(fine);
         return(RedirectToAction("Index"));
     }
     ViewBag.PlId = new SelectList(playerRepo.getPlayers(), "Id", "FullName", fine.PlayerId);
     return(View(fine));
 }
 public ActionResult Edit([Bind(Include = "id,LicensePlate,VehicleType,Offense,OffenseDetail,OffenseDate,OffenseTime,Amount,Outstanding")] Fine fine)
 {
     if (ModelState.IsValid)
     {
         db.Entry(fine).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(fine));
 }
Example #23
0
        public void deleteFine(int id)
        {
            Fine fine = getFineById(id);

            using (var context = new TennisContext())
            {
                context.Entry(fine).State = EntityState.Deleted;
                context.SaveChanges();
            }
        }
 public Lease(int Id, DateTime start, DateTime expectedReturm, DateTime actualReturn, User user, Copy copy,
     Fine fine)
 {
     this.Id = Id;
     this.StartDate = start;
     this.ExpectedReturn = expectedReturm;
     this.ActualReturn = actualReturn;
     this.User = user;
     this.Copy = copy;
     this.Fine = fine;
 }
Example #25
0
 public ActionResult Edit([Bind(Include = "FineID,StudentID,FineAmount,amountCollected")] Fine fine)
 {
     if (ModelState.IsValid)
     {
         db.Entry(fine).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.StudentID = new SelectList(db.Students, "ID", "father", fine.StudentID);
     return(View(fine));
 }
Example #26
0
 public ActionResult <Fine> Post([FromBody] Fine fine)
 {
     try
     {
         return(_fineService.CreateFine(fine));
     }
     catch (Exception e)
     {
         return(BadRequest(e.Message));
     }
 }
Example #27
0
 public void Delete(Fine fine)
 {
     try
     {
         CrudFactory.Delete(fine);
     }
     catch (Exception ex)
     {
         ExceptionManager.GetInstance().Process(ex);
     }
 }
Example #28
0
        public decimal AmortizationAmount(Case _case, Fine fine)
        {
            int totaldays = ((TimeSpan)(_case.CourtDate - _case.DateOfArrest)).Days;

            daysOverstayed = totaldays - daysbeforeAmortization;
            int percent = PercentPerday * daysOverstayed;

            decimal result = ((decimal)percent / 100m);

            return((decimal)result * (decimal)fine.Amount);
        }
        protected override Modellable RetrieveNextItem(SqlDataReader reader)
        {
            Fine f = new Fine();

            f.amount      = reader.GetDouble(reader.GetOrdinal("amount"));
            f.description = reader.GetString(reader.GetOrdinal("description"));
            f.fine_id     = reader.GetInt32(reader.GetOrdinal("fine_id"));
            f.member_id   = reader.GetInt32(reader.GetOrdinal("member_id"));

            return(f);
        }
 public ActionResult Edit([Bind(Include = "ID,CarRentalID,AmountFine,FineDeposit,DepositDate")] Fine fine)
 {
     if (ModelState.IsValid)
     {
         db.Entry(fine).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.CarRentalID = new SelectList(db.CarRentals, "ID", "ID", fine.CarRentalID);
     return(View(fine));
 }
Example #31
0
    protected void Page_Load(object sender, EventArgs e)
    {
        _fineId = Request.QueryString["fineId"];
        var fine = new Fine();

        if (!string.IsNullOrEmpty(_fineId))
        {
            fine.Find(_fineId);
            lblTotalAmount.Text = $"Total: {fine.FineAmount.ToString("C")}";
        }
    }