package com.kmall.admin.controller; import com.kmall.admin.entity.GoodsEntity; import com.kmall.admin.entity.GoodsGalleryEntity; import com.kmall.admin.service.GoodsGalleryService; import com.kmall.admin.service.GoodsService; import com.kmall.common.utils.PageUtils; import com.kmall.common.utils.Query; import com.kmall.common.utils.R; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.util.List; import java.util.Map; /** * Controller * * @author Scott * @email * @date 2017-08-21 21:19:49 */ @RestController @RequestMapping("goods") public class GoodsController { @Autowired private GoodsService goodsService; @Autowired private GoodsGalleryService goodsGalleryService; /** * 查看列表 */ @RequestMapping("/list") @RequiresPermissions("goods:list") public R list(@RequestParam Map params) { //查询列表数据 Query query = new Query(params); query.put("isDelete", 0); List goodsList = goodsService.queryList(query); int total = goodsService.queryTotal(query); PageUtils pageUtil = new PageUtils(goodsList, total, query.getLimit(), query.getPage()); return R.ok().put("page", pageUtil); } /** * 查看信息 */ @RequestMapping("/info/{id}") @RequiresPermissions("goods:info") public R info(@PathVariable("id") Integer id) { GoodsEntity goods = goodsService.queryObject(id); if(goods != null) { GoodsGalleryEntity goodsGalleryEntity =goodsGalleryService.queryVideoObjectByGoodId(goods.getId()); if(goodsGalleryEntity != null){ goods.setVideoUrl(goodsGalleryEntity.getImgUrl()); } } return R.ok().put("goods", goods); } /** * 保存 */ @RequestMapping("/save") @RequiresPermissions("goods:save") public R save(@RequestBody GoodsEntity goods) { goodsService.save(goods); return R.ok(); } /** * 修改 */ @RequestMapping("/update") @RequiresPermissions("goods:update") public R update(@RequestBody GoodsEntity goods) { goodsService.update(goods); return R.ok(); } /** * 删除 */ @RequestMapping("/delete") @RequiresPermissions("goods:delete") public R delete(@RequestBody Integer[] ids) { goodsService.deleteBatch(ids); return R.ok(); } /** * 查看所有列表 */ @RequestMapping("/queryAll") public R queryAll(@RequestParam Map params) { params.put("isDelete", 0); List list = goodsService.queryList(params); return R.ok().put("list", list); } /** * 商品回收站 * * @param params * @return */ @RequestMapping("/historyList") public R historyList(@RequestParam Map params) { //查询列表数据 Query query = new Query(params); query.put("isDelete", 1); List goodsList = goodsService.queryList(query); int total = goodsService.queryTotal(query); PageUtils pageUtil = new PageUtils(goodsList, total, query.getLimit(), query.getPage()); return R.ok().put("page", pageUtil); } /** * 商品从回收站恢复 */ @RequestMapping("/back") @RequiresPermissions("goods:back") public R back(@RequestBody Integer[] ids) { goodsService.back(ids); return R.ok(); } /** * 总计 */ @RequestMapping("/queryTotal") public R queryTotal(@RequestParam Map params) { params.put("isDelete", 0); int sum = goodsService.queryTotal(params); return R.ok().put("goodsSum", sum); } /** * 上架 */ @RequestMapping("/enSale") public R enSale(@RequestBody Integer id) { goodsService.enSale(id); return R.ok(); } /** * 上架 */ @RequestMapping("/enSaleBatch") public R enSaleBatch(@RequestBody Integer[] ids) { goodsService.enSaleBatch(ids); return R.ok(); } /** * 下架 */ @RequestMapping("/unSale") public R unSale(@RequestBody Integer id) { goodsService.unSale(id); return R.ok(); } /** * 下架 */ @RequestMapping("/unSaleBatch") public R unSaleBatch(@RequestBody Integer[] ids) { goodsService.unSaleBatch(ids); return R.ok(); } /** * 上传文件 */ @RequestMapping("/upload") public R upload(@RequestParam("file") MultipartFile file) throws Exception { goodsService.uploadExcel(file); //上传文件 return R.ok(); } }