public async Task <PartialViewResult> GetReport(string projectid)
        {
            InitializeServiceClient();
            HttpResponseMessage skillResponse = await client.PostAsJsonAsync("Skill/GetAllSkills", req);

            ViewBag.Skills = await skillResponse.Content.ReadAsAsync <List <Skill> >();

            HttpResponseMessage projectResponse = await client.PostAsJsonAsync("Project/GetAllProjects", req);

            List <Project> projects = await projectResponse.Content.ReadAsAsync <List <Project> >();

            ViewBag.Projects = projects;
            OnboardingReportRequest request = new OnboardingReportRequest();

            request.ClientInfo = req.ClientInfo;
            //request.Status = "OnBoarded";
            request.RoleId    = 0;
            request.GEOId     = 0;
            request.ProjectId = Convert.ToInt32(projectid);
            HttpResponseMessage userskillResponse = await client.PostAsJsonAsync("Onboarding/GetOnBoardingSkillReport", request);

            List <UserOnBoarding> skills = await userskillResponse.Content.ReadAsAsync <List <UserOnBoarding> >();

            return(PartialView("CandidateSkillMapReport", skills));
        }
Esempio n. 2
0
        public List <UserChecklistReportItem> GetLastChecklistReport(OnboardingReportRequest req)
        {
            List <UserChecklistReportItem> response = new List <UserChecklistReportItem>();

            try
            {
                SqlSvrDAL dal = new SqlSvrDAL(req.ClientInfo);
                response = dal.GetLastChecklistReport(req.RoleId, req.ProjectId, req.GEOId, req.option, req.search);
            }
            catch (Exception ex)
            {
                //LogHelper.AddLog("OnBoardingController,GetLastChecklistReport", ex.Message, ex.StackTrace, "HCL.Academy.Service", req.ClientInfo.emailId);
                TelemetryClient telemetry = new TelemetryClient();
                telemetry.TrackException(ex);
            }
            return(response);
        }
Esempio n. 3
0
        public async Task <ActionResult> LastChecklistReport(int project, int roleId, int geoId, string option, string search)
        {
            InitializeServiceClient();
            OnboardingReportRequest request = new OnboardingReportRequest();

            request.ClientInfo      = req.ClientInfo;
            request.IsExcelDownload = false;
            request.GEOId           = geoId;
            request.RoleId          = roleId;
            request.ProjectId       = project;
            request.option          = option;
            request.search          = search;
            HttpResponseMessage response = await client.PostAsJsonAsync("Onboarding/GetLastChecklistReport", request);

            List <UserChecklistReportItem> lstUserChecklist = await response.Content.ReadAsAsync <List <UserChecklistReportItem> >();

            return(PartialView("LastChecklistReport", lstUserChecklist));
        }
Esempio n. 4
0
        public async Task <FileResult> DownloadLastChecklistItemReport(int project, int roleId, int geoId)
        {
            ExcelPackage excel     = new ExcelPackage();
            var          workSheet = excel.Workbook.Worksheets.Add("Sheet1");

            workSheet.TabColor         = System.Drawing.Color.Black;
            workSheet.DefaultRowHeight = 12;

            InitializeServiceClient();
            OnboardingReportRequest request = new OnboardingReportRequest();

            request.ClientInfo      = req.ClientInfo;
            request.IsExcelDownload = false;
            request.GEOId           = geoId;
            request.RoleId          = roleId;
            request.ProjectId       = project;
            HttpResponseMessage response = await client.PostAsJsonAsync("Onboarding/GetLastChecklistReport", request);

            List <UserChecklistReportItem> lstUserChecklist = await response.Content.ReadAsAsync <List <UserChecklistReportItem> >();


            if (lstUserChecklist.Count > 0)
            {
                workSheet.Row(1).Height = 40;
                workSheet.Row(1).Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;
                workSheet.Row(1).Style.VerticalAlignment   = ExcelVerticalAlignment.Top;
                workSheet.Row(1).Style.Fill.PatternType    = ExcelFillStyle.Solid;
                workSheet.Row(1).Style.Font.Bold           = true;
                workSheet.Row(1).Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.SkyBlue);
                workSheet.Cells[1, 1].Value = "Name";
                workSheet.Cells[1, 2].Value = "EmployeeId";
                workSheet.Cells[1, 3].Value = "EmailAddress";
                workSheet.Cells[1, 4].Value = "CheckListItem";
                workSheet.Cells[1, 5].Value = "OnboardingDate";
                workSheet.Cells[1, 6].Value = "CompletionDate";

                workSheet.Column(1).Width = 28;
                workSheet.Column(2).Width = 28;
                workSheet.Column(3).Width = 28;
                workSheet.Column(4).Width = 28;

                for (int i = 0; i < lstUserChecklist.Count; i++)
                {
                    workSheet.Cells[i + 2, 1].Value = lstUserChecklist[i].Name;
                    workSheet.Cells[i + 2, 2].Value = lstUserChecklist[i].EmployeeID;
                    workSheet.Cells[i + 2, 3].Value = lstUserChecklist[i].EmailAddress;
                    workSheet.Cells[i + 2, 4].Value = lstUserChecklist[i].CheckListItem;
                    workSheet.Cells[i + 2, 5].Value = lstUserChecklist[i].OnboardingDate;
                    workSheet.Cells[i + 2, 6].Value = lstUserChecklist[i].CompletionDate;
                }
            }
            string clientName = ConfigurationManager.AppSettings["ClientName"].ToString();
            string excelName  = clientName + "_LastChecklistItemReport_" + DateTime.Now + ".xlsx";

            using (var memoryStream = new MemoryStream())
            {
                Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                Response.AddHeader("content-disposition", "attachment; filename=" + excelName);
                excel.SaveAs(memoryStream);
                memoryStream.WriteTo(Response.OutputStream);
                Response.Flush();
                Response.End();
                return(File(memoryStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"));
            }
        }
        public async Task <FileResult> DownloadReportToExcel(string projectId)
        {
            //IDAL dal = (new DALFactory()).GetInstance();

            InitializeServiceClient();

            HttpResponseMessage skillResponse = await client.PostAsJsonAsync("Skill/GetAllSkills", req);

            List <Skill> lstSkills = await skillResponse.Content.ReadAsAsync <List <Skill> >();

            OnboardingReportRequest request = new OnboardingReportRequest();

            request.ClientInfo = req.ClientInfo;
            request.Status     = "OnBoarded";
            request.RoleId     = 0;
            request.GEOId      = 0;
            request.ProjectId  = Convert.ToInt32(projectId);
            HttpResponseMessage userskillResponse = await client.PostAsJsonAsync("Onboarding/GetOnBoardingSkillReport", request);

            List <UserOnBoarding> skills = await userskillResponse.Content.ReadAsAsync <List <UserOnBoarding> >();

            ExcelPackage excel     = new ExcelPackage();
            var          workSheet = excel.Workbook.Worksheets.Add("Sheet1");

            workSheet.TabColor         = System.Drawing.Color.Black;
            workSheet.DefaultRowHeight = 12;
            workSheet.Row(1).Height    = 20;

            workSheet.Row(1).Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;
            workSheet.Row(1).Style.VerticalAlignment   = ExcelVerticalAlignment.Top;
            workSheet.Row(1).Style.Fill.PatternType    = ExcelFillStyle.Solid;
            workSheet.Row(1).Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.CornflowerBlue);
            workSheet.Row(1).Style.Font.Bold = true;
            System.Drawing.Color color = System.Drawing.Color.Black;
            workSheet.Cells[1, 1].Value = "Name";
            int skillCount = lstSkills.Count;

            for (int i = 0; i < skillCount; i++)
            {
                workSheet.Cells[1, i + 2].Value = lstSkills[i].SkillName;
                workSheet.Cells[1, i + 2].Style.Border.BorderAround(ExcelBorderStyle.Thin, color);
            }
            int j = 0;

            foreach (var item in skills)
            {
                int k = 0;
                while (j < skills.Count && k < skillCount)
                {
                    workSheet.Cells[j + 2, 1].Value = item.Name;
                    workSheet.Cells[j + 2, 1].Style.Border.BorderAround(ExcelBorderStyle.Thin, color);
                    foreach (UserSkill u in item.UserSkills)
                    {
                        workSheet.Cells[j + 2, k + 2].Value = u.Competence;
                        string comp = u.Competence.ToUpper();
                        switch (comp)
                        {
                        case "NOVICE":
                            workSheet.Cells[j + 2, k + 2].Style.Fill.PatternType = ExcelFillStyle.Solid;
                            workSheet.Cells[j + 2, k + 2].Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.Red);
                            workSheet.Cells[j + 2, k + 2].Style.Font.Color.SetColor(System.Drawing.Color.White);
                            workSheet.Cells[j + 2, k + 2].Style.Border.BorderAround(ExcelBorderStyle.Thin, color);
                            break;

                        case "ADVANCED BEGINNER":
                            workSheet.Cells[j + 2, k + 2].Style.Fill.PatternType = ExcelFillStyle.Solid;
                            workSheet.Cells[j + 2, k + 2].Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.FromArgb(16765772));
                            workSheet.Cells[j + 2, k + 2].Style.Font.Color.SetColor(System.Drawing.Color.White);
                            workSheet.Cells[j + 2, k + 2].Style.Border.BorderAround(ExcelBorderStyle.Thin, color);
                            break;

                        case "COMPETENT":
                            workSheet.Cells[j + 2, k + 2].Style.Fill.PatternType = ExcelFillStyle.Solid;
                            workSheet.Cells[j + 2, k + 2].Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.LightSkyBlue);
                            workSheet.Cells[j + 2, k + 2].Style.Font.Color.SetColor(System.Drawing.Color.White);
                            workSheet.Cells[j + 2, k + 2].Style.Border.BorderAround(ExcelBorderStyle.Thin, color);
                            break;

                        case "PROFICIENT":
                            workSheet.Cells[j + 2, k + 2].Style.Fill.PatternType = ExcelFillStyle.Solid;
                            workSheet.Cells[j + 2, k + 2].Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.FromArgb(14125913));
                            workSheet.Cells[j + 2, k + 2].Style.Font.Color.SetColor(System.Drawing.Color.White);
                            workSheet.Cells[j + 2, k + 2].Style.Border.BorderAround(ExcelBorderStyle.Thin, color);
                            break;

                        case "EXPERT":
                            workSheet.Cells[j + 2, k + 2].Style.Fill.PatternType = ExcelFillStyle.Solid;
                            workSheet.Cells[j + 2, k + 2].Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.FromArgb(5031812));
                            workSheet.Cells[j + 2, k + 2].Style.Font.Color.SetColor(System.Drawing.Color.White);
                            workSheet.Cells[j + 2, k + 2].Style.Border.BorderAround(ExcelBorderStyle.Thin, color);
                            break;

                        default:
                            workSheet.Cells[j + 2, k + 2].Style.Fill.PatternType = ExcelFillStyle.Solid;
                            workSheet.Cells[j + 2, k + 2].Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.White);
                            workSheet.Cells[j + 2, k + 2].Style.Font.Color.SetColor(System.Drawing.Color.White);
                            workSheet.Cells[j + 2, k + 2].Style.Border.BorderAround(ExcelBorderStyle.Thin, color);
                            break;
                        }
                        k++;
                    }
                    j++;
                }
            }
            for (int x = 0; x < skillCount; x++)
            {
                workSheet.Column(x + 1).Width = 30;
            }


            string clientName = ConfigurationManager.AppSettings["ClientName"].ToString();
            string excelName  = clientName + "_CandidateSkillMapReport_" + DateTime.Now.Day + DateTime.Now.Month + DateTime.Now.Year + ".xlsx";

            using (var memoryStream = new MemoryStream())
            {
                Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                Response.AddHeader("content-disposition", "attachment; filename=" + excelName);
                excel.SaveAs(memoryStream);
                memoryStream.WriteTo(Response.OutputStream);
                Response.Flush();
                Response.End();
                return(File(memoryStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"));
            }
        }