public PageVo getByPage(int pageNum, int pageSize) {
PageVo pageVo = new PageVo();
System.out.println("web " + pageNum);
System.out.println("web " + pageSize);
List<Map<String, Object>> getCurrentiJDByPage = iSearchService.getCurrentiJDByPage(pageNum, pageSize);
List<Map<String ,Object>> newList =new ArrayList();
for (Map<String, Object> jdMap :getCurrentiJDByPage) {
Map<String, Object> content = (Map) JSON.parse((String) jdMap.get("content"));
Map<String, Object> map = new HashMap<>();
JSONObject obj = (JSONObject) content.get("workExec");
JSONObject education = (JSONObject) content.get("education");
JSONObject position = (JSONObject) content.get("position");
JSONObject monthScale = (JSONObject) content.get("monthScale");
JSONArray welfareArray = (JSONArray) content.get("welfare");
JSONObject skill = (JSONObject)content.get("skill");
for (int i = 0; i < welfareArray.size(); i++) {
JSONObject welfare = welfareArray.getJSONObject(i);
map.put("welfareName"+i, welfare.get("name"));
}
Map<String, String> params = JSONObject.parseObject(obj.toJSONString(), new TypeReference<Map<String, String>>() {
});
Map<String, Object> educationParam = JSONObject.parseObject(education.toJSONString(), new TypeReference<Map<String, Object>>() {
});
Map<String, Object> positionParam = JSONObject.parseObject(position.toJSONString(), new TypeReference<Map<String, Object>>() {
});
Map<String, String> monthScaleParam = JSONObject.parseObject(monthScale.toJSONString(), new TypeReference<Map<String, String>>() {
});
Map<String, String> skillParam = JSONObject.parseObject(skill.toJSONString(), new TypeReference<Map<String, String>>() {
});
String database = skillParam.get("database");
String devEnvironment = skillParam.get("devEnvironment");
String devFrame = skillParam.get("devFrame");
String importantDto = skillParam.get("importantDto");
JSONObject important = (JSONObject)JSONObject.parse(importantDto);
JSONArray devLanguage = (JSONArray) important.get("devLanguage");
JSONArray modelAlgo = (JSONArray) important.get("modelAlgo");
JSONArray parse = (JSONArray)JSONArray.parse(database);
JSONArray environment = (JSONArray)JSONArray.parse(devEnvironment);
JSONArray frame = (JSONArray)JSONArray.parse(devFrame);
for (int i = 0; i < environment.size(); i++) {
JSONObject json = environment.getJSONObject(i);
map.put("devEnvironment"+i, json.get("name"));
}
for (int i = 0; i < devLanguage.size(); i++) {
JSONObject json = devLanguage.getJSONObject(i); // 遍历 jsonarray 数组,把每一个对象转成 json 对象
map.put("devLanguage"+i, json.get("name"));
}
for (int i = 0; i < modelAlgo.size(); i++) {
JSONObject json = modelAlgo.getJSONObject(i); // 遍历 jsonarray 数组,把每一个对象转成 json 对象
map.put("modelAlgo"+i, json.get("name"));
}
for (int i = 0; i < frame.size(); i++) {
JSONObject json = frame.getJSONObject(i);
map.put("frame"+i, json.get("name"));
}
for (int i = 0; i < parse.size(); i++) {
JSONObject json = parse.getJSONObject(i);
map.put("database"+i, json.get("name"));
}
Integer peopleSize = (Integer)jdMap.get("people_size");
Integer financeStep = (Integer)jdMap.get("finance_step");
switch (financeStep){
case 0 :
map.put("financeStep", ResumeScaleEnum.UNLIMITED.getMessage());
break;
case 1 :
map.put("financeStep", ResumeScaleEnum.PRE_A.getMessage());
break;
case 2 :
map.put("financeStep", ResumeScaleEnum.PRE_B.getMessage());
break;
case 3 :
map.put("financeStep", ResumeScaleEnum.PRE_C.getMessage());
break;
case 4 :
map.put("financeStep", ResumeScaleEnum.PRE_D.getMessage());
break;
case 5 :
map.put("financeStep", ResumeScaleEnum.PRE_ANGEL.getMessage());
break;
case 6 :
map.put("financeStep", ResumeScaleEnum.UN_FINANCE.getMessage());
break;
case 7 :
map.put("financeStep", ResumeScaleEnum.LISTED.getMessage());
break;
case 8 :
map.put("financeStep", ResumeScaleEnum.PRE_D_ABOVE.getMessage());
break;
}
switch (peopleSize){
case 0 :
map.put("peopleSize", ResumePeopleSizeEnum.UNLIMITED.getMessage());
break;
case 1 :
map.put("peopleSize", ResumePeopleSizeEnum.ONE.getMessage());
break;
case 2 :
map.put("peopleSize", ResumePeopleSizeEnum.TWO.getMessage());
break;
case 3 :
map.put("peopleSize", ResumePeopleSizeEnum.THREE.getMessage());
break;
case 4 :
map.put("peopleSize", ResumePeopleSizeEnum.FOUR.getMessage());
break;
case 5 :
map.put("peopleSize", ResumePeopleSizeEnum.FIVE.getMessage());
break;
}
String industryIds = (String) jdMap.get("industry_ids");
String[] industryIdsArr = industryIds.split(",");
String str = "";
if (industryIdsArr != null && industryIdsArr.length > 0) {
for (int i = 0; i < industryIdsArr.length; i++) {
Industry industry = resumeService.getIndustryById(industryIdsArr[i]);
str += industry.getName() + ",";
}
}
str = str.substring(0, str.length() - 1);
map.put("industryName",str);
map.put("id",jdMap.get("id"));
map.put("logoUrl", jdMap.get("logo_url"));
map.put("name", jdMap.get("name"));
map.put("companyId", jdMap.get("company_id"));
map.put("workAddress", content.get("workAddress"));
map.put("workExec", params.get("name"));
map.put("education", educationParam.get("name"));
map.put("position", positionParam.get("name"));
map.put("monthScaleSmall", monthScaleParam.get("small"));
map.put("monthScaleBig", monthScaleParam.get("big"));
newList.add(map);
}
pageVo.setList(newList);
pageVo.setPs(pageSize);
pageVo.setPn(pageNum);
return pageVo;
}