Browse Source

修改 bug

master
王泽彦 6 months ago
parent
commit
a6bc59e47a
  1. 26
      niucloud/app/service/api/apiService/ResourceSharingService.php

26
niucloud/app/service/api/apiService/ResourceSharingService.php

@ -348,9 +348,18 @@ class ResourceSharingService extends BaseApiService
$resource_conditions[] = ['source_channel', 'like', '%' . $where['source_channel'] . '%'];
}
// 年龄查询 - varchar类型使用like查询,支持模糊匹配(如4可匹配4.1、4.12、14、24等
// 年龄查询 - 改进的模糊匹配,减少错误匹配(如4匹配4, 4.1, 4.12等,尽量减少5.4这种情况
if (isset($where['age']) && $where['age'] !== '' && $where['age'] !== null) {
$resource_conditions[] = ['age', 'like', '%' . trim($where['age']) . '%'];
$searchAge = trim($where['age']);
// 使用更精确的匹配条件:精确匹配、小数点开头、或者作为独立数字被分隔符包围
$resource_conditions[] = function($query) use ($searchAge) {
$query->where('age', '=', $searchAge)
->whereOr('age', 'like', $searchAge . '.%')
->whereOr('age', 'like', '% ' . $searchAge . ' %')
->whereOr('age', 'like', '%,' . $searchAge . ',%')
->whereOr('age', 'like', $searchAge . ',%')
->whereOr('age', 'like', '%,' . $searchAge);
};
}
// 黑名单状态查询
@ -992,9 +1001,18 @@ class ResourceSharingService extends BaseApiService
$resource_conditions[] = ['source_channel', 'like', '%' . $where['source_channel'] . '%'];
}
// 年龄查询 - varchar类型使用like查询,支持模糊匹配(如4可匹配4.1、4.12、14、24等
// 年龄查询 - 改进的模糊匹配,减少错误匹配(如4匹配4, 4.1, 4.12等,尽量减少5.4这种情况
if (isset($where['age']) && $where['age'] !== '' && $where['age'] !== null) {
$resource_conditions[] = ['age', 'like', '%' . trim($where['age']) . '%'];
$searchAge = trim($where['age']);
// 使用更精确的匹配条件:精确匹配、小数点开头、或者作为独立数字被分隔符包围
$resource_conditions[] = function($query) use ($searchAge) {
$query->where('age', '=', $searchAge)
->whereOr('age', 'like', $searchAge . '.%')
->whereOr('age', 'like', '% ' . $searchAge . ' %')
->whereOr('age', 'like', '%,' . $searchAge . ',%')
->whereOr('age', 'like', $searchAge . ',%')
->whereOr('age', 'like', '%,' . $searchAge);
};
}
// 黑名单状态查询

Loading…
Cancel
Save