예제 #1
0
    def display(self):
        if len(self.args) < 3:
            print(message.get("0006"))
            return
        if self.args[1] != "page":
            print(message.get("0006"))
            return
        pageSize = 5
        if len(self.args) >= 5 and self.args[3] == "pageSize":
            if str(self.args[4]).isdigit():
                pageSize = int(self.args[4])

        if not str(self.args[2]).isdigit():
            print(message.get("0028"))
            return
        data = []
        for k, v in self.result.items():
            kw = dict()
            kw["name"] = k
            kw["info"] = v
            data.append(kw)
        try:
            data = data[(int(self.args[2]) - 1) * pageSize: int(self.args[2]) * pageSize]
        except Exception as e:
            data = []
        self.print_table(data)
        pass
예제 #2
0
 def find(self):
     """
     detail
     :return:
     """
     if len(self.args) < 2:
         print(message.get("0006"))
         return
     # if not self.result.get(self.args[1], None):
     #     print(message.get("0015"))
     #     return
     else:
         kwargs_new = dict()
         kwargs_new["name"] = self.args[1]
         # kwargs_new["info"] = self.result.get(self.args[1], None)
         sql = "select * from users where username ='******';".format(self.args[1])
         msql = MySQLHelper()
         data1 = []
         res, ok = msql.select(sql)
         print(res)
         if not ok:
             print(" select error ")
             return
         for i in res:
             kw = dict()
             kw["name"] = i[1]
             d = dict()
             d["age"] = i[2]
             d["phone"] = i[3]
             d["email"] = i[4]
             kw["info"] = d
             data1.append(kw)
         self.print_table(data1)
         print(message.get("0021").format(self.args[1]))
예제 #3
0
 def _read_file(self):
     try:
         f = open(file=self.file_name, mode="r")
         data = f.read()
         self.result = json.loads(data)
         f.close()
         print(message.get("0026"))
     except Exception as e:
         print(message.get("0027"), e)
         pass
예제 #4
0
 def logout(self):
     """
     登出
     :return:
     """
     self.login_status = False
     self._write_file()
     print(message.get("0003"))
     print(message.get("0004").format(self.user_info["name"]))
     sys.exit()
예제 #5
0
 def login(self, name, password):
     """
     登陆
     :param name:  用户名
     :param password:  密码
     :return: None
     """
     if name == self.user_info["name"] and password == self.user_info["password"]:
         self.login_status = True
         print(message.get("0001").format(self.user_info["name"]))
     else:
         print(message.get("0002"))
예제 #6
0
 def __init__(self):
     self.result = {}
     self.init_fail_cnt = 1
     self.max_fail_cnt = 6
     self.user_info = {"name": "51reboot", "password": "******"}
     self.login_status = False
     self.quit = False
     self.field_names = ["Username", "Age", "Phone", "Email"]
     self.info = ["age", "phone", "email"]
     self.help_info = message.get("0020")
     self.args = []
     self.file_name = "user_info.csv"
     self._read_file()
예제 #7
0
 def add(self):
     """
     add
     :return:
     """
     # args = input(message.get("0005"))
     # args = args.split()
     if len(self.args) < 2:
         print(message.get("0006"))
         return
     if self.result.get(self.args[1], None):
         print(message.get("0007"))
     else:
         info = {}
         if len(self.args) >= 3:
             info["age"] = self.args[2]
         else:
             info["age"] = ""
         if len(self.args) >= 4:
             info["phone"] = self.args[3]
         else:
             info["phone"] = ""
         if len(self.args) >= 5:
             info["email"] = self.args[4]
         else:
             info["email"] = ""
         self.result[self.args[1]] = info
         sql = "insert into users(username,age,tel,email) values('{}','{}','{}','{}');".format(self.args[1],
                                                                                               info['age'],
                                                                                               info['phone'],
                                                                                               info['email'])
         msql = MySQLHelper()
         res, ok = msql.insert(sql)
         if ok:
             print(message.get("0008").format(self.args[1]))
             # self._write_file()
         else:
             print("插入数据失败")
예제 #8
0
 def start(self):
     """
     主入口
     :return:
     """
     while True:
         if not self.login_status:
             name = input(message.get("0016"))
             password = input(message.get("0017"))
             self.login(name, password)
         else:
             print(self.help_info)
             action_input = input(message.get("0018"))
             action_list = action_input.split()
             if len(action_list) <= 0:
                 print(message.get("0019"))
             else:
                 if hasattr(self, action_list[0]):
                     action = getattr(self, action_list[0])
                     self.args = action_list
                     action()
                 else:
                     print(message.get("0019"))
예제 #9
0
 def update(self):
     """
     update
     :return:
     """
     if len(self.args) < 6:
         print(message.get("0006"))
         return
     sql = "select * from users where username ='******';".format(self.args[1])
     msql = MySQLHelper()
     _, ok = msql.select(sql)
     if not ok:
         print(message.get("0022"))
         return
     if self.args[3] not in self.info:
         print(message.get("0023"))
         return
     if self.args[4] != "=":
         print(message.get("0024"))
         return
     sql = ""
     # self.result[self.args[1]][self.args[3]] = self.args[5]
     if self.args[3] == "age":
         sql = "update users set age='{}' where username ='******';".format(self.args[5], self.args[1])
     if self.args[3] == "phone":
         sql = "update users set tel='{}' where username ='******';".format(self.args[5], self.args[1])
     if self.args[3] == "email":
         sql = "update users set email='{}' where username ='******';".format(self.args[5], self.args[1])
     msql = MySQLHelper()
     print(sql)
     res, ok = msql.update(sql)
     if not ok:
         print(res)
         print("update error")
     else:
         print("update success")
예제 #10
0
    def delete(self):
        """
        delete
        :return:
        """
        if len(self.args) < 2:
            print(message.get("0006"))
            return
        sql = "select * from users where username ='******';".format(self.args[1])
        msql = MySQLHelper()
        _, ok = msql.select(sql)
        if not ok:
            print(message.get("0011"))
            return
        else:
            # self.result.pop(self.args[1])

            sql = "delete from users where username='******';".format(self.args[1])
            msql = MySQLHelper()
            res, ok = msql.delete(sql)
            if ok:
                print(message.get("0012").format(self.args[1]))
            else:
                print("delete error")
예제 #11
0
 def _write_file(self):
     f = open(file=self.file_name, mode="w")
     data = json.dumps(self.result)
     f.write(data)
     f.close()
     print(message.get("0025"))