数据权限的修改
This commit is contained in:
+3
@@ -126,4 +126,7 @@ public class CommonRouteDo extends BaseVOEntity
|
||||
|
||||
@ApiModelProperty(name = "运费单价")
|
||||
private BigDecimal freightUnitPrice;
|
||||
|
||||
@ApiModelProperty(name = "组织ID(用于数据权限过滤,内部使用)", hidden = true)
|
||||
private Long organizationId;
|
||||
}
|
||||
|
||||
+11
-1
@@ -10,6 +10,7 @@ import com.mhd.basic.domain.expenseAccount.repository.todo.ExpenseAccountDO;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.todo.ExpenseAccountDoMap;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.todo.SearchExpenseAccountDO;
|
||||
import com.mhd.basic.interfaces.dto.expenseAccount.SearchExpenseAccountDTO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -24,6 +25,7 @@ import java.util.List;
|
||||
* @author gen
|
||||
* @date 2024-06-04
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
public class ExpenseAccountImpl extends ServiceImpl<ExpenseAccountMapper, ExpenseAccount> implements IExpenseAccountService{
|
||||
@Autowired
|
||||
@@ -35,7 +37,15 @@ public class ExpenseAccountImpl extends ServiceImpl<ExpenseAccountMapper, Expens
|
||||
@Override
|
||||
public List<ExpenseAccountPO> queryList(ExpenseAccountDO expenseAccountDO)
|
||||
{
|
||||
return expenseAccountMapper.queryList(expenseAccountDO);
|
||||
// 添加日志,记录查询参数
|
||||
log.info("ExpenseAccountImpl.queryList 查询参数:topOrganizationId={}, subjectName={}, subjectCode={}, status={}",
|
||||
expenseAccountDO.getTopOrganizationId(),
|
||||
expenseAccountDO.getSubjectName(),
|
||||
expenseAccountDO.getSubjectCode(),
|
||||
expenseAccountDO.getStatus());
|
||||
List<ExpenseAccountPO> result = expenseAccountMapper.queryList(expenseAccountDO);
|
||||
log.info("ExpenseAccountImpl.queryList 查询结果:{} 条", result != null ? result.size() : 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+11
@@ -39,5 +39,16 @@ public class QueryExpenseAccountPO {
|
||||
@Excel(name = "上级科目名称")
|
||||
private String upperSubject;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
}
|
||||
|
||||
+6
@@ -25,4 +25,10 @@ public class SearchExpenseAccountDO{
|
||||
|
||||
@ApiModelProperty("社会车辆固定显示(1-是,2-否)")
|
||||
private Integer societyStatus;
|
||||
|
||||
@ApiModelProperty("组织ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("上级组织ID")
|
||||
private Long topOrganizationId;
|
||||
}
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ public interface IServiceItemsManageService extends IService<ServiceItemsManage>
|
||||
/**
|
||||
* 查询费用类别
|
||||
*/
|
||||
public List<ServiceItemsManagePO> getCostType();
|
||||
public List<ServiceItemsManagePO> getCostType(ServiceItemsManageDO serviceItemsManageDO);
|
||||
/**
|
||||
* 新增服务项管理
|
||||
*/
|
||||
|
||||
+1
-1
@@ -21,6 +21,6 @@ public interface ServiceItemsManageMapper extends BaseMapper<ServiceItemsManage>
|
||||
/**
|
||||
* 查询费用类别
|
||||
*/
|
||||
public List<ServiceItemsManagePO> selectServiceTypes();
|
||||
public List<ServiceItemsManagePO> selectServiceTypes(ServiceItemsManageDO serviceItemsManageDO);
|
||||
|
||||
}
|
||||
|
||||
+73
-3
@@ -6,6 +6,7 @@ import com.mhd.basic.domain.serviceItemsManage.entity.ServiceItemsManage;
|
||||
import com.mhd.basic.domain.serviceItemsManage.repository.facade.IServiceItemsManageService;
|
||||
import com.mhd.basic.domain.serviceItemsManage.repository.po.ServiceItemsManagePO;
|
||||
import com.mhd.basic.domain.serviceItemsManage.repository.todo.ServiceItemsManageDO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -19,6 +20,7 @@ import java.util.List;
|
||||
* @author gen
|
||||
* @date 2024-06-03
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
public class ServiceItemsManageImpl extends ServiceImpl<ServiceItemsManageMapper, ServiceItemsManage> implements IServiceItemsManageService{
|
||||
@Autowired
|
||||
@@ -30,12 +32,80 @@ public class ServiceItemsManageImpl extends ServiceImpl<ServiceItemsManageMapper
|
||||
@Override
|
||||
public List<ServiceItemsManagePO> queryList(ServiceItemsManageDO serviceItemsManageDO)
|
||||
{
|
||||
return serviceItemsManageMapper.queryList(serviceItemsManageDO);
|
||||
// 添加日志,记录查询参数
|
||||
log.info("ServiceItemsManageImpl.queryList 查询参数:topOrganizationId={}, organizationId={}, serviceItemsName={}, serviceItemsCode={}",
|
||||
serviceItemsManageDO.getTopOrganizationId(),
|
||||
serviceItemsManageDO.getOrganizationId(),
|
||||
serviceItemsManageDO.getServiceItemsName(),
|
||||
serviceItemsManageDO.getServiceItemsCode());
|
||||
|
||||
// 构建SQL查询条件说明(用于日志,必须与 MyBatis XML 中的条件保持一致)
|
||||
StringBuilder sqlCondition = new StringBuilder("WHERE del_flag = 1");
|
||||
|
||||
// 组织过滤条件(与 XML 中的 <if test="organizationId != null"> 和 <if test="topOrganizationId != null and organizationId == null"> 对应)
|
||||
if (serviceItemsManageDO.getOrganizationId() != null) {
|
||||
// 如果设置了 organizationId,添加 organization_id 条件
|
||||
sqlCondition.append(" AND organization_id = ").append(serviceItemsManageDO.getOrganizationId());
|
||||
sqlCondition.append(" AND organization_name IS NOT NULL");
|
||||
sqlCondition.append(" AND organization_name != ''");
|
||||
sqlCondition.append(" AND LENGTH(TRIM(organization_name)) > 0");
|
||||
} else if (serviceItemsManageDO.getTopOrganizationId() != null) {
|
||||
// 如果设置了 topOrganizationId 但没有设置 organizationId,添加 top_organization_id 条件
|
||||
sqlCondition.append(" AND top_organization_id = ").append(serviceItemsManageDO.getTopOrganizationId());
|
||||
sqlCondition.append(" AND organization_name IS NOT NULL");
|
||||
sqlCondition.append(" AND organization_name != ''");
|
||||
sqlCondition.append(" AND LENGTH(TRIM(organization_name)) > 0");
|
||||
} else {
|
||||
// 如果 organizationId 和 topOrganizationId 都为 null,不添加组织过滤条件(查询所有组织的数据)
|
||||
sqlCondition.append(" (无组织过滤条件,查询所有组织的数据)");
|
||||
}
|
||||
|
||||
// 其他查询条件
|
||||
if (serviceItemsManageDO.getCreateByName() != null && !serviceItemsManageDO.getCreateByName().isEmpty()) {
|
||||
sqlCondition.append(" AND create_by_name LIKE '%").append(serviceItemsManageDO.getCreateByName()).append("%'");
|
||||
}
|
||||
if (serviceItemsManageDO.getUpdateByName() != null && !serviceItemsManageDO.getUpdateByName().isEmpty()) {
|
||||
sqlCondition.append(" AND update_by_name LIKE '%").append(serviceItemsManageDO.getUpdateByName()).append("%'");
|
||||
}
|
||||
if (serviceItemsManageDO.getOrganizationName() != null && !serviceItemsManageDO.getOrganizationName().isEmpty()) {
|
||||
sqlCondition.append(" AND organization_name LIKE '%").append(serviceItemsManageDO.getOrganizationName()).append("%'");
|
||||
}
|
||||
if (serviceItemsManageDO.getServiceItemsName() != null && !serviceItemsManageDO.getServiceItemsName().isEmpty()) {
|
||||
sqlCondition.append(" AND service_items_name LIKE '%").append(serviceItemsManageDO.getServiceItemsName()).append("%'");
|
||||
}
|
||||
if (serviceItemsManageDO.getServiceItemsCode() != null && !serviceItemsManageDO.getServiceItemsCode().isEmpty()) {
|
||||
sqlCondition.append(" AND service_items_code = '").append(serviceItemsManageDO.getServiceItemsCode()).append("'");
|
||||
}
|
||||
if (serviceItemsManageDO.getTaxRate() != null) {
|
||||
sqlCondition.append(" AND tax_rate = ").append(serviceItemsManageDO.getTaxRate());
|
||||
}
|
||||
if (serviceItemsManageDO.getRemark() != null && !serviceItemsManageDO.getRemark().isEmpty()) {
|
||||
sqlCondition.append(" AND remark LIKE '%").append(serviceItemsManageDO.getRemark()).append("%'");
|
||||
}
|
||||
|
||||
log.info("ServiceItemsManageImpl.queryList 生成的SQL条件(预估):SELECT * FROM service_items_manage {}", sqlCondition.toString());
|
||||
log.info("ServiceItemsManageImpl.queryList 实际执行的SQL请查看 MyBatis 日志,参数:organizationId={}, topOrganizationId={}, delFlag={}",
|
||||
serviceItemsManageDO.getOrganizationId(), serviceItemsManageDO.getTopOrganizationId(), serviceItemsManageDO.getDelFlag());
|
||||
|
||||
List<ServiceItemsManagePO> result = serviceItemsManageMapper.queryList(serviceItemsManageDO);
|
||||
log.info("ServiceItemsManageImpl.queryList 查询结果:{} 条", result != null ? result.size() : 0);
|
||||
// 记录查询结果中的组织ID分布
|
||||
if (result != null && !result.isEmpty()) {
|
||||
StringBuilder orgIds = new StringBuilder();
|
||||
for (ServiceItemsManagePO po : result) {
|
||||
if (orgIds.length() > 0) {
|
||||
orgIds.append(", ");
|
||||
}
|
||||
orgIds.append(po.getOrganizationId());
|
||||
}
|
||||
log.info("查询结果中的组织ID分布:{}", orgIds.toString());
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ServiceItemsManagePO> getCostType() {
|
||||
return serviceItemsManageMapper.selectServiceTypes();
|
||||
public List<ServiceItemsManagePO> getCostType(ServiceItemsManageDO serviceItemsManageDO) {
|
||||
return serviceItemsManageMapper.selectServiceTypes(serviceItemsManageDO);
|
||||
}
|
||||
/**
|
||||
* 新增服务项管理
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ public class ServiceItemsManageDomainService {
|
||||
* 查询费用类型
|
||||
*/
|
||||
public List<ServiceItemsManagePO> getCostsType(ServiceItemsManageDO serviceItemsManageDO){
|
||||
return serviceItemsManageService.getCostType();
|
||||
return serviceItemsManageService.getCostType(serviceItemsManageDO);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user