⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 orderserviceimpl.java

📁 该系统的主要功能是
💻 JAVA
字号:
package com.laoniu.service.impl;

import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import java.util.Map.Entry;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

import com.laoniu.bean.Book;
import com.laoniu.bean.Orderform;
import com.laoniu.common.exception.CustomerServiceException;
import com.laoniu.common.exception.OrderServiceException;
import com.laoniu.common.transaction.HibernateTransaction;
import com.laoniu.common.transaction.Transaction;
import com.laoniu.dao.IOrderDao;
import com.laoniu.service.IOrderService;
import com.laoniu.common.BeanFactory;

public class OrderServiceImpl implements IOrderService {
	//删除订单
	public void delOrder(Long orderid) throws OrderServiceException {
		Orderform order=null;
		IOrderDao dao=(IOrderDao)BeanFactory.getBean(BeanFactory.ORDERDAO);
		Transaction tran=new HibernateTransaction();
		try {
			tran.beginTransaction();
			order=dao.findOrderById(orderid);
			//System.out.println(order.getId());
			if(order==null){
				throw new OrderServiceException("该订单已经被删除!");
			}
			dao.deleteOrder(order);
			tran.commit();
			
		} catch (Exception e) {
			tran.rollback();
			if(e instanceof CustomerServiceException)
			{
				throw (OrderServiceException)e;
			}else
			{
				e.printStackTrace();
			}
		}	
	}
	//查找某一订单
	public Orderform findOrderById(Long orderid) throws OrderServiceException {
		Orderform order=null;
		IOrderDao dao=(IOrderDao)BeanFactory.getBean(BeanFactory.ORDERDAO);
		Transaction tran=new HibernateTransaction();
		try {
			tran.beginTransaction();
			order=dao.findOrderById(orderid);
			if(order==null){
				throw new OrderServiceException("此订单不存在!");
			}
			tran.commit();
		} catch (Exception e) {
			tran.rollback();
			e.printStackTrace();
		}
		return order;
	}
	//获得图书清单
	public Map<Long, Book> listAllBook() throws OrderServiceException {
		IOrderDao dao=(IOrderDao)BeanFactory.getBean(BeanFactory.ORDERDAO);
		Transaction tran=new HibernateTransaction();
		Map<Long,Book> map=null;
		try {
			tran.beginTransaction();
			map=dao.findAllBook();
			tran.commit();
		} catch (Exception e) {
			tran.rollback();
			throw new OrderServiceException("系统忙,请稍候查询!");
		}
		return map;
	}
	//获得订单清单
	public Map<Long, Orderform> listAllOrder(Long customerid)
			throws OrderServiceException {
		
		IOrderDao dao=(IOrderDao)BeanFactory.getBean(BeanFactory.ORDERDAO);
		Transaction tran=new HibernateTransaction();
		Map<Long,Orderform> map=null;
		try {
			tran.beginTransaction();
			map=dao.findAllOrder(customerid);
			
			System.out.println(map.isEmpty());
			if(null==map){
				throw new OrderServiceException("对不起,您还没有下过订单!");
			}
			tran.commit();
		} catch (Exception e) {
			tran.rollback();
			throw new OrderServiceException("系统忙,请稍候查询!");
		}
		return map;
	}
	//保存一个订单
	public void saveOrder(Orderform order) throws OrderServiceException {
		IOrderDao dao=(IOrderDao)BeanFactory.getBean(BeanFactory.ORDERDAO);
		Transaction tran=new HibernateTransaction();
		try {
			tran.beginTransaction();
			dao.saveOrder(order);
			tran.commit();
		} catch (Exception e) {
			tran.rollback();
			e.printStackTrace();
		}

	}
	public Map<Long, Orderform> listAllorder() throws OrderServiceException 
	{
		HibernateTransaction tran=new HibernateTransaction();
		tran.beginTransaction();
		IOrderDao orderDao=(IOrderDao)BeanFactory.getBean(BeanFactory.ORDERDAO);
		Map<Long,Orderform> orders=null;
		try {
			orders=orderDao.listAllOrder();
			tran.commit();
		} catch (Exception e) {
			e.printStackTrace();
			tran.rollback();
			throw new OrderServiceException("对不起,无法查找全部订单!");
		}
		return orders;
	}
	//分页函数
	/*
	 * map 为所有订单的集合
	 * num 为当前页显示的数量
	 * currentPage 当前页的页数
	 * */
	public  List<Orderform> searchOrder(Map<Long, Orderform> map, int num, int currentPage) throws OrderServiceException {
	// TODO Auto-generated method stub
		List<Orderform> sublist=null;
		//初始值
		int startValue=0;
		//末位值
		int endValue=0;
		List<Orderform> list=new ArrayList<Orderform>();
		for(Object o : map.values()){
			Orderform order=(Orderform)o;
			list.add(order);
		}
		//suoyouyuanshu de shuliang
		int size=list.size();
		//page shu
		int pages=size/num;
		//yushu
		int mod=size%num;
		
		if(size<num){
			sublist=list.subList(0, size);
		}else if(currentPage<=pages){
			sublist=list.subList((currentPage-1)*num, (currentPage-1)*num+num);
		}else{
			sublist=list.subList(pages*num,pages*num+mod);
		}
		return sublist;
	}
	public void deleteBook(Long bookid) throws OrderServiceException {
		HibernateTransaction tran=new HibernateTransaction();
		tran.beginTransaction();
		IOrderDao orderDao=(IOrderDao)BeanFactory.getBean(BeanFactory.ORDERDAO);
		try {
			tran.beginTransaction();
			orderDao.deleteBook(bookid);
			tran.commit();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			tran.rollback();
		}
	}
	public void addBook(String name, Double price) throws OrderServiceException {
		HibernateTransaction tran=new HibernateTransaction();
		tran.beginTransaction();
		IOrderDao orderDao=(IOrderDao)BeanFactory.getBean(BeanFactory.ORDERDAO);
		try{
			Book book=new Book();
			book.setName(name);
			book.setPrice(price);
			orderDao.addBook(book);
			tran.commit();
		}catch(Exception e)
		{
			e.printStackTrace();
			tran.rollback();
			throw new OrderServiceException(e.getMessage());
		}
	}
	//tushu fenye 
	public  List<Book> searchBook(Map<Long, Book> map, int num, int currentPage) throws OrderServiceException {
		// TODO Auto-generated method stub
		List<Book> sublist=null;
		//初始值
		int startValue=0;
		//末位值
		int endValue=0;
		List<Book> list=new ArrayList<Book>();
		for(Object o : map.values()){
			Book book=(Book)o;
			list.add(book);
		}
		//suoyouyuanshu de shuliang
		int size=list.size();
		//page shu
		int pages=size/num;
		//yushu
		int mod=size%num;
		
		if(size<num){
			sublist=list.subList(0, size);
		}else if(currentPage<=pages){
			sublist=list.subList((currentPage-1)*num, (currentPage-1)*num+num);
		}else{
			sublist=list.subList(pages*num,pages*num+mod);
		}
		return sublist;
		}
	/*public static void main(String args[]){
		Map<Long,Book> map=null;   
		OrderServiceImpl os=new OrderServiceImpl();  
		try {
			map=os.listAllBook();
			for(Entry entry  : map.entrySet()){
				System.out.println(entry.getKey());
				System.out.println(entry.getValue());
			}
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}   
		
		   
	
	}*/

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -