public IActionResult ApprovePayment(FinePayment _fine)
        {
            var _fineP = finepay.GetById(_fine.FinePaymentID);

            if (_fineP.FinePaymentStatusID != 2)
            {
                var _fi       = fineOps.GetById(_fineP.FineID);
                var _case     = caseOps.GetById(_fi.CaseID);
                var _offender = offenderOps.GetById(_fi.OffenderID);


                _fineP.FinePaymentStatusID = 2;
                _fi.FineStatusID           = 2;
                _case.CaseStatusID         = 2;
                _offender.StatusID         = 2;


                finepay.Update(_fineP);
                fineOps.Update(_fi);
                caseOps.Update(_case);
                offenderOps.Update(_offender);


                ViewBag.Message     = "Fine Payment Approved successfuly";
                ViewBag.MessageType = "Warining";
                return(RedirectToAction("ViewFinePayment"));
            }
            else
            {
                ViewBag.Message     = "Fine Payment Already Approved";
                ViewBag.MessageType = "Warining";
                return(RedirectToAction("ViewFinePayment"));
            }
        }
Esempio n. 2
0
        public async Task <JsonMessageResult> CreateFinePayment(FinePayment model)
        {
            var response = await ApiRequestHandler.RequestHandler(HttpRequestMethods.Post,
                                                                  $"{Route}CreateFinePayment",
                                                                  CommonClass.ClassToDictionary(model));

            return(JsonConvert.DeserializeObject <JsonMessageResult>(response));
        }
Esempio n. 3
0
        public async Task <JsonMessageResult> UpdateFinePayment(FinePayment model)
        {
            var response = await ApiRequestHandler.RequestHandler(HttpRequestMethods.Put,
                                                                  $"{Route}UpdateFinePayment/{model.Id}?fields=Age,Sex,FinePaymentName,DepartmentId,BirthDay,FinePaymentNo,Class,Contact,Email",
                                                                  CommonClass.ClassToDictionary(model));

            return(string.IsNullOrEmpty(response)
                ? MsgProvider.Success("修改成功!")
                : JsonConvert.DeserializeObject <JsonMessageResult>(response));
        }
        public IActionResult Edit(FinePayment _finePayment, IFormFile Attachment)
        {
            if (Attachment != null)
            {
                using (var stream = new MemoryStream())
                {
                    Attachment.CopyTo(stream);
                    _finePayment.Attachment = stream.ToArray();
                }

                _finePayment.FinePaymentDate     = DateTime.Now;
                _finePayment.FinePaymentStatusID = 1;

                finepay.Insert(new FinePayment
                {
                    AmortizationAmount  = _finePayment.AmortizationAmount,
                    AmountPayable       = _finePayment.AmountPayable,
                    Attachment          = _finePayment.Attachment,
                    AmortizationID      = _finePayment.AmortizationID,
                    RelativeID          = _finePayment.RelativeID,
                    FineID              = _finePayment.FineID,
                    FinePaymentStatusID = _finePayment.FinePaymentStatusID,
                    FinePaymentDate     = _finePayment.FinePaymentDate
                });

                return(RedirectToAction("index"));
            }
            else if (_finePayment.Attachment != null)
            {
                return(RedirectToAction("index"));
            }
            else
            {
                ViewBag.Message     = "Please attach prove of payment";
                ViewBag.MessageType = "Warining";
                return(View());
            }
        }
        public IActionResult Edit(int FindeId, int CaseId)
        {
            var _case = caseOps.GetById(CaseId);
            var _fine = fineOps.GetById(FindeId);


            var result = finepay.GetAll().Where(f => f.FineID == _fine.FineID).SingleOrDefault <FinePayment>();

            if (result != null && result.FinePaymentStatusID == 2)
            {
                ViewBag.Message     = "Fine Has been already payed";
                ViewBag.MessageType = "Warining";
                return(View());
            }
            else if (result != null && result.FinePaymentStatusID == 1)
            {
                return(View(result));
            }
            else
            {
                var userid        = context.Users.Where(u => u.UserName == User.Identity.Name).FirstOrDefault();
                var _amortization = amortization.GetAll().Where(am => am.CaseID == _case.CaseID && am.FineID == _fine.FineID).SingleOrDefault <Amortization>();
                var fnp           = new FinePayment
                {
                    RelativeID         = context.Relatives.Where(r => r.IdentityUserID == userid.Id).FirstOrDefault <Relative>().RelativeID,
                    FineID             = _fine.FineID,
                    AmortizationID     = _amortization.AmortizationID,
                    AmortizationAmount = _amortization.AmortizationAmount,
                    AmountPayable      = amortizationCalculate.AmountPayable(_case, _fine),
                    Fine         = _fine,
                    Amortization = _amortization,
                    Relative     = context.Relatives.Where(r => r.IdentityUserID == userid.Id).FirstOrDefault <Relative>()
                };

                return(View(fnp));
            }
        }
Esempio n. 6
0
 public async Task <bool> CreateFinePayment(FinePayment model) => await _service.Add(model);
        public IActionResult Index(string pin, int caseNumber)
        {
            List <FinePayment> _finePay = new List <FinePayment>();

            if (pin != null && caseNumber != 0)
            {
                var _case = caseOps.SearchByCaseNumber(caseNumber);
                if (_case != null)
                {
                    var _fine = fineOps.GetAll().Where(f => f.Offender.PIN == pin).SingleOrDefault <Fine>();
                    if (_fine != null)
                    {
                        var caseOffender = context.CaseOffenders.Where <CaseOffender>(co => co.CaseID == _case.CaseID && co.OffenderID == _fine.OffenderID).SingleOrDefault <CaseOffender>();
                        if (caseOffender != null)
                        {
                            var userid        = context.Users.Where(u => u.UserName == User.Identity.Name).FirstOrDefault();
                            var _amortization = amortization.GetAll().Where(am => am.CaseID == _case.CaseID && am.FineID == _fine.FineID).SingleOrDefault <Amortization>();
                            var fnp           = new FinePayment
                            {
                                RelativeID         = context.Relatives.Where(r => r.IdentityUserID == userid.Id).FirstOrDefault <Relative>().RelativeID,
                                FineID             = _fine.FineID,
                                AmortizationID     = _amortization.AmortizationID,
                                AmortizationAmount = _amortization.AmortizationAmount,
                                AmountPayable      = amortizationCalculate.AmountPayable(_case, _fine),
                                Fine         = _fine,
                                Amortization = _amortization,
                                Relative     = context.Relatives.Where(r => r.IdentityUserID == userid.Id).FirstOrDefault <Relative>()
                            };
                            _finePay.Add(fnp);



                            return(View(_finePay));
                        }
                        else
                        {
                            ViewBag.Message     = "Specified Offender was not found in the specified case";
                            ViewBag.MessageType = "Warining";

                            return(View(_finePay));
                        }
                    }
                    else
                    {
                        ViewBag.Message     = "Please enter a valid Offender Pin: Pin not found Or This Fine you're searching has been Paid";
                        ViewBag.MessageType = "Warining";

                        return(View(_finePay));
                    }
                }
                else
                {
                    ViewBag.Message     = "Please enter a valid Case Number: Case number was not found";
                    ViewBag.MessageType = "Warining";

                    return(View(_finePay));
                }

                //return View();
            }
            else
            {
                ViewBag.Message     = "Please fill in the Case Number and the offender's PIN ";
                ViewBag.MessageType = "Warining";
                return(View(_finePay));
            }
        }