接收参数(根据实际情况修改,仅供参考):
public class Params
{
private int pageNo;
private int pageSize;
public int getPageNo()
{
return this.pageNo;
}
public int getPageSize()
{
return this.pageSize;
}
}
分页Map (根据你的前端同事要求的格式修改):
/**
* 创建返回分页数据的Map
*
* @param page
* @return
*/
public static Map createPageResultMap(IPage page)
{
Map resultData = new HashMap();
resultData.put(Util.PAGE_DATA_LIST, page.getRecords());
resultData.put(Util.PAGE_TOTAL, page.getTotal());
resultData.put(Util.PAGE_SIZE, page.getSize());
resultData.put(Util.PAGE_NUM, page.getCurrent());
return resultData;
}
1.Select(分页版本,非分页版本看官方文档即可)
1.1 获取所有数据(分页):
@CrossOrigin
@ApiOperation(value = "获取所有数据",
httpMethod = "POST",
produces = "application/json",
protocols = "http")
@PostMapping("/get")
public R get(
@RequestBody
Params params)
{
IPage<Entity> page = new Page<>(params.getPageNo(), params.getPageSize());
IPage<Entity> robot = this.service.page(page);
return R.ok(Util.createPageResultMap(robot));
}
1.2 根据条件获取(分页):
@CrossOrigin
@ApiOperation(value = "获取所有数据;若值为空,则获取全部数据",
httpMethod = "POST",
produces = "application/json",
protocols = "http")
@PostMapping("/get")
public R<IPage<Entity>> get(
@RequestBody
GetPacketRestParams params)
{
IPage<Entity> page = new Page<>(params.getPageNo(), params.getPageSize());
IPage<Entity> entityPage = this.service.page(page,
Wrappers.<Entity>lambdaQuery()
.eq(StrUtil.isNotEmpty(params.getName()), Entity::getName,
params.getName())
.orderByAsc(Entity::getAge));
return R.ok(Util.createPageResultMap(entityPage));
}
2.UpdateOrAdd
2.1 无id
@CrossOrigin
@ApiOperation(value = "修改状态",
httpMethod = "POST",
produces = "application/json",
protocols = "http")
@PostMapping("/modify")
public R modify(
@RequestBody
Params params)
{
LambdaUpdateWrapper<Entity> lambdaUpdateWrapper = Wrappers.lambdaUpdate();
lambdaUpdateWrapper.eq(Entity::getName, params.getName)
.set(Entity::getStatus, params.getStatus);
Boolean ref = this.service.update(null, lambdaUpdateWrapper);
String result = null;
if (!ref)
{
result = params.getName + " ,操作失败!";
log.error("modifyStatus--" + result + " , name:" + params.getName);
return R.error(result);
}
return R.ok(result);
}
2.2 有id
@CrossOrigin
@ApiOperation(value = "添加数据;若存在,就修改",
httpMethod = "POST",
produces = "application/json",
protocols = "http")
@PostMapping("/addOrUpdate")
public R addOrUpdateTrashSlot(
@RequestBody
Param params)
{
String result = null;
Entity entity = new Entity();
entity.setName(params.getName);
entity.setId(params.getId());
boolean ref = this.service.saveOrUpdate(entity);
if (!ref)
{
result = slot + " ,操作失败!";
log.error("AddOrUpdate--" + result);
return R.error(result);
}
return R.ok(result);
}
3.Delete
@CrossOrigin
@ApiOperation(value = "删除",
httpMethod = "POST",
produces = "application/json",
protocols = "http")
@PostMapping("/delete")
public R delete(
@RequestBody
Param params)
{
String result = null;
boolean ref = this.service
.remove(Wrappers.<Entity>lambdaQuery().eq(Entity::getName, params.getName)
.eq(Entity::getId, params.getId()));
if (!ref)
{
result = slot + " ,操作失败!";
log.error("Delete--" + result);
return R.error(result);
}
return R.ok(result);
}