bug51153修改
This commit is contained in:
+2
@@ -80,6 +80,8 @@ public interface BussDocumentLibraryEOMapper extends BaseMapper<BussDocumentLibr
|
||||
|
||||
List<Map<String,Object>> getListBySerialNumber(@Param("serialNumbers") String serialNumbers);
|
||||
|
||||
List<String> getListBySerialNumberFuzzy(@Param("serialNumber") String serialNumber);
|
||||
|
||||
|
||||
List<Map<String,Object>> selectMapsAll(@Param("ids") String ids);
|
||||
|
||||
|
||||
+5
@@ -61,6 +61,11 @@
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="getListBySerialNumberFuzzy" resultType="java.lang.String">
|
||||
select id from buss_document_library
|
||||
where serial_number like concat(concat('%',#{serialNumber}),'%')
|
||||
</select>
|
||||
|
||||
<!--分页-->
|
||||
<select id="selectMapsAll" resultType="java.util.LinkedHashMap">
|
||||
select * from buss_document_library
|
||||
|
||||
+2
@@ -196,4 +196,6 @@ public interface IBussDocumentLibraryEOService extends IService<BussDocumentLibr
|
||||
List<Map<String,Object>> queryListByIds(String ids);
|
||||
|
||||
List<Map<String, Object>> getListBySerialNumber(String serialNumbers);
|
||||
|
||||
List<String> getListBySerialNumberFuzzy(String serialNumber);
|
||||
}
|
||||
|
||||
+5
@@ -4346,6 +4346,11 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
return bussDocumentLibraryEOMapper.getListBySerialNumber(serialNumbers);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getListBySerialNumberFuzzy(String serialNumber) {
|
||||
return bussDocumentLibraryEOMapper.getListBySerialNumberFuzzy(serialNumber);
|
||||
}
|
||||
|
||||
/**
|
||||
* 验证字符串是不是id
|
||||
*
|
||||
|
||||
+50
@@ -715,6 +715,56 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
||||
} else if (FieldTypeEnum.TEXT_NUMBER.getValue().equals(fieldType)) {
|
||||
Double value = Double.valueOf(entry.getValue().toString());
|
||||
conditionSb.append(" and sar_file_split_items." + key + " =" + value);
|
||||
} else if (FieldTypeEnum.PERSON.getValue().equals(fieldType)) {
|
||||
String value = (String) entry.getValue();
|
||||
if(value.contains("%")){
|
||||
value = value.replace("%", "/%");
|
||||
}
|
||||
LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.like(SysUser::getUsername, value);
|
||||
queryWrapper.eq(SysUser::getDelFlag, 0);
|
||||
List<SysUser> sysUserList = sysUserService.list(queryWrapper);
|
||||
if (CollectionUtil.isNotEmpty(sysUserList)) {
|
||||
List<String> userIdList = sysUserList.stream().map(SysUser::getId).collect(Collectors.toList());
|
||||
StringBuilder valueSb = new StringBuilder();
|
||||
StringBuilder condition = new StringBuilder();
|
||||
for (String valueTemp : userIdList) {
|
||||
valueSb.append("'" + valueTemp + "',");
|
||||
condition.append(" or sar_file_split_items." + key + " like concat(concat('%','" + valueTemp + "'),'%')");
|
||||
}
|
||||
condition.append(")");
|
||||
String substring = valueSb.substring(0, valueSb.length() - 1);
|
||||
conditionSb.append(" and (sar_file_split_items." + key + " in(" + substring + ")" + condition.toString());
|
||||
} else {
|
||||
conditionSb.append(" and sar_file_split_items." + key + " like concat(concat('%','" + value + "'),'%')");
|
||||
}
|
||||
|
||||
} else if (FieldTypeEnum.STANDARD.getValue().equals(fieldType)) {
|
||||
String value = (String) entry.getValue();
|
||||
if(value.contains("%")){
|
||||
value = value.replace("%", "/%");
|
||||
}
|
||||
List<String> idList = documentLibraryEOService.getListBySerialNumberFuzzy(value);
|
||||
if (CollectionUtil.isNotEmpty(idList)) {
|
||||
StringBuilder valueSb = new StringBuilder();
|
||||
StringBuilder condition = new StringBuilder();
|
||||
for (String valueTemp : idList) {
|
||||
valueSb.append("'" + valueTemp + "',");
|
||||
condition.append(" or sar_file_split_items." + key + " like concat(concat('%','" + valueTemp + "'),'%')");
|
||||
}
|
||||
condition.append(")");
|
||||
String substring = valueSb.substring(0, valueSb.length() - 1);
|
||||
conditionSb.append(" and (sar_file_split_items." + key + " in(" + substring + ")" + condition.toString());
|
||||
} else {
|
||||
conditionSb.append(" and sar_file_split_items." + key + " like concat(concat('%','" + value + "'),'%')");
|
||||
}
|
||||
} else {
|
||||
// 文本框,多日期
|
||||
String value = (String) entry.getValue();
|
||||
if(value.contains("%")){
|
||||
value = value.replace("%", "/%");
|
||||
}
|
||||
conditionSb.append(" and sar_file_split_items." + key + " like concat(concat('%','" + value + "'),'%')");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user