【Java开源代码栏目提醒】:本文主要为网学会员提供BookBLogic.java,希望对需要BookBLogic.java网友有所帮助,学习一下!
package com.lib.logic;
import com.lib.dao.HbmDAO;
import com.lib.actionform.BookBLActionForm;
import java.util.List;
import com.lib.vo.BookBL;
import com.lib.assistvo.BookBLStr;
import com.lib.vo.Book;
import com.lib.vo.Reader;
import java.util.*;
import com.lib.util.TimeUtil;
import com.lib.dao.DAOException;
import com.lib.assistvo.Pair;
public class BookBLogic {
private HbmDAO dao;
private BookBLActionForm form;
public BookBLogic() {
dao = new HbmDAO();
dao.setAutoClose(false);
}
public void getBookBLs()
{
form.getBookbls().clear();
System.out.println("=========================1111");
String str = "from BookBL";
List bookbls = dao.list(str);
System.out.println("size===========" + bookbls.size());
for (Iterator iter = bookbls.iterator(); iter.hasNext(); ) {
BookBL item = (BookBL)iter.next();
BookBLStr bl = new BookBLStr();
bl.setBookbluid(item.getBlUID());
bl.setBookuid(item.getBook().getBookUID());
bl.setBookname(item.getBook().getBookName());
bl.setOccurdate(TimeUtil.date2String(item.getOccurDate()));
bl.setQty(item.getQty().toString());
bl.setReadername(item.getReader().getReaderName());
bl.setReaderuid(item.getReader().getReaderUID());
bl.setReturndate(TimeUtil.date2String(item.getReturnDate()));
bl.setType(item.getBlType());
form.getBookbls().add(bl);
}
System.out.println("size===========" + form.getBookbls().size());
}
public void getBookBLs(Long uid)
{
String str = "select bl from BookBL as bl where bl.reader=?";
List bookbls = dao.list(str,uid.toString());
System.out.println("size===========" + bookbls.size());
for (Iterator iter = bookbls.iterator(); iter.hasNext(); ) {
BookBL item = (BookBL)iter.next();
BookBLStr bl = new BookBLStr();
bl.setBookbluid(item.getBlUID());
bl.setBookuid(item.getBook().getBookUID());
bl.setBookname(item.getBook().getBookName());
bl.setOccurdate(TimeUtil.date2String(item.getOccurDate()));
bl.setQty(item.getQty().toString());
bl.setReadername(item.getReader().getReaderName());
bl.setReaderuid(item.getReader().getReaderUID());
bl.setReturndate(TimeUtil.date2String(item.getReturnDate()));
bl.setType(item.getBlType());
form.getBookbls().add(bl);
}
}
public void initReaders()
{
ArrayList pairs = new ArrayList();
String str = "from Reader";
List readers = dao.list(str);
System.out.println("=========" + readers.size());
for (Iterator iter = readers.iterator(); iter.hasNext(); ) {
Reader item = (Reader)iter.next();
Pair dp = new Pair();
dp.setTypeName(item.getReaderName());
dp.setTypeUID(item.getReaderUID());
pairs.add(dp);
}
form.setReaders(pairs);
}
public void initBooks()
{
ArrayList pairs = new ArrayList();
String str = "from Book";
List books = dao.list(str);
System.out.println("============" + books.size());
for (Iterator iter = books.iterator(); iter.hasNext(); ) {
Book item = (Book)iter.next();
Pair dp = new Pair();
dp.setTypeName(item.getBookName());
dp.setTypeUID(item.getBookUID());
pairs.add(dp);
}
form.setBooks(pairs);
}
public void addBookBL()
{
BookBLStr bookbl = new BookBLStr();
List books = dao.list("from Book");
List readers = dao.list("from Reader");
if(books.size()>0 && readers.size()>0)
{
Book book = (Book)books.get(0);
Reader reader=(Reader)readers.get(0);
bookbl.setBookbluid(null);
bookbl.setBookuid(book.getBookUID());
bookbl.setBookname(book.getBookName());
bookbl.setOccurdate("2004-12-17");
bookbl.setQty("0");
bookbl.setReturndate("2004-12-17");
bookbl.setReaderuid(reader.getReaderUID());
bookbl.setReadername(reader.getReaderName());
bookbl.setType(new Integer(1));
form.getBookbls().add(bookbl);
}
}
public void saveBookBL()
{
List bookbls = form.getBookbls();
for (Iterator iter = bookbls.iterator(); iter.hasNext(); ) {
BookBLStr item = (BookBLStr)iter.next();
BookBL bl = new BookBL();
try {
Book book = (Book)dao.retrieve(Book.class,item.getBookuid());
Reader reader=(Reader)dao.retrieve(Reader.class,item.getReaderuid());
if(item.getBookbluid().equals(new Long(0)))
{
bl.setBlUID(null);
if(item.getType().equals("1"))
{
bl.setBlType(new Integer(1));
book.setQty(new Integer(book.getQty().intValue()- new Integer(item.getQty()).intValue()));
reader.setQty(new Integer(r