逐梦校友圈——β冲刺day3

这个作业属于哪个课程 <福州大学2021春软件工程实践S班>
这个作业要求在哪里 团队作业六——beta冲刺+事后诸葛亮
团队名称 逐梦校友圈
这个作业的目标 β每日冲刺文档

SCRUM

任务总览

前端

  • 昨日安排
任务 完成情况
个人信息上传 未完成进行中33%
帖文搜索 未完成
修复头像bug 未完成进行中40%
组局权限判断 已完成
头像bug 已完成
  • 明日安排
任务 分派人员
scroll-view下拉刷新出现的bug问题 茂基
个人信息上传 语涵
帖文详情界面 炜华
组局bug修复 伟峰

后端

  • 昨日安排
任务 完成情况
内容审核工具类实现 已完成
完成删除私聊列表中的某一项service、controller层代码 已完成
修改组局接口 未完成进行中80%
  • 明日安排
任务 分派人员
在发帖功能、评论功能使用内容审核功能 亮亮
完成用户接收消息service、controller层代码 海翔
修改组局接口 小螃蟹

成员描述

成员 昨日成就 存在问题 问题解决方案或描述 明日安排
语涵104 个人信息上传完成10% (1h/3h) 首次接触 这部分之前没有接触过,所以要学着弄 个人信息上传
建斌209 编写获取聊天列表及界面(1h) 获取聊天界面逻辑
茂基222 修复bug问题(2/6h) 过度刷新 微信小程序scroll-view下拉刷新被触发多次。发帖抽风,出现500报错。 bug修复
炜华230 对贴文界面的components进行熟悉,着手写贴文详情界面。 (2h/8h) 代码阅读 由于这部分是另一个同学写的,发现有很多没有用过的用法,且组件之间有嵌套,在熟悉代码上花费很多时间 继续完成贴文详情界面
伟峰432 修复部分组局前端的bug (7h/9h) 图片存入 还没有搞懂图片是怎么存入服务器的,中间有个转换的过程,还需要去熟悉 继续解决bug;完成图片显示
亮亮215 实现内容审核工具类(1h) 工具类的异常需要由谁来处理? 根据场景,需要调用者知晓异常出现的,需要交由调用者处理;调用者并不关心异常信息,则由工具类处理。 在发帖功能、评论功能使用内容审核功能
海翔321 完成用户发送消息service、controller层代码(40min) 完成用户接收消息service、controller层代码
小螃蟹411 改善了获取组局发现的新bug(没有登陆时应该是无法获取任何组局的),解决返回获得列表无返回头像的问题(1.5/2.5h) “修改组局”接口
丫比125 项目督促,博客园撰写(1h) 成员积极性调动需要再加把劲 督促开发,博客园撰写

内容展示

  • 炜华230
console.log(event.target.dataset.id);
let id = event.target.dataset.id;
let that = this;
let baseUrl = app.globalData.baseUrl;
let jsonStr = '{"postId":' + id + '}';
let jsonValue = JSON.parse(jsonStr);
console.log(jsonValue);
request({
  url:  baseUrl + '/api/alumnicycle/posts/collect',
  method:'POST',
  Headers: {
    'content-type': 'application/json'
  },
  data: jsonValue,
  success:function(res)
  {
    console.log(res);
    let newEyeOnNum = that.data.eyeOnNum + 1; 
    that.setData({
      isEyeOn: 1,
      eyeOnNum: newEyeOnNum
    }); 
  },
  • 伟峰432
if(partyList != null){
    for(let i = 0; i < partyList.length; i++){
        partyList[i].gmtCreate = timeago.format(new Date(partyList[i].gmtCreate),'zh_CN');
        if(partyList[i].username.length > 6){
            partyList[i].username = partyList[i].username.substr(0, 6) + "...";
        }
        if(partyList[i].description.length > 35){
            partyList[i].description = partyList[i].description.substr(0, 35) + "...";
        }
    }
    if(partyList.length == 0)
        that.setData({show: true});
    else
        that.setData({show: false});
}
  • 亮亮215

完成issue

  public class ContentFilterUtil {
    private static final AisAccess service;
    private static final String uri;
    static {
        /*初始化service*/

        uri = "/v1.0/moderation/text";
    }

    public static boolean isContentLegal(String content) throws IOException {
        boolean result = false;
        try {
            JSONObject json = new JSONObject();

            json.put("categories", new String[] {"porn","politics", "ad", "abuse", "contraband", "flood"});

            JSONObject text = new JSONObject();
            text.put("text", content);
            text.put("type", "content");

            JSONArray items = new JSONArray();
            items.add(text);

            json.put("items", items);	


public class ResponseProcessUtils {
    private static final Logger logger = LoggerFactory.getLogger(ResponseProcessUtils.class);
   
    public static void processResponseStatus(HttpResponse response) {
        System.out.println(response.getStatusLine().getStatusCode());
    }
    public static boolean isRespondedOK(HttpResponse response) {
        int statusCode = response.getStatusLine().getStatusCode();
        System.out.println(statusCode);
        return HttpStatus.SC_OK == statusCode;
    }
@PostMapping("/send")

  public Result<Integer> sendMessage(@RequestBody Map<String, Object> map) {



    if (user == null) {

      Result<Integer> result = new Result<>();

      result.setCode(ExceptionInfo.valueOf("USER_NOT_LOGIN").getCode());

      result.setMessage(ExceptionInfo.valueOf("USER_NOT_LOGIN").getMessage());

      return result;

    }



    Long userIdTo = (Long) map.get("userIdTo");

    String content = map.get("content").toString();



    return privateChatService.sendMessage(user.getId(), userIdTo, content);

  }
// 用户发送消息

  public Result<Integer> sendMessage(Long id, Long userIdTo, String content) {



    Result<Integer> result = new Result<>();



    if (userIdTo == null) {

      result.setCode(ExceptionInfo.valueOf("USER_DIALOG_ID_NULL").getCode());

      result.setMessage(ExceptionInfo.valueOf("USER_DIALOG_ID_NULL").getMessage());

      return result;

    }



    if (content == null || content == "") {

      result.setCode(ExceptionInfo.valueOf("USER_SEND_MESSAGE_NULL").getCode());

      result.setMessage(ExceptionInfo.valueOf("USER_SEND_MESSAGE_NULL").getMessage());

      return result;

    }



    PrivateChat privateChat = new PrivateChat();

    privateChat.setFromId(id);

    privateChat.setToId(userIdTo);

    privateChat.setMessage(content);



    result.setCode(ExceptionInfo.valueOf("OK").getCode());

    result.setMessage(ExceptionInfo.valueOf("OK").getMessage());

    result.setData(privateChatMapper.insert(privateChat));

    return result;

  }
  • 小螃蟹411

完成issue

@GetMapping("/myparty")
		
  public Result<List<Map<String, Object>>> getMyparty() {
    System.out.println(user.toString());
    if (user == null) {
      Result<List<Map<String, Object>>> result = new Result<>();
	result.setCode(ExceptionInfo.valueOf("USER_NOT_LOGIN").getCode());
		
  @GetMapping("/partymes")
		
  public Result<Map<String, Object>> getPartymes(Long partyId) {
		
  public Result<Map<String, Object>> getPartymes(@RequestParam Number partyId) {		
    return partyService.getPartymes(partyId);
    Long partyIdLong = partyId.longValue();
    return partyService.getPartymes(partyIdLong);
  }

会议图片

img

PM报告

工作总结

项目燃尽图

img

任务总量变化

变化日期 变化数量 变化描述 预计处理时间
2021/06/12 +67 β冲刺整体issue总览 7days
2021/06/14 +1 bug微信小程序scroll-view下拉刷新被触发多次,导致发帖页面不明缘由抽风,开始持续出现500错误 2days

最新项目截图

imgimgimgimg

posted @ 2021-06-14 23:46  逐梦校友圈  阅读(72)  评论(3编辑  收藏  举报