Beispiel #1
0
        public async Task <IActionResult> AllAppraisalResult([FromQuery] AppraisalQueryParam configParam)
        {
            var configDetails = await appraisalResult.GetAppraisalConfiguration(configParam.Config);

            if (configDetails == null)
            {
                return(NotFound(new { message = "Appraisal configuration not found" }));
            }

            var result = await finalResultRepo.GetAllResultByCycle(ObjectId.Parse(configParam.Cycle));

            if (result != null)
            {
                return(Ok(result));
            }

            return(NoContent());
        }
        public async Task <IActionResult> GetKraforAppraisal(int employeeId, [FromQuery] AppraisalQueryParam configParam)
        {
            var configDetails = await appraisalResult.GetAppraisalConfiguration(configParam.Config);

            if (configDetails == null)
            {
                return(NotFound(new { message = "Appraisal configuration not found" }));
            }

            var currentCycle = configDetails.Cycles.FirstOrDefault(x => x.Id == ObjectId.Parse(configParam.Cycle));

            if (currentCycle == null)
            {
                return(NotFound(new { message = "Appraisal cycle not found" }));
            }

            var resultFromMap = appraisalResult.GetAcceptedKRAForAppraisal(employeeId, currentCycle);
            var mapInstance   = mapper.Map <IEnumerable <KeyResultAreaForViewDto> >(resultFromMap).ToList();

            mapInstance.RemoveAll(x => !x.keyOutcomes.Any());
            return(Ok(mapInstance));
        }