发表于: 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比较方便,难道其它方式就没有优点了?
Ⅲ 暗示自己为明天加油打劲
------------------看到个官网做的日益强大心里还是挺高兴的
评论