团队作业4:第四篇Scrum冲刺博客(歪瑞古德小队)
Author:歪瑞古德小队
Project:海岛漂流
一、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冲刺博客(歪瑞古德小队)的更多相关文章
- 团队作业4:第二篇Scrum冲刺博客(歪瑞古德小队)
目录 一.Daily Scrum Meeting 1.1 会议照片 1.2 项目进展 二.项目燃尽图 三.签入记录 3.1 代码/文档签入记录 3.2 Code Review 记录 3.3 issue ...
- 团队作业4:第一篇Scrum冲刺博客(歪瑞古德小队)
目录 一.Alpha阶段任务认领 二.明日任务安排 三.项目预期任务量 四.敏捷开发前的感想 五.团队期望 Author:歪瑞古德小队 Project:海岛漂流 集合贴:团队作业4:项目冲刺集合贴(歪 ...
- 第四篇Scrum冲刺博客--Interesting-Corps
第四篇Scrum冲刺博客 站立式会议 1.会议照片 2.队友完成情况 团队成员 昨日完成 今日计划 鲍鱼铭 搜索页面跳转.设计及布局实现 音乐详情页面跳转.设计及布局实现设计 叶学涛 编写设置页面 编 ...
- 第四篇Scrum冲刺博客
第四篇Scrum冲刺博客 一.站立式会议 提供当天站立式会议照片一张 二.每个人的工作 成员 已完成工作 明天计划完成的工作 遇到的困难 林剑峰 用户界面跳转到用户信息页面的按钮,设计用户信息页面 测 ...
- 团队作业5:Alpha版本测试和发布(歪瑞古德小队)
目录 一.项目文档和代码 二.Alpha版本测试报告 2.1 功能测试 2.1.1 功能列表 2.1.2 场景测试 2.1.3 测试结果 2.1.4 bug清单 2.2 兼容性测试 2.3 性能测试 ...
- Beta阶段——第四篇 Scrum 冲刺博客
i. 提供当天站立式会议照片一张: ii. 每个人的工作 (有work item 的ID) (1) 昨天已完成的工作: 充值与账单的数据库操作结合,实现余额功能 (2) 今天计划完成的工作: 用户权限 ...
- 第四篇 Scrum 冲刺博客
一.站立式会议 1. 会议照片 2. 工作汇报 团队成员名称 昨日(25日)完成的工作 今天(26日)计划完成的工作 工作中遇到的困难 陈锐基 - 完善表白墙动态的全局状态管理 - 完成发布页面的布局 ...
- 2020.5.24 第四篇 Scrum冲刺博客
Team:银河超级无敌舰队 Project:招新通 项目冲刺集合贴:链接 目录 一.每日站立会议 1.1 会议照片 1.2 项目完成情况 二.项目燃尽图 三.签入记录 3.1 代码/文档签入记录 3. ...
- 第四篇 Scrum冲刺博客
一.会议图片 二.项目进展 成员 完成情况 今日任务 冯荣新 商品底部工具栏 购物车列表 陈泽佳 渲染搜索结果,防抖的实现 静态结构 徐伟浩 未完成 商品信息录入 谢佳余 未完成 搜索算法设计 邓帆涛 ...
随机推荐
- Salt 系统初始化
目录 编辑states文件 1.DNS配置 dns.sls(在init目录下创建一个files文件,然后把resolv.conf放到文件下) [root@master init]# cat dns. ...
- TCP通信---文件上传案例、多线程文件上传
目前大多数服务器都会提供文件上传的功能,由于文件上传需要数据的安全性和完整性,很明显需要使用TCP协议来实现. TCP通信需要创建一个服务器端程序和一个客户端程序,实现客户端向服务器端上传文件 代码实 ...
- SQL数据库优化总结
1.在表中建立索引优先考虑 where.group by使用到的数据. 2.查询的sql语句中不要使用select * ,因为会返回许多无用的字段降低查询的效率,应该使用具体的字段代替*,只返回使用到 ...
- Python for循环使用 else 语句
Python for循环使用 else 语句: else:当 for 所有的语句代码块正常运行完,才会运行 else 语句. 示例: ''' for 迭代对象 in 序列: 代码块(一行语句或多行代码 ...
- Python简单的语句组
Python简单的语句组: ''' if 条件1: 条件1满足时,需要运行的内容 ''' num = 10 if num % 6 == 4: print("num 对 6 的取模结果是 4& ...
- Python删除元组
Python删除元组: 删除元组中的某一个元素: # 删除元组中的元素 tuple_1 = ('a','b','c','d','e') # 删除第 2 个元素 tuple_1 = tuple_1[:1 ...
- pandas_DateFrame的创建
# DateFrame 的创建,包含部分:index , column , values import numpy as np import pandas as pd # 创建一个 DataFrame ...
- Python os.mkfifo() 方法
概述 os.mkfifo() 方法用于创建指令路径的管道,并设置权限模式.默认的模式为 0666 (八进制).高佣联盟 www.cgewang.com 语法 mkfifo()方法语法格式如下: os. ...
- PHP jdtojulian() 函数
------------恢复内容开始------------ 实例 把儒略历法的日期转换为儒略日计数,然后再转换回儒略历法的日期: <?php$jd=juliantojd(6,20,2007); ...
- 5.22 noip模拟赛
本来我是不想写的,无奈不会写.蒟蒻 考场就是想不出来 今天得到了100分额外水过了100分我是真的失败.还有一个根本不会check 感觉自己非常之菜. 这道题是这样的 还行吧比较有意思 首先确立一个真 ...