?? frontserviceimpl.java
字號(hào):
package com.longtime.wap.module.front.service.impl;
import java.util.Date;
import java.util.List;
import com.longtime.wap.common.web.Page;
import com.longtime.wap.model.Information;
import com.longtime.wap.model.Payment;
import com.longtime.wap.model.UserInfo;
import com.longtime.wap.module.front.dao.BusinessDao;
import com.longtime.wap.module.front.dao.InformationDao;
import com.longtime.wap.module.front.dao.PaymentDao;
import com.longtime.wap.module.front.dao.UncommandWordDao;
import com.longtime.wap.module.front.dao.UserInfoDao;
import com.longtime.wap.module.front.service.FrontService;
/**
* 前端信息服務(wù)類實(shí)現(xiàn)
*
* @author bulc
* @date Nov 22, 2007
*/
public class FrontServiceImpl implements FrontService {
private InformationDao infoDao;
private UserInfoDao userDao;
private PaymentDao paymentDao;
private BusinessDao businessDao;
private UncommandWordDao uncommandWordDao;
/**
* 接受spring的注入,把dao對(duì)象注入到service中
*
* @param businessDao
* 設(shè)置業(yè)務(wù)dao
*/
public void setBusinessDao(BusinessDao businessDao) {
this.businessDao = businessDao;
}
/**
* 接受spring的注入,把dao對(duì)象注入到service中
*
* @param infoDao
* 設(shè)置信息dao
*/
public void setInfoDao(InformationDao infoDao) {
this.infoDao = infoDao;
}
/**
* 接受spring的注入,把dao對(duì)象注入到service中
*
* @param userDao
* 設(shè)置用戶dao
*/
public void setUserDao(UserInfoDao userDao) {
this.userDao = userDao;
}
/**
* 接受spring的注入,把dao對(duì)象注入到service中
*
* @param paymentDao
* 設(shè)置消費(fèi)dao
*/
public void setPaymentDao(PaymentDao paymentDao) {
this.paymentDao = paymentDao;
}
/**
* 接受spring的注入,把dao對(duì)象注入到service中
*
* @param uncommandWordDao
* 設(shè)置過(guò)濾字符dao
*/
public void setUncommandWordDao(UncommandWordDao uncommandWordDao) {
this.uncommandWordDao = uncommandWordDao;
}
/**
* 獲得信息對(duì)象
*
* @param id
* 信息編號(hào)
* @return 信息對(duì)象
*/
public Information getInfoById(long id) {
return this.infoDao.retrieveInfoById(new Long(id));
}
/**
* 列表顯示所有熱點(diǎn)信息
*
* @param page
* 分頁(yè)參數(shù)
* @return 熱點(diǎn)信息列表
*/
public List getInfosByIsHotAndIsPub(Page page) {
return this.infoDao.retrieveInfosByIsHotAndIsPub(page);
}
/**
* 列表顯示所有推薦信息
*
* @param page
* 分頁(yè)參數(shù)
* @return 推薦信息列表
*/
public List getInfosByIsRecommendAndIsPub(Page page) {
return infoDao.retrieveInfosByIsRecommendAndIsPub(page);
}
/**
* 列表顯示業(yè)務(wù)類別的信息
*
* @param category
* 業(yè)務(wù)類別
* @param page
* 分頁(yè)參數(shù)
* @return 業(yè)務(wù)類別信息對(duì)象
*/
public List getInfosByCategoryAndViewCount(int category, Page page) {
return infoDao.retrieveInfosByCategoryAndViewCount(
new Integer(category), page);
}
/**
* 列表顯示搜索的信息
*
* @param content
* 搜索內(nèi)容
* @param page
* 分頁(yè)參數(shù)
* @return 搜索信息對(duì)象
*/
public List getInfosByContent(String content, Page page) {
page.setTotalCount(infoDao.retrieveInfosCountByContent(content));
return infoDao.retrieveInfosByContent(content, page);
}
/**
* 獲取業(yè)務(wù)類別下的業(yè)務(wù)信息
*
* @param category
* 業(yè)務(wù)類別
* @param page
* 分頁(yè)參數(shù)
* @return 業(yè)務(wù)信息對(duì)象
*/
public List getBusinessesByCategory(int category, Page page) {
page.setTotalCount(businessDao.retrieveBusinessesCountByCategory(
new Integer(category)));
return businessDao.retrieveBusinessesByCategory(
new Integer(category), page);
}
/**
* 獲取業(yè)務(wù)信息
*
* @param page
* 分頁(yè)參數(shù)
* @return 業(yè)務(wù)信息對(duì)象
*/
public List getBusinesses(Page page) {
page.setTotalCount(businessDao.retrieveBusinessesCountByCategory(null));
return businessDao.retrieveBusinesses(page);
}
/**
* 通過(guò)用戶名來(lái)獲取用戶信息
*
* @param username
* 用戶名
* @return 用戶信息
*/
public UserInfo getUserByUsername(String username) {
List users = userDao.retrieveUserByName(username);
if (null == users || users.size() == 0) {
return null;
} else {
return (UserInfo)users.get(0);
}
}
/**
* 保存用戶信息
*
* @param user
* 用戶對(duì)象
*/
public void saveUser(UserInfo user) {
if (0 == user.getUserId()) {
userDao.createUser(user);
} else {
userDao.updateUser(user);
}
}
/**
* 獲取消費(fèi)信息對(duì)象
*
* @param userId
* 用戶id
* @param infoId
* 信息id
* @return 消費(fèi)信息對(duì)象
*/
public Payment getPaymentByUserIdAndInfoId(long userId, long infoId) {
List payments = paymentDao.retrievePaymentByUserIdAndInfoId(
new Long(userId), new Long(infoId));
if (null == payments || payments.size() < 1) {
return null;
} else {
return (Payment)payments.get(0);
}
}
/**
* 獲取用戶對(duì)象信息
*
* @param id
* 用戶id
* @return 用戶信息對(duì)象
*/
public UserInfo getUserById(long id) {
return (UserInfo)userDao.retrieveUserById(new Long(id));
}
/**
* 保存消費(fèi)記錄
*
* @param userId
* 用戶id
* @param infoId
* 信息id
*/
public void savePurchaseInfo(long userId, long infoId) {
// 減錢
UserInfo user = userDao.retrieveUserById(new Long(userId));
Information info = infoDao.retrieveInfoById(infoId);
if (user.getMoney() < info.getPrice()) {
throw new RuntimeException("您的余額不足,請(qǐng)您充值后購(gòu)買!");
}
user.setMoney(user.getMoney() - info.getPrice());
userDao.updateUser(user);
// 加payment
Payment payment = new Payment();
payment.setUserId(userId);
payment.setInformationId(infoId);
payment.setPayDate(new Date());
payment.setInformationTitle(info.getTitle());
payment.setInformationPrice(info.getPrice());
payment.setCpName(info.getBusiness().getCp().getCompanyName());
payment.setUserName(user.getUserName());
paymentDao.createPayment(payment);
// 加info購(gòu)買量
info.setPayCount(info.getPayCount() + 1);
infoDao.updateInfo(info);
}
/**
* 列表顯示業(yè)務(wù)目錄下的信息
*
* @param businessId
* 業(yè)務(wù)編號(hào)
* @param page
* 分頁(yè)參數(shù)
* @return 業(yè)務(wù)目錄下的信息對(duì)象
*/
public List getInfosByBusinessId(long businessId, Page page) {
page.setTotalCount(infoDao.retrieveInfosCountByBusinessId(
new Long(businessId)));
return infoDao.retrieveInfosByBusinessId(new Long(businessId), page);
}
/**
* 列表顯示用戶的消費(fèi)記錄
*
* @param userId
* 用戶id
* @param page
* 分頁(yè)參數(shù)
* @return 用戶消費(fèi)記錄列表
*/
public List getPaymentsByUserId(long userId, Page page) {
page.setTotalCount(paymentDao.retrievePaymentCountByUserId(
new Long(userId)));
return paymentDao.retrievePaymentByUserId(new Long(userId), page);
}
/**
* 獲得過(guò)濾字符信息對(duì)象
*
* @return 過(guò)濾字符信息對(duì)象
*/
public List getUncommandWords() {
return uncommandWordDao.retrieveUncommandWords();
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -