www.pudn.com > BeiJie.rar > WelfareOperation.java


package operation; 
 
 
import java.sql.Date; 
import java.sql.ResultSet; 
import java.sql.SQLException; 
import java.util.ArrayList; 
import java.util.Calendar; 
import java.util.Iterator; 
 
import dataBase.DataBase; 
import entity.EnterCheckView; 
 
public class WelfareOperation 
{ 
	private ResultSet rs; 
	private DataBase db; 
	public WelfareOperation() 
	{ 
		db=new DataBase(); 
	} 
	public String getWelfareID() 
	{ 
		 
			String WelfareID=null; 
			Calendar cal=Calendar.getInstance(); 
			String Year=String.valueOf(cal.get(Calendar.YEAR)); 
			int m=Integer.parseInt(String.valueOf(cal.get(Calendar.MONTH)+1)); 
			String Month=null; 
			if(m<10) 
			{ 
				Month="0"+String.valueOf(m); 
			} 
			else 
				Month=String.valueOf(m); 
 
			String Day=null; 
			int f=cal.get(Calendar.DAY_OF_MONTH); 
			if(f<10) 
			{ 
				Day="0"+String.valueOf(f); 
			} 
			else 
				Day=String.valueOf(f); 
			String Date=Year+Month+Day; 
	        //查询是否存在当天的销售记录   
			 
			String sql="select * from Welfare where WelfareID like '%"+Date+"%'"; 
			 
			try 
			{ 
			 rs=db.getResult(sql); 
			 if(rs.next()) 
			 {	 
			  rs.last(); 
			  int Row=rs.getRow(); 
			  String R=String.valueOf(Row+1); 
			  WelfareID="W"+Date+"00"+R;             //生成销售编号 
			 } 
			 else 
			  WelfareID="W"+Date+"001";             //若不存在当天的销售记录,记为001 
			    
			} 
			catch(SQLException e) 
			{ 
				e.printStackTrace(); 
			} 
			return WelfareID; 
		 
	} 
	public int getProductID(String ProductName)                       //从商品信息中得到商品编号 
	  { 
		  int ProductID=0; 
		  String sql="select * from ProductInfo where ProductName='"+ProductName+"'"; 
		  try 
		  { 
			  rs=db.getResult(sql); 
			  if(rs.next()) 
			  { 
				  ProductID=rs.getInt("ProductID"); 
			  } 
				   
		  } 
		  catch(SQLException e) 
			{ 
				e.printStackTrace(); 
			} 
		  return ProductID; 
	  } 
	 public boolean checkStock(int ProductID,int WelfareQuantity)   //判断该种商品库存够不够 
	  { 
		  boolean a=false; 
		  String sql="select * from StockRecord where ProductID="+ProductID; 
		  try 
		  { 
			  rs=db.getResult(sql); 
			  if(rs.next()) 
			  { 
			   int q=rs.getInt("ProductQuantity"); 
			   if(q>=WelfareQuantity) 
			   { 
				   a=true; 
			   } 
			  } 
		  } 
		  catch(Exception e) 
		  { 
			  e.printStackTrace(); 
		  } 
		  return a; 
	  } 
	 public int getProductQuantity(int ProductID)                        //得到库存 
	 { 
		 int ProductQuantity=0; 
		 String sql="select * from StockRecord where ProductID="+ProductID; 
		 try 
		 { 
			 rs=db.getResult(sql); 
			 rs.next(); 
			ProductQuantity=rs.getInt("ProductQuantity"); 
		 }catch(Exception e) 
		 { 
			 e.printStackTrace(); 
		 } 
		 return ProductQuantity; 
	 } 
	 public ArrayList getEnterList(int ProductQuantity,int ProductID,int WelfareQuantity) 
	 { 
		 ArrayList list=new ArrayList(); 
		 String sql="select * from EnterInfo where ProductId='"+ProductID+"'"; 
		 try 
		 { 
			  
			 //int i=SaleQuantity;  //i就是卖货的数量 
			 rs=db.getResult(sql); 
			 rs.last(); 
			 int EnterQuantity=rs.getInt("EnterQuantity"); 
			 while (EnterQuantity=0) 
			 { 
				 EnterQuantity=rs.getInt("EnterQuantity")-intervene; 
			 } 
			if(i<0) 
			{ 
				 EnterQuantity=WelfareQuantity; 
			} 
			 EnterCheckView ecv=new EnterCheckView(); 
			 ecv.setEnterID(rs.getString("EnterID")); 
			 ecv.setEnterQuantity(EnterQuantity); 
			 ecv.setEnterPrice(rs.getFloat("EnterPrice")); 
			 list.add(ecv); 
			 while(i>=0) 
			 { 
				 rs.next(); 
				 i-=rs.getInt("EnterQuantity"); 
				 if(i<0) 
				 { 
					 EnterQuantity=rs.getInt("EnterQuantity")+i; 
				 } 
				 else 
					 EnterQuantity=rs.getInt("EnterQuantity"); 
				 ecv=new EnterCheckView(); 
				 ecv.setEnterID(rs.getString("EnterID")); 
				 ecv.setEnterQuantity(EnterQuantity); 
				 ecv.setEnterPrice(rs.getFloat("EnterPrice")); 
				 list.add(ecv); 
			 } 
			 
		 } 
		 catch(Exception e) 
		 { 
			 e.printStackTrace(); 
		 } 
		 return list; 
	 } 
	 public void WelfareInsert(String WelfareID,int ProductID,int WelfareQuantity,String WelfareNotice,Date WelfareDate,String ChargeMan,ArrayList list) 
	 { 
		 float CostSum=0; 
		 Iterator it=list.iterator(); 
			while(it.hasNext()) 
			{ 
				EnterCheckView ecv=(EnterCheckView)it.next(); 
				String EnterID=ecv.getEnterID(); 
				int EnterQuantity=ecv.getEnterQuantity(); 
				float EnterPrice=ecv.getEnterPrice(); 
				CostSum+=EnterQuantity*EnterPrice; 
			} 
		String sql1="insert into Welfare values('"+WelfareID+"',"+ProductID+","+WelfareQuantity+",'"+WelfareNotice+"','"+WelfareDate+"',"+CostSum+",'"+ChargeMan+"')"; 
		String sql2="update StockRecord set ProductQuantity=ProductQuantity-"+WelfareQuantity+" where ProductID="+ProductID; 
		String sql3=null; 
		try 
		{ 
			db.ExeQuery(sql1, sql2, sql3); 
		} 
		catch(Exception e) 
		{ 
			e.printStackTrace(); 
		} 
	 } 
	 public void Close() 
	 { 
		 db.close(); 
	 } 
}