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

📄 bankprocess.java

📁 java版虚拟社区,在mysql上运行.
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package serverpack;

import java.sql.*;
import java.text.DecimalFormat;

public class BankProcess {
	
	private Connection conn;
	private Statement stat;
	private Statement stat2;
	private Monitor mo;
	private DecimalFormat df;
		
	public BankProcess(Connection c,Monitor m){conn = c;mo = m;df = new DecimalFormat("#,###,###,###.00");}
	
	public boolean CorpLoan(MyMessage mm)
	{
		try
		{ 
			String id = new String(mm.GetMes(0));
			boolean b = false;
			int count = 0;
			stat = conn.createStatement();
			/////////////////////////////////////
			ResultSet result = stat.executeQuery("SELECT * FROM bank_loan WHERE id = '"+mm.GetMes(0)+"'" +
					" AND if_granted = 'Y' AND if_payback = 'N'");
			if(result.next())
			{
				b = true;
				do
				{
					mm.SetMes("not payback", count++);
					mm.SetMes(df.format(result.getFloat("account")), count++);
					mm.SetMes(result.getString("time"), count++);

				}while(result.next());
				
			}
			/////////////////////////
			if(b)
			{
				System.out.println(id+" CorpLoan success");
				mo.appendmessage(id+" CorpLoan success"+"\n");
				mm.SetType("true"); 
				mm.SetNum(count);
			}
			else
			{
				System.out.println(id+" No Loan");
				mo.appendmessage(id+" No Loan"+"\n");
				mm.SetType("false");
				mm.SetNum(0);
			}
			result.close();
			stat.close();
			return true;
		}
		catch(SQLException e) 
	    { 
	    	System.out.println("SQLException"); 
	        e.printStackTrace(); 
	    }
		return false;
	}
	public boolean CorpRecord(MyMessage mm)
	{
		try
		{ 
			String id = new String(mm.GetMes(0));
			boolean b = false;
			int count = 0;
			int num;
			stat = conn.createStatement();
			String tempid = mm.GetMes(0);
			/////////////////////////////////////
			ResultSet result = stat.executeQuery("SELECT * FROM bank_client WHERE id = '"+tempid+"'");
			if(result.next())
			{
				b = true;
				do
				{
					mm.SetMes(result.getString("h_type"), count++);
					mm.SetMes(df.format(result.getFloat("account")), count++);
					mm.SetMes(result.getString("to_name"), count++);
					mm.SetMes(result.getString("time"), count++);
					
				}while(result.next());
				
			}
			result = stat.executeQuery("SELECT * FROM bank_client WHERE to_id = '"+tempid+"'");
			if(result.next())
			{
				b = true;
				do
				{
					mm.SetMes("get", count++);
					mm.SetMes(df.format(result.getFloat("account")), count++);
					mm.SetMes(result.getString("name"), count++);
					mm.SetMes(result.getString("time"), count++);
					
				}while(result.next());
				
			}
			if(b)
			{
				System.out.println(id+" CorpRecord success");
				mo.appendmessage(id+" CorpRecord success"+"\n");
				mm.SetType("true"); 
				mm.SetNum(count);
			}
			else
			{
				System.out.println(id+" No Record");
				mo.appendmessage(id+" No Record"+"\n");
				mm.SetType("false");
				mm.SetNum(0);
			}
			result.close();
			stat.close();
			return true;
		}
		catch(SQLException e) 
	    { 
	    	System.out.println("SQLException"); 
	        e.printStackTrace(); 
	    }
		return false;
	}
	public boolean BankFinanceView(MyMessage mm)
	{
		try{
			stat=conn.createStatement();
		    float DepositTotal=0,LoanTotal=0,PayBackTotal=0;
			ResultSet rs=stat.executeQuery("select * from bank_account");
			while(rs.next())
			{
				DepositTotal=rs.getFloat("account")+DepositTotal;
			}
		//	System.out.println(DepositTotal);
			rs=stat.executeQuery("select account from bank_loan where if_granted='Y'");
			while(rs.next())
			{
				LoanTotal=LoanTotal+rs.getFloat("account");
			}
		//	System.out.println(LoanTotal);
			rs=stat.executeQuery("select account from bank_loan where if_payback='Y'");
			while(rs.next())
			{
				PayBackTotal+=rs.getFloat("account");
			}
		//	System.out.println(PayBackTotal);
			mm.SetNum(3);
			mm.SetType("true");
			mm.SetMes(df.format(DepositTotal), 0);
			mm.SetMes(df.format(LoanTotal), 1);
			mm.SetMes(df.format(PayBackTotal), 2);
			System.out.println("BankFinanceView success");
			mo.appendmessage("BankFinanceView success"+"\n");
			rs.close();
			stat.close();
			return true;
		}
		catch(SQLException e){
			System.out.println("SQLException!");
			e.printStackTrace();
		}
		return false;
	}
	public boolean BankGrant(MyMessage mm)
	{
		try{
			PreparedStatement pstat;
			String cmd="select * from bank_loan where id=? and time=?";
			pstat=conn.prepareStatement(cmd,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
			pstat.setString(1, mm.GetMes(0));
			pstat.setString(2, mm.GetMes(1));
			ResultSet rs=pstat.executeQuery();
			rs.next();
			if("Y".equals(rs.getString("if_granted")))
			{
				System.out.println(mm.GetMes(0)+" loan granted before");
				mo.appendmessage(mm.GetMes(0)+" loan granted before"+"\n");
				mm.SetType("false");
				mm.SetNum(0);
				rs.close();
				pstat.close();
				return true;
			}
			else{
			    mm.SetType("true");
			    mm.SetNum(0);
				rs.updateString("if_granted","Y");
			    rs.updateRow();
			    stat=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
			    ResultSet temp=stat.executeQuery("select * from bank_account where id='"+rs.getString("id")+"'");
			    temp.next();
			    temp.updateFloat("account",temp.getFloat("account")+rs.getFloat("account"));
			    temp.updateRow();
			    temp.close();
			    stat.close();
			    rs.close();
				pstat.close();
				System.out.println(mm.GetMes(0)+" BankGrant success");
				mo.appendmessage(mm.GetMes(0)+" BankGrant success"+"\n");
			    return true;
			}
		}
		catch(SQLException e){
			System.out.println("SQLException!");
			e.printStackTrace();
		}
		return false;
	}
	public boolean BankLoanView(MyMessage mm)
	{
		try{
			stat=conn.createStatement();
			ResultSet rs=stat.executeQuery("select * from bank_loan");
			if(!rs.next())
			{
				mm.SetType("false");
				mm.SetNum(0);
				System.out.println("No loan data for bank");
				mo.appendmessage("No loan data for bank"+"\n");
				rs.close();
				stat.close();
				return true;
			}
			else{
				rs.last();
				int num=rs.getRow();
				rs.beforeFirst();
				mm.SetNum(num*7);
				mm.SetType("true");
				int i=0,j=1;
				while(rs.next())
				{
					j=2;
					for(;j<=8;i++,j++)
					{
						if(j == 5)
						{
							mm.SetMes(df.format(rs.getFloat(j)),i);	
						}
						else
						{
							mm.SetMes(rs.getString(j), i);	
						}
					}
					
				}
				System.out.println("BankLoanView success");
				mo.appendmessage("BankLoanView success"+"\n");
				rs.close();
				stat.close();
				return true;
			}
		}
	    catch(SQLException e){
    	System.out.println("SQLException!");
    	e.printStackTrace();
    	}
	    return false;
	}
	public boolean BankNotPaybackView(MyMessage mm)
	{
		try{
		stat=conn.createStatement();
		ResultSet rs=stat.executeQuery("select * from bank_loan where if_payback='N' AND if_granted = 'Y'");
		if(!rs.next())
		{
			System.out.println("No NotPayBack data for bank");
			mo.appendmessage("No NotPayBack data for bank"+"\n");
			mm.SetType("false");
			mm.SetNum(0);
			rs.close();
			stat.close();
			return true;
		}
		else{
		rs.last();
		int num=rs.getRow();
		rs.beforeFirst();
		mm.SetNum(num*7);
		mm.SetType("true");
		int i=0,j=1;
			while(rs.next())
		{
			j=2;
			for(;j<=8;i++,j++)
			{
				if(j == 5)
				{
					mm.SetMes(df.format(rs.getFloat(j)),i);	
				}
				else
				{
					mm.SetMes(rs.getString(j), i);	
				}
			}
		}
		}
		System.out.println("BankNotPaybackView success");
		mo.appendmessage("BankNotPaybackView success"+"\n");
		rs.close();
		stat.close();
		return true;
		}
		catch(SQLException e){
			System.out.println("SQLException!");
			e.printStackTrace();
		}
		return false;
	}
	public boolean BankClientDetailView(MyMessage mm)
	{
		try{
			String cmd=new String("select * from bank_client where id=?");
		    PreparedStatement pstat=conn.prepareStatement(cmd);
		    pstat.setString(1,mm.GetMes(0));
			ResultSet rs=pstat.executeQuery();
			if(!rs.next())
			{
				mm.SetType("false");
				mm.SetNum(0);
				System.out.println("No detail for client");
				mo.appendmessage("No detail for client"+"\n");
				rs.close();
				pstat.close();
				return true;
			}
			else{
				 rs.last();
				 mm.SetNum(rs.getRow()*7);
			     rs.beforeFirst();
			     mm.SetType("true");
			     int i=0,j=1;
			     while(rs.next())
			     {
					   j=2;
					   for(;j<=8;i++,j++)
						{
							if(j == 5)
							{
								mm.SetMes(df.format(rs.getFloat(j)),i);	
							}
							else
							{
								mm.SetMes(rs.getString(j), i);	
							}
						}
				 }
			     System.out.println("BankClientDetailView success");
			     mo.appendmessage("BankClientDetailView success"+"\n");
			     rs.close();
				 pstat.close();
			     return true;
			}
		}
		catch(SQLException e){
			e.printStackTrace();
			System.out.println("SQLException!");
			
		}
		return false;
	}
	public boolean BankAllView(MyMessage mm)
	{
	    
		try{	
		 	stat=conn.createStatement(); 
		 	ResultSet rs=stat.executeQuery("select * from bank_account");
			if(!rs.next())
			{

⌨️ 快捷键说明

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