122
社区成员




这个作业属于哪个课程 | <2302软件工程社区> |
---|---|
这个作业要求在哪里 | 团队作业—beta冲刺+事后诸葛亮 |
这个作业的目标 | 团队Beta冲刺 |
团队名称 | 托码头小队 |
团队项目 | Tomato时间管理小程序 |
其他参考文献 | 《构建之法》 |
人员 | 描述 |
---|---|
222100224林然鹏 | 今日进展:试管理员的查询与删除接口 遇到的困难:暂无 现在到明天站立式会议的安排:继续完善功能 心得体会:开发接近尾声,继续努力 |
222100225林璞 | 今日进展:实现了计时结束,微信小程序推送通知 遇到的困难:对调用第三方接口的流程不熟练 现在到明天站立式会议的安排:前后端测试 心得体会:微信官方文档有坑 |
222100226欧景天 | 今日进展:完成待办的删除、点击开始跳转专注、回到今日 遇到的困难:回到今日需要使用selectComponent获取Calendar实例,然后调用reset方法才能实现 现在到明天站立式会议的安排:完成待办的修改 心得体会:回到今日的功能虽然看着是工作量是最小的,但是实现起来并不像想象的那般容易 |
222100119柯昊旸 | 今日进展:完成第二天的Beta冲刺 遇到的困难:暂无 现在到明天站立式会议的安排:完成第三次的Beta冲刺随笔,根据组长安排完成任务 心得体会:了解项目进程 |
222100235黄烨琳 | 今日进展:修改代办接口 遇到的困难:暂无 现在到明天站立式会议的安排安排:继续完成自己安排接口的修改 心得体会:该接口需要修改的内容不多,比较简单 |
222100327赵振廷 | 今日进展:修改了页面版型 遇到的困难:个人页面列表排版问题 现在到明天站立式会议的安排安排:解决个人页面排版问题 心得体会:Beta是对Alpha的拓展 |
222100329衷进之 | 今日进展:修好图片显示比例问题 遇到的困难:暂无 现在到明天站立式会议的安排:继续讨论beta测试内容 心得体会:图片的显示没有想象那么简单 |
052106112林黄骁 | 今日进展:为华为云部署 nginx 遇到的困难:之前没有用过 nginx 现在到明天站立式会议的安排:讨论 nginx 部署方式 心得体会:第一次在云服务器上部署 nginx,感觉难度很大,和自己平常的 GUI 安装不一样,命令行一条一条的 |
开发成员代码签入记录
后端:
所有工作的预期时间:21天时间,共有待办、我的、登录、文章展示、专注计时、社交等模块功能需要完成。
目前已经完成的工作量:后端程序已完成,正在优化,前端界面:待办、我的、论坛、登录等模块功能已完成
还剩余的工作量:前端的专注页面和文章评论需要完善美化
package com.tomato.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.tomato.context.BaseContext;
import com.tomato.mapper.UserMapper;
import com.tomato.pojo.entity.User;
import com.tomato.pojo.vo.WxMsgVo;
import com.tomato.service.IWxMessageService;
import com.tomato.utils.HttpClientUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@Service
public class WxMessageServiceImpl implements IWxMessageService {
@Value("${tomato.wechat.appid}")
private String appid;
@Value("${tomato.wechat.secret}")
private String secret;
@Autowired
private UserMapper userMapper;
String getAccessToken() {
Map<String,String> paramMap = new HashMap<>();
paramMap.put("grant_type","client_credential");
paramMap.put("appid",appid);
paramMap.put("secret",secret);
String url = "https://api.weixin.qq.com/cgi-bin/token";
String result = HttpClientUtil.doGet(url,paramMap);
JSONObject object = JSON.parseObject(result);
String accessToken = (String) object.get("access_token");
var time = object.get("expires_in");
System.out.println(accessToken);
System.out.println(time);
return accessToken;
}
@Override
public void sendMessage(String title, Date date) {
String accessToken = getAccessToken();
String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=" + accessToken;
WxMsgVo vo = new WxMsgVo();
QueryWrapper<User> qw = new QueryWrapper<>();
qw.eq("id", BaseContext.getCurrentId());
User user = userMapper.selectOne(qw);
vo.setTouser(user.getOpenId());
vo.setTemplate_id("T3Hfmyglcgl-MS31f-scKMtU2cTT_bUQw-QSAn61l-g");
HashMap<String, Object> map = new HashMap<>(3);
//根据模板写值
map.put("thing1",title);
map.put("time2",date.toString().substring(0,11));
map.put("phrase8","已结束");
vo.setData(map);
vo.setRequest_url(url);
HttpClientUtil.sendTemplateMessage(vo);
}
}