delete_flag修改
This commit is contained in:
@@ -1,66 +0,0 @@
|
||||
package com.core.common.biz;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Update;
|
||||
import org.springframework.core.annotation.AnnotationUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface HisBaseMapper<T> extends BaseMapper<T> {
|
||||
|
||||
/**
|
||||
* 根据ID逻辑删除单条记录
|
||||
*/
|
||||
default int logicalDelById(Long id) {
|
||||
String tableName = getTableName();
|
||||
return logicalDelById(tableName, id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据ID列表批量逻辑删除记录
|
||||
*/
|
||||
default int logicalDelByIds(List<Long> ids) {
|
||||
String tableName = getTableName();
|
||||
return logicalDelByIds(tableName, ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据 UpdateWrapper 逻辑删除记录
|
||||
*/
|
||||
default int logicalDelByWrapper(LambdaUpdateWrapper<T> updateWrapper) {
|
||||
String tableName = getTableName();
|
||||
return logicalDelByWrapper(updateWrapper, tableName);
|
||||
}
|
||||
|
||||
@Update("UPDATE ${tableName} SET delete_flag = 1 WHERE id = #{id}")
|
||||
int logicalDelById(@Param("tableName") String tableName, @Param("id") Long id);
|
||||
|
||||
@Update({
|
||||
"<script>",
|
||||
"UPDATE ${tableName} SET delete_flag = 1 WHERE id IN",
|
||||
"<foreach collection='ids' item='id' open='(' separator=',' close=')'>",
|
||||
"#{id}",
|
||||
"</foreach>",
|
||||
"</script>"
|
||||
})
|
||||
int logicalDelByIds(@Param("tableName") String tableName, @Param("ids") List<Long> ids);
|
||||
|
||||
@Update("UPDATE ${tableName} SET delete_flag = 1 ${ew.customSqlSegment}")
|
||||
int logicalDelByWrapper(@Param(Constants.WRAPPER) LambdaUpdateWrapper<T> updateWrapper, @Param("tableName") String tableName);
|
||||
|
||||
/**
|
||||
* 获取表名
|
||||
*/
|
||||
default String getTableName() {
|
||||
TableName tableNameAnnotation = AnnotationUtils.findAnnotation(this.getClass(), TableName.class);
|
||||
if (tableNameAnnotation == null) {
|
||||
throw new RuntimeException("Table name annotation not found on Mapper interface");
|
||||
}
|
||||
return tableNameAnnotation.value();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
package com.core.common.biz;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface HisBaseService<T> extends IService<T> {
|
||||
|
||||
/**
|
||||
* 根据ID逻辑删除单条记录
|
||||
*
|
||||
* @param id 主键ID
|
||||
* @return 是否成功
|
||||
*/
|
||||
boolean logicalDelById(Long id);
|
||||
|
||||
/**
|
||||
* 根据ID列表批量逻辑删除记录
|
||||
*
|
||||
* @param ids 主键ID列表
|
||||
* @return 是否成功
|
||||
*/
|
||||
boolean logicalDelByIds(List<Long> ids);
|
||||
|
||||
/**
|
||||
* 根据条件逻辑删除记录
|
||||
*
|
||||
* @param updateWrapper 更新条件(Lambda形式)
|
||||
* @return 是否成功
|
||||
*/
|
||||
boolean logicalDelByWrapper(LambdaUpdateWrapper<T> updateWrapper);
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
package com.core.common.biz;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class HisBaseServiceImpl<M extends BaseMapper<T>, T> extends ServiceImpl<M, T> implements HisBaseService<T> {
|
||||
|
||||
@Override
|
||||
public boolean logicalDelById(Long id) {
|
||||
return ((HisBaseMapper<T>) baseMapper).logicalDelById(id) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean logicalDelByIds(List<Long> ids) {
|
||||
return ((HisBaseMapper<T>) baseMapper).logicalDelByIds(ids) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean logicalDelByWrapper(LambdaUpdateWrapper<T> updateWrapper) {
|
||||
return ((HisBaseMapper<T>) baseMapper).logicalDelByWrapper(updateWrapper) > 0;
|
||||
}
|
||||
}
|
||||
@@ -6,6 +6,7 @@ import java.util.Date;
|
||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
@@ -41,6 +42,7 @@ public class HisBaseEntity implements Serializable {
|
||||
private Integer tenantId;
|
||||
|
||||
/** 删除标识 */
|
||||
private Integer deleteFlag;
|
||||
@TableLogic(value = "0", delval = "1") // 0 为未删除,1 为删除
|
||||
private String deleteFlag;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user