controller
/**
* 根据条件,快捷查询 条件通过字符串拼接
* @param startTime 开始时间
* @param endTime 结束时间
* @param zdfl 终端分类
* @param czlx 操作类型
* @param czjg 操作结果
* @param fuzzyQuery 用户名 / 单位名称 / 终端标识 匹配
* @return
*/
@PostMapping("FuzzyQuery")
@ApiOperation("快速查询操作日志_操作日志")
@ApiImplicitParams({
@ApiImplicitParam(name="startTime", value="开始时间",paramType="query", dataType="date", dataTypeClass=Date.class, required=false, defaultValue=""),
@ApiImplicitParam(name="endTime", value="结束时间",paramType="query", dataType="date", dataTypeClass=Date.class, required=false, defaultValue=""),
@ApiImplicitParam(name="zdfl", value="终端分类",paramType="query", dataType="string", dataTypeClass=String.class, required=false, defaultValue=""),
@ApiImplicitParam(name="czlx", value="操作类型",paramType="query", dataType="string", dataTypeClass=String.class, required=false, defaultValue=""),
@ApiImplicitParam(name="czjg", value="操作结果",paramType="query", dataType="string", dataTypeClass=String.class, required=false, defaultValue=""),
@ApiImplicitParam(name="fuzzyQuery", value="按条件快速匹配",paramType="query", dataType="string", dataTypeClass=String.class, required=false, defaultValue=""),
})
public ResponseEntity<List<Czrz>> FuzzyQuery( @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime,
@RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime,
@RequestParam(required = false) String zdfl,
@RequestParam(required = false) String czlx,
@RequestParam(required = false) String czjg,
@RequestParam(required = false) String fuzzyQuery) throws ParseException {
List<Czrz> czrzList = czrzService.FuzzyQuery(startTime, endTime, zdfl, czlx, czjg, fuzzyQuery);
return ResponseEntity.ok(czrzList);
}
service
List<Czrz> FuzzyQuery(Date startTime, Date endTime, String zdfl, String czlx, String czjg, String fuzzyQuery);
serivceImpl
@Override
public List<Czrz> FuzzyQuery(Date startTime, Date endTime, String zdfl, String czlx, String czjg, String fuzzyQuery) {
/
//终端分类
ArrayList<Integer> zdflList = new ArrayList<>();
if (zdfl != null && !zdfl.equals("")) {
String[] split = zdfl.split(",");
for (String fl : split) {
zdflList.add(Integer.parseInt(fl));
}
}
//操作类型
ArrayList<Integer> czlxList = new ArrayList<>();
if (czlx != null && !czlx.equals("")) {
String[] split = czlx.split(",");
for (String lx : split) {
czlxList.add(Integer.parseInt(lx));
}
}
//操作结果
ArrayList<Integer> czjgList = new ArrayList<>();
if (czjg != null && !czjg.equals("")) {
String[] split = czjg.split(",");
for (String jg : split) {
czjgList.add(Integer.parseInt(jg));
}
}
List<Czrz> czrzList = czrzMapper.fuzzyQuery(startTime, endTime, zdflList, czlxList, czjgList, fuzzyQuery);
if (czrzList.size() > 0) {
return czrzList;
}
return null;
}
mapper
List<Czrz> fuzzyQuery(@Param("startTime") Date startTime,
@Param("endTime") Date endTime,
@Param("zdflList") ArrayList<Integer> zdflList,
@Param("czlxList") ArrayList<Integer> czlxList,
@Param("czjgList") ArrayList<Integer> czjgList,
@Param("fuzzyQuery") String fuzzyQuery);
xml
<select id="fuzzyQuery" resultMap="ControlledFileMap">
SELECT
*
FROM
tb_fw_czrz
WHERE 1 = 1
<if test="zdflList != null and zdflList.size()>0">
AND ZDFL IN
<foreach collection="zdflList" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="czlxList != null and czlxList.size()>0">
AND CZLX IN
<foreach collection="czlxList" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="czjgList != null and czjgList.size()>0">
AND CZJG IN
<foreach collection="czjgList" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="fuzzyQuery != null and fuzzyQuery != ''">
AND YHM like concat('%',#{fuzzyQuery},'%') OR DWMC like concat('%',#{fuzzyQuery},'%') OR ZDBS like concat('%',#{fuzzyQuery},'%')
</if>
<if test="startTime != null">
AND CZSJ <![CDATA[>=]]> #{startTime}
</if>
<if test="endTime != null">
AND CZSJ <![CDATA[<=]]> #{endTime}
</if>
order by CZSJ DESC
</select>