扩展 crud 抽象类

v1.4.1
Parker 6 years ago
parent 0824ce86d3
commit cfe4f7d3d2

@ -22,6 +22,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.opsli.api.base.warpper.ApiWrapper; import org.opsli.api.base.warpper.ApiWrapper;
import org.opsli.common.utils.WrapperUtil; import org.opsli.common.utils.WrapperUtil;
import org.opsli.core.base.entity.BaseEntity; import org.opsli.core.base.entity.BaseEntity;
@ -146,6 +147,21 @@ public abstract class CrudServiceImpl<M extends BaseMapper<T>, T extends BaseEnt
return null; return null;
} }
@Override
@Transactional(readOnly = false)
public E save(E model) {
if(model == null) return null;
// 修改
if(StringUtils.isNotBlank(model.getId())){
return this.update(model);
}
// 新增
model.setId(null);
return this.insert(model);
}
@Override @Override
@Transactional(readOnly = false) @Transactional(readOnly = false)
public boolean delete(String id) { public boolean delete(String id) {

@ -99,6 +99,21 @@ public interface CrudServiceInterface<T extends BaseEntity,E extends ApiWrapper>
E update(E model); E update(E model);
/**
* 保存数据
*
* 不需要做锁状态处理
* 不需要判断是否成功
* 能往下走的只能是成功
* 异常问题 已经统一被处理
*
* 注: 没有ID 则是 新增, 有ID 则默认进行保存
*
* @param model model 数据模型
* @return E
*/
E save(E model);
/** /**
* 删除数据(物理删除,从数据库中彻底删除) * 删除数据(物理删除,从数据库中彻底删除)
* *

Loading…
Cancel
Save