📄 mainframe.java
字号:
* @return javax.swing.JButton
*/
private JButton getJok() {
if (jok == null) {
jok = new JButton();
jok.setBounds(new Rectangle(288, 434, 139, 33));
jok.setText("存款确认");
jok.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
if(check())
datacheck();
//get();
}
});
}
return jok;
}
//数据入数据库函数
public void indata()
{
Statement stmt=null;
Connection conn=Sql.link();//连接数据库
try {
stmt=conn.createStatement();
stmt.execute("insert into 存款单 (账户号,存款人姓名,存款人住址,存款类型,存款金额,存款日期,存款利率,操作员)" +
"values('"+xitong[0]+"','"+xitong[1]+"','"+xitong[2]+"','"+xitong[3]+"','"+xitong[4]+"','"+xitong[5]+"','"+xitong[6]+"','"+Login.loginname+"')");
} catch (SQLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
try {
stmt.close();
conn.close();
} catch (SQLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
//检查输入数据函数
public boolean check()
{
if(jTextnum.getText().equals("")||jTextmoney.getText().equals("")||jTextname.getText().equals("")||jTextaddress.getText().equals(""))
JOptionPane.showMessageDialog(null, "必添项请填写完全!");
else
{
if(!numValid(jTextnum.getText()))
{
JOptionPane.showMessageDialog(null, "请输入5位的数字卡号!");
return false;
}
else
if(!moneyValid(jTextmoney.getText()))
{
JOptionPane.showMessageDialog(null, "金额必须位数字且第一个数字不位0!");
return false;
}
else
{
get();
return true;
}
}
return true;
}
//储户信息数据库检查
public void datacheck()
{
Statement stmt=null;
ResultSet rset=null;
Connection conn=Sql.link();//连接数据库
try {
stmt=conn.createStatement();
rset=stmt.executeQuery("select * from 储户信息 where 账户号='"+jTextnum.getText()+"'");
if(rset.next())//验证账户号是否存在
{
String leixin=rset.getString(5);
yuer=rset.getString(8);
time=rset.getString(6);
if(leixin.equals(jtextleixing.getSelectedItem()))
{
JOptionPane.showMessageDialog(null, "存款成功!");
indata();//数据写入存款单数据库
updata();//把存款数据更新到储户信息数据库
new Cunkuandan().setVisible(true);//成功弹出存款单对话框
}
else{
int i = JOptionPane.showConfirmDialog(null, "存款类型于开户时的类型不一样,是否新开账户", "提示",
JOptionPane.YES_NO_OPTION);
if(JOptionPane.YES_OPTION == i){
new Newaccout().setVisible(true);
}
}
}
else{
int i = JOptionPane.showConfirmDialog(null, "该账户不存在,是否新开账户", "提示",
JOptionPane.YES_NO_OPTION);
if(JOptionPane.YES_OPTION == i){
new Newaccout().setVisible(true);
}
}
} catch (SQLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
try {
rset.close();
stmt.close();
conn.close();
} catch (SQLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
//存款数据更新到储户信息数据库
public void updata()
{
Statement stmt=null;
Connection conn=Sql.link();//连接数据库
try {
//计算利息
String nowt[]=((String)jtexttime.getSelectedItem()).split("-");
String oldt[]=time.split("-");
int i=(Integer.parseInt(nowt[0])-Integer.parseInt(oldt[0]))*365+(Integer.parseInt(nowt[1])-Integer.parseInt(oldt[1]))*30+(Integer.parseInt(nowt[2])-Integer.parseInt(oldt[2]));
float lixi= (float) ((float)(i)/365*0.0072*Float.valueOf(yuer));
String newmoney=jTextmoney.getText();
float a=Float.valueOf(newmoney);
float b=Float.valueOf(yuer);
float c =a+b+lixi;
String newyuer=Float.toString(c);
stmt=conn.createStatement();
stmt.execute("UPDATE 储户信息 SET 余额='"+newyuer+"' WHERE 账户号='"+jTextnum.getText()+"'");
stmt.execute("UPDATE 储户信息 SET 存款日期='"+(String)jtexttime.getSelectedItem()+"' WHERE 账户号='"+jTextnum.getText()+"'");
} catch (SQLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
try {
stmt.close();
conn.close();
} catch (SQLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
//计算存款计息函数
//卡号正则表达式检查
public static boolean numValid(String s){
String regex="[0-9]{5}";
Pattern p=Pattern.compile(regex);
Matcher m=p.matcher(s);
return m.matches();
}
// 金额正则表达式检查
public static boolean moneyValid(String s){
String regex="[1-9]{1}+[0-9]{0,8}";
Pattern p=Pattern.compile(regex);
Matcher m=p.matcher(s);
return m.matches();
}
//获取系统输入信息
public void get()
{
xitong[0]=jTextnum.getText();
xitong[1]=jTextname.getText();
xitong[2]=jTextaddress.getText();
xitong[3]=(String) jtextleixing.getSelectedItem();
xitong[4]=jTextmoney.getText();
xitong[5]=(String) jtexttime.getSelectedItem();
xitong[6]=jTextlilv.getText();
xitong[7]=Login.loginname;
}
/**
* @param args
*/
public static void run() {
// TODO 自动生成方法存根
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Mainframe thisClass = new Mainframe();
thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
thisClass.setVisible(true);
thisClass.setResizable(false);
}
});
}
/**
* This is the default constructor
*/
public Mainframe() {
super();
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(800, 523);
this.setContentPane(getJContentPane());
this.setTitle("银行管理系统");
this.setResizable(false);
lixi();//每次系统初始化都计算利息
}
//就算利息函数
public void lixi()
{
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jLabel4 = new JLabel();
jLabel4.setBounds(new Rectangle(91, 54, 82, 25));
jLabel4.setText("存款界面");
jLabel12 = new JLabel();
jLabel12.setBounds(new Rectangle(284, 194, 43, 25));
jLabel12.setText("必添");
jLabel11 = new JLabel();
jLabel11.setBounds(new Rectangle(412, 237, 45, 25));
jLabel11.setText("必添");
jLabel3 = new JLabel();
jLabel3.setBounds(new Rectangle(29, 238, 83, 27));
jLabel3.setText("存款人地址:");
jLabel2 = new JLabel();
jLabel2.setBounds(new Rectangle(29, 193, 83, 27));
jLabel2.setText("存款人姓名:");
jLabel1 = new JLabel();
jLabel1.setBounds(new Rectangle(279, 149, 59, 23));
jLabel1.setText("必添数字");
jLabel = new JLabel();
jLabel.setBounds(new Rectangle(311, 94, 104, 24));
jLabel.setText("必添5位数字");
jlilv = new JLabel();
jlilv.setBounds(new Rectangle(29, 386, 83, 27));
jlilv.setText("存款利率:");
jtime = new JLabel();
jtime.setBounds(new Rectangle(29, 331, 83, 27));
jtime.setText("存款日期:");
jleixing = new JLabel();
jleixing.setBounds(new Rectangle(29, 285, 83, 27));
jleixing.setText("存款类型:");
jaddress = new JLabel();
jaddress.setBounds(new Rectangle(29, 145, 83, 27));
jaddress.setText("存款金额:");
jname = new JLabel();
jname.setBounds(new Rectangle(29, 91, 83, 27));
jname.setText("存款卡号:");
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(getJJToolBarBar(), null);
jContentPane.add(jname, null);
jContentPane.add(getJTextnum(), null);
jContentPane.add(jaddress, null);
jContentPane.add(getJTextmoney(), null);
jContentPane.add(jleixing, null);
jContentPane.add(getJtextleixing(), null);
jContentPane.add(jtime, null);
jContentPane.add(getJtexttime(), null);
jContentPane.add(jlilv, null);
jContentPane.add(getJTextlilv(), null);
jContentPane.add(getJok(), null);
jContentPane.add(jLabel, null);
jContentPane.add(jLabel1, null);
jContentPane.add(jLabel2, null);
jContentPane.add(jLabel3, null);
jContentPane.add(getJTextname(), null);
jContentPane.add(getJTextaddress(), null);
jContentPane.add(jLabel11, null);
jContentPane.add(jLabel12, null);
jContentPane.add(jLabel4, null);
jContentPane.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {
public void mouseMoved(java.awt.event.MouseEvent e) {
if(jtextleixing.getSelectedItem().equals("活期"))
{ String lx="0.72%";
jTextlilv.setText(lx);
}
if(jtextleixing.getSelectedItem().equals("死期"))
{ String lx="0.95%";
jTextlilv.setText(lx);
}
}
});
}
return jContentPane;
}
/**
* This method initializes jTextname
*
* @return javax.swing.JTextField
*/
private JTextField getJTextname() {
if (jTextname == null) {
jTextname = new JTextField();
jTextname.setBounds(new Rectangle(136, 190, 118, 28));
}
return jTextname;
}
/**
* This method initializes jTextaddress
*
* @return javax.swing.JTextField
*/
private JTextField getJTextaddress() {
if (jTextaddress == null) {
jTextaddress = new JTextField();
jTextaddress.setBounds(new Rectangle(136, 238, 246, 28));
}
return jTextaddress;
}
} // @jve:decl-index=0:visual-constraint="67,27"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -