一。编辑
1.修改jsp页面
出现上面的界面就是没有修改href为item-edit
对应的Controller写两个异步方法
2.ItemController代码
/** * 异步重新加载回显描述 * @param id * @return */ @RequestMapping("/rest/item/query/item/desc/{id}") @ResponseBody public TbItemDesc selectTbItemDesc(@PathVariable long id){ TbItemDesc itemDesc= itemService.selectTbItemDesc(id); return itemDesc; } /** * 异步重新加载商品信息 * @param id * @return */ @RequestMapping("/rest/item/param/item/query/{id}") @ResponseBody public TbItem queryById(@PathVariable long id){ TbItem item = itemService.getItemById(id); return item; }
3.ItemService代码selectTbItemDesc,getItemById方法
@Override public TbItemDesc selectTbItemDesc(long id) { TbItemDesc itemDesc = tbItemDescMapper.selectByPrimaryKey(id); return itemDesc; }
@Override public EasyUIDataGridResult getItemList(int page, int rows) { //设置分页信息 PageHelper.startPage(page,rows); //执行查询 TbItemExample example=new TbItemExample(); List<TbItem> items = itemMapper.selectByExample(example); //取分页信息 PageInfo<TbItem> pageInfo = new PageInfo<>(items); //创建返回结果对象 EasyUIDataGridResult result = new EasyUIDataGridResult(); result.setTotal(pageInfo.getTotal()); result.setRows(items); return result; }
这里会出现如图描述为空的没有回显成功没有显示数据
出现这种问题的原因是如图没有json格式数据中没有status键对值
解决方法有两种
1.把if语句删除只剩下(这是最为简单的操作)
itemEditEditor.html(_data.itemDesc);
2.在TbItemDesc -pojo中添加一个方法
/** * json格式中需要判断状态 * @return */ public E3Result getE3Result() { return E3Result.ok(); }
二。删除(包含批量删除)传值为ids
对应写Controller
1.ItemController
/** * 批量删除功能实现 * @param ids * @return */ @RequestMapping("item/delete") @ResponseBody public E3Result delete(String ids){ E3Result result=itemService.deteteBatch(ids); return result; }
2.ItemService
@Override public E3Result deteteBatch(String ids) { //判断ids不为空 if(StringUtils.isNoneBlank(ids)){ //分割ids String[] split = ids.split(","); for ( String id : split ) { itemMapper.deleteByPrimaryKey(Long.valueOf(id)); tbItemDescMapper.deleteByPrimaryKey(Long.valueOf(id)); } return E3Result.ok(); } return null; }
三。下架查看路径url和参数同上面(二)的方法一样
1.ItemController
/** * 商品批量下架 * @param ids 字符id拼接 * @return */ @RequestMapping("/rest/item/instock") @ResponseBody public E3Result productShelves(String ids){ E3Result result = itemService.productShelves(ids); return result; }
2.ItemService
@Override public E3Result productShelves(String ids) { //判断ids不为空 if(StringUtils.isNoneBlank(ids)){ String[] split = ids.split(","); //遍历成一个个的id进行修改下架 for ( String id : split ) { //通过id查询到商品信息 TbItem item = itemMapper.selectByPrimaryKey(Long.valueOf(id)); //商品状态,1-正常,2-下架,3-删除 item.setStatus((byte) 2); //保存 itemMapper.updateByPrimaryKey(item); } return E3Result.ok(); } return null; }
四。上架同下架的方法和步骤一样就是修改了一下ItemService方法中这条语句
//商品状态,1-正常,2-下架,3-删除 item.setStatus((byte) 1);