本人java专业,在家没事就做了个微信校园二手交易小程序平台,选择的技术框架就是Java+SpringBoot+Mysql+小程序了。
下面来看系统中的协议交互协议定义
部分请求接口
简要描述:
返回首页需要的数据 热门和最新商品
请求URL:
https://xxxx.com/xianyu/api/goods/new/{num}
热门商品同例
https://xxxx.com/xianyu/api/goods/hot/{num}
请求方式:
GET
参数名 必选 类型 说明
num 是 Integer 列表数量
{
"code":0,
"msg":"成功",
"data":[
{
"goodsId": 1,
"userId": 1,
"userName":"fanfpy",
"userImg":"https:xxx.com/xxx.jpg",
"goodsTitlie":"小米mix2s",
"price" : 2999.0,
"date" "2018-05-03 22:39:26"
"status":0,
"pageView":2,
"describle": "描述:一面科技一面艺术",
"goodsImg":[
"img":"https:xxx.com/xxx.jpg",
"img":"https:xxx.com/xxx.jpg",
"img":"https:xxx.com/xxx.jpg",
]
},
{
"goodsId": 2,
"userId": 1,
"userName":"fanfpy",
"userImg":"https:xxx.com/xxx.jpg",
"goodsTitlie":"vivoX20",
"price" : 3999.0,
"date" "2018-05-03 14:22:16"
"status":0,
"pageView":2,
"describle": "两千万柔光双摄,照亮你的美",
"goodsImg":[
"img":"https:xxx.com/xxx.jpg",
"img":"https:xxx.com/xxx.jpg",
"img":"https:xxx.com/xxx.jpg",
]
}
]
}
简要描述:
商品详细页
请求url
https://2.fanfpy.top/xianyu/api/goods/id/{id}
请求类型
GET
返回示例
{
"code":0,
"msg":"成功",
"data":{
"goodsId": 1,
"userId": 1,
"userName":"fanfpy",
"userImg":"https:xxx.com/xxx.jpg",
"goodsTitlie":"小米mix2s",
"price" : 2999.0,
"date" "2018-05-03 22:39:26"
"status":0,
"pageView":2,
"describle": "描述:一面科技一面艺术",
"goodsImg":[
"img":"https:xxx.com/xxx.jpg",
"img":"https:xxx.com/xxx.jpg",
"img":"https:xxx.com/xxx.jpg",
]
}
}
物品处理模块代码
package top.fanfpy.xiaoyuanxianyu.service;
import top.fanfpy.xiaoyuanxianyu.vo.GoodsInfoVO;
import top.fanfpy.xiaoyuanxianyu.entity.Goods;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import java.util.List;
import java.util.Optional;
/**
* @author fanfp
* */
public interface GoodsSrevice {
/**
* 查询所有商品
* @return 返回集合
* */
List<Goods> listGoods();
/**
* @param goods
*增加商品 且增加所在分类下的数字 用户对应的上架数量
* */
Goods saveGood(Goods goods);
/**
* @param goods 商品对象
* */
Goods upGoods(Goods goods);
/**
* 删除商品
* @param id 商品id
* */
void delGoods(Integer id);
/**
* 分页查询所有商品
* @param pageable
* @return 返回页
* */
Page<Goods> findAll(Pageable pageable);
List<Goods> findallGood();
/**
* 通过id查商品
* */
Optional<Goods> findById(Integer id);
/**通过分类 返回商品数组
* @return 商品数组
* */
List<Goods> findByClassifiaction(Integer classifiactionId);
/**
* 分页查询热门商品
* @return 商品页
* */
Page<Goods> findByHotGoods(Integer page);
/**
* 分页查询id倒序
* @return 商品页
* */
Page<Goods> findByNewGoods(Integer page);
/**
* @date 2018/6/6
*直接返回页面所需要的商品信息 包括用户头像 商品图片 减少Controller的复杂程度
* 因预览页和详情页(预览页最多三张图片) 显示图片的数量不同 所以增加了imgMun
* @param goodsId 商品id
* @param imgNum 图片数量
* */
GoodsInfoVO GoodsInfo(Integer goodsId,Integer imgNum);
}
评论实现代码
package top.fanfpy.xiaoyuanxianyu.service;
import top.fanfpy.xiaoyuanxianyu.entity.Comments;
import java.util.List;
/**
* @author fanfp
* @date 18/4/23
* */
public interface CommentsService {
/**
*增加评论 商品品论字段下自增1
* @return 返回评论
* @param comments 评论
* */
Comments addComment(Comments comments);
/**
* 删除评论
* @param id 评论id
* */
void delComment(Integer id);
/**
* @param goodsId 商品id
* @return 评论
* */
List<Comments> getCommentByGoodsId(Integer goodsId);
}
看下校园二手交易平台微信小程序前端部分页面吧,不算是特别美观,ui需要花大量时间去调
接下来我会慢慢的把开发中用到的技术和代码分享出来,敬请期待吧!