Example #1
0
        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));
        }
Example #2
0
        public async Task <ActionResult> SubmitRequestScan(RepairRequestScanViewModel scanRequest)
        {
            // Create Scan Request.
            if (ModelState.IsValid)
            {
                var newRequestId = await RepairLib.CreateScanRequest(scanRequest);

                if (newRequestId > 0)
                {
                    // Scan Created.
                    TempData["RepairNotice"] = "Scan Request Created!";

                    // Update Technician Dashboard.
                    await new ClientHubMessenger().ScanRequestCreated(newRequestId)
                    .ConfigureAwait(continueOnCapturedContext: false);

                    var messenger = new ScanRequestHubMessenger();
                    await messenger.NotifyScanCreated(newRequestId);

                    // Send to Dashboard.
                    return(RedirectToAction("Dashboard"));
                }
            }

            // Not Created.
            TempData["RepairNotice"] = "Scan Request NOT Created! (Do you have an open scan request?)";

            PopulateRequestScanActionViewBag(scanRequest.OrderId);

            return(View("RequestScan", scanRequest));
        }