Example #1
0
        public async Task <IActionResult> GetAnalysisByUnit(string type, string sType, int uaId, int lId)
        {
            CurrentUser cUser = new CurrentUser(HttpContext, _configuration);

            try
            {
                JobUnitAnalysisViewModel juavm = (JobUnitAnalysisViewModel)await reportFeederRepo.GetUnitAnalysisById(uaId, type, sType, lId);

                if (juavm.JobUnitSymptomsListJson != null)
                {
                    juavm.JobUnitSymptomsList = JsonConvert.DeserializeObject <List <JobUnitSymptomsViewModel> >(juavm.JobUnitSymptomsListJson);
                }
                if (juavm.JobUnitAmplitudeListJson != null)
                {
                    juavm.JobUnitAmplitudeList = JsonConvert.DeserializeObject <List <JobUnitAmplitudeViewModel> >(juavm.JobUnitAmplitudeListJson);
                }
                await auditLogService.LogActivity(cUser.UserId, cUser.HostIP, cUser.SessionId, "Create Report", "Loaded Analysis (Vibration / Oil) Report Data by selected Unit.");

                return(Ok(juavm));
            }
            catch (CustomException cex)
            {
                var responseObj = new EmaintenanceMessage(cex.Message, cex.Type, cex.IsException, cex.Exception?.ToString());
                return(StatusCode(StatusCodes.Status500InternalServerError, responseObj));
            }
            catch (Exception ex)
            {
                return(Ok(new EmaintenanceMessage(ex.Message)));
            }
        }
Example #2
0
        public async Task <IActionResult> Create([FromBody] JobUnitAnalysisViewModel juavm)
        {
            try
            {
                CurrentUser cUser = new CurrentUser(HttpContext, _configuration);
                juavm.UserId = cUser.UserId;
                //juavm.UnitAnalysisId = 0;
                var result = await reportFeederRepo.SaveOrUpdate(juavm);

                await auditLogService.LogActivity(cUser.UserId, cUser.HostIP, cUser.SessionId, "Create Report", "Report Created.");

                return(Ok(result));
            }
            catch (CustomException cex)
            {
                var returnObj = new EmaintenanceMessage(cex.Message, cex.Type, cex.IsException, cex.Exception?.ToString());
                return(StatusCode(StatusCodes.Status500InternalServerError, returnObj));
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, new EmaintenanceMessage(ex.Message)));
            }
        }
        /** This method is used to Save or Update UnitAnalysis */
        public async Task <IEnumerable <dynamic> > SaveOrUpdate(JobUnitAnalysisViewModel juavm)
        {
            string sql = "dbo.EAppSaveJobUnitAnalysis";

            using (var conn = util.MasterCon())
            {
                try
                {
                    string UnitSymptomsJson  = null;
                    string UnitAmplitudeJson = null;
                    if (juavm.JobUnitSymptomsList != null && juavm.JobUnitSymptomsList.Count > 0)
                    {
                        string Header = "{\"JobUnitSymptomsList\": ";
                        string Footer = "}";
                        UnitSymptomsJson = Header + JsonConvert.SerializeObject(juavm.JobUnitSymptomsList) + Footer;
                    }

                    if (juavm.JobUnitAmplitudeList != null && juavm.JobUnitAmplitudeList.Count > 0)
                    {
                        string Header = "{\"JobUnitAmplitudeList\": ";
                        string Footer = "}";
                        UnitAmplitudeJson = Header + JsonConvert.SerializeObject(juavm.JobUnitAmplitudeList) + Footer;
                    }

                    DynamicParameters _params = new DynamicParameters();
                    _params.Add("@Result", null, DbType.String, direction: ParameterDirection.Output, size: 4000);
                    _params.Add("@ResultText", null, DbType.String, direction: ParameterDirection.Output, size: 4000);
                    _params.Add("@UnitAnalysisId", juavm.UnitAnalysisId, DbType.Int32, direction: ParameterDirection.Input);
                    _params.Add("@JobEquipmentId", juavm.JobEquipmentId, DbType.Int32, direction: ParameterDirection.Input);
                    _params.Add("@ServiceId", juavm.ServiceId, DbType.Int32, direction: ParameterDirection.Input);
                    _params.Add("@UnitType", juavm.UnitType, DbType.String, direction: ParameterDirection.Input);
                    _params.Add("@UnitId", juavm.UnitId, DbType.Int32, direction: ParameterDirection.Input);
                    _params.Add("@ConditionId", juavm.ConditionId, DbType.Int32, direction: ParameterDirection.Input);
                    _params.Add("@ConfidentFactorId", juavm.ConfidentFactorId, DbType.Int32, direction: ParameterDirection.Input);
                    _params.Add("@FailureProbFactorId", juavm.FailureProbFactorId, DbType.Int32, direction: ParameterDirection.Input);
                    _params.Add("@PriorityId", juavm.PriorityId, DbType.Int32, direction: ParameterDirection.Input);
                    _params.Add("@IsWorkNotification", juavm.IsWorkNotification, DbType.String, direction: ParameterDirection.Input);
                    _params.Add("@IsEC", juavm.IsEC, DbType.String, direction: ParameterDirection.Input);
                    _params.Add("@NoOfDays", juavm.NoOfDays, DbType.Int32, direction: ParameterDirection.Input);
                    _params.Add("@Recommendation", juavm.Recommendation, DbType.String, direction: ParameterDirection.Input);
                    _params.Add("@Comment", juavm.Comment, DbType.String, direction: ParameterDirection.Input);
                    _params.Add("@UnitSymptomsJson", UnitSymptomsJson, DbType.String, direction: ParameterDirection.Input);
                    _params.Add("@UnitAmplitudeJson", UnitAmplitudeJson, DbType.String, direction: ParameterDirection.Input);
                    _params.Add("@StatusId", juavm.StatusId, DbType.Int32, direction: ParameterDirection.Input);
                    _params.Add("@UserId", juavm.UserId, DbType.Int32, direction: ParameterDirection.Input);

                    var returnValue = await(conn.QueryAsync <dynamic>(sql, _params, commandType: CommandType.StoredProcedure));

                    string result     = _params.Get <string>("Result");
                    string resultText = _params.Get <string>("ResultText");

                    if (result == "F")
                    {
                        throw new CustomException(resultText, "Error", true, resultText);
                    }

                    return(returnValue);
                }
                catch (CustomException cex)
                {
                    throw new CustomException(cex.Message, cex.Type, cex.IsException, cex.Exception?.ToString());
                }
                catch (Exception ex)
                {
                    throw new CustomException("Unable to Save Or Update, Please Contact Support!!!", "Error", true, ex);
                }
            }
        }