话说信息完整度那个bar

故事场景:
[size=large]为了让用户完善自己的信息,都会用户提供一个显示条,显示当前用户信息完整情况[/size]

[img]http://dl.iteye.com/upload/attachment/512532/a7af0e35-19d0-33e1-981b-1863e2c587c8.jpg[/img]

[size=medium]
解决方式有两种:[/size]

前段css什么的控制
如下:

<div class="PageMain mainMsg bottomMargin">
<p>信息完整度:<p><p class="progressBar"><strong style="left:${requestScope.degree};"></strong></p><p>${requestScope.degree}</p>
</div>


后台要去遍历下每个字段的情况,决定degree的情况到底如何,在遍历的时候当然还可以调整一些字段的权重,我直接copy的代码

/**貌似下面这个bean.getCmpName()!=null&&!bean.getCmpName().equals("")不够简洁,直接"".equals(bean.getxxx)**/
public String countInfoFullDegree(Bean bean){
if(bean==null){
return "0%";
}
int degree=0;
if(bean.getCmpName()!=null&&!bean.getCmpName().equals("")){
degree+=10;
}
if(bean.getCmpType()!=null&&!bean.getCmpType().equals("")){
degree+=10;
}
if(bean.getCmpPhone()!=null&&!bean.getCmpPhone().equals("")){
degree+=10;
}
if(bean.getCmpFax()!=null&&!bean.getCmpFax().equals("")){
degree+=5;
}
if(bean.getCmpEmail()!=null&&!bean.getCmpEmail().equals("")){
degree+=10;
}
if(bean.getCmpArea()!=null&&!bean.getCmpArea().equals("")){
degree+=10;
}
if(bean.getCmpZip()!=null&&!bean.getCmpZip().equals("")){
degree+=5;
}
if(bean.getCmpIntro()!=null&&!bean.getCmpIntro().equals("")){
degree+=10;
}
if(bean.getCmpUrl()!=null&&!bean.getCmpUrl().equals("")){
degree+=10;
}
if(bean.getCmpPic()!=null&&!bean.getCmpPic().equals("default.jpg")){
degree+=10;
}
if(bean.getCmpArea()!=null&&!bean.getCmpArea().equals("")){
degree+=10;
}
return degree+"%";
}


问题也出现了---->>>>>>
每个用户查看信息都要在后台这么遍历字段,性能不好,方式也不好

改进方式-->>前段不是要显示所有用户信息么,没有的字段为空,那么写个js在前面判断不就可以了,后台也不需要那个恶心的if判断

[size=medium]
此时,变化又出现了--->>[/size]
我们数据库里面有一张企业表,但是前台把这个表拆分了,分为企业基本信息,企业联系信息,企业详细信息

js的解决方式只是判断一个页面的字段,现在前面显示分为四个页面,但是信息完整度是以企业这张表来决定的,只能回归后台解决方式,但想想这个企业表字段那么多,后台不是要N个if判断,我勒个去,那不把人吓死
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值