Example #1
0
        //[HttpPost]
        //[ValidateInput(false)]
        public FileResult ExportToCSV(long numberToExport, long districtID) //check of html string ook ingestuur moet word (soos by DataController)
        {
            var exports = new List <NatisExportModel>();

            try
            {
                var tisService = new TISService(AuthenticatedUser.SessionToken);
                exports = (List <NatisExportModel>)tisService.GetExports(numberToExport, districtID);
            }
            catch (GatewayException gex)
            {
                // Probeer dalk viewbag error message (en return dalk iets) wat van toepassing is:
                ViewBag.ErrorMessage = gex.Message;
                RedirectToAction("Index");
            }
            catch (Exception ex)
            {
                // Probeer dalk viewbag error message (en return dalk iets) wat van toepassing is:
                ViewBag.ErrorMessage = ex.Message;
                RedirectToAction("Index");
            }

            StringBuilder sbRtn = new StringBuilder();

            try
            {
                // As headers benodig word in die file:
                var header = string.Format("\"{0}\",{1},{2},{3},{4},{5}",
                                           "Reference Number",
                                           "Infringement Date",
                                           "Export Date",
                                           "Vehicle Registration",
                                           "Locked By Credential ID",
                                           "District ID"
                                           );
                sbRtn.AppendLine(header);

                foreach (var export in exports)
                {
                    var listResults = string.Format("\"{0}\",{1},{2},{3},{4},{5}",
                                                    makeCsvFriendly(export.ReferenceNumber),
                                                    makeCsvFriendly(export.InfringementDate),
                                                    makeCsvFriendly(export.ExportDate),
                                                    makeCsvFriendly(export.VehicleRegistration),
                                                    makeCsvFriendly(export.LockedByCredentialID),
                                                    makeCsvFriendly(export.DistrictID)
                                                    );
                    sbRtn.AppendLine(listResults);
                }
            }
            catch (Exception ex)
            {
                ViewBag.ErrorMessage = ex.Message;
                RedirectToAction("Index");
            }
            //File.AppendAllText("c:/Temp/CSVExport", sbRtn.ToString());
            return(File(new System.Text.UTF8Encoding().GetBytes(sbRtn.ToString()), "text/csv", "CSVExport.csv"));
        }
Example #2
0
        public ActionResult CaptureTISDetails(string referenceNumber, string vehicleRegistration, long lockedByCredentialID)
        {
            var currentUserID = AuthenticatedUser.UserData.ID;
            var tisService    = new TISService(AuthenticatedUser.SessionToken);

            if (string.IsNullOrEmpty(lockedByCredentialID.ToString()) || lockedByCredentialID.Equals(currentUserID))
            {
                try
                {
                    if (string.IsNullOrEmpty(lockedByCredentialID.ToString()))
                    {
                        if (tisService.CaptureLock(referenceNumber, vehicleRegistration))
                        {
                            var initialTISList  = new List <TISDataModel>();
                            var initialTISModel = new TISDataModel {
                                ReferenceNumber = referenceNumber, VehicleRegistrationNumber = vehicleRegistration
                            };
                            initialTISList.Add(initialTISModel);

                            return(View(initialTISList));
                        }
                        else
                        {
                            ViewBag.ErrorMessage = "Could not lock TIS instance.";
                            return(RedirectToAction("TISCaptureList"));
                        }
                    }
                    else
                    {
                        var initialTISList  = new List <TISDataModel>();
                        var initialTISModel = new TISDataModel {
                            ReferenceNumber = referenceNumber, VehicleRegistrationNumber = vehicleRegistration
                        };
                        initialTISList.Add(initialTISModel);

                        return(View(initialTISList));
                    }
                }
                catch (GatewayException gex)
                {
                    ViewBag.ErrorMessage = gex.Message;
                    return(RedirectToAction("TISCaptureList"));
                }
                catch (Exception ex)
                {
                    ViewBag.ErrorMessage = ex.Message;
                    return(RedirectToAction("TISCaptureList"));
                }
            }
            else
            {
                return(RedirectToAction("TISCaptureList"));
            }
        }
Example #3
0
        public ActionResult SearchNatisExports(string sidx, string sord, int page, int rows, string vehicleRegistration, string referenceNumber, long districtID) //DateTime exportDate
        {
            var tisService = new TISService(AuthenticatedUser.SessionToken);
            var filters    = new List <FilterModel>();

            if (!string.IsNullOrWhiteSpace(vehicleRegistration))
            {
                filters.Add(new FilterModel {
                    PropertyName = "VehicleRegistration", Operation = Operation.StartsWith, Value = vehicleRegistration
                });
            }

            if (!string.IsNullOrWhiteSpace(referenceNumber))
            {
                filters.Add(new FilterModel {
                    PropertyName = "ReferenceNumber", Operation = Operation.StartsWith, Value = referenceNumber
                });
            }

            if (!string.IsNullOrWhiteSpace(districtID.ToString()))
            {
                filters.Add(new FilterModel {
                    PropertyName = "DistrictID", Operation = Operation.Equals, Value = districtID
                });
            }

            //if (!string.IsNullOrWhiteSpace(exportDate.ToString()))
            //    filters.Add(new FilterModel { PropertyName = "ExportDate", Operation = Operation.Contains, Value = exportDate });

            var paginatedList = tisService.GetNatisExportPaginatedList(filters, FilterJoin.And, false, "InfringementDate", page, rows);
            var totalPages    = Math.Ceiling((float)paginatedList.TotalCount / (float)rows);
            var jsonData      = new
            {
                total = totalPages,
                page,
                records = paginatedList.TotalCount,
                rows    = paginatedList.Models
            };

            return(Json(jsonData, JsonRequestBehavior.AllowGet));
        }
Example #4
0
        public ActionResult CaptureTISDetails(IList <TISDataModel> models)
        {
            var tisService = new TISService(AuthenticatedUser.SessionToken);

            if (!ModelState.IsValid)
            {
                return(View(models));
            }

            try
            {
                tisService.CaptureTISData(models);

                return(RedirectToAction("TISCaptureList"));
            }
            catch (GatewayException ex)
            {
                ModelState.AddModelError(string.Empty, ex.Message);

                return(View(models));
            }
        }