Service和mapper封装逻辑删除的方法:
业务Mapper类需要继承HisBaseMapper,且加上@TableName注解指定表名 业务Service extends HisBaseService 业务ServiceImpl extends HisBaseServiceImpl
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
package com.core.common.biz;
|
package com.core.common.biz;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
@@ -31,7 +31,7 @@ public interface HisBaseMapper<T> extends BaseMapper<T> {
|
|||||||
/**
|
/**
|
||||||
* 根据 UpdateWrapper 逻辑删除记录
|
* 根据 UpdateWrapper 逻辑删除记录
|
||||||
*/
|
*/
|
||||||
default int logicalDelByWrapper(UpdateWrapper<T> updateWrapper) {
|
default int logicalDelByWrapper(LambdaUpdateWrapper<T> updateWrapper) {
|
||||||
String tableName = getTableName();
|
String tableName = getTableName();
|
||||||
return logicalDelByWrapper(updateWrapper, tableName);
|
return logicalDelByWrapper(updateWrapper, tableName);
|
||||||
}
|
}
|
||||||
@@ -50,7 +50,7 @@ public interface HisBaseMapper<T> extends BaseMapper<T> {
|
|||||||
int logicalDelByIds(@Param("tableName") String tableName, @Param("ids") List<Long> ids);
|
int logicalDelByIds(@Param("tableName") String tableName, @Param("ids") List<Long> ids);
|
||||||
|
|
||||||
@Update("UPDATE ${tableName} SET delete_flag = 1 ${ew.customSqlSegment}")
|
@Update("UPDATE ${tableName} SET delete_flag = 1 ${ew.customSqlSegment}")
|
||||||
int logicalDelByWrapper(@Param(Constants.WRAPPER) UpdateWrapper<T> updateWrapper, @Param("tableName") String tableName);
|
int logicalDelByWrapper(@Param(Constants.WRAPPER) LambdaUpdateWrapper<T> updateWrapper, @Param("tableName") String tableName);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取表名
|
* 获取表名
|
||||||
|
|||||||
@@ -0,0 +1,33 @@
|
|||||||
|
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);
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
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;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
package com.openhis.medication.mapper;
|
package com.openhis.medication.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.core.common.biz.HisBaseMapper;
|
||||||
import com.openhis.medication.domain.MedicationDetail;
|
import com.openhis.medication.domain.MedicationDetail;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
@@ -14,8 +16,9 @@ import java.util.List;
|
|||||||
* @author system
|
* @author system
|
||||||
* @date 2025-02-20
|
* @date 2025-02-20
|
||||||
*/
|
*/
|
||||||
|
@TableName("med_medication")
|
||||||
@Repository
|
@Repository
|
||||||
public interface MedicationMapper extends BaseMapper<Medication> {
|
public interface MedicationMapper extends HisBaseMapper<Medication> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询药品详细信息列表
|
* 查询药品详细信息列表
|
||||||
|
|||||||
@@ -1,18 +1,18 @@
|
|||||||
package com.openhis.medication.service;
|
package com.openhis.medication.service;
|
||||||
|
|
||||||
import java.util.List;
|
import com.core.common.biz.HisBaseService;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
|
||||||
import com.openhis.medication.domain.Medication;
|
import com.openhis.medication.domain.Medication;
|
||||||
import com.openhis.medication.domain.MedicationDetail;
|
import com.openhis.medication.domain.MedicationDetail;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 药品基本信息管理Service接口
|
* 药品基本信息管理Service接口
|
||||||
*
|
*
|
||||||
* @author system
|
* @author system
|
||||||
* @date 2025-02-20
|
* @date 2025-02-20
|
||||||
*/
|
*/
|
||||||
public interface IMedicationService extends IService<Medication> {
|
public interface IMedicationService extends HisBaseService<Medication> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询药品信息列表
|
* 查询药品信息列表
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.openhis.medication.service.impl;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.core.common.biz.HisBaseServiceImpl;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
@@ -23,7 +24,7 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
*/
|
*/
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Service
|
@Service
|
||||||
public class MedicationServiceImpl extends ServiceImpl<MedicationMapper, Medication> implements IMedicationService {
|
public class MedicationServiceImpl extends HisBaseServiceImpl<MedicationMapper, Medication> implements IMedicationService {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private MedicationMapper medicationMapper;
|
private MedicationMapper medicationMapper;
|
||||||
|
|||||||
Reference in New Issue
Block a user