package cn.cetc54.platform.core.base; import cn.cetc54.platform.core.common.utils.PageUtil; import cn.cetc54.platform.core.common.utils.ResultUtil; import cn.cetc54.platform.core.common.vo.PageVo; import cn.cetc54.platform.core.common.vo.Result; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.web.bind.annotation.*; import java.io.Serializable; import java.util.List; /** * @author */ public abstract class BaseController { /** * 获取service * @return */ @Autowired public abstract BaseService getService(); @RequestMapping(value = "/get/{id}", method = RequestMethod.GET) @ResponseBody @ApiOperation(value = "通过id获取") public Result get(@PathVariable ID id){ E entity = getService().get(id); return new ResultUtil().setData(entity); } @RequestMapping(value = "/getAll", method = RequestMethod.GET) @ResponseBody @ApiOperation(value = "获取全部数据") public Result> getAll(){ List list = getService().getAll(); return new ResultUtil>().setData(list); } @RequestMapping(value = "/getByPage", method = RequestMethod.GET) @ResponseBody @ApiOperation(value = "分页获取") public Result> getByPage(PageVo page){ Page data = getService().findAll(PageUtil.initPage(page)); return new ResultUtil>().setData(data); } @RequestMapping(value = "/save", method = RequestMethod.POST) @ResponseBody @ApiOperation(value = "保存数据") public Result save(E entity){ E e = getService().save(entity); return new ResultUtil().setData(e); } @RequestMapping(value = "/update", method = RequestMethod.PUT) @ResponseBody @ApiOperation(value = "更新数据") public Result update(E entity){ E e = getService().update(entity); return new ResultUtil().setData(e); } @RequestMapping(value = "/delByIds", method = RequestMethod.POST) @ResponseBody @ApiOperation(value = "批量通过id删除") public Result delByIds(@RequestParam ID[] ids){ for(ID id:ids){ getService().delete(id); } return ResultUtil.success("批量通过id删除数据成功"); } }