예제 #1
0
        public async Task <IActionResult> Export(QueryExportResumeInput input)
        {
            var resumes = await _resumeQuerier.GetExportResumesAsync(input);

            var columnNames = new string[] {
                "简历编号",
                "职位",
                "姓名",
                "电话",
                "邮箱",
                "学历",
                "工作年限",
                "来源",
                "审核情况",
                "标签",
                "入库时间"
            };

            using (ExcelPackage package = new ExcelPackage())
            {
                var worksheet01 = package.Workbook.Worksheets.Add("简历列表");
                for (int i = 0; i < columnNames.Length; i++)
                {
                    worksheet01.Cells[1, i + 1].Value = columnNames[i];
                }
                worksheet01.Cells[1, 1, 1, 11].Style.Font.Bold = true;

                for (int i = 0; i < resumes.Count; i++)
                {
                    worksheet01.Cells[i + 2, 1].Value = resumes[i].No;
                    worksheet01.Cells[i + 2, 2].Value = resumes[i].JobName;
                    worksheet01.Cells[i + 2, 3].Value = resumes[i].Name;
                    worksheet01.Cells[i + 2, 4].Value = resumes[i].PhoneNumber;
                    worksheet01.Cells[i + 2, 5].Value = resumes[i].Email;
                    worksheet01.Cells[i + 2, 6].Value = resumes[i].Education;
                    worksheet01.Cells[i + 2, 7].Value = resumes[i].WorkIn;
                    worksheet01.Cells[i + 2, 8].Value = resumes[i].PlatformName;
                    worksheet01.Cells[i + 2, 9].Value = resumes[i].AuditStatus.GetDescription();
                    if (resumes[i].Tags != null)
                    {
                        worksheet01.Cells[i + 2, 10].Value = string.Join(' ', resumes[i].Tags);
                    }
                    else
                    {
                        worksheet01.Cells[i + 2, 10].Value = "";
                    }
                    worksheet01.Cells[i + 2, 11].Value = resumes[i].CreationTime.ToString("yyyy-MM-dd");
                }
                return(File(package.GetAsByteArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", $"简历报告{DateTime.Now:yyyy-MM-dd_HH_mm_ss}.xlsx"));
            }
        }
예제 #2
0
        public async Task <IActionResult> Export(QueryExportResumeInput input)
        {
            var resumes = await _resumeQuerier.GetExportResumesAsync(input);

            var columnNames = new string[] {
                "简历编号",
                "来源",
                "职位",
                "简历",
                "审核情况",
                "姓名",
                "电话",
                "求职意向城市",
            };

            using (ExcelPackage package = new ExcelPackage())
            {
                var worksheet01 = package.Workbook.Worksheets.Add("简历列表");
                for (int i = 0; i < columnNames.Length; i++)
                {
                    worksheet01.Cells[1, i + 1].Value = columnNames[i];
                }
                worksheet01.Cells[1, 1, 1, 6].Style.Font.Bold = true;

                for (int i = 0; i < resumes.Count; i++)
                {
                    worksheet01.Cells[i + 2, 1].Value = resumes[i].PlatformName;
                    worksheet01.Cells[i + 2, 2].Value = resumes[i].JobName;
                    if (!string.IsNullOrEmpty(resumes[i].Description))
                    {
                        //添加简历记录
                        var name            = !string.IsNullOrEmpty(resumes[i].Name) ? resumes[i].Name : i.ToString();
                        var resumeWorksheet = package.Workbook.Worksheets.Add($"简历{name}");
                        AddHtmlToWorksheet(resumes[i].Description, resumeWorksheet, "简历列表!A1");

                        worksheet01.Cells[i + 2, 4].Style.Font.UnderLine = true;
                        worksheet01.Cells[i + 2, 4].Style.Font.Color.SetColor(Color.Blue);
                        worksheet01.Cells[i + 2, 4].Hyperlink = new ExcelHyperLink($"简历{name}!A1", "简历");
                    }

                    worksheet01.Cells[i + 2, 5].Value = resumes[i].AuditStatus.GetDescription();
                    worksheet01.Cells[i + 2, 6].Value = resumes[i].Name;
                    worksheet01.Cells[i + 2, 7].Value = resumes[i].PhoneNumber;
                    worksheet01.Cells[i + 2, 8].Value = resumes[i].City;
                }
                return(File(package.GetAsByteArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "简历报告.xlsx"));
            }
        }