def OnButton_1(self, event):
     "修改两个数据库,一个是bank_user,一个是some_operation"
     conn = Mysql_All_is_Use()
     conn = conn.getConn()
     sql_select1 = "select username from bank_user where bool_id = 1;"
     sql_update1 = "update bank_user set money = money + %d where bool_id = 1;"
     sql_insert2 = "insert into some_operation(username, money) values('%s', %d);"
     cur = conn.cursor()
     try:
         # 输入的钱数
         the_money = int(self.user_ctrl.GetValue())
         st = sql_update1 % the_money
         cur.execute(st)
         cur.execute(sql_select1)
         rs = cur.fetchall()
         username = rs[0][0]
         # print(username)
         st = sql_insert2 % (username, the_money)
         cur.execute(st)
         conn.commit()
     except Exception as e:
         print e
         conn.rollback()
     finally:
         cur.close()
         conn.close()
     # 点击确定以后就及时关闭该窗口,防止多次点击
     self.Destroy()
     self.input_accounts.Enable(True)
示例#2
0
    def OnCloseWindow(self, event):
        "如果进行关闭的时候,把bool_id重新修改为0,因为等于1是正在进行的操作"

        # self._accounts.Close(True)
        # self.__accounts.Close(True)
        # self._balance.Close(True)
        # self._details.Close(True)
        # self.___details.Close(True)
        # self.___details.Close(True)

        conn = Mysql_All_is_Use()
        conn = conn.getConn()
        sql_update = sql_update = "update bank_user set bool_id = 0 where bool_id != 0;"
        cursor = conn.cursor()
        try:
            cursor.execute(sql_update)
            conn.commit()
        except Exception as e:
            print e
            conn.rollback()
        finally:
            cursor.close()
            conn.close()
        self.Destroy()
        self.signin_Frame.Show(True)
示例#3
0
    def OnButton(self, event):
        "实现点击的时候删除账户的功能"
        conn = Mysql_All_is_Use()
        conn = conn.getConn()
        print(self.text1_ctrl.GetValue())
        sql_delete = "delete from bank_user where username = '******';" % self.text1_ctrl.GetValue(
        )
        sql_select = "select username from bank_user;"
        cur = conn.cursor()
        try:
            cur.execute(sql_select)
            self.rs1 = cur.fetchall()

            cur.execute(sql_delete)
            conn.commit()
        except Exception as e:
            print e
        finally:
            cur.execute(sql_select)
            rs2 = cur.fetchall()
            if len(self.rs1) == len(rs2) + 1:
                wx.MessageBox(u"删除成功", u"删除结果", style=wx.OK)
            else:
                wx.MessageBox(u"删除失败", u"删除结果", style=wx.OK)
            cur.close()
            conn.close()
示例#4
0
    def __init__(self, username, password):
        self.username = username
        self.password = password
        self.flag = False

        conn = Mysql_All_is_Use()
        conn = conn.getConn()

        cursor = conn.cursor()
        sql_insert = "insert into bank_user(username, password) values('%s', '%s');" % (
            self.username, self.password)
        sql_select = "select username, password from bank_user;"
        try:
            cursor.execute(sql_select)
            rs = cursor.fetchall()
            for r in rs:
                if r[0] == self.username:
                    wx.MessageBox(u"当前用户名存在,请重新输入", u"错误信息", style=wx.OK)
                    self.flag = True
            if self.flag == False:
                # 上述操作没有问题则提交数据库
                cursor.execute(sql_insert)
                conn.commit()
        except Exception as e:
            print e
            # 出错的话数据库回滚
            conn.rollback()
        finally:
            cursor.close()
            conn.close()
示例#5
0
    def OnButton_1(self, event):
        sql_select1 = "select username, money from bank_user where bool_id = 1;"
        sql_update1 = "update bank_user set money = money %c %d where username = '******';"
        sql_insert2 = "insert into some_operation(username, money, receive_username) values('%s', %d, '%s');"
        conn = Mysql_All_is_Use()
        conn = conn.getConn()
        cur = conn.cursor()
        try:
            cur.execute(sql_select1)
            rs1 = cur.fetchall()
            # 返回的是一个元祖,而表示每一个数据的也是元组,所以用二维
            username = rs1[0][0]
            true_money = int(rs1[0][1])
            # 转账的钱数
            the_money = int(self.user_ctrl.GetValue())
            receive_username = self.receive_username.GetValue()
            print(username, the_money, receive_username)
            if (the_money > true_money):
                self.user_ctrl.SetValue(u"请重新输入金额")
                wx.MessageBox(u"转账金额大于现有钱数", u"错误信息", style=wx.OK)
            else:
                st = sql_insert2 % (username, -the_money, receive_username)
                cur.execute(st)
                st = sql_insert2 % (receive_username, the_money, username)
                cur.execute(st)
                st = sql_update1 % ('-', the_money, username)
                cur.execute(st)
                st = sql_update1 % ('+', the_money, receive_username)
                cur.execute(st)

            conn.commit()
        except Exception as e:
            print e
            conn.rollback()
        finally:
            cur.close()
            conn.close()

        # 点击确定以后就及时关闭该窗口,防止多次点击
        self.Destroy()
        self.ouput_accounts.Enable(True)
示例#6
0
    def OnButton_3(self, event):
        "用户登录界面"
        st = self.GetTitle()
        username = self.user_ctrl.GetValue()
        password = self.password_ctrl.GetValue()

        if st == u"用户登录界面":
            users = User_Frame(self)
            rs = Enter_UseMysql(username, password, True)
            if rs.GetFlag() == False:  # 登录不成功
                return
            # 登录成功获取登录的用户名
            # 如果登录成功,则把当前列的bool_id修改为1
            conn = Mysql_All_is_Use()
            conn = conn.getConn()
            sql_update = sql_update = "update bank_user set bool_id = 1 where username = '******';" % (
                username)
            cursor = conn.cursor()
            try:
                cursor.execute(sql_update)
                conn.commit()
            except Exception as e:
                print e
                conn.rollback()
            finally:
                cursor.close()
                conn.close()

            self.get_username = username
            users.Show(True)
            self.Show(False)
        else:
            admin = Admin_Frame(self)
            rs = Enter_UseMysql(username, password, False)
            if rs.GetFlag() == False:
                return
            admin.Show(True)
            self.Show(False)