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

📄 tradeservice.java

📁 基于J2EE技术的 电子购物商城系统
💻 JAVA
字号:

package dataservice;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.sql.Date;

import domain.Book;
import domain.Goods;
import domain.Trade;
import domain.User;

import oracle.jdbc.OracleTypes;

public class TradeService extends Service {

	public static void main(String[] args) {
		TradeService ts = new TradeService();
//		System.out.println(ts.getTradeTime("08010507221732296521171296385826552688663646922"));//时间不合法时,有异常需要处理
		ArrayList<Trade> trades = ts.getNotPayedTrades("05083224");
		System.out.println(trades.size());
//		Trade trade = trades.get(1);
//		System.out.println(trade.getGood().getId());
		
//		String errorMsg = ts.transferGood("lily", "05083224", "2008060516282005083224", 1);
		String errorMsg = ts.remit("05083224", "lily", 50);
		System.out.println(errorMsg);
		
		System.out.println(ts.getSucesTrades("05083224").size());
		
	}
	
	public String transferGood(String buyerId, String salerId, String goodId, int goodCount) {
		open();
		
		int isSuccessful = 0;
		String errorMsg = null;
		util.prepareCall("{ call transferGood(?, ?, ?, ?, ?, ?) }");
		util.setString(1, buyerId);
		util.setString(2, salerId);
		util.setString(3, goodId);
		util.setInt(4, goodCount);
		util.registerOutParameter(5, OracleTypes.NUMERIC);
		util.registerOutParameter(6, OracleTypes.VARCHAR);
		util.execute();
		isSuccessful = util.getInt(5);
		errorMsg = util.getErrorMsg() + util.getString(6);
		
		close();
		
		if (isSuccessful == 1)
			return null;
		else
			return errorMsg;
	}
	
	public String transferBook(String buyerId, String salerId, String bookId, int bookCount) {
		open();
		
		int isSuccessful = 0;
		String errorMsg = null;
		util.prepareCall("{ call transferBook(?, ?, ?, ?, ?, ?) }");
		util.setString(1, buyerId);
		util.setString(2, salerId);
		util.setString(3, bookId);
		util.setInt(4, bookCount);
		util.registerOutParameter(5, OracleTypes.NUMERIC);
		util.registerOutParameter(6, OracleTypes.VARCHAR);
		util.execute();
		isSuccessful = util.getInt(5);
		errorMsg = util.getErrorMsg() + util.getString(6);
		
		close();
		
		if (isSuccessful == 1)
			return null;
		else
			return errorMsg;
	}
	
	public String remit(String fromUserId, String toUserId, double balance) {
		open();
		
		int isSuccessful = 0;
		String errorMsg = null;
		util.prepareCall("{ call remit(?, ?, ?, ?, ?) }");
		util.setString(1, fromUserId);
		util.setString(2, toUserId);
		util.setDouble(3, balance);
		util.registerOutParameter(4, OracleTypes.NUMERIC);
		util.registerOutParameter(5, OracleTypes.VARCHAR);
		util.execute();
		isSuccessful = util.getInt(4);
		errorMsg = util.getErrorMsg() + util.getString(5);
		
		close();
		
		if (isSuccessful == 1)
			return null;
		else
			return errorMsg;
	}
	
	public String newTrade(String listId, String buyerId, String salerId,
			String goodId, int goodCount, String goodType) {
		open();
		
		int isSuccessful = 0;
		String errorMsg = null;
		util.prepareCall("{ call newTrade(?, ?, ?, ?, ?, ?, ?, ?) }");
		util.setString(1, listId);
		util.setString(2, buyerId);
		util.setString(3, salerId);
		util.setString(4, goodId);
		util.setInt(5, goodCount);
		util.setString(6, goodType);
		util.registerOutParameter(7, OracleTypes.NUMERIC);
		util.registerOutParameter(8, OracleTypes.VARCHAR);
		util.execute();
		isSuccessful = util.getInt(7);
		errorMsg = util.getErrorMsg() + util.getString(8);
		
		close();
		
		if (isSuccessful == 1)
			return null;
		else
			return errorMsg;
	}
	
	public String setTradeSuccessful(String tradeId) {
		open();
		
		int isSuccessful = 0;
		String errorMsg = null;
		util.prepareCall("{ call setTradeSuccessful(?, ?, ?) }");
		util.setString(1, tradeId);
		util.registerOutParameter(2, OracleTypes.NUMERIC);
		util.registerOutParameter(3, OracleTypes.VARCHAR);
		util.execute();
		isSuccessful = util.getInt(2);
		errorMsg = util.getErrorMsg() + util.getString(3);
		
		close();
		
		if (isSuccessful == 1)
			return null;
		else
			return errorMsg;
	}
	
	public String setListSuccessful(String listId) {
		open();
		
		int isSuccessful = 0;
		String errorMsg = null;
		util.prepareCall("{ call setListSuccessful(?, ?, ?) }");
		util.setString(1, listId);
		util.registerOutParameter(2, OracleTypes.NUMERIC);
		util.registerOutParameter(3, OracleTypes.VARCHAR);
		util.execute();
		isSuccessful = util.getInt(2);
		errorMsg = util.getErrorMsg() + util.getString(3);
		
		close();
		
		if (isSuccessful == 1)
			return null;
		else
			return errorMsg;
	}
	
	public Trade getTrade(String tradeId) {
		Trade trade = new Trade();
		trade.setId(tradeId);
		User buyer = new User();
		User saler = new User();
		Goods goods = new Goods();
		Book book = new Book();
		open();
		
		util.prepareCall("{ ? = call getTradeInfo(?) }");
		util.registerOutParameter(1, OracleTypes.CURSOR);
		util.setString(2, tradeId);
		util.execute();
		ResultSet rs = util.getResultSet(1);
		try {
			if(rs.next()) {
				trade.setListId(rs.getString(2));
				buyer.setId(rs.getString(3));
				trade.setBuyer(buyer);
				saler.setId(rs.getString(4));
				trade.setSaler(saler);
				if (rs.getString(7).trim().equals("普通商品")) {
					goods.setId(rs.getString(5));
					trade.setGood(goods);
				}
				else if (rs.getString(7).trim().equals("图书")) {
					book.setId(rs.getString(5));
					trade.setGood(goods);
				}
				trade.setGoodCount(rs.getInt(6));
				if (rs.getInt(8) == 0)
					trade.setPayed(false);
				else if (rs.getInt(8) == 1)
					trade.setPayed();
				if (rs.getInt(9) == 0)
					trade.setSuccessful(false);
				else if (rs.getInt(9) == 1)
					trade.setSuccessful();
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			close();
		}
		return trade;
	}
	
	public Date getTradeTime(String tradeId) {
		Date date = null;
		open();
		
		util.prepareCall("{ ? = call getTradeTime(?) }");
		util.registerOutParameter(1, OracleTypes.DATE);
		util.setString(2, tradeId);
		util.execute();
		date = util.getDate(1);
		close();
		return date;
	}
	
	public ArrayList<Trade> getPayedTrades(String userId) {
		ArrayList<Trade> list = new ArrayList<Trade>();
		open();
		
		util.prepareCall("{ ? = call getPayedTrades(?) }");
		util.registerOutParameter(1, OracleTypes.CURSOR);
		util.setString(2, userId);
		util.execute();
		ResultSet rs = util.getResultSet(1);
		try {
			while(rs.next()) {
				Trade trade = new Trade();
				User buyer = new User();
				User saler = new User();
				Goods goods = new Goods();
				Book book = new Book();
				trade.setId(rs.getString(1));
				trade.setListId(rs.getString(2));
				buyer.setId(rs.getString(3));
				trade.setBuyer(buyer);
				saler.setId(rs.getString(4));
				trade.setSaler(saler);
				if (rs.getString(7).trim().equals("普通商品")) {
					goods.setId(rs.getString(5));
					trade.setGood(goods);
				}
				else if (rs.getString(7).trim().equals("图书")) {
					book.setId(rs.getString(5));
					trade.setGood(book);
				}
				trade.setGoodCount(rs.getInt(6));
				trade.setPayed();
				if (rs.getInt(9) == 0)
					trade.setSuccessful(false);
				else if (rs.getInt(9) == 1)
					trade.setSuccessful();
				
				list.add(trade);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			close();
		}
		return list;
	}
	
	public ArrayList<Trade> getNotPayedTrades(String userId) {
		ArrayList<Trade> list = new ArrayList<Trade>();
		open();
		
		util.prepareCall("{ ? = call getNotPayedTrades(?) }");
		util.registerOutParameter(1, OracleTypes.CURSOR);
		util.setString(2, userId);
		util.execute();
		ResultSet rs = util.getResultSet(1);
		try {
			while(rs.next()) {
				Trade trade = new Trade();
				User saler = new User();
				User buyer = new User();
				Goods goods = new Goods();
				Book book = new Book();
				trade.setId(rs.getString(1));
				trade.setListId(rs.getString(2));
				buyer.setId(rs.getString(3));
				trade.setBuyer(buyer);
				saler.setId(rs.getString(4));
				trade.setSaler(saler);
				if (rs.getString(7).trim().equals("普通商品")) {
					goods.setId(rs.getString(5));
					trade.setGood(goods);
				}
				else if (rs.getString(7).trim().equals("图书")) {
					book.setId(rs.getString(5));
					trade.setGood(book);
				}
				trade.setGoodCount(rs.getInt(6));
				trade.setPayed(false);
				if (rs.getInt(9) == 0)
					trade.setSuccessful(false);
				else if (rs.getInt(9) == 1)
					trade.setSuccessful();
				
				list.add(trade);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			close();
		}
		return list;
	}
	
	public ArrayList<Trade> getSucesTrades(String userId) {
		ArrayList<Trade> list = new ArrayList<Trade>();
		open();
		
		util.prepareCall("{ ? = call getSucesTrades(?) }");
		util.registerOutParameter(1, OracleTypes.CURSOR);
		util.setString(2, userId);
		util.execute();
		ResultSet rs = util.getResultSet(1);
		try {
			while(rs.next()) {
				Trade trade = new Trade();
				User buyer = new User();
				User saler = new User();
				Goods goods = new Goods();
				Book book = new Book();
				trade.setId(rs.getString(1));
				trade.setListId(rs.getString(2));
				buyer.setId(rs.getString(3));
				trade.setBuyer(buyer);
				saler.setId(rs.getString(4));
				trade.setSaler(saler);
				if (rs.getString(7).trim().equals("普通商品")) {
					goods.setId(rs.getString(5));
					trade.setGood(goods);
				}
				else if (rs.getString(7).trim().equals("图书")) {
					book.setId(rs.getString(5));
					trade.setGood(goods);
				}
				trade.setGoodCount(rs.getInt(6));
				if (rs.getInt(8) == 0)
					trade.setPayed(false);
				else if (rs.getInt(8) == 1)
					trade.setPayed();
				trade.setSuccessful();
				
				list.add(trade);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			close();
		}
		return list;
	}
	
	public ArrayList<Trade> getNotSucesTrades(String userId) {
		ArrayList<Trade> list = new ArrayList<Trade>();
		open();
		
		util.prepareCall("{ ? = call getNotSucesTrades(?) }");
		util.registerOutParameter(1, OracleTypes.CURSOR);
		util.setString(2, userId);
		util.execute();
		ResultSet rs = util.getResultSet(1);
		try {
			while(rs.next()) {
				Trade trade = new Trade();
				User buyer = new User();
				User saler = new User();
				Goods goods = new Goods();
				Book book = new Book();
				trade.setId(rs.getString(1));
				trade.setListId(rs.getString(2));
				buyer.setId(rs.getString(3));
				trade.setBuyer(buyer);
				saler.setId(rs.getString(4));
				trade.setSaler(saler);
				if (rs.getString(7).trim().equals("普通商品")) {
					goods.setId(rs.getString(5));
					trade.setGood(goods);
				}
				else if (rs.getString(7).trim().equals("图书")) {
					book.setId(rs.getString(5));
					trade.setGood(goods);
				}
				trade.setGoodCount(rs.getInt(6));
				if (rs.getInt(8) == 0)
					trade.setPayed(false);
				else if (rs.getInt(8) == 1)
					trade.setPayed();
				trade.setSuccessful(false);
				
				list.add(trade);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			close();
		}
		return list;
	}
	
	public String setPayed(String tradeId) {
		open();
		
		int isSuccessful = 0;
		String errorMsg = null;
		util.prepareCall("{ call setPayed(?, ?, ?) }");
		util.setString(1, tradeId);
		util.registerOutParameter(2, OracleTypes.NUMERIC);
		util.registerOutParameter(3, OracleTypes.VARCHAR);
		util.execute();
		isSuccessful = util.getInt(2);
		errorMsg = util.getErrorMsg() + util.getString(3);
		
		close();
		
		if (isSuccessful == 1)
			return null;
		else
			return errorMsg;
	}
}

⌨️ 快捷键说明

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