盛虹化纤人员简历开发

盛虹化纤
Chengliang 2 months ago
parent 906acef453
commit bedc4e2ee1

@ -22,9 +22,7 @@ public class EducationInfo {
private String school;
private String educational;
private String degree;
private String educationalAndDegree;
private String major;
}

@ -23,9 +23,7 @@ public class FamilyInfo {
private String age;
private String workUnit;
private String position;
private String workUnitAndPostion;
private String mobile;

@ -20,11 +20,11 @@ public class WorkInfo {
private String startAndEndDate;
private String company;
private String department;
private String companyAndDepartment;
private String position;
private String people;
private String mobile;
}

@ -1,7 +1,9 @@
package com.engine.shkjsecond.service;
import com.engine.shkjsecond.entity.PersonnelResumePo;
import com.engine.shkjsecond.entity.PersonnelResumeTable;
import java.util.List;
import java.util.Map;
/**
@ -31,4 +33,11 @@ public interface PersonnelResumeService {
* @return: com.engine.shkjsecond.entity.PersonnelResumePo
*/
PersonnelResumePo peopleMainInfo(String resourceId);
/**
* id
* @param resourceId
* @return
*/
List<PersonnelResumeTable> peopleDetailInfo(String resourceId);
}

@ -1,12 +1,20 @@
package com.engine.shkjsecond.service.impl;
import com.engine.core.impl.Service;
import com.engine.shkjsecond.entity.PersonnelResumePo;
import com.engine.shkjsecond.entity.*;
import com.engine.shkjsecond.service.PersonnelResumeService;
import lombok.SneakyThrows;
import weaver.conn.RecordSet;
import weaver.general.Util;
import weaver.hrm.company.DepartmentComInfo;
import weaver.hrm.company.SubCompanyComInfo;
import weaver.hrm.job.EducationLevelComInfo;
import weaver.hrm.job.JobTitlesComInfo;
import weaver.hrm.resource.ResourceComInfo;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
@ -20,17 +28,236 @@ public class PersonnelResumeServiceImpl extends Service implements PersonnelResu
@Override
public Map<String, Object> getResumeList(String resourceId) {
return null;
Map<String, Object> resultMap = new HashMap<>(8);
PersonnelResumePo personnelResumePo = peopleMainInfo(resourceId);
resultMap.put("lastName",personnelResumePo.getLastName());
resultMap.put("sex",personnelResumePo.getSex());
resultMap.put("birthday",personnelResumePo.getBirthday());
resultMap.put("resourceImageId",personnelResumePo.getImage());
resultMap.put("certificatenum",personnelResumePo.getCertificatenum());
resultMap.put("residence",personnelResumePo.getResidence());
resultMap.put("politicsStatus",personnelResumePo.getPoliticsStatus());
resultMap.put("nation",personnelResumePo.getNation());
resultMap.put("nativePlace",personnelResumePo.getNativePlace());
resultMap.put("height",personnelResumePo.getHeight());
resultMap.put("weight",personnelResumePo.getWeight());
resultMap.put("maritalStatus",personnelResumePo.getMarriage());
resultMap.put("companyStartDate",personnelResumePo.getCompanyStartDate());
resultMap.put("jobTitle",personnelResumePo.getJobTitle());
resultMap.put("department",personnelResumePo.getDepartment());
resultMap.put("educationlevel",personnelResumePo.getEducationlevel());
resultMap.put("graduateSchool",personnelResumePo.getGraduateSchool());
resultMap.put("major",personnelResumePo.getMajor());
resultMap.put("jobcall",personnelResumePo.getJobcall());
resultMap.put("address",personnelResumePo.getAddress());
resultMap.put("mobile",personnelResumePo.getMobile());
resultMap.put("email",personnelResumePo.getEmail());
resultMap.put("emergencyContact",personnelResumePo.getEmergencyContact());
resultMap.put("relationship",personnelResumePo.getRelationship());
resultMap.put("eContactMobile",personnelResumePo.getEContactMobile());
//表格拓展
resultMap.put("tables", peopleDetailInfo(resourceId));
return resultMap;
}
@Override
public List<PersonnelResumeTable> peopleDetailInfo(String resourceId) {
List<PersonnelResumeTable> tables = new ArrayList<>();
List<PersonnelResumeTd> columns = new ArrayList<>();
List<List<PersonnelResumeTd>> datas = new ArrayList<>();
//1.教育经历
List<EducationInfo> educationInfos = selectEducInfo(resourceId);
//增加空行
educationInfos.add(EducationInfo.builder().build());
for (EducationInfo educationInfo : educationInfos) {
List<PersonnelResumeTd> educTr = new ArrayList<>();
educTr.add(PersonnelResumeTd.builder().colspans(1).value(educationInfo.getStartAndEndDate()).rowspans(1).build());
educTr.add(PersonnelResumeTd.builder().colspans(2).value(educationInfo.getSchool()).rowspans(1).build());
educTr.add(PersonnelResumeTd.builder().colspans(1).value(educationInfo.getEducationalAndDegree()).rowspans(1).build());
educTr.add(PersonnelResumeTd.builder().colspans(3).value(educationInfo.getMajor()).rowspans(1).build());
datas.add(educTr);
}
columns.add(PersonnelResumeTd.builder().colspans(1).value("教育经历").rowspans(educationInfos.size()+1).build());
columns.add(PersonnelResumeTd.builder().colspans(1).value("起止时间").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(2).value("学校").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(1).value("学历/学位").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(3).value("专业").rowspans(1).build());
tables.add(PersonnelResumeTable.builder().columns(columns).datas(datas).build());
//2.培训简历
columns = new ArrayList<>();
datas = new ArrayList<>();
List<TrainingInfo> trainingInfos = selectTainInfo(resourceId);
trainingInfos.add(TrainingInfo.builder().build());
for (TrainingInfo trainingInfo : trainingInfos ) {
List<PersonnelResumeTd> trainTr = new ArrayList<>();
trainTr.add(PersonnelResumeTd.builder().colspans(1).value(trainingInfo.getStartAndEndDate()).rowspans(1).build());
trainTr.add(PersonnelResumeTd.builder().colspans(2).value(trainingInfo.getTrainingContent()).rowspans(1).build());
trainTr.add(PersonnelResumeTd.builder().colspans(2).value(trainingInfo.getTrainingCompany()).rowspans(1).build());
trainTr.add(PersonnelResumeTd.builder().colspans(2).value(trainingInfo.getCertifications()).rowspans(1).build());
datas.add(trainTr);
}
columns.add(PersonnelResumeTd.builder().colspans(1).value("培训经历").rowspans(trainingInfos.size()+1).build());
columns.add(PersonnelResumeTd.builder().colspans(1).value("起止时间").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(2).value("培训内容").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(2).value("培训单位").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(2).value("所获证书").rowspans(1).build());
tables.add(PersonnelResumeTable.builder().columns(columns).datas(datas).build());
//3.工作经历(在盛虹工作经历)
columns = new ArrayList<>();
datas = new ArrayList<>();
List<WorkInfo> workInfos = selectWorkInfo(resourceId);
workInfos.add(WorkInfo.builder().build());
for (WorkInfo workInfo : workInfos){
List<PersonnelResumeTd> workTr = new ArrayList<>();
workTr.add(PersonnelResumeTd.builder().colspans(1).value(workInfo.getStartAndEndDate()).rowspans(1).build());
workTr.add(PersonnelResumeTd.builder().colspans(3).value(workInfo.getCompanyAndDepartment()).rowspans(1).build());
workTr.add(PersonnelResumeTd.builder().colspans(1).value(workInfo.getPosition()).rowspans(1).build());
workTr.add(PersonnelResumeTd.builder().colspans(2).value(workInfo.getPeople() + " / "+workInfo.getMobile()).rowspans(1).build());
datas.add(workTr);
}
columns.add(PersonnelResumeTd.builder().colspans(1).value("工作经历(在盛虹工作经历)").rowspans(workInfos.size()+1).build());
columns.add(PersonnelResumeTd.builder().colspans(1).value("起止时间").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(3).value("公司名称/部门").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(1).value("职位").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(2).value("证明人及联系方式").rowspans(1).build());
tables.add(PersonnelResumeTable.builder().columns(columns).datas(datas).build());
//4.家庭状况
columns = new ArrayList<>();
datas = new ArrayList<>();
List<FamilyInfo> familyInfos = selectFamilyInfo(resourceId);
familyInfos.add(FamilyInfo.builder().build());
for (FamilyInfo familyInfo : familyInfos) {
List<PersonnelResumeTd> familyTr = new ArrayList<>();
familyTr.add(PersonnelResumeTd.builder().colspans(1).value(familyInfo.getLastName()).rowspans(1).build());
familyTr.add(PersonnelResumeTd.builder().colspans(1).value(familyInfo.getRelationship()).rowspans(1).build());
familyTr.add(PersonnelResumeTd.builder().colspans(1).value(familyInfo.getAge()).rowspans(1).build());
familyTr.add(PersonnelResumeTd.builder().colspans(3).value(familyInfo.getWorkUnitAndPostion()).rowspans(1).build());
familyTr.add(PersonnelResumeTd.builder().colspans(1).value(familyInfo.getMobile()).rowspans(1).build());
datas.add(familyTr);
}
columns.add(PersonnelResumeTd.builder().colspans(1).value("家庭情况").rowspans(familyInfos.size()+1).build());
columns.add(PersonnelResumeTd.builder().colspans(1).value("姓名").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(1).value("关系").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(1).value("年龄").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(3).value("工作单位/职位").rowspans(1).build());
columns.add(PersonnelResumeTd.builder().colspans(1).value("联系电话").rowspans(1).build());
tables.add(PersonnelResumeTable.builder().columns(columns).datas(datas).build());
return tables;
}
private List<FamilyInfo> selectFamilyInfo(String resourceId) {
RecordSet rs = new RecordSet();
List<FamilyInfo> familyInfoList = new ArrayList<>();
rs.executeQuery("select jtcyxm,gx,nl,gzdw,zw,lxdh from uf_jtqk where xm = ?",resourceId);
while (rs.next()) {
familyInfoList.add(FamilyInfo.builder()
.lastName(Util.null2String(rs.getString("jtcyxm")))
.relationship(selectWorkflowItem("gx","uf_jtqk",Util.getIntValue(rs.getString("gx")),String.valueOf(user.getLanguage())))
.age(Util.null2String(rs.getString("nl")))
.workUnitAndPostion(Util.null2String(rs.getString("gzdw")) +" / "+Util.null2String(rs.getString("zw")))
.mobile(Util.null2String(rs.getString("lxdh")))
.build());
}
return familyInfoList;
}
@SneakyThrows
private List<WorkInfo> selectWorkInfo(String resourceId) {
RecordSet rs = new RecordSet();
List<WorkInfo> workInfoList = new ArrayList<>();
rs.executeQuery("select ksrq,jsrq,gsmc,bm,zw,zmr,zmrlxfs from uf_gzjlsh where xm = ?",resourceId);
DepartmentComInfo deptComInfo = new DepartmentComInfo();
SubCompanyComInfo subComInfo = new SubCompanyComInfo();
ResourceComInfo rInfo = new ResourceComInfo();
JobTitlesComInfo jobTitlesComInfo = new JobTitlesComInfo();
while (rs.next()) {
String date = Util.null2String(rs.getString("ksrq")) +" 至 " + Util.null2String(rs.getString("jsrq"));
String bm = deptComInfo.getDepartmentName(Util.null2String(rs.getString("bm")));
String companyAndDept = subComInfo.getSubCompanyname(Util.null2String(rs.getString("gsmc"))) + " / " + bm;
workInfoList.add(WorkInfo.builder()
.startAndEndDate(date)
.companyAndDepartment(companyAndDept)
.position(jobTitlesComInfo.getJobTitlesname(Util.null2String(rs.getString("zw"))))
.people(rInfo.getLastname(Util.null2String(rs.getString("zmr"))))
.mobile(Util.null2String(rs.getString("zmrlxfs")))
.build());
}
return workInfoList;
}
private List<TrainingInfo> selectTainInfo(String resourceId) {
RecordSet rs = new RecordSet();
List<TrainingInfo> trainingInfoList = new ArrayList<>();
rs.executeQuery("select ksrq,jsrq,pxnr,pxdw,shzs from uf_pxjlsh where xm = ?",resourceId);
while (rs.next()) {
String date = Util.null2String(rs.getString("ksrq")) +" 至 " + Util.null2String(rs.getString("jsrq"));
trainingInfoList.add(TrainingInfo.builder()
.startAndEndDate(date)
.trainingContent(Util.null2String(rs.getString("pxnr")))
.trainingCompany(Util.null2String(rs.getString("pxdw")))
.certifications(Util.null2String(rs.getString("shzs")))
.build());
}
return trainingInfoList;
}
private List<EducationInfo> selectEducInfo(String resourceId) {
RecordSet rs = new RecordSet();
EducationLevelComInfo eduComInfo = new EducationLevelComInfo();
List<EducationInfo> educationInfoList = new ArrayList<>();
rs.executeQuery("select ksrq,jsrq,byyx,xl,xw,zy from uf_jyjl where xm = ?",resourceId);
while (rs.next()) {
String date = Util.null2String(rs.getString("ksrq")) +" 至 " + Util.null2String(rs.getString("jsrq"));
String educationalAndDegree = eduComInfo.getEducationLevelname(Util.null2String(rs.getString("xl"))) +" / "
+ selectWorkflowItem("xw","uf_jyjl",Util.getIntValue(rs.getString("xw")),String.valueOf(user.getLanguage()));
educationInfoList.add(EducationInfo.builder()
.startAndEndDate(date)
.school(Util.null2String(rs.getString("byyx")))
.educationalAndDegree(educationalAndDegree)
.major(Util.null2String(rs.getString("zy")))
.build());
}
return educationInfoList;
}
@Override
public PersonnelResumePo peopleMainInfo(String resourceId) {
RecordSet rs = new RecordSet();
rs.executeQuery("SELECT h.id, lastname, sex, birthday, resourceimageid, certificatenum, e.field43 as residence, " +
" e.field44 as politicsStatus, e.field48 as nation, nativeplace, height, weight, maritalstatus, companystartdate, " +
" b.jobtitlename AS jobTitle, a.departmentname as department, c.name as educationlevel, e.field38 as graduateSchool, " +
" e.field39 as major, d.name as jobcall, e.field40 as address, mobile, email, e.field41 as emergencyContact, " +
" e.field45 as relationship, e.field46 as eContactMobile FROM hrmresource h " +
String residence = rs.getPropValue("shkjsecond", "residence");
String politicsStatus = rs.getPropValue("shkjsecond", "politicsStatus");
String nation = rs.getPropValue("shkjsecond", "nation");
String graduateSchool = rs.getPropValue("shkjsecond", "graduateSchool");
String major = rs.getPropValue("shkjsecond", "major");
String address = rs.getPropValue("shkjsecond", "address");
String emergencyContact = rs.getPropValue("shkjsecond", "emergencyContact");
String relationship = rs.getPropValue("shkjsecond", "relationship");
String eContactMobile = rs.getPropValue("shkjsecond", "eContactMobile");
rs.executeQuery("SELECT h.id, lastname, sex, birthday, resourceimageid, certificatenum, e."+residence+" as residence, " +
" e."+politicsStatus+" as politicsStatus, e."+nation+" as nation, nativeplace, height, weight, maritalstatus, companystartdate, " +
" b.jobtitlename AS jobTitle, a.departmentname as department, c.name as educationlevel, e."+graduateSchool+" as graduateSchool, " +
" e."+major+" as major, d.name as jobcall, e."+address+" as address, mobile, email, e."+emergencyContact+" as emergencyContact, " +
" e."+relationship+" as relationship, e."+eContactMobile+" as eContactMobile FROM hrmresource h " +
" LEFT JOIN hrmdepartment a ON a.id = h.departmentid LEFT JOIN hrmjobtitles b ON b.id = h.jobtitle " +
" LEFT JOIN hrmeducationlevel c on c.id = h.educationlevel LEFT JOIN hrmjobcall d on d.id = h.jobcall " +
" LEFT JOIN cus_fielddata e on e.id = h.id and scopeid = 1 and scope = 'HrmCustomFieldByInfoType' where h.id = ?",resourceId);
@ -41,30 +268,62 @@ public class PersonnelResumeServiceImpl extends Service implements PersonnelResu
personnelResumePo.setBirthday(Util.null2String(rs.getString("birthday")));
personnelResumePo.setResourceImageId(Util.null2String(rs.getString("resourceimageid")));
personnelResumePo.setCertificatenum(Util.null2String(rs.getString("certificatenum")));
personnelResumePo.setResidence(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setSex(Util.null2String(rs.getString("sex")));
personnelResumePo.setResidence(selectItemValue(residence,Util.getIntValue(rs.getString("residence")),String.valueOf(user.getLanguage())));
personnelResumePo.setPoliticsStatus(selectItemValue(politicsStatus,Util.getIntValue(rs.getString("politicsStatus")),String.valueOf(user.getLanguage())));
personnelResumePo.setNation(selectNationName(Util.null2String(rs.getString("nation"))));
personnelResumePo.setNativePlace(Util.null2String(rs.getString("nativeplace")));
personnelResumePo.setHeight(Util.null2String(rs.getString("height")));
personnelResumePo.setWeight(Util.null2String(rs.getString("weight")));
personnelResumePo.setMaritalStatus(Util.null2String(rs.getString("maritalstatus")));
personnelResumePo.setCompanyStartDate(Util.null2String(rs.getString("companystartdate")));
personnelResumePo.setJobTitle(Util.null2String(rs.getString("jobTitle")));
personnelResumePo.setDepartment(Util.null2String(rs.getString("department")));
personnelResumePo.setEducationlevel(Util.formatMultiLang(rs.getString("educationlevel"),String.valueOf(user.getLanguage())));
personnelResumePo.setGraduateSchool(Util.null2String(rs.getString("graduateSchool")));
personnelResumePo.setMajor(Util.null2String(rs.getString("major")));
personnelResumePo.setJobcall(Util.null2String(rs.getString("jobcall")));
personnelResumePo.setAddress(Util.null2String(rs.getString("address")));
personnelResumePo.setMobile(Util.null2String(rs.getString("mobile")));
personnelResumePo.setEmail(Util.null2String(rs.getString("email")));
personnelResumePo.setEmergencyContact(Util.null2String(rs.getString("emergencyContact")));
personnelResumePo.setRelationship(Util.null2String(rs.getString("relationship")));
personnelResumePo.setEContactMobile(Util.null2String(rs.getString("eContactMobile")));
//personnelResumePo.setLastName(Util.formatMultiLang());
}
return personnelResumePo;
}
private String selectItemValue(String field, Integer selectValue,String language) {
field = field.substring("field".length());
RecordSet rs = new RecordSet();
rs.executeQuery("select selectname from cus_selectitem where fieldid = ? and selectvalue = ?",field,selectValue);
rs.next();
return Util.formatMultiLang(Util.null2String(rs.getString("selectname")),language);
}
private String selectWorkflowItem(String fieldName, String tableName,Integer selectValue,String language) {
RecordSet rs = new RecordSet();
Integer fieldId = null;
rs.executeQuery("select id from workflow_billfield where billid = (select id from workflow_bill where tablename = '"+tableName+"') \n" +
" and fieldname = '"+fieldName+"'");
if (rs.next()) {
fieldId = Util.getIntValue(rs.getString("id"));
}
rs.executeQuery("select selectname from workflow_selectitem where fieldid = ? and selectvalue = ?",fieldId,selectValue);
rs.next();
return Util.formatMultiLang(Util.null2String(rs.getString("selectname")),language);
}
private String selectNationName(String value) {
RecordSet rs = new RecordSet();
rs.executeQuery("select mz from uf_mzb where id = ?",value);
rs.next();
return Util.null2String(rs.getString("mz"));
}
}

@ -2,7 +2,6 @@ package com.engine.shkjsecond.web;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.azure.core.annotation.QueryParam;
import com.engine.common.util.ServiceUtil;
import com.engine.shkjsecond.service.PersonnelResumeService;
import com.engine.shkjsecond.service.impl.PersonnelResumeServiceImpl;
@ -14,6 +13,7 @@ import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.util.HashMap;

Loading…
Cancel
Save