Author:歪瑞古德小队

Project:海岛漂流

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

一、Daily Scrum Meeting

1.1 会议照片

1.2 项目进展

团队成员 昨日完成任务 今日计划任务 遇到的困难
黄钰朝 #33统计用户写过的字数 #34统计用户发送的信件
数量,接收的信件数量
用excel画项目的燃尽图时纵坐标
没有值的点也被显示在折线中
黄煜淇 #35redis实现定时任务工具类 #37完成自定义任务的编写 redis序列化localdatetime时
出现错误,在时间的序列化上
需要进行处理
余圣源 #46完成我的邮票界面和功能 #47完成消息界面和功能 根据首字符拼音进行笔友排序
不容易实现
张文俊 #54完成草稿箱界面和功能 #55完成海岛列表界面和功能 不同分辨率屏幕的适配
丘丽珊 #61绘制邮票样式 #62绘制第二天站立会议照片 做UI的时候风格统一很
困难 要整体兼顾
陈宇 #68用户创建一个树洞 #70用户删除已经创建的树洞 创建树洞前要判断用户
拥有树洞的数量。

二、项目燃尽图

三、签入记录

3.1 代码/文档签入记录

3.2 Code Review 记录

3.3 issue内容和链接

团队成员 issue内容和链接
黄钰朝 #33统计用户写过的字数
黄煜淇 #35redis实现定时任务工具类
余圣源 #46完成我的邮票界面和功能
张文俊 #54完成草稿箱界面和功能
丘丽珊 #61绘制邮票样式
陈宇 #68用户创建一个树洞

四、最新模块截图

4.1 最新模块代码

信件模块

/**
* 创建发信任务
*
* @param letter 要发送的信件
* @name scheduleLetterSending
* @notice none
* @author <a href="mailto:kobe524348@gmail.com">黄钰朝</a>
* @date 2020-05-21
*/
private void scheduleLetterSending(Letter letter) {
log.info("正在创建发信任务"); //计算收信时间
User sender = userMapper.selectById(letter.getSenderId());
User receiver = userMapper.selectById(letter.getReceiverId());
if (sender == null || receiver == null) {
log.error("缺少寄件人或收件人,无法发信");
throw new BizException("发信失败,缺少寄件人或收件人");
}
if (sender.getCity() == null || receiver.getCity() == null) {
log.error("缺少位置信息,无法发信");
throw new BizException("发信失败,寄件人或收信人缺少位置信息");
}
long distance = locationUtils.getDistance(sender.getCity(), receiver.getCity());
log.info("计算出两者的距离为:{}米", distance); //消耗邮票
if (letter.getSenderId() != null) {
Stamp stamp = stampMapper.selectById(letter.getStampId());
if (stamp == null || !stamp.getUserId().equals(sender.getUserId())) {
log.warn("id为{}的信件没有使用有效邮票,无法发信", letter.getLetterId());
throw new BizException("发信失败,缺少有效的邮票");
}
} else {
log.warn("id为{}的信件没有使用邮票", letter.getLetterId());
throw new BizException("请选择一张邮票进行发信!");
} UpdateWrapper<Stamp> stampUpdateWrapper = new UpdateWrapper<>();
stampUpdateWrapper.eq("stamp_id", letter.getStampId())
//设置为null,既不属于发信人也不属于收信人
.set("user_id", null);
stampMapper.update(new Stamp(), stampUpdateWrapper); //统计书写字数
if (letter.getContent() == null || letter.getContent().trim().isEmpty()) {
log.warn("不允许插入空的信件");
throw new BizException("无法发送空的信件");
}
sender.setWord(sender.getWord() + letter.getContent().trim().length());
userMapper.updateById(sender); //启动定时任务
log.info("正在启动定时任务");
taskScheduler.schedule(new LetterSendingTask(letter, sender),
calculateDuration(distance));
}

树洞模块

/**
* <p>
* 树洞
* 服务类
* </p>
*
* @author chaos
* @since 2020-05-21
*/
public interface TreeHoleService { /**
* 分页查询TreeHole
*
* @param page 当前页数
* @param pageSize 页的大小
* @param factor 搜索关键词
* @return 返回mybatis-plus的Page对象,其中records字段为符合条件的查询结果
* @author chaos
* @since 2020-05-21
*/
Page<TreeHole> listTreeHolesByPage(int page, int pageSize, String factor); /**
* 根据id查询TreeHole
*
* @param id 需要查询的TreeHole的id
* @return 返回对应id的TreeHole对象
* @author chaos
* @since 2020-05-21
*/
TreeHole getTreeHoleById(int id); /**
* 插入TreeHole
*
* @param treeHole 需要插入的TreeHole对象
* @return 返回插入成功之后TreeHole对象的id
* @author chaos
* @since 2020-05-21
*/
int insertTreeHole(TreeHole treeHole); /**
* 根据id删除TreeHole
*
* @param id 需要删除的TreeHole对象的id
* @return 返回被删除的TreeHole对象的id
* @author chaos
* @since 2020-05-21
*/
int deleteTreeHoleById(int id, Integer userId); /**
* 根据id更新TreeHole
*
* @param treeHole 需要更新的TreeHole对象
* @return 返回被更新的TreeHole对象的id
* @author chaos
* @since 2020-05-21
*/
int updateTreeHole(TreeHole treeHole); }

4.2 程序运行截图

五、每日总结

团队成员 总结内容
黄钰朝 学习到燃尽图的含义和画法,以及规划了未来六天的任务,收获很多
黄煜淇 学习了redis实现定时任务并简单进行了实现
余圣源 学习并制作了菜单按钮旋转动画,增强了业务处理能力
张文俊 学习了less函数的各种花式操作
丘丽珊 巩固了Ai和Axure的用法,学会了Axure的触发控件的使用
陈宇 运用了curd进行业务处理

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

  1. 第二篇Scrum冲刺博客--Interesting-Corps

    第二篇Scrum冲刺博客 站立式会议 1.会议照片 2.队友完成情况 团队成员 昨日完成 今日计划 鲍鱼铭 主页页面和探测空间设计及布局实现 主页页面跳转社区功能及社区设计及布局实现 叶学涛 设计页面 ...

  2. 第二篇Scrum冲刺博客

    第二篇Scrum冲刺博客 一.站立式会议 提供当天站立式会议照片一张 二.每个人的工作 成员 已完成工作 明天计划完成的工作 遇到的困难 林剑峰 初步学习小程序的编写.博客园的撰写 初步完成用户界面 ...

  3. 2020.5.22 第二篇 Scrum冲刺博客

    Team:银河超级无敌舰队 Project:招新通 项目冲刺集合贴:链接 目录 一.每日站立会议 二.项目燃尽图 三.签入记录 3.1 代码/文档签入记录 3.2 主要代码截图 3.3 程序运行截图 ...

  4. Beta阶段——第二篇 Scrum 冲刺博客

    i. 提供当天站立式会议照片一张: ii. 每个人的工作 (有work item 的ID) (1) 昨天已完成的工作: 账单收支分明,剩余舍费关联成功 (2) 今天计划完成的工作: 账单删除功能,排序 ...

  5. 第二篇 Scrum 冲刺博客

    一.站立式会议 1. 会议照片 2. 工作汇报 成员名称 昨日(23日)完成的工作 今天(24日)计划完成的工作 工作中遇到的困难 陈锐基 - 完成个人资料编辑功能- 对接获取表白动态的接口数据并渲染 ...

  6. Beta阶段第二篇Scrum冲刺博客-Day1

    1.站立式会议 提供当天站立式会议照片一张 2.每个人的工作 (有work item 的ID),并将其记录在码云项目管理中: 昨天已完成的工作. 张晨晨:交接进组 郭琪容:明确任务并学习 吴玲:明确接 ...

  7. 第二篇 Scrum冲刺博客

    一.会议图片 二.项目进展 成员 完成情况 今日任务 冯荣新 搜索框,首页轮播图,分类导航 商品列表,商品详情轮播图 陈泽佳 背景展示,选择并显示图片 历史足迹,静态页面 徐伟浩 登录权限获取 商品信 ...

  8. 第1篇Scrum冲刺博客

    目录 第1篇Scrum冲刺博客 各个成员在 Alpha 阶段认领的任务 各个成员的任务安排 整个项目预期的任务量 敏捷开发前的感想 团队期望 第1篇Scrum冲刺博客 各个成员在 Alpha 阶段认领 ...

  9. Beta阶段——第1篇 Scrum 冲刺博客

    第1篇 Scrum 冲刺博客 a. 介绍小组新加入的成员,Ta担任的角色. 新加入成员 郭炜埕 原先担任的角色 前端界面设计 现在担任的角色 前端开发,并协助后端开发 新加成员介绍 炜埕同学对界面设计 ...

随机推荐

  1. Fortify Audit Workbench 笔记 Privacy Violation: Heap Inspection 隐私泄露(堆检查)

    Privacy Violation: Heap Inspection 隐私泄露(堆检查) Abstract 将敏感数据存储在 String 对象中使系统无法从内存中可靠地清除数据. Explanati ...

  2. luogu P5558 心上秋

    LINK:心上秋 唐多令 宋 吴文英 何处合成愁.离人心上秋.纵芭蕉,不雨也飕飕.都道晚凉天气好,有明月,怕登楼. 年事梦中休.花空烟水流.燕辞归,客尚淹留.垂柳不萦裙带住.漫长是,系行舟. 心上秋 ...

  3. 三类安装VMTools失败的解决方法(Windows、Linux、MacOs)

    前言 写这篇笔记的原因,是前几天在虚拟机 Vmware 中重新安装了几个操作系统,突然发现 VMTools 这个工具成了一个特殊的问题,以前还没有发现,因为通常它就给你自动安装了.但是大多数时候也是需 ...

  4. synchronized 锁的原理

    synchronized 的基本认识 在多线程并发编程中 synchronized 一直是元老级角色,很 多人都会称呼它为重量级锁.但是,随着 Java SE 1.6 对 synchronized 进 ...

  5. 阿里云ECS服务器购买流程

    先说说什么是阿里云服务器ECS?云服务器(Elastic Compute Service,即弹性计算服务,简称ECS)是阿里云提供的性能卓越.稳定可靠.弹性扩展的IaaS(Infrastructure ...

  6. 一道 3 行代码的 Python面试题,我懵逼了一天

    有意思的题目 题目:写出下面程序运行结果 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却不知道如何去学习更加高深的 ...

  7. c语言学习笔记之typedef

    这是我觉得这个博主总结的很好转载过来的 原地址:https://blog.csdn.net/weixin_41632560/article/details/80747640 C语言语法简单,但内涵却博 ...

  8. Java 命令行 编译、执行、打包

    Java 命令行 编译.执行.打包 一般来说 IDE 能够很方便的编译打包. 我写这篇文章是遇到了不能使用 IDE 的情况,简单记录一下,不做深入探讨. 环境 linux jdk 1.8 简单的编译执 ...

  9. 通过java程序(JSch)运行远程linux主机上的shell脚本

    如果您看完文章之后,觉得对您有帮助,请帮我点个赞,您的支持是我不竭的创作动力! 如果您看完文章之后,觉得对您有帮助,请帮我点个赞,您的支持是我不竭的创作动力! 如果您看完文章之后,觉得对您有帮助,请帮 ...

  10. Docker-Compose介绍,安装和使用

    Docker-Compose 介绍 有时候运行一个镜像需要大量的参数,可以通过Docker-Compose编写这些参数.而且Docker-Compose可以版主我们批量管理容器,这些信息值需要通过一个 ...