发表于: 2017-07-25 10:30:46

2 856


今天完成的事情:

1、热招职位列表

需求:最新发布职位的4家认证公司,以及其热招职位信息。


需要返回的字段:公司logo,公司名,规模,行业,省,正在热招的三个职位。


实现思路:

查Job表得到最新职位列表(按发布时间倒排)。

遍历职位列表,取出每一个职位的公司ID,装入set,超过4个值时break。

可得到4家不同的公司ID。

将公司ID set 转为 公司ID list。

遍历list,用逗号拼接公司 ID。


使用自己写getJobsByCIds(String cids, Integer grade)方法,得到那4家公司在招的职位列表。

使用MyListUtil.convert2ListMap(Job类的cid字段,job列表) 得到一个Map<String, ArrayList()>。 

String是公司ID,ArrayList是职位列表。


接着,

// 拼接json数组
HashMap<String, Object> companyJobDataMap = null;
for (Company c : companyList) {
companyJobDataMap = new HashMap<String, Object>();

   companyJobDataMap.put("cId", c.getId());
   companyJobDataMap.put("companyName", c.getName());
   companyJobDataMap.put("companyLogo", c.getLogo());
   companyJobDataMap.put("companyScale", c.getScale());
   companyJobDataMap.put("companyIndustry", c.getIndustry());
   companyJobDataMap.put("companyProvince", c.getProvince());
   List<Job> jList = (List<Job>) jobMap.get(c.getId());
   companyJobDataMap.put("companyHotPositionList", jList);
   companyJobDataList.add(companyJobDataMap);
}



明天计划的事情:

1、前台的职位列表、动态职位搜索。

2、学会打tag。学习自动部署。


遇到的问题:

1、下午和组员开始尝试在开发机二上部署项目以给前端调用,结果部署完,多次启动失败了,最后觉得暂时先不部署了。度过了一个灰色的下午。晚上李昂成功让前端访问到他ip,能够调用接口返回真实数据了。


收获:

1、在DynamicUtil 中新增一个 getJobsByCIds()方法,

输出的sql为:

select id from job where cid in(?) and grade=? order by release_at desc

/*
通过多个公司ID查询到多个职位
*/
public static Map<StringObjectgetJobsByCIds(String cIdsInteger grade{

Map<StringObjectparams new HashMap<StringObject>();

   if (DataUtils.isNotNullOrEmpty(cIds)) {
params.put("cid & in""(" cIds ")");
   }
if (DataUtils.isNotNullOrEmpty(grade)){
params.put("grade"grade);

   }
params.put("@table"" job");
   params.put("@order"" release_at desc ");
   params.put("@query"" id");
   return params;
}




返回列表 返回列表
评论

    分享到