?? userinfoseviceimp.java
字號(hào):
package com.laoer.bbscs.business.service;
import com.laoer.bbscs.business.IUserInfoService;
import com.laoer.bbscs.bean.UserInfo;
import com.laoer.bbscs.dao.IUserInfoDAO;
import com.laoer.bbscs.sys.*;
import com.laoer.comm.util.*;
import org.apache.struts.upload.*;
import java.util.*;
import java.io.*;
/**
* <p>Title: TianYi BBS</p>
* <p>Description: TianYi BBS System</p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: LAOER.COM/TIANYISOFT.NET</p>
* @author laoer
* @version 6.0
*/
public class UserInfoSeviceImp
implements IUserInfoService {
private IUserInfoDAO userInfoDAO;
private UserFileInPostCache userFileInPostCache;
public UserInfoSeviceImp() {
}
public IUserInfoDAO getUserInfoDAO() {
return this.userInfoDAO;
}
public void setUserInfoDAO(IUserInfoDAO userInfoDAO) {
this.userInfoDAO = userInfoDAO;
}
public UserFileInPostCache getUserFileInPostCache() {
return this.userFileInPostCache;
}
public void setUserFileInPostCache(UserFileInPostCache userFileInPostCache) {
this.userFileInPostCache = userFileInPostCache;
}
public UserInfo saveUserInfo(UserInfo userinfo) {
return getUserInfoDAO().saveUserInfo(userinfo);
}
public UserInfo findUserInfoById(Long id) {
return getUserInfoDAO().findUserInfoById(id);
}
public UserInfo findUserInfoByUserName(String username) {
return getUserInfoDAO().findUserInfoByUserName(username);
}
public UserInfo findUserInfoByEmail(String email) {
return this.getUserInfoDAO().findUserInfoByEmail(email);
}
public UserInfo findUserInfoByPasswd(String username, String passwd) {
return this.getUserInfoDAO().findUserInfoByPasswd(username, passwd);
}
public Result regUser(UserInfo userinfo) {
if (this.findUserInfoByUserName(userinfo.getUsername()) != null) {
return new Result(false, "error.reg.name1");
}
if (!SysInfo.getInstance().getUsepass().equals("y")) {
if (this.findUserInfoByEmail(userinfo.getEmail()) != null) {
return new Result(false, "error.reg.emailerror");
}
}
userinfo = this.saveUserInfo(userinfo);
if (userinfo == null) {
return new Result(false, "error.reg.createrror");
}
return new Result(true, "reg.regok", userinfo);
}
public void createUserFileInPost(UserInfo userinfo) {
StringBuffer sb = new StringBuffer();
if (userinfo.getHavePic() == 1) {
sb.append("<a href='");
sb.append(SysUtil.getUserFileWebPath(userinfo.getUsername(),
userinfo.getId().longValue()));
sb.append(userinfo.getPicFileName());
sb.append("' target='_blank'><img src='");
sb.append(SysUtil.getUserFileWebPath(userinfo.getUsername(),
userinfo.getId().longValue()));
sb.append(userinfo.getPicFileName());
sb.append("' id='ppic_");
sb.append(userinfo.getId());
sb.append("' name='ppic_");
sb.append(userinfo.getId());
sb.append("' border='0' class='PIC1' ");
sb.append("width='");
sb.append(SysInfo.getInstance().getFacewith());
sb.append("' height='");
sb.append(SysInfo.getInstance().getFacehigh());
sb.append("'>");
/*
sb.append("onload='javascript:if(this.width>");
sb.append(SysInfo.getInstance().getFacewith());
sb.append("){this.width=");
sb.append(SysInfo.getInstance().getFacewith());
sb.append("}if(this.height>");
sb.append(SysInfo.getInstance().getFacehigh());
sb.append("){this.height=");
sb.append(SysInfo.getInstance().getFacehigh());
sb.append("}'>");*/
sb.append("</a><br><br>");
}
sb.append("#level#:" +
SysUtil.getUserLevel(userinfo.getExp()).getName() +
"<br>");
sb.append("#article#:" + userinfo.getArticleNum() +
"<br>");
sb.append("#score#:" + userinfo.getExp() + "<br>");
sb.append("#from#:" + userinfo.getUserFrom() + "<br>");
sb.append("#register#:" +
Util.formatDate(new Date(userinfo.getRegTime())));
FileIO.writeFile(sb.toString(),
SysUtil.getUserFilePath(userinfo.getUsername(),
userinfo.getId().longValue()) +
Constant.USERPOSTFILE, Constant.CHARSET);
this.getUserFileInPostCache().removeUserFileInPostFromCache(userinfo.getId().
longValue());
}
public void createUserSignFile(UserInfo userinfo) {
StringBuffer sb = new StringBuffer();
if (userinfo.getSignName1() != null && userinfo.getSignName1().length() > 0 &&
userinfo.getSignDetail1() != null &&
userinfo.getSignDetail1().length() > 0) {
sb.append("<input type=\"radio\" name=\"sign\" value=\"" +
Util.escapeForSpecial(Util.replaceBr(userinfo.getSignDetail1())) +
"\">" + userinfo.getSignName1() + " ");
}
if (userinfo.getSignName2() != null && userinfo.getSignName2().length() > 0 &&
userinfo.getSignDetail2() != null &&
userinfo.getSignDetail2().length() > 0) {
sb.append("<input type=\"radio\" name=\"sign\" value=\"" +
Util.escapeForSpecial(Util.replaceBr(userinfo.getSignDetail2())) +
"\">" + userinfo.getSignName2() + " ");
}
if (userinfo.getSignName3() != null && userinfo.getSignName3().length() > 0 &&
userinfo.getSignDetail3() != null &&
userinfo.getSignDetail3().length() > 0) {
sb.append("<input type=\"radio\" name=\"sign\" value=\"" +
Util.escapeForSpecial(Util.replaceBr(userinfo.getSignDetail3())) +
"\">" + userinfo.getSignName3() + " ");
}
FileIO.writeFile(sb.toString(),
SysUtil.getUserFilePath(userinfo.getUsername(),
userinfo.getId().longValue()) +
Constant.USERSIGNFILE, Constant.CHARSET);
}
public String createUserUpImgFile(UserInfo userinfo, FormFile upfile) {
if (userinfo.getHavePic() == 1) {
File f = new File(SysUtil.getUserFilePath(userinfo.getUsername(),
userinfo.getId().longValue()) +
userinfo.getPicFileName());
if (f.exists()) {
f.delete();
}
}
String picFileName = String.valueOf(userinfo.getId()) +
String.valueOf(Util.getLongTime()) +
SysUtil.getFileExt(upfile.getFileName());
SysUtil.saveUpFile(SysUtil.getUserFilePath(userinfo.
getUsername(),
userinfo.getId().longValue()) +
picFileName, upfile);
return picFileName;
/*
try {
InputStream stream = upfile.getInputStream();
OutputStream bos = new FileOutputStream(SysUtil.getUserFilePath(userinfo.
getUsername(), userinfo.getId().longValue()) + picFileName);
int bytesRead = 0;
byte[] buffer = new byte[8192];
while ( (bytesRead = stream.read(buffer, 0, 8192)) != -1) {
bos.write(buffer, 0, bytesRead);
}
bos.close();
return picFileName;
}
catch (Exception e) {
return null;
}*/
}
public UserInfo delUserPic(UserInfo userinfo) {
if (userinfo.getHavePic() == 1) {
File f = new File(SysUtil.getUserFilePath(userinfo.getUsername(),
userinfo.getId().longValue()) +
userinfo.getPicFileName());
if (f.exists()) {
f.delete();
}
userinfo.setHavePic( (short) 0);
userinfo.setPicFileName("");
userinfo = this.saveUserInfo(userinfo);
if (userinfo != null) {
this.createUserFileInPost(userinfo);
}
}
return userinfo;
}
public UserInfo userAtLongin(UserInfo userinfo) {
if (userinfo.getLoginTime() != userinfo.getLogoutTime()) {
long nstaytime = SysUtil.getLongTime() - userinfo.getLogoutTime();
UserLevel ul = SysUtil.getUserLevel(userinfo.getExp());
short hfpower = (short) (ul.getHpower() * (nstaytime / 3600000) / 12);
if ( (hfpower + userinfo.getPower()) >= ul.getHpower()) {
userinfo.setPower( (short) ul.getHpower());
}
else {
userinfo.setPower( (short) (userinfo.getPower() + hfpower));
}
if (SysUtil.getLongTime() - userinfo.getLoginTime() >
SysInfo.getInstance().getLogindistance() * 60000) {
userinfo.setLoginTimes(userinfo.getLoginTimes() + 1);
}
}
long atime = SysUtil.getLongTime();
userinfo.setLastLoginTime(userinfo.getLoginTime());
userinfo.setLoginTime(atime);
userinfo.setLogoutTime(atime);
userinfo = this.getUserInfoDAO().saveUserInfo(userinfo);
return userinfo;
}
public UserInfo doExp(UserInfo userinfo) {
userinfo.setExp( (int) ( (userinfo.getLoginTimes() / 4) +
userinfo.getArticleNum() +
(userinfo.getStayTime() / 3600000) +
userinfo.getExpression()));
return this.getUserInfoDAO().saveUserInfo(userinfo);
}
public int getFriendNum(UserInfo userinfo) {
if (userinfo.getFriend() == null || userinfo.getFriend().length() == 0) {
return 0;
}
else {
String f[] = userinfo.getFriend().split(",");
return f.length;
}
}
public List getFriendList(UserInfo userinfo) {
List l = new ArrayList();
if (userinfo.getFriend() == null || userinfo.getFriend().length() == 0) {
l.add(new Long(0));
return l;
}
else {
String f[] = userinfo.getFriend().split(",");
for (int i = 0; i < f.length; i++) {
l.add(new Long(Long.parseLong(f[i])));
}
return l;
}
}
public PageList findUserInfoList(String orderby, String ascordesc,
Pages pages) {
//return this.getUserInfoDAO().findUserInfoList(orderby, ascordesc, pages);
PageList pl = new PageList();
if (pages.getTotals() == -1) {
pages.setTotals(this.getAllUserNum());
}
pages.doPageBreak();
List l = this.getUserInfoDAO().findUserInfoList(orderby, ascordesc,
pages.getSpage(), pages.getPerPageNum());
pl.setObjectList(l);
pl.setPageShowString(pages.getListPageBreak());
pl.setPages(pages);
return pl;
}
public int getAllUserNum() {
return getUserInfoDAO().getAllUserNum();
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -