人员简历相关接口开发

pull/116/head
dxfeng 2 years ago
parent 76f1501a28
commit 33e9073e1c

@ -0,0 +1,22 @@
package com.engine.organization.entity.resume.po;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author:dxfeng
* @createTime: 2022/12/29
* @version: 1.0
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class PersonnelResumeColumn {
private String name;
private String value;
private Integer colspans;
private Integer rowspans;
}

@ -0,0 +1,79 @@
package com.engine.organization.entity.resume.po;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.util.IOUtils;
import weaver.file.ImageFileManager;
import weaver.general.Util;
import java.io.IOException;
import java.io.InputStream;
import java.util.Base64;
/**
* @author:dxfeng
* @createTime: 2022/12/29
* @version: 1.0
*/
@Data
public class PersonnelResumePO {
private String lastName;
private String sex;
private String birthday;
// resourceImageId;
private String image;
private String nativePlace;
// policy;
private String politics;
// departmentid;
private String department;
// maritalStatus;
private String marriage;
private String jobTitle;
private String companyStartDate;
private String workStartDate;
// certificatenum
private String idCard;
// homeaddress
private String address;
private String telephone;
private String email;
private String selfStatement;
public String getSex() {
if ("1".equals(sex)) {
return "女";
}
return "男";
}
public String getImage() {
if (StringUtils.isBlank(image)) {
return "";
}
ImageFileManager manager = new ImageFileManager();
manager.getImageFileInfoById(Util.getIntValue(image));
InputStream inputStream = manager.getInputStream();
try {
return "data:image/" + manager.getImageFileType() + ";base64," + Base64.getEncoder().encodeToString(IOUtils.toByteArray(inputStream));
} catch (IOException e) {
throw new RuntimeException(e);
}
}
public String getMarriage() {
if (StringUtils.isBlank(marriage)) {
return "未婚";
}
switch (marriage) {
case "1":
return "已婚";
case "2":
return "离异";
case "0":
default:
return "未婚";
}
}
}

@ -0,0 +1,23 @@
package com.engine.organization.entity.resume.po;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author:dxfeng
* @createTime: 2022/12/29
* @version: 1.0
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class PersonnelResumeTable {
private String title;
private List<PersonnelResumeColumn> columns;
private List<List<PersonnelResumeColumn>> datas;
}

@ -1,6 +1,7 @@
package com.engine.organization.mapper.resource;
import com.engine.organization.entity.hrmresource.po.ResourcePO;
import com.engine.organization.entity.resume.po.PersonnelResumePO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -17,4 +18,6 @@ public interface HrmResourceMapper {
List<ResourcePO> listByFilter(@Param("resourcePO") ResourcePO resourcePO);
PersonnelResumePO getPersonnelResumeById(@Param("id") Integer id);
}

@ -29,6 +29,28 @@
and jobtitle = #{resourcePO.jobtitle}
</if>
</select>
<select id="getPersonnelResumeById"
resultType="com.engine.organization.entity.resume.po.PersonnelResumePO">
select lastname,
sex,
birthday,
resourceimageid as image,
nativeplace,
policy as politics,
a.departmentname as department,
maritalstatus as marriage,
b.jobtitlename as jobTitle,
companystartdate,
workstartdate,
certificatenum as idCard,
homeaddress as address,
telephone,
email
from hrmresource h
inner join hrmdepartment a on a.id = h.departmentid
inner join hrmjobtitles b on b.id = h.jobtitle
where h.id = #{id}
</select>
<sql id="likeSql">
<if test="resourcePO.lastName != null and resourcePO.lastName != ''">

@ -18,6 +18,14 @@ public interface PersonnelResumeService {
*/
Map<String, Object> getSearchTree(SearchTreeParams params);
/**
*
*
* @param uId
* @return
*/
Map<String, Object> getResumeList(Integer uId);
/**
*
*

@ -10,6 +10,9 @@ import com.engine.organization.entity.hrmresource.bo.ResourceBO;
import com.engine.organization.entity.hrmresource.po.ResourcePO;
import com.engine.organization.entity.job.bo.JobBO;
import com.engine.organization.entity.job.po.JobPO;
import com.engine.organization.entity.resume.po.PersonnelResumeColumn;
import com.engine.organization.entity.resume.po.PersonnelResumePO;
import com.engine.organization.entity.resume.po.PersonnelResumeTable;
import com.engine.organization.entity.searchtree.SearchTree;
import com.engine.organization.entity.searchtree.SearchTreeParams;
import com.engine.organization.enums.ModuleTypeEnum;
@ -19,6 +22,7 @@ import com.engine.organization.mapper.job.JobMapper;
import com.engine.organization.mapper.resource.HrmResourceMapper;
import com.engine.organization.service.PersonnelResumeService;
import com.engine.organization.util.MenuBtn;
import com.engine.organization.util.OrganizationAssert;
import com.engine.organization.util.db.MapperProxyFactory;
import com.engine.organization.util.detach.DetachUtil;
import com.engine.organization.util.page.PageUtil;
@ -63,6 +67,88 @@ public class PersonnelResumeServiceImpl extends Service implements PersonnelResu
return SearchTreeUtil.getSearchTree(type, treeList);
}
@Override
public Map<String, Object> getResumeList(Integer uId) {
Map<String, Object> resultMap = new HashMap<>();
// 根据ID查询用户信息
PersonnelResumePO personnelResumePO = getHrmResourceMapper().getPersonnelResumeById(uId);
OrganizationAssert.notNull(personnelResumePO, "未找到对应人员");
resultMap.put("lastName", Util.null2String(personnelResumePO.getLastName()));
resultMap.put("sex", Util.null2String(personnelResumePO.getSex()));
resultMap.put("birthday", Util.null2String(personnelResumePO.getBirthday()));
resultMap.put("image", Util.null2String(personnelResumePO.getImage()));
resultMap.put("native", Util.null2String(personnelResumePO.getNativePlace()));
resultMap.put("politics", Util.null2String(personnelResumePO.getPolitics()));
resultMap.put("department", Util.null2String(personnelResumePO.getDepartment()));
resultMap.put("marriage", Util.null2String(personnelResumePO.getMarriage()));
resultMap.put("jobtitle", Util.null2String(personnelResumePO.getJobTitle()));
resultMap.put("companystartdate", Util.null2String(personnelResumePO.getCompanyStartDate()));
resultMap.put("workstartdate", Util.null2String(personnelResumePO.getWorkStartDate()));
resultMap.put("idCard", Util.null2String(personnelResumePO.getIdCard()));
resultMap.put("address", Util.null2String(personnelResumePO.getAddress()));
resultMap.put("telephone", Util.null2String(personnelResumePO.getTelephone()));
resultMap.put("email", Util.null2String(personnelResumePO.getEmail()));
resultMap.put("selfStatement", "");
// 简历相关表格,待拓展
List<PersonnelResumeTable> tables = new ArrayList<>();
List<PersonnelResumeColumn> columns1 = new ArrayList<>();
List<PersonnelResumeColumn> columns2 = new ArrayList<>();
List<PersonnelResumeColumn> datas1 = new ArrayList<>();
List<PersonnelResumeColumn> datas2 = new ArrayList<>();
List<PersonnelResumeColumn> datas3 = new ArrayList<>();
List<PersonnelResumeColumn> datas4 = new ArrayList<>();
columns1.add(PersonnelResumeColumn.builder().name("首次参保时间").colspans(2).rowspans(1).build());
columns1.add(PersonnelResumeColumn.builder().name("养老保险").colspans(1).rowspans(1).build());
columns1.add(PersonnelResumeColumn.builder().name("医疗保险").colspans(1).rowspans(1).build());
columns1.add(PersonnelResumeColumn.builder().name("失业保险").colspans(1).rowspans(1).build());
columns1.add(PersonnelResumeColumn.builder().name("住房公积金").colspans(1).rowspans(1).build());
columns1.add(PersonnelResumeColumn.builder().name("企业年金").colspans(1).rowspans(1).build());
datas1.add(PersonnelResumeColumn.builder().name("2022-10-02").colspans(2).rowspans(1).build());
datas1.add(PersonnelResumeColumn.builder().name("80").colspans(1).rowspans(1).build());
datas1.add(PersonnelResumeColumn.builder().name("36").colspans(1).rowspans(1).build());
datas1.add(PersonnelResumeColumn.builder().name("360").colspans(1).rowspans(1).build());
datas1.add(PersonnelResumeColumn.builder().name("180").colspans(1).rowspans(1).build());
datas1.add(PersonnelResumeColumn.builder().name("20000").colspans(1).rowspans(1).build());
tables.add(PersonnelResumeTable.builder().title("二、社会保险及住房公积金缴纳情况(单位/元)").columns(columns1).datas(Collections.singletonList(datas1)).build());
columns2.add(PersonnelResumeColumn.builder().name("关系").colspans(2).rowspans(1).build());
columns2.add(PersonnelResumeColumn.builder().name("姓名").colspans(1).rowspans(1).build());
columns2.add(PersonnelResumeColumn.builder().name("工作单位及职务").colspans(1).rowspans(1).build());
columns2.add(PersonnelResumeColumn.builder().name("联系电话").colspans(1).rowspans(1).build());
columns2.add(PersonnelResumeColumn.builder().name("住址").colspans(2).rowspans(1).build());
datas2.add(PersonnelResumeColumn.builder().name("父子").colspans(2).rowspans(1).build());
datas2.add(PersonnelResumeColumn.builder().name("徐晓").colspans(1).rowspans(1).build());
datas2.add(PersonnelResumeColumn.builder().name("北凉王").colspans(1).rowspans(1).build());
datas2.add(PersonnelResumeColumn.builder().name("1589756859").colspans(1).rowspans(1).build());
datas2.add(PersonnelResumeColumn.builder().name("江苏省南京市北凉军营").colspans(2).rowspans(1).build());
datas3.add(PersonnelResumeColumn.builder().name("母子").colspans(2).rowspans(1).build());
datas3.add(PersonnelResumeColumn.builder().name("吴素").colspans(1).rowspans(1).build());
datas3.add(PersonnelResumeColumn.builder().name("北凉王妃").colspans(1).rowspans(1).build());
datas3.add(PersonnelResumeColumn.builder().name("15897566487").colspans(1).rowspans(1).build());
datas3.add(PersonnelResumeColumn.builder().name("江苏省南京市北凉龙雀军团").colspans(2).rowspans(1).build());
datas4.add(PersonnelResumeColumn.builder().name("女儿").colspans(2).rowspans(1).build());
datas4.add(PersonnelResumeColumn.builder().name("徐念凉").colspans(1).rowspans(1).build());
datas4.add(PersonnelResumeColumn.builder().name("北凉公主").colspans(1).rowspans(1).build());
datas4.add(PersonnelResumeColumn.builder().name("15897566587").colspans(1).rowspans(1).build());
datas4.add(PersonnelResumeColumn.builder().name("莽荒之地").colspans(2).rowspans(1).build());
List<List<PersonnelResumeColumn>> objects = new ArrayList<>();
objects.add(datas2);
objects.add(datas3);
objects.add(datas4);
tables.add(PersonnelResumeTable.builder().title("三、家庭成员信息(包括父母、配偶、子女)").columns(columns2).datas(objects).build());
resultMap.put("tables", tables);
return resultMap;
}
@Override
public Map<String, Object> hasRight() {
Map<String, Object> resultMap = new HashMap<>();

@ -7,6 +7,7 @@ import com.engine.common.util.ServiceUtil;
import com.engine.organization.entity.searchtree.SearchTreeParams;
import com.engine.organization.util.response.ReturnResult;
import com.engine.organization.wrapper.PersonnelResumeWrapper;
import weaver.general.Util;
import weaver.hrm.HrmUserVarify;
import weaver.hrm.User;
@ -59,4 +60,19 @@ public class PersonnelResumeController {
}
@GET
@Path("/getResumeList")
@Produces(MediaType.APPLICATION_JSON)
public ReturnResult getResumeList(@Context HttpServletRequest request, @Context HttpServletResponse response) {
try {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> map = ParamUtil.request2Map(request);
Integer uId = Integer.parseInt(Util.null2String(map.get("id")));
return ReturnResult.successed(getPersonnelResumeWrapper(user).getResumeList(uId));
} catch (Exception e) {
return ReturnResult.exceptionHandle(e);
}
}
}

@ -26,4 +26,8 @@ public class PersonnelResumeWrapper extends OrganizationWrapper {
public Map<String, Object> hasRight() {
return getPersonnelResumeService(user).hasRight();
}
public Map<String, Object> getResumeList(Integer uId) {
return getPersonnelResumeService(user).getResumeList(uId);
}
}

Loading…
Cancel
Save