public async Task <ActionResult> ScanAnalysisCreate(ScanAnalysisViewModel scanAnalysis) { try { // Create Request. var request = new RepairRequestScanViewModel { RequestTypeID = 7, RequestTypeCategoryId = 1, ProblemDescription = "Scan Analysis" }; // Create. var newRequestId = await QuickRequestSave(scanAnalysis, request); // Update Scan Queue. var messenger = new ScanRequestHubMessenger(); await messenger.NotifyScanCreated(newRequestId); } catch (Exception e) { Logger.LogException(e); return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, e.Message)); } return(new HttpStatusCodeResult(HttpStatusCode.OK)); }
public async Task <ActionResult> ScanAnalysisUpload(Guid id) { // Create Response. var response = new ScanAnalysisViewModel { ShopGuid = id, VehicleSelectList = GetVehicleMakeSelectList() }; // Check Upload Files. if (Request?.Files?[0] == null) { return(Json(response)); } // Parse VIN Number. var diagnosticResult = DiagnosticFileParser .ParseFile(Request.Files[0].InputStream, DiagnosticTool.AutoEnginuity, DiagnosticFileType.XML); var vin = diagnosticResult?.VehicleVin; // Check VIN Number. if (string.IsNullOrEmpty(vin) || vin == "Not Reported") { return(Json(response)); } response.ShowAssistedScanRecommended = NeedShowAssistedScanRecommended(diagnosticResult); await QuickRequestSearch(id, response, vin); return(Json(response)); }
public async Task <ActionResult> ScanAnalysisUploadSelect(Guid id, int resultId) { // Create Response. var response = new ScanAnalysisViewModel { ShopGuid = id, DiagnosticResultId = resultId, VehicleSelectList = GetVehicleMakeSelectList() }; // Lookup VIN for Result. var diagnosticResult = Factory.GetById <IDiagnosticResultDto>(resultId.ToString()); var vin = diagnosticResult?.VehicleVin; // Check VIN Number. if (string.IsNullOrEmpty(vin) || vin == "Not Reported") { return(Json(response)); } response.ShowAssistedScanRecommended = NeedShowAssistedScanRecommended(diagnosticResult); await QuickRequestSearch(id, response, vin); return(Json(response)); }
public async Task <ActionResult> ScanAnalysisVehicleSearch(Guid id, string vin) { var response = new ScanAnalysisViewModel(); await QuickRequestSearch(id, response, vin); return(Json(response)); }
public ActionResult StartScanAnalysis(Guid id) { // Build View Model. var scanAnalysis = new ScanAnalysisViewModel { ShopGuid = id, ShopName = Factory.GetDisplayName <IShopDto>(id.ToString()), VehicleSelectList = GetVehicleMakeSelectList(), AvailableScans = Factory.GetAll <IDiagnosticQueueDto>(new ServiceArgs { { "ShopGuid", id.ToString() } }).ToList() }; // Set Default. var defaultInsuranceCompanyId = Db.Shops.Find(id)?.DefaultInsuranceCompanyId; if (defaultInsuranceCompanyId.HasValue) { scanAnalysis.InsuranceCompanyId = defaultInsuranceCompanyId.Value; } return(PartialView("_ScanAnalysisCreate", scanAnalysis)); }