注意点:
BeanUtil(cn.hutool.core.bean;)
mybatisPlus设置了更新字段为空时不更新数据库
//复制属性操作实体类
SysPost sysPost = BeanUtil.copyProperties(postDTO, SysPost.class);
boolean result;
//根据用户名查询列表
long count = count(new QueryWrapper<SysPost>()
.ne(ObjectUtil.isNotNull(sysPost.getId()) && sysPost.getId() != 0, "id", sysPost.getId())
.eq(ObjectUtil.isNotNull(sysPost.getPostName()), "post_name", sysPost.getPostName()));
Assert.isTrue(count == 0, CommonErrCode.POST_NAME_REPEATE.getMessage());
//id不为空且!=0 ,更新
if (ObjectUtil.isNotNull(sysPost.getId()) && sysPost.getId() != 0) {
//更新
result = saveOrUpdate(sysPost);
} else {
//新增
sysPost.setId(IdGenerator.getId());
result = save(sysPost);
}
return result ? Result.succeed(sysPost, StringPool.SUCCESS_MSG) : Result.failed(StringPool.FAIL_MSG);