很多时候,我们需要从数据库里面查询出数据,显示在列表页面,但是,有时候会出现类似于审核状态,客户状态这样的字段,1对应待审核,2对应审核中,3对应审核通过,4对应审核失败,数据库存储的是1,2,3,4,列表显示的页面需要显示:待审核,审核中,审核通过,审核失败····这就需要我们人为地进行一点转换;
最近做的这个转换,可以通过两种方法:
1)在实体类中加上一个字段,对应为statusValue,状态属性,
在他的setter和getter中进行字段值的转换,代码如下:
【客户实体类】:CustomerVo.java
//客户状态:1、已立项;2、沟通中;3、已报卷;4、已上线;5、合作中止;
private Integer status;
//客户状态属性--下拉列表新增的属性字段
private String statusValue;
public String getStatusValue() {
if(status==1){
statusValue="已立项";
}
if(status==2){
statusValue="沟通中";
}
if(status==3){
statusValue="已报卷";
}
if(status==4){
statusValue="已上线";
}
if(status==5){
statusValue="合作中止";
}
return statusValue;
}
public void setStatusValue(String statusValue) {
if(statusValue.equals("已立项")){
status=1;
}
if(statusValue.equals("沟通中")){
status=2;
}
if(statusValue.equals("已报卷")){
status=3;
}
if(statusValue.equals("已上线")){
status=4;
}
if(statusValue.equals("合作中止")){
status=5;
}
this.statusValue = statusValue;
}
然后在对应的customer.js中的Field,加上这个statusValue,并且设置status的hidden为true;
{field:’status’,title:’客户状态’, width:’7%’, align:’center’,hidden:true}
第二种方法:
直接在js中添加,不用再Vo实体类里面做转换,代码如下:
{field:'status',title:'客户状态', width:'7%', align:'center',//hidden:true,
formatter : function(value) {
if(value==1){
return "已立项";
}if(value==2){
return "沟通中";
}if(value==3){
return "已报卷";
}if(value==4){
return "已上线";
}if(value==5){
return "合作中止";
}
return "";
}
},