Author:歪瑞古德小队

Project:海岛漂流

集合贴:团队作业4:项目冲刺集合贴(歪瑞古德小队)

一、Daily Scrum Meeting

1.1 会议照片

1.2 项目进展

团队成员 昨日完成任务 今日计划任务 遇到的困难
黄钰朝 #36改进定时发信功能的实现 #38根据名称搜索海岛 发信任务使用redis进行存取时,
由于其中的Mapper属性没有
实现序列化接口导致序列化失败
黄煜淇 #39时间胶囊模块的开发 #43查询用户信息时返回距离 在时间分配上存在困难,
多项事务同时存在,
导致很难进行代码工作
余圣源 #49完成头像上按钮样式修改 #50完成树洞和时间胶囊功能接入 临近期末,所有任务同时进行,
每天的任务压哨完成,
质量不够高
张文俊 #56完成海岛界面和功能 #57完成帖子界面和功能 作业好多,开发时间较少
丘丽珊 #63绘制第三天站立会议照片,
一张信纸样式
#64绘制第四天站立会议照片 难以保证工作同步的
时效性,将努力在周末
时间跟上消息更替速度;
作业好多,时间好少,
课程好多。
陈宇 #71用户在树洞下留言 #72用户查看树洞内容 commit的时候太粗心

二、项目燃尽图

三、签入记录

3.1 代码/文档签入记录

3.2 Code Review 记录

3.3 issue内容和链接

团队成员 issue内容和链接
黄钰朝 #36改进定时发信功能的实现
黄煜淇 #39时间胶囊模块的开发
余圣源 #49完成头像上按钮样式修改
张文俊 #56完成海岛界面和功能
丘丽珊 #63绘制第三天站立会议照片,
一张信纸样式
陈宇 #71用户在树洞下留言

四、最新模块截图

4.1 最新模块代码

package com.verygood.island.task;

/**
* @author <a href="mailto:kobe524348@gmail.com">黄钰朝</a>
* @description 发信任务
* @date 2020-05-23 10:20
*/ import com.verygood.island.entity.Letter;
import com.verygood.island.entity.Notice;
import com.verygood.island.entity.Stamp;
import com.verygood.island.entity.User;
import com.verygood.island.exception.bizException.BizException;
import com.verygood.island.mapper.LetterMapper;
import com.verygood.island.mapper.NoticeMapper;
import com.verygood.island.mapper.StampMapper;
import com.verygood.island.mapper.UserMapper;
import com.verygood.island.util.BeanUtils;
import lombok.extern.slf4j.Slf4j; import java.time.LocalDateTime; /**
* 定时发送信件任务
*
* @author <a href="mailto:kobe524348@gmail.com">黄钰朝</a>
* @date 2020-05-08
*/
@Slf4j
public class LetterSendingTask implements Runnable { /**
* 要定时发送的信件
*/
private final Letter letter; public LetterSendingTask() {
this.letter = null;
} public LetterSendingTask(Letter letter) {
this.letter = letter;
} @Override
public void run() {
//消耗邮票
this.useStamp();
UserMapper userMapper = BeanUtils.getBean(UserMapper.class);
LetterMapper letterMapper = BeanUtils.getBean(LetterMapper.class);
//发送信件
if (null == letter) {
log.warn("信件为空,无法执行发信任务");
return;
}
letter.setReceiveTime(LocalDateTime.now());
//统计接收到的信件数量
User receiver = userMapper.selectById(letter.getReceiverId());
receiver.setReceiveLetter(receiver.getReceiveLetter() + 1);
userMapper.updateById(receiver); if (letterMapper.updateById(letter) == 1) {
log.info("发送id为{}的letter成功,接收时间:{}", letter.getLetterId(), letter.getReceiveTime());
//发送通知
this.sendNotice();
} else {
log.error("发送id为{}的letter失败", letter.getLetterId());
throw new BizException("发送失败[id=" + letter.getLetterId() + "]");
}
} /**
* 使用邮票
*/
private void useStamp() {
StampMapper stampMapper = BeanUtils.getBean(StampMapper.class);
Stamp stamp = new Stamp();
stamp.setStampId(letter.getStampId());
stamp.setUserId(letter.getReceiverId());
stampMapper.updateById(stamp);
log.info("使用id为{}的邮票成功", stamp.getStampId());
} /**
* 发送通知
*/
private void sendNotice() {
NoticeMapper noticeMapper = BeanUtils.getBean(NoticeMapper.class);
UserMapper userMapper = BeanUtils.getBean(UserMapper.class); User sender = userMapper.selectById(letter.getSenderId());
Notice notice = new Notice();
notice.setTitle("收信通知");
String content = "你收到一封来自" + sender.getNickname() + "的信件,快去查收吧!";
notice.setContent(content);
notice.setUserId(letter.getReceiverId());
noticeMapper.insert(notice);
log.info("发送notice成功,内容为:{}", content);
}
}

4.2 程序运行截图

五、每日总结

团队成员 总结内容
黄钰朝 今天比较忙,半天的时间要参与工作室招新的答辩,但也按时完成编码工作,很充实
黄煜淇 完善时间胶囊模块,参加了积极分子的讨论会和工作室的答辩
余圣源 要有合理的时间管理,分配好任务
张文俊 合理分配时间
丘丽珊 离终点又进步了一点点,开心!
陈宇 commit时要仔细,不要将一些不必要的commit上去

团队作业4:第四篇Scrum冲刺博客(歪瑞古德小队)的更多相关文章

  1. 团队作业4:第二篇Scrum冲刺博客(歪瑞古德小队)

    目录 一.Daily Scrum Meeting 1.1 会议照片 1.2 项目进展 二.项目燃尽图 三.签入记录 3.1 代码/文档签入记录 3.2 Code Review 记录 3.3 issue ...

  2. 团队作业4:第一篇Scrum冲刺博客(歪瑞古德小队)

    目录 一.Alpha阶段任务认领 二.明日任务安排 三.项目预期任务量 四.敏捷开发前的感想 五.团队期望 Author:歪瑞古德小队 Project:海岛漂流 集合贴:团队作业4:项目冲刺集合贴(歪 ...

  3. 第四篇Scrum冲刺博客--Interesting-Corps

    第四篇Scrum冲刺博客 站立式会议 1.会议照片 2.队友完成情况 团队成员 昨日完成 今日计划 鲍鱼铭 搜索页面跳转.设计及布局实现 音乐详情页面跳转.设计及布局实现设计 叶学涛 编写设置页面 编 ...

  4. 第四篇Scrum冲刺博客

    第四篇Scrum冲刺博客 一.站立式会议 提供当天站立式会议照片一张 二.每个人的工作 成员 已完成工作 明天计划完成的工作 遇到的困难 林剑峰 用户界面跳转到用户信息页面的按钮,设计用户信息页面 测 ...

  5. 团队作业5:Alpha版本测试和发布(歪瑞古德小队)

    目录 一.项目文档和代码 二.Alpha版本测试报告 2.1 功能测试 2.1.1 功能列表 2.1.2 场景测试 2.1.3 测试结果 2.1.4 bug清单 2.2 兼容性测试 2.3 性能测试 ...

  6. Beta阶段——第四篇 Scrum 冲刺博客

    i. 提供当天站立式会议照片一张: ii. 每个人的工作 (有work item 的ID) (1) 昨天已完成的工作: 充值与账单的数据库操作结合,实现余额功能 (2) 今天计划完成的工作: 用户权限 ...

  7. 第四篇 Scrum 冲刺博客

    一.站立式会议 1. 会议照片 2. 工作汇报 团队成员名称 昨日(25日)完成的工作 今天(26日)计划完成的工作 工作中遇到的困难 陈锐基 - 完善表白墙动态的全局状态管理 - 完成发布页面的布局 ...

  8. 2020.5.24 第四篇 Scrum冲刺博客

    Team:银河超级无敌舰队 Project:招新通 项目冲刺集合贴:链接 目录 一.每日站立会议 1.1 会议照片 1.2 项目完成情况 二.项目燃尽图 三.签入记录 3.1 代码/文档签入记录 3. ...

  9. 第四篇 Scrum冲刺博客

    一.会议图片 二.项目进展 成员 完成情况 今日任务 冯荣新 商品底部工具栏 购物车列表 陈泽佳 渲染搜索结果,防抖的实现 静态结构 徐伟浩 未完成 商品信息录入 谢佳余 未完成 搜索算法设计 邓帆涛 ...

随机推荐

  1. PHPSTORM常用插件

    Translation 最好用的翻译插件 .env files support 可以在env函数使用是提示.env文件中所有的key值的自动完成功能 PHP composer.json support ...

  2. PHP date_timezone_set() 函数

    ------------恢复内容开始------------ 实例 设置 DateTime 对象的时区: <?php$date=date_create("2013-05-25" ...

  3. PHP crc32() 函数

    实例 输出 crc32() 的结果:高佣联盟 www.cgewang.com <?php $str = crc32("Hello World!"); printf(" ...

  4. C/C++编程笔记:C语言实现连连看游戏,小白练手项目(源码分享)

    本篇文章分享看题目就知道是写给初学者的,学的比较好的小伙伴也可以将自动算法等一些知识给加进去,希望对大家有帮助! 好了,当我们所有的准备工作做好之后,我们就可以来编写我们的C语言连连看游戏了! 其实这 ...

  5. three.js 着色器材质之glsl内置函数

    郭先生发现在开始学习three.js着色器材质时,我们经常会无从下手,辛苦写下的着色器,也会因莫名的报错而手足无措.原因是着色器材质它涉及到另一种语言–GLSL,只有懂了这个语言,我们才能更好的写出着 ...

  6. Pytorch_第七篇_深度学习 (DeepLearning) 基础 [3]---梯度下降

    深度学习 (DeepLearning) 基础 [3]---梯度下降法 Introduce 在上一篇"深度学习 (DeepLearning) 基础 [2]---神经网络常用的损失函数" ...

  7. Spring JdbcTemplate中关于RowMapper的使用实例

    在spring boot 集成使用jdbctemplate,首先在pom文件中引入相应的依赖 <dependency> <groupId>org.springframework ...

  8. 卷积神经网络 part2

    [任务一]代码练习 在谷歌 Colab 上完成代码练习,关键步骤截图,并附一些自己的想法和解读.  ● MobileNetV1 网络:简要阅读谷歌2017年的论文<MobileNets: Eff ...

  9. 剑指offer之字符串是否为数值

    1. 题目 这是<剑指offer>上的一道题,刚开始觉得这是一道挺简单的题目,后来发现自己太年轻了,考虑的因素太少了,思考了而是分钟还是无从下手,看了作者的思路深深被他折服了,题目如下: ...

  10. Django中manage.py migrate无效的问题

    在改变Django-model中结构后,makemigrations可以识别到改变但migrate没有操作,数据库中表结构也没有改变,原因如下: 在由Django-model自动生成的数据库表中有名为 ...