关键词:
这个作业属于哪个课程 | <福州大学2021春软件工程实践S班> |
---|---|
这个作业要求在哪里 | 团队作业六——beta冲刺+事后诸葛亮 |
团队名称 | 逐梦校友圈 |
这个作业的目标 | β每日冲刺文档 |
SCRUM
任务总览
前端
- 昨日安排
任务 | 完成情况 |
---|---|
修复bug | 已完成 |
个人信息上传 | 已完成 |
对已排查bug进行修改 | 已完成 |
继续完成贴文详情界面 | 已完成 |
读取聊天数据及聊天 | 已完成 |
- 明日安排
任务 | 分派人员 |
---|---|
拉黑内容调用 | 茂基 |
学生证上传 | 语涵 |
修修评论bug | 炜华 |
完成帖子详情界面的评论部分 | 伟峰 |
测试 | 建斌 |
后端
- 昨日安排
任务 | 完成情况 |
---|---|
实现查找单个帖子详细信息接口 | 已完成 |
完成用户接收消息service、controller层代码 | 已完成 |
评论组局 | 已完成 |
- 明日安排
任务 | 分派人员 |
---|---|
测试 | 亮亮 |
完成剩余接口测试 | 海翔 |
对组局的整体部分查漏补缺 | 小螃蟹 |
成员描述
成员 | 昨日成就 | 存在问题 | 问题解决方案或描述 | 明日安排 |
---|---|---|---|---|
语涵104 | 身份验证图片上传界面和功能 (1.5h/3h) | 技术开拓 | 刚开始尝试了将头像上传和身份验证上传放在一个界面,后来认为将此放在我的界面更符合用户使用习惯,技术上图片上传还需要完善 | 身份验证图片上传界面和功能 |
建斌209 | 写读取聊天历史数据及聊天(5h) | 无 | 无 | 测试 |
茂基222 | 修改bug组件重新渲染后部分数据丢失 (3h) | 布局问题 | 布局太难了吧,没掌握精髓,好花时间 | 拉黑等内容的调用 |
炜华230 | 帖子详情界面具体内容显示已完成 (3h) | 详情划分 | 帖子详情界面内容较多,在研究应用上花了多个小时 | 完成帖子详情界面的评论部分 |
伟峰432 | 完善加入组局、组局踢人功能 (7h/9h) | 时间 | 时间时间时间,我需要更多时间 | 修修评论bug |
亮亮215 | 优化十大热帖查询、优化帖子按类别查询、修复十大热帖信息与当前用户不匹配的错误、实现根据帖子id查询帖子详情接口(200min) | 无 | 无 | 测试 |
海翔321 | 完成私聊前3个接口测试(35min) | 无 | 无 | 完成剩余接口测试 |
小螃蟹411 | 评论组局(2.5h) | 字段混淆 | 之前设计数据库表的时候没有设计id_To字段(也就是被回复用户的ID)导致我在实现将评论分级展示的时候逻辑有点混乱,后面还是队友帮我捋清楚思路。 | 对组局的整体部分查漏补缺 |
丫比125 | 项目督促,博客园撰写,询问详细版本信息,制订接下来的计划(1.5h) | 无 | 无 | 督促开发,博客园撰写,询问详细进度情况,进行扫尾工作。 |
内容展示
- 语涵104
- 完成issue
afterRead: function (event)
const that = this;
console.log(event.detail.file.url);
this.setData(
fileList: [event.detail.file],
);
console.log(this.data.fileList)
this.submitImage();
,
submitImage:function (e)
let that=this;
const file = that.data.fileList;
let promiseArr=[];
let imgServerUrls=new Array();
console.log(that.data.fileList);
file.forEach(function (e)
var FSM = wx.getFileSystemManager();
let imageType=getApp().getImageType(e.url);
promiseArr.push(
new Promise(function (resolve,reject)
FSM.readFile(
filePath: e.url,
encoding: "base64",
success: function (data)
wx.request(
//获取图片信息
)
);
)
)
)
getPostList()
let that = this;
let baseUrl = app.globalData.baseUrl;
request( //调用接口获取个人帖子列表
url: baseUrl + \'/api/user/post/list\',
method:\'GET\',
success(res)
console.log(res);
if(res.data.code === 200)
let tempData = res.data.data.reverse(); //获取逆序列表
if(tempData!= null)
for (let i = 0; i < tempData.length; i++) //时间转换
tempData[i].gmtCreate = timeago.format(new Date(tempData[i].gmtCreate), \'zh_CN\');
that.setData(
postList:tempData,
)
)
,
//处理组局成员
if (i < partyMemmberCntNow)
// 判断是否是局长,如果是就赋值组长的配置
if (partyParticipantsId[i] == partyPublisherID)
member.url = baseUrl + \'/static/\' + partyPublisherMsg.iconUrl;
member.isPublisher = true;
member.text = \'局长\';
//如果是自己,就赋值相应的配置
if (partyParticipantsId[i] == userId)
member.myself = true;
member.text = \'自己\'
//不是组长,是组员的情况
else
member =
index: i,
url: this.data.memberIconUrl,
userId: participantsId[i],
isOccupied: true,
ifShow: false,
isPublisher: false,
myself: false,
text: \'成员\'
//如果当前用户已经是组员,赋值相应的配置
if (partyParticipantsId[i] == userId)
member.myself = true;
member.text = \'自己\'
- 亮亮215
优化十大热帖热搜
-- 核心SQL语句,查询出点赞数前十的待连接的帖子信息,按点赞数降序,时间倒序排列,已连接发帖人昵称,帖子类名,需要继续连接其他相关信息
SELECT
post.id AS id,
post.publisher_id AS publisher_id,
post.`status` AS `status`,
post.post_type_id AS post_type_id,
post.message AS message,
post.image_urls AS image_urls,
post.gmt_create AS gmt_create,
post.gmt_modified AS gmt_modified,
post.deleted AS deleted,
`user`.username AS username,
post_type.`name` AS post_type_name,
#currentUserId AS currentUserId
FROM
post,
`user`,
post_type,
-- 查询点赞数最多的十个帖子的id和点赞数(用于排序)
(select
post_like.post_id,count(distinct post_like.id) as cnt
from post_like,post
where post_like.deleted = 0 and post_like.post_id = post.id and post.deleted = 0 and post.status=0
group by post_like.post_id
order by count(distinct post_like.id) desc
limit 0,10
) as top
WHERE
top.post_id = post.id AND
post.publisher_id = `user`.id AND
post.post_type_id = post_type.id
ORDER BY
top.cnt DESC,
gmt_create DESC,
id DESC
优化按类别查询
-- 核心SQL语句,查询指定类别的待连接的帖子信息,按时间倒序排列,已连接发帖人昵称,帖子类名,需要继续连接其他相关信息
SELECT
post.id AS id,
post.publisher_id AS publisher_id,
post.`status` AS `status`,
post.post_type_id AS post_type_id,
post.message AS message,
post.image_urls AS image_urls,
post.gmt_create AS gmt_create,
post.gmt_modified AS gmt_modified,
post.deleted AS deleted,
`user`.username AS username,
post_type.`name` AS post_type_name,
#queryMap.currentUserId AS currentUserId
FROM
post,
`user`,
post_type
WHERE
post.deleted = 0 AND
post.`status` = 0 AND
-- 指定帖子类别id
post.post_type_id = #queryMap.typeId AND
post.publisher_id = `user`.id AND
post.post_type_id = post_type.id
ORDER BY
gmt_create DESC,
id DESC
十大热帖与当前用户信息不符
if (user != null)
Long id = user.getId();//获取当前用户id
- 海翔321
- 完成issue
@SpringBootTest
public class PrivateChatServiceImplTest
@Autowired
PrivateChatServiceImpl privateChatService;
@Test
void listChatTest()
Result<List<Map<String, Object>>> result = privateChatService.listChat(123456L);
System.out.println(result);
@Test
void clearListTest()
Result<Integer> result = new Result<>();
result.setCode(ExceptionInfo.valueOf("OK").getCode());
result.setMessage(ExceptionInfo.valueOf("OK").getMessage());
result.setData(3);
Assertions.assertEquals(result,privateChatService.clearList(123456L));
@Test
void deleteOneTest()
Result<Integer> result = new Result<>();
result.setCode(ExceptionInfo.valueOf("USER_DIALOG_ID_NULL").getCode());
result.setMessage(ExceptionInfo.valueOf("USER_DIALOG_ID_NULL").getMessage());
Assertions.assertEquals(result,privateChatService.deleteOne(123456L,null));
result.setCode(ExceptionInfo.valueOf("OK").getCode());
result.setMessage(ExceptionInfo.valueOf("OK").getMessage());
result.setData(1);
Assertions.assertEquals(result,privateChatService.deleteOne(123456L,3L));
- 小螃蟹411
//组局评论分级展示
for (PartyComment partyComment : partyComments)
// 当前评论为父评论
if (partyComment.getId().equals(partyComment.getPreId()))
Map<String, Object> map = new HashMap<>();
map.put("commentId", partyComment.getId());
map.put("commentUserId", partyComment.getIdFrom());
User user = userMapper.selectById(partyComment.getIdFrom());
map.put("commentUsername", user.getUsername());
map.put("images", user.getUserIconUrl());
List<Map<String, Object>> childrenList = new LinkedList<>();
for (PartyComment comment : partyComments)
// 当前评论不为父评论,且为当前父评论的子评论
if (!comment.getId().equals(partyComment.getId()) && comment.getPreId()
.equals(partyComment.getId()))
Map<String, Object> childrenMap = new HashMap<>();
childrenMap.put("commentId", comment.getId());
childrenMap.put("commentUserId", comment.getIdFrom());
User user1 = userMapper.selectById(comment.getIdFrom());
childrenMap.put("commentUsername", user1.getUsername());
childrenMap.put("images", user1.getUserIconUrl());
childrenMap.put("message", comment.getInformation());
childrenMap.put("preId", comment.getPreId());
map.put("gmtCreate", comment.getGmtCreate());
childrenMap.put("replyId", partyComment.getIdFrom());
childrenList.add(childrenMap);
map.put("childrenComments", childrenList);
map.put("message", partyComment.getInformation());
map.put("preId", partyComment.getPreId());
map.put("gmtCreate", partyComment.getGmtCreate());
mapList.add(map);
会议图片
PM报告
工作总结
-
预期工作量:47 /68issue
-
目前已完成工作量:47 issue
-
今日完成工作量: 20 issu
-
前端
-
后端
-
剩余共工作量 21 issue
项目燃尽图
(由于一个仓库里的燃尽图在导入时候必须放到同一个milestone当中,所以是α和β冲刺的结合燃尽图,请从Jun六月开始查看)
任务总量变化
变化日期 | 变化数量 | 变化描述 | 预计处理时间 |
---|---|---|---|
2021/06/12 | +67 | β冲刺整体issue总览 | 7days |
2021/06/14 | +1 | bug微信小程序scroll-view下拉刷新被触发多次,导致发帖页面不明缘由抽风,开始持续出现500错误 | 2days |
2021/06/15 | +1 | 新加添加测试,便于调试 | 1day |
最新项目截图
头像私聊框
组局详情
组员移除
加入组局
评论组局
嵌套评论
逐梦校友圈——β冲刺day3(代码片段)
...要求在哪里团队作业六——beta冲刺+事后诸葛亮团队名称逐梦校友圈这个作业的目标β每日冲刺文档目录SCRUM任务总览前端后端成员描述内容展示会议图片PM报告工作总结项目燃尽图任务总量变化最新项目截图imgimgimgimgSCRUM任务总... 查看详情
outfits——day6-beta冲刺
Outfits——Day6-Beta冲刺这个作业属于哪个课程2021春软件工程实践W班(福州大学)这个作业要求在哪里团队作业六——beta冲刺+事后诸葛亮这个作业的目标记录β冲刺Day6进度其它参考文献目录Outfits——Day6-Beta冲刺SCRUM部分团队成员站... 查看详情
78岁华科教授逐梦40载,国产数据库达梦冲刺ipo(代码片段)
国产数据库或将迎来第一股。整理|苏宓出品|CSDN(ID:CSDNnews)2022年6月29日,武汉达梦数据库股份有限公司(以下简称“达梦数据”)正式递交招股说明书,准备在科创板冲刺IPO。过往多年间,国内... 查看详情
软工网络15团队作业4——alpha阶段敏捷冲刺之scrum冲刺博客(day6)(代码片段)
每日立会[照片][昨天已完成的工作]1.单词学习功能的代码设计→wyj/cm/wht(单词界面)2.单词查询功能的代码设计→wyj/cm/wht(数据界面)3.选择词汇界面设计→yj4.导入初始数据→zm5.选择词汇的功能(原词汇书)→wyj/cm/wht6.收集单... 查看详情
敏捷冲刺day6
一.每日会议1.照片2.昨日完成工作3.今日完成工作4.工作中遇到的困难二.每日燃尽图三.代码部分四.每日总结李绍乐蓝锦明方旭廖余俊谢季努 查看详情
老九门--β冲刺代码规范
...工程实践S班这个作业要求在哪里作业要求这个作业目标β冲刺代码规范其他参考文献阿里巴巴Java开发手册终极版v1.3.0,Vue.js风格指南目录代码规范后端代码规范一、缩进二、变量命名三、函数、类命名四、包命名五、常量命名六... 查看详情
敏捷冲刺day6
一.每日会议1.照片2.昨日完成工作发布和提供需求功能的实现用户修改自己的信息用户界面设计管理员界面设计3.今日完成工作4.工作中遇到的困难李绍乐:蓝锦明:方旭:廖余俊:谢季努:二.每日燃尽图三.代码部分四.每日总结... 查看详情
beta冲刺-day6
...践|W班(福州大学)这个作业要求在哪里团队作业六——beta冲刺+事后诸葛亮团队名称unity从入门到入土这个作业的目标完成Beta冲刺参考文献《构建之法》成员进展221801402阿寒今日任务完成情况:修改代码完成其余页面加载切换明日... 查看详情
饱满骑士--β冲刺day7冲刺随笔
...践S班(福州大学)这个作业要求在哪里团队作业六——beta冲刺+事后诸葛亮团队名称饱满骑士这个作业的目标完成Beta冲刺其他参考文献无目录SCRUM成员描述代码签入截图IssueSCRUM会议图片PM报告任务量燃尽图任务总量变化项目图片/视... 查看详情
beta冲刺——day6
...软件工程实践|W班这个作业要求在哪里团队作业六——beta冲刺+事后诸葛亮团队Growinglight这个作业的目标完成项目开发的Beta冲刺其他参考文献《构建之法》昨日进展、存在问题、今日安排221801424苏杰阳昨日进展:页面整合,对部... 查看详情
alpha冲刺day6
Alpha冲刺Day6一:站立式会议今日安排:由张梨贤继续完成前一天委托第三方剩余的内容,并完成委托情况查看这一子模块由黄腾飞继续完成前一天企业自查风险管理剩余的内容,并完成风险上报这一子模块由周静平完成自己的内... 查看详情
beta冲刺day6
今天遇到的困难:github服务器响应很慢推图的API接口相应较慢,超过了初始设定的最大延迟时间,导致了无法正确返回图片ListView滑动删除Demo出现了某些Bug,这些Bug可能导致了某些情况滑动会导致程序崩溃今天完成的任务:陈甘... 查看详情
alpha-咸鱼冲刺day6-紫仪
一,合照 emmmmm.自然还是没有的。二,项目燃尽图 目前个人界面的大致框架有了,但是每个功能点的具体页面还没出来。功能点目前还是一个没做出来。 今天把数据库的表给建好了,学长... 查看详情
β版本第三次冲刺
β版本第三次冲刺1.站立式会议讨论内容美工组1.界面的像素密度,位置关系2.最终结局评定的PS设计及XML后端组1.新生引导界面和其他界面的调用关系2.头像与数据库的存取问题数据库端1.与后端讨论头像的接口函数及调用方式2.组... 查看详情
团队作业8——第二次项目冲刺(beta阶段)day6——5.25
1.提供当天会议照片: 2.会议的内容:(1)讨论已经完成的功能,讨论存在的问题(2)对于界面,谈谈各自的看法(3)讨论接下来的任务和改进的地方 3.工作安排:队员今日任务明日任务贡献... 查看详情
β冲刺第二周第二次例会报告
1.例会照片: 成员王超,高远博,冉华,王磊,王玉玲,任思佳,袁玥全部到齐。master:王超2.时间跨度: 2017年11月18日16:45—17:11,总计26分钟。3.地 点:一食堂二楼沙发座椅中间一张桌子周围4.立会内容: 讨论... 查看详情
烤盐人——团队作业六:β冲刺第四天
SCRUM部分每个成员描述姓名今日完成的内容遇到的问题/困难明天的计划安排心得体会林炜补充了树洞的部分反馈无收发树洞接口、修改发布文章接口团队协作还能进一步提高肖寒新增官方资讯无完善一下官方资讯页面把一些可以... 查看详情
beta冲刺-置顶随笔
...践|W班(福州大学)这个作业要求在哪里团队作业六——beta冲刺+事后诸葛亮团队名称unity从入门到入土这个作业的目标完成Beta冲刺参考文献《构建之法》换组交接博客换组交接alpha阶段问题总结随笔问题总结凡事预则立随笔凡事预... 查看详情