A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

【郑州校区】品优购电商系统开发第 5 章 四

3.商家后台-商品录入【基本功能】
3.1 需求分析
在商家后台实现商品录入功能。包括商品名称、副标题、价格、包装列表、售后服务

3.2 后端代码
3.2.1 实体类
创建组合实体类 goods

[AppleScript] 纯文本查看 复制代码
public class Goods implements Serializable{
private TbGoods goods;//商品 SPU
private TbGoodsDesc goodsDesc;//商品扩展
private List<TbItem> itemList;//商品 SKU 列表
//getter and setter 方法......
}

3.2.2 数据访问层
由于我们需要在商品表添加数据后可以得到自增的 ID,所以我们需要在 TbGoodsMapper.xml中的 insert 配置中添加如下配置

[AppleScript] 纯文本查看 复制代码
<selectKey resultType="java.lang.Long" order="AFTER" keyProperty="id">
SELECT LAST_INSERT_ID() AS id
</selectKey> 

3.2.3 服务接口层
修改 pinyougou-sellergoods-interface GoodsService 接口 add 方法

[AppleScript] 纯文本查看 复制代码
/**
* 增加
*/
public void add(Goods goods);

3.2.4 服务实现层
修改 pinyougou-sellergoods-service GoodsServiceImpl.java
[AppleScript] 纯文本查看 复制代码
 @Autowired
private TbGoodsDescMapper goodsDescMapper;
/**
* 增加
*/
@Override
public void add(Goods goods) {
goods.getGoods().setAuditStatus("0");//设置未申请状态
goodsMapper.insert(goods.getGoods());
goods.getGoodsDesc().setGoodsId(goods.getGoods().getId());//设置 ID
goodsDescMapper.insert(goods.getGoodsDesc());//插入商品扩展数据
}


3.2.5 控制层
修改 pinyougou-shop-web 工程的 GoodsController add 方法

[AppleScript] 纯文本查看 复制代码
/**
* 增加
* @param goods
* @return
*/
@RequestMapping("/add")
public Result add(@RequestBody Goods goods){
//获取登录名
String sellerId =
SecurityContextHolder.getContext().getAuthentication().getName();
goods.getGoods().setSellerId(sellerId);//设置商家 ID
try {
goodsService.add(goods);
return new Result(true, "增加成功");
} catch (Exception e) {
e.printStackTrace();
return new Result(false, "增加失败");
}
}


1 个回复

倒序浏览
您需要登录后才可以回帖 登录 | 加入黑马