两个类型判断查询三个值
一个“is_confirm”(状态)字段,数据库中的数据是0(未确认),1(已确认),2(已取消)。
展示下拉框选择只有两种类型:0(未处理),1(已处理:已确认和已取消归为一类)。
刚开始我写的时候,是想要在js中去判断,但是没有用(可能因为我比较菜),点击“已处理”只能查询出“已确认”的数据。
所以我是在SQL语句中去判断,但是也出现了问题,同一个字段作为条件多次,内容为空。后来百度查到,是要在后面加上“.toString()”,不然把它当作数字去处理,所以会查不出数据。
<where>
<if
test="isConfirm !=null and isConfirm !='' and isConfirm =='0'.toString()">
and p.is_confirm = #{isConfirm,jdbcType=VARCHAR}
</if>
<if
test="isConfirm !=null and isConfirm !='' and isConfirm == '1'.toString()">
and (p.is_confirm ='1' or p.is_confirm ='2')
</if>
</where>
js中初始化字段,这样写就可以啦
{
"title" : "状态",
"data" : "is_confirm",
"render" : function(data){
if (data == "0") {
data = "未处理";
return data;
}
if (data == "1" || data == "2") {
data = "已处理";
return data;
}
}