发表于: 2017-11-05 23:44:48

0 763


今日完成:

1、思考了一下,公司框架的缓存功能应该有可能是这样使用的:

使用缓存的目的就是为了避免对数据库的查询。


那 MyListUtil 中有个方法 convert2Map(Clazz,  List keys ,   List<Object> objectLists)

可以通过传入的 keys 筛选出所需的记录。


例子:

我想要筛选到 enterpriseApproval 中 applyId字段为某些值的记录。

可以不必写 sql,而是 事先将 表从所有的记录查到。然后使用方法:

public static Map convert2Map(Field f, List keys, List datas) throws IllegalAccessException {

其中 keys 就是 applyIds、datas 就是从数据库中查到的全部记录。

List<Long> enterpriseApprovalIds = enterpriseApprovalService.getEnterpriseApprovalIds(0, Integer.MAX_VALUE);

List<EnterpriseApproval> enterpriseApprovalList = enterpriseApprovalService.getObjectsByIds(enterpriseApprovalIds);

Map id_entAppvMap = MyListUtil.convert2Map(EnterpriseApproval.class.getDeclaredField("applyId"), list, enterpriseApprovalList);


这样就能返回得到 一个 map。键为id、值为实体类。

这样就实现了不去DynamicUtil写sql、事先将数据查到内存里,再用框架里的方法筛选数据。



2、处理一下积分平台的一个bug。

现有BUG情况:积分申报次数限制本应限制为被申请员工,限制成了审批人,审批人只能审批一次。

BUG处理方案:限制次数修改为员工,次数限制与审批人,发起人,抄送人无关,同时增加两条判断。

1被申请员工已申请通过,再次申请时,发起人出状态——,在发起申请时出弹窗提示“已有员工完成该任务”(被申请人为已完成员工或包含已完成员工,都是这么处理)

2被申请员工已申请,但未通过,再次发起申请到审批人审批时,员工被审批通过,审批人出状态——审批人点击审批通过或不通过都出弹窗“已有员工完成该任务”默认状态为拒绝申请。(被申请人为已完成员工或包含已完成员工,都是这么处理)。


明日计划 :

1、逗你学2期禅道拆解。


遇到的问题:

1、wiki 上的Java开发规范中有些不明白的地方。


收获:

1、看了一些积分平台里的代码。


返回列表 返回列表
评论

    分享到