☰
java定义布尔值不要以isXX开头,与前端入参接收不一致
2026/10/14 7:53:48 网站建设 项目流程


@ApiModelProperty(“false = 首次加载/默认参数;true = 用户主动点击过筛选”)
private boolean isUserFiltered;

<if test="!reqDto.isUserFiltered()"> <if test="(reqDto.clueOwners != null and reqDto.clueOwners.size()>0) or (reqDto.userIds != null and reqDto.userIds.size()>0)"> AND ( <if test="reqDto.clueOwners != null and reqDto.clueOwners.size()>0"> status.clue_owner IN <foreach collection="reqDto.clueOwners" item="uid" open="(" separator="," close=")"> #{uid} </foreach> </if> <if test="reqDto.clueOwners != null and reqDto.clueOwners.size()>0 and reqDto.userIds != null and reqDto.userIds.size()>0"> OR </if> <if test="reqDto.userIds != null and reqDto.userIds.size()>0"> trial.create_by IN <foreach collection="reqDto.userIds" item="uid" open="(" separator="," close=")"> #{uid} </foreach> </if> ) </if> </if> <!-- 分支2:用户点击筛选后 isUserFiltered=true:创建人 AND 跟进人【交集】 --> <if test="reqDto.isUserFiltered()"> <if test="reqDto.userIds != null and reqDto.userIds.size()>0"> AND trial.create_by IN <foreach collection="reqDto.userIds" item="uid" open="(" separator="," close=")"> #{uid} </foreach> </if> <if test="reqDto.clueOwners != null and reqDto.clueOwners.size()>0"> AND status.clue_owner IN <foreach collection="reqDto.clueOwners" item="uid" open="(" separator="," close=")"> #{uid} </foreach> </if> </if>

当前端传isUserFiltered: true时,仍然进入分支 1,原因是 Controller 接收到的isUserFiltered=false,即isUserFiltered()=false,而userFiltered=true。
建议在字段上补充注解:
@JsonProperty(“isUserFiltered”)
@ApiModelProperty(“false = 首次加载/默认参数;true = 用户主动点击过筛选”)
private boolean isUserFiltered;

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询