Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
J
jy_jfb
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Administrator
jy_jfb
Commits
fb2ee305
提交
fb2ee305
authored
3月 03, 2026
作者:
wangmenglong
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
增加导出功能
上级
d14c52aa
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
156 行增加
和
0 行删除
+156
-0
ExportRecruit.java
jfb-lib/src/main/java/excel/ExportRecruit.java
+57
-0
SignRecordController.java
...java/com/jfb/recruit/controller/SignRecordController.java
+99
-0
没有找到文件。
jfb-lib/src/main/java/excel/ExportRecruit.java
0 → 100644
浏览文件 @
fb2ee305
package
excel
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.alibaba.excel.annotation.write.style.HeadFontStyle
;
import
com.alibaba.excel.annotation.write.style.HeadRowHeight
;
import
com.alibaba.excel.annotation.write.style.HeadStyle
;
import
lombok.Data
;
import
org.apache.poi.ss.usermodel.FillPatternType
;
import
java.math.BigDecimal
;
/**
* @author wangmenglong
* @description: 报名导出
* @date 2024/6/21 16:45
*/
@Data
@HeadRowHeight
(
20
)
@HeadStyle
(
fillPatternType
=
FillPatternType
.
SOLID_FOREGROUND
,
fillForegroundColor
=
22
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ColumnWidth
(
25
)
public
class
ExportRecruit
{
@ExcelProperty
(
"报名时间"
)
private
String
rtTime
;
@ExcelProperty
(
"报名企业"
)
private
String
orgName
;
@ExcelProperty
(
"报名职位"
)
private
String
name
;
@ExcelProperty
(
"姓名"
)
private
String
personName
;
@ExcelProperty
(
"联系电话"
)
private
String
personPhoneNumber
;
@ExcelProperty
(
"性别"
)
private
String
personSex
;
@ExcelProperty
(
"身份证号"
)
private
String
personIdNo
;
@ExcelProperty
(
"状态"
)
private
String
recordState
;
@ExcelProperty
(
"岗位发布人"
)
private
String
userName
;
@ExcelProperty
(
"创建时间"
)
private
String
createTime
;
}
jfb-recruit/src/main/java/com/jfb/recruit/controller/SignRecordController.java
浏览文件 @
fb2ee305
...
@@ -2,6 +2,9 @@ package com.jfb.recruit.controller;
...
@@ -2,6 +2,9 @@ package com.jfb.recruit.controller;
import
base.controller.BaseController
;
import
base.controller.BaseController
;
import
base.result.BaseResult
;
import
base.result.BaseResult
;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.excel.ExcelWriter
;
import
com.alibaba.excel.write.metadata.WriteSheet
;
import
com.github.pagehelper.PageInfo
;
import
com.github.pagehelper.PageInfo
;
import
com.jfb.recruit.bean.auth.UserContext
;
import
com.jfb.recruit.bean.auth.UserContext
;
import
com.jfb.recruit.service.SignRecordService
;
import
com.jfb.recruit.service.SignRecordService
;
...
@@ -9,12 +12,20 @@ import com.jfb.recruit.service.RecruitService;
...
@@ -9,12 +12,20 @@ import com.jfb.recruit.service.RecruitService;
import
com.jfb.recruit.util.auth.UserUtils
;
import
com.jfb.recruit.util.auth.UserUtils
;
import
data.recruit.SignRecord
;
import
data.recruit.SignRecord
;
import
data.recruit.Recruit
;
import
data.recruit.Recruit
;
import
excel.ExportRecruit
;
import
org.apache.commons.lang3.time.DateFormatUtils
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.net.URLEncoder
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
static
org
.
reflections
.
Reflections
.
log
;
/**
/**
* @author wangmenglong
* @author wangmenglong
* @description: 报名管理
* @description: 报名管理
...
@@ -65,6 +76,94 @@ public class SignRecordController extends BaseController {
...
@@ -65,6 +76,94 @@ public class SignRecordController extends BaseController {
return
BaseResult
.
success
(
pageInfo
);
return
BaseResult
.
success
(
pageInfo
);
}
}
/**
* 导出明细
* @param: [req]
* @return: util.Paging
* @author: wangmenglong
* @date: 2021/7/13
*/
@RequestMapping
(
value
=
"/admin/list/export"
,
method
=
RequestMethod
.
POST
)
@ResponseBody
public
void
export
(
HttpServletRequest
req
,
HttpServletResponse
response
)
{
PageInit
(
req
);
String
personIdno
=
req
.
getParameter
(
"personIdno"
);
String
personName
=
req
.
getParameter
(
"personName"
);
String
name
=
req
.
getParameter
(
"name"
);
String
userName
=
req
.
getParameter
(
"userName"
);
List
<
Recruit
>
list
=
recruitService
.
listBySignRecordAdmin
(
pageNum
,
pageSize
,
personIdno
,
personName
,
name
,
userName
);
try
{
//导出数据
String
now
=
DateFormatUtils
.
format
(
new
Date
(),
"yyyyMMddHHmmss"
);
response
.
setHeader
(
"Access-Control-Allow-Origin"
,
"*"
);
if
(
req
.
getMethod
().
equals
(
"OPTIONS"
))
{
response
.
addHeader
(
"Access-Control-Allow-Methods"
,
"GET,HEAD,POST,PUT,DELETE,TRACE,OPTIONS,PATCH"
);
response
.
addHeader
(
"Access-Control-Allow-Headers"
,
"dnt,Origin, X-Requested-With,Content-Type, Accept, Authorization"
);
}
response
.
setCharacterEncoding
(
"utf-8"
);
response
.
setContentType
(
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
);
String
encodedFileName
=
URLEncoder
.
encode
(
"求职报名"
+
now
,
"UTF-8"
).
replaceAll
(
"\\+"
,
"%20"
);
response
.
setHeader
(
"Content-Disposition"
,
"attachment; filename*=UTF-8''"
+
encodedFileName
);
ExcelWriter
excelWriter
=
EasyExcel
.
write
(
response
.
getOutputStream
()).
build
();
List
<
ExportRecruit
>
result
=
new
ArrayList
<>();
list
.
stream
().
forEach
(
item
->{
ExportRecruit
exportRecruit
=
new
ExportRecruit
();
exportRecruit
.
setRtTime
(
item
.
getRtTime
());
exportRecruit
.
setOrgName
(
item
.
getOrgName
());
exportRecruit
.
setName
(
item
.
getName
());
exportRecruit
.
setPersonName
(
item
.
getPerson
().
getName
());
exportRecruit
.
setPersonPhoneNumber
(
item
.
getPerson
().
getPhoneNumber
());
if
(
item
.
getPerson
().
getSex
()
!=
null
){
if
(
item
.
getPerson
().
getSex
()){
exportRecruit
.
setPersonSex
(
"男"
);
}
else
{
exportRecruit
.
setPersonSex
(
"女"
);
}
}
exportRecruit
.
setPersonIdNo
(
item
.
getPerson
().
getIdNo
());
switch
(
item
.
getRecordState
()){
case
"INTERVIEW"
:
exportRecruit
.
setRecordState
(
"面试中"
);
break
;
case
"APPLY_FAILED"
:
exportRecruit
.
setRecordState
(
"未录取"
);
break
;
case
"APPLY_SUCCESS"
:
exportRecruit
.
setRecordState
(
"已录取"
);
break
;
case
"ON_BOARDING"
:
exportRecruit
.
setRecordState
(
"已入职"
);
break
;
case
"INVITING_INTERVIEW"
:
exportRecruit
.
setRecordState
(
"邀请面试"
);
break
;
case
"APPLYING"
:
exportRecruit
.
setRecordState
(
"提交简历"
);
break
;
}
exportRecruit
.
setUserName
(
item
.
getUserName
());
exportRecruit
.
setCreateTime
(
item
.
getCreateTime
());
result
.
add
(
exportRecruit
);
});
WriteSheet
bill
=
EasyExcel
.
writerSheet
(
0
,
"求职报名"
).
head
(
ExportRecruit
.
class
)
.
build
();
excelWriter
.
write
(
result
,
bill
);
excelWriter
.
finish
();
}
catch
(
Exception
e
)
{
log
.
error
(
"附加扣除导出数据失败"
,
e
);
}
}
/**
/**
* @description: 新增报名
* @description: 新增报名
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论