发表于: 2017-07-20 17:36:45

1 1007


【说明】今天上午和下午把代码又重新看了一遍,包括大刀的职位模块,晚上可以做点其它的

一:今日完成

--------------------------------------------后台 

ArticleController

1, 动态条件获取article列表 a/u/article/search 

page size start 初始化

获取素材param

获取素材 idList

获取count

获取素材列表 然后判空

model 放置

2,  根据id获取article详情 a/u/article/{id}

根据id 得到素材对象,然后判空

放置model

3,修改 article信息 a/u/article/{id} 

设置article 对象

根据id得到 源article

设置 创建人和创建时间

更新article

放置model

3,新增article /a/u/article

设置四个必填字段

id 置为 空

插入对象

放置model

4,根据id删除article,无此id时并不抛出异常 /a/u/article/{id}

根据id获取对象,然后判空

根据id 删除

放置model

5,修改article状态 /a/u/article/status/{id}

id判空(status要不要判断)

根据id得到对象

设置更新字段

更新对象放置model

6,排序用接口 /a/u/article/order

排序对象判空

map 集合 for循环遍历 获取key变成long(id),根据id得到对象,设置orderBy,添加对象到对象列表

更新对象列表,

log.info(" update lists : " + (articleList == null ? "null" : articleList.size())); 好方法

判断对象列表值 是否为空,设置更新字段,批量更新

log.info(" update lists success : " + articleList.size());

放置model

7,图片上传 /a/u/img/{module}

传参 是 file and module

StringUtils.isBlank(module)

String extend = FileUtil.getFileExtension(file.getOriginalFilename());

String fileName = UUID.randomUUID().toString() + "." + extend;

定义 filePath 和 dirPath 以及 dir

定义 temPic ,然后 transFerTo 

定义 url

删除 临时目录

放置model

-------------------------------

CompanyController

1,获取公司列表 /a/u/company/search

定义 page(第几页) size(每页数据) start(起始id)

获取动态param CompanyIds count CompanyList(判断)

放置model

2,查询公司详细信息,包含公司产品及标签  /a/u/company/{id}

判断id,

获取Company对象,判空12,放置model

获取companyProductIds ,判空2 放置model

获取 companyTagIds ,判空 ,

获取 companyTagList 放置model

3, 新增公司 包括tag、产品   /a/u/company

companyData 判空

得到Company 对象

得到 companyProduct

得到 tagsList

检查公司信息显示字段

设置 更新字段

companyId 置null,插入 对象,放置model

companyProduct 设置字段,插入

CompanyTag 设置字段 

4,修改公司详情,包括产品、tag /a/u/company/{id}

id 和data 判空

得到Company 数据,检查数据

得到Company 源数据,取出固定值

设置其它字段

更新 公司对象

得到 companyProduct

得到 companyProductIds(为了得到一条)

得到 companyProductSource,取出某些数据

设置 companyProduct ,然后更新

放置model

如果没有公司产品那么需要新增

得到 tagsList,getCompanyTagIdsByCompanyId()

删除 公司标签列表 deleteList,

设置CompanyTag对象 ,插入

5,删除公司信息 /a/u/company/{id}

id判空

根据id 得到Company对象,然后判空

getProfessionIdsByCompanyId() 如果有职位,公司不能删除,,明白了

根据id删除公司

getCompanyProductIdsByCompanyId 不为空删除 

getCompanyTagIdsByCompanyId  不为空删除

6,修改状态 /a/u/company/status/{id}

id判空

根据id 得到Company,判空

判断 公司状态,设置某些字段,

得到professionIds,

得到professionList  ,设置状态 和发布时间(置为null),更新列表

如果是改变认证状态

判断,然后更新字段,更新对象

放置model

------------------------------------

ManagerController

1, 修改密码 /a/u/pwd

getKeyIdentity() 认证请求 和 用户,得到 uid

oldPwd == null || newPwd == null || oldPwd.trim().equals("")|| newPwd.trim().equals("") 

oldPwd.length()>200 || oldPwd.length() <0 || newPwd.length()>200 || newPwd.length()<0)

旧密码加密 

根据uid得到 管理对象

得到密码 做对比,新密码加密,设置字段,更新

放置model

2,获取用户列表 /a/u/manager/

page size start

roleID status 判空,组装map

getManagerIdsByCondition(map, start, size) 得 id ,得totalids

if (size.equals(ids.size())

model放置 ids,total

3,根据ID查找用户 /a/u/manager/{mid}

得到 roleids

根据mid 得到 manager

放置model

4,批量获取用户详细信息 /a/u/multi/manager

Long[] ids传参 ,变成 List<Long>

得到 managerList 对象,放置model

5,修改用户 /a/u/manager/{id}

根据id得到 manager 对象 

判断 manager.getName() == null || manager.getName().trim().equals(""))

manager.getName().length() > 50 || manager.getName().length() < 0 )

manager.getPwd() == null || manager.getPwd().trim().equals("")

manager.getPwd().length() > 200 || manager.getPwd().length() < 0)

密码加密,设置字段

得到角色对象

getManagerIdsByName()

核对密码

设置密码

角色为空,设置角色id

cookie 里面获取userId(UpdateBy使用)

6.增加用户 /a/u/manager

名字密码角色判空

根据roleId 获取 role对象,判空

getManagerIdsByName

获取 userId

密码加密,设置字段,插入对象

7,删除用户 /a/u/manager/{mid}

得到userId

判断mid,获取manager,判空,删除,放置model

8,根据RoleID查找用户 /a/u/role/{rid}/manager

page size start

getManagerIdsByRoleID

model 放置ids.size()  和  ids

--------------------------------------

ModuleController

1,查询模块列表 /a/u/module

page size start

type != null) && (!"".equals(type)) 得到 ids 和 totalids

model 放置ids ids.subList(0, size - 1) 或者 ids.subList(0, ids.size())

放置model

2,批量获取模块详细信息 /a/u/multi/module

----------------------------------

ProfessionController

1,职位列表查询 /a/u/profession/search

page size start(起始id)

根据条件获取动态sql 

获取 professionIdsList count professionList

放置model

2,获取职位明细信息 /a/u/profession/{id}

id判空

根据id获取职业对象 放置model

职位判空 获取标签List<String>

companyId  companyTagidsList companyTagList List<String> tags

Collection 判断 两个 集合 之间的包含关系

放置 两个model 一个打勾 一个不打勾

3,删除职位 /a/u/profession/{id} 

id判空

profession判空

companyId

删除前判断职位状态是否为上架,若为上架则返回异常

删除成功后更新公司职位数

4,修改职位状态 /a/u/profession/status/{id}

id判空

判断职位更改状态

更新职位状态 professionSource statusSoure profession company

上架前判断公司是否冻结,若冻结返回freezed异常

放置model  profession

如果职位状态由下架改为上架,则更新职业 和公司最新职位发布时间 以及 公司在招职位数+1

如果职位状态由上架改为下架,则更新 职位更新时间 公司最新职位发布时间,另外公司在招职位数-1

5,更新职位信息 /a/u/profession/{id}

id判空

body必要字段检查

professionSource

获取职位的creatBy,createAt

company 

保持一些原数据

6,新增职位 /a/u/profession

各种判空 和字段检查

companyIds company 

验证公司冻结状态,如果公司冻结,新增职位为下架状态

如果公司状态为解冻,则新增职位状态设置为上架状态

更新职业和公司最新职位上架时间和在招职位数

获取编辑人员信息

插入之后返回professionId

company 更新

---------------------------------------------

RoleController

角色列表 /a/u/role/???

----------------------------------------

SystemController

nologin noPermissin

1,管理员登录  /a/login

managerIds manager

maps.put(CookieConstant.Cookie_WEB_ManagerName, manager.getName());

maps.put(CookieUtil.USER_ID, manager.getId() + "");

cookieUtil.setIdentity(request, response, maps, manager.getId());

role

2,退出系统  /a/logout

cookieUtil.clearCookie(response);

3,返回登陆用户信息 /a/u/manager

userId userName publicsHash maps.put

放置model

-------------------------------------前台

ArticleController

1,根据type获取article列表,只返回已上线项 /a/article/search

判空和四种状态

idList count articleList 放置model

--------------------------------------

CompanyController

1,查询公司详细信息,包含公司产品及标签 /a/company/{id}

company 判空

companyProductIds 判空  companyProductId companyProduct

companyTagIds 判空  companyTagList

放置model

2, 公司列表搜索 /a/company/search

returnFlag 判断 

普通列表情况 companyIds count companyList 判空

找职位页竖向轮播图  companyIds count companyList 判空 

professionIds professionList professionNameList

放置model

------------------------------------

ProfessionController

1,职位信息列表 /a/profession/search

page size start type publishAt

professionIdList count professionList

company companyTagsIdList companyTagsList professionDataMap 

放置model

2,获取职位详情 a/profession/{id}

profession professionTagList company

放置model

二:明日计划

明天因为时间充足(or 有限),打算完成

①多么希望当初能分配三个前端

------------------

②了解一下前端请求的格式

------------------

③检查接口文档

------------------

三:疑难问题

四:思考总结

Ⅰ 对自己今天的进度满意吗

------------------一般般

Ⅱ 那些困扰自己的问题所在

------------------虽然在jsp直接解析model得到json比较方便,难道其它方式就没有优点了?

Ⅲ 暗示自己为明天加油打劲

------------------看到个官网做的日益强大心里还是挺高兴的



返回列表 返回列表
评论

    分享到