发表于: 2019-11-05 19:24:15

1 929


今天完成的事情:(一定要写非常细致的内容,比如说学会了盒子模型,了解了Margin)

一、【11:30】
1、定时推送             未完成

二、【15:30】

1.定时推送             已完成

2、学习dubbo调用服务原理            进行中
                    
三、【20:30】
1、整理dubbo服务调用原理          未完成 



//TODO 定时推送
@Override
public void update() {

   logger.error("开始调用定时推送");
   //先调用搜索出需要推送的消息
   List<Message> messages=messageMapper.selectByPushTime(new Date().getTime());

   logger.error("需要推送的消息有:"+messages.toString());
   //遍历所有的消息,将所有的定时推送的任务的拿出来判断
   for (Message message:messages){
       //只有是定时推送,状态为未推送的消息,进行推送,一是改变推送状态为已推送,二是将消息添加到message_user表,也就是推送到前台
       //这里只管未推送的,已推送的不管
       message.setPushStatus("已推送");
       //这里更新message
       int result=messageMapper.updateByPrimaryKeySelective(message);
       logger.error("更新推送状态的结果为:"+result);
       //然后是将消息推送到前台消息
       //推送到message_user
       List<Integer> list= messageMapper.selectUserIdByMessageTitle(message.getTitle());
       //这里得到对应等级的用户的id
       for (int i=0;i<list.size();i++){
           //遍历整个数组
           //增加到消息用户表
           MessageUser messageUser=new MessageUser();
           logger.error("需要推送的用户id为:"+String.valueOf(list));//这里打印有哪些用户需要推送(id
           messageUser.setUserId(Long.valueOf(list.get(i)));
           messageUser.setMessageId(message.getId());
           //这里设置成未阅读,未删除
           messageUser.setIsread(0);
           messageUser.setIsdelete(0);
           messageUserMapper.insertSelective(messageUser);
       }
   }
}
    <select id="selectByPushTime" resultType="com.ptteng.academy.pojo.Message">
       select
<include refid="Base_Column_List" />
   from message
where push_time <![CDATA[ <= ]]> #{now}
and type=1 and push_status="未推送"
order by push_time desc
</select>

在每一次的查询消息的接口中先执行定时推送。

//这里先进行定时推送的推送
messageService.update();

插入message_user表失败,其他的逻辑都成功了。

看了一下。逻辑,之前的更新成功了,只是眼花了。


在修改代码,将之前固定的修改人id1改为获取当前登录用户的信息的情况下,出现了报错

org.apache.shiro.UnavailableSecurityManagerException: No SecurityManager accessible to the calling code, either bound to the org.apache.shiro.util.ThreadContext or as a vm static singleton.  This is an invalid application configuration.

只有service想取得当前登录用户信息,失败,controller中取得当前登录用户是可行的。


明天计划的事情:(一定要写非常细致的内容)
遇到的问题:(遇到什么困难,怎么解决的)
收获:(通过今天的学习,学到了什么知识)


返回列表 返回列表
评论

    分享到