我和群众站一队-alpha冲刺第10日

我和群众站一队 2024-11-11 22:35:16

冲刺日记十:

这个作业属于哪个课程https://bbs.csdn.net/forums/2401_CS_SE_FZU
这个作业要求在哪里https://bbs.csdn.net/topics/619397949
这个作业的目标CodeArt团队实战总结
其他参考文献CSDN,博客园

目录

  • 冲刺日记十:
  • 一、项目进展
  • 二、存在的问题/遇到的困难及接下来的安排
  • 三、站立式会议照片
  • 四、今日完成度相关照片
  • 五、心得体会

一、项目进展

222200315张俊腾
进展一:修复接取求助功能的bug

      // **添加的判断:防止用户接取自己发布的求助**
              if (helpRequest.getUid().equals(userId)) {
                  return new Response<>(400, "您不能接取自己发布的求助", null);
              }

222200309孙阳
进展一:测试用户登录,发布实况,审核实况;
进展二:测试用户登录,发布求助,审核求助,接取求助

img

img

222200304卢君豪
进展一:给求助信息增加发布时间
222200310李怡涵
进展一:新增了详细地址字段

@Column(name = "detailed_address", length = 255)
    private String detailedAddress;

进展二:上传实况新增传入参数

public Response<Null> uploadLive(UserUploadRequest userUploadRequest, Long userId){
        UserUpload userUpload = new UserUpload();
        LiveInfo liveInfo = new LiveInfo();
        liveInfo.setUid(userId);
        liveInfo.setLocation(userUploadRequest.getLocation());
        liveInfo.setDetailedAddress(userUploadRequest.getDetailedAddress());
        liveInfo.setWeatherCondition(userUploadRequest.getWeatherCondition());
        liveInfo.setRoadCondition(userUploadRequest.getRoadCondition());
        liveInfo.setUtilitiesInfo(userUploadRequest.getUtilitiesInfo());
        Integer level = userUploadRequest.getLevel();
        liveInfo.setLevel(level);
        liveInfo.setIntroduction(userUploadRequest.getIntroduction());

        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss");
        LocalDateTime localDateTime = LocalDateTime.parse(userUploadRequest.getExpiryAt(), formatter);
        OffsetDateTime offsetDateTime = localDateTime.atOffset(ZoneOffset.UTC);
        LocalDateTime expiryTime = offsetDateTime.toLocalDateTime();
        liveInfo.setExpiryAt(expiryTime);

        //分为两种情况 1. 用户上传实况信息,设置审核状态未审核 2. 管理员(官方)上传实况信息,设置审核状态已审核
        if (level == 1){
            liveInfo.setAuditStatus(0);
            if(!messageService.Add_message(userId,"发布实况","发布实况成功,待审核")){
                return new Response<>(401,"发布用户消息失败",null);
            }
        }
        else {
            liveInfo.setAuditStatus(1);
        }
        liveInfoRepository.save(liveInfo);

        userUpload.setDetailAddress(userUploadRequest.getDetailedAddress());

        return new Response<>(200, "success", null);
    }

222200311李梓玄
进展一:实况信息增加详细地址字段,实况、求助信息返回增加发布时间
进展二:修复日期选择与实际少24小时的bug
222200328夏振
进展一: 修复冲突和bug
222200401丁昌彪
进展一:完成我的实况记录
222200312杨年申
进展一:删除重复的token识别,改用过滤器在Controller层过滤

            Response<String> validationResult = JwtUtil.validateToken(token);
            if (token == null || validationResult.getStatus() != 200) {
                response.setContentType("application/json");
                response.setStatus(validationResult.getStatus());
                objectMapper.writeValue(response.getWriter(), validationResult);
                return false;
            }              

进展二:考虑用过滤器在Controller层过滤删除后的用户

            UserDetails userDetails = userService.loadUserByUserId(uid);
            if (userDetails == null) {
                Response<String> userNotFound = new Response<>(HttpServletResponse.SC_UNAUTHORIZED,"User is not found",null);
                response.setContentType("application/json");
                response.setStatus(userNotFound.getStatus());
                objectMapper.writeValue(response.getWriter(), userNotFound);
                return false;
            }           

222200230梁蕴潆
进展一:编写冲刺日记
进展二:测试负责部分

二、存在的问题/遇到的困难及接下来的安排

成员存在的问题/遇到的困难接下来的安排
222200315张俊腾进一步的功能测试
222200309孙阳打算测试消息功能、奖牌功能
222200304卢君豪
222200310李怡涵
222200311李梓玄- 地图控件首次加载时,会使用默认的经纬度(北京的位置),导致无法获取到实况信息和求助信息 - 重复加载实况信息和求助信息时,marker会短暂消失- 继续学习地图控件自定义信息窗 MarkerInfoWindowContent,计划实现简单的点击实况页接取求助功能 - 接入高德地图的地理编码功能,自动填写详细地址 - 优化地图获取最佳实况和求助信息的逻辑,避免marker消失和自定义信息窗无法关闭
222200328夏振暂时没有遇到问题接下来还是把我剩下没完成的功能设计实现,并总结今天完成的内容
222200401丁昌彪完成之前未完成的部分功能
222200312杨年申- 问题、困难1 - JWT Token 可能没有被正确地传递到请求中,导致过滤器无法处理。- 解答- 在过滤器中提取 Token 时,首先要判断请求头中是否存在uthorization请求头 - 问题、困难2 - JWT Token 可能会过期、被篡改或无效,导致验证失败。- 解答 - 在过滤器中对 Token 进行有效性验证,检查是否过期并验证签名。
222200230梁蕴潆

三、站立式会议照片

img

四、今日完成度相关照片

成员相关图片
222200315张俊腾

img

222200309孙阳

img

222200304卢君豪

img

222200310李怡涵

img

222200311李梓玄

img

img

222200328夏振

img

222200401丁昌彪

img

222200312杨年申

img

五、心得体会

成员心得体会
222200315张俊腾在系统优化过程中,细节的处理和全面的测试同样重要
222200309孙阳代码编写要专心,否则只会永远debug
222200304卢君豪非常好的学习,使我完成alpha冲刺
222200310李怡涵后端编写代码时需要多加考虑前端用户的传入的数据
222200311李梓玄啊啊啊做不完了
222200328夏振感谢项目使我获得提升,谢谢
222200401丁昌彪先开发再优化。
222200312杨年申- 过滤器的使用必须小心谨慎:过滤器通常是应用中处理请求的第一步,因此在使用过滤器时,要确保处理的逻辑简洁且高效。- 保持代码简洁性和可维护性:虽然过滤器在处理 Token 时非常重要,但也需要保持代码的简洁性和可维护性。避免在过滤器中执行过于复杂的业务逻辑,尽量将逻辑划分到服务层中。
222200230梁蕴潆参与项目让我获得提升,学到很多新知识。
...全文
115 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

113

社区成员

发帖
与我相关
我的任务
社区描述
202401_CS_SE_FZU
软件工程 高校
社区管理员
  • FZU_SE_TeacherL
  • 助教_林日臻
  • 防震水泥
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧