Example #1
0
    def getLog(self, source, page, rows, orderby, sort):
        offset = int(rows) * (int(page) - 1)
        sql = {
            "error": "select logid, date, message from log where level = 'ERROR' and source = '" + source + "'"
        }[self.logType]

        countSql = {
            "error": "select count(logid) from log where level = 'ERROR' and source = '" + source + "'"
        }[self.logType]

        if("" != orderby):
            sql = sql + " order by " + orderby + " " + sort

        sql = sql + " limit " + rows + " offset " + str(offset)

        dbpath = os.path.join(logPath.getLogPath(), self.date, "pcd.log.v4.db3")

        if(False == os.path.isfile(dbpath)):
            return records()
        else:
            r = records()
            conn = SQLiteUtil.Connect(dbpath)
            countrs = SQLiteUtil.executeSql(conn, countSql)
            r.total = countrs[0][0]
            rs = SQLiteUtil.executeSql(conn, sql)
            r.rows = list(map(maps.maprecord2errorlog, rs))
            return r
Example #2
0
def getTableTestData():
    retV1 = tableTestData(1)
    retV2 = tableTestData(2)
    retV3 = tableTestData(3)

    r = records()
    r.page = 1
    r.total = 3
    r.rows = [retV1, retV2, retV3]

    return json.dumps(r, default=generic_JsonEncode, ensure_ascii=False)
Example #3
0
    def getRelativeLog(self, filename):
        sql = "select logid, date, message from log where message like '%" + filename + ".xml%'"
        countSql = "select count(logid) from log where message like '%" + filename + ".xml%'"

        cdate = filename[0:8]
        cdate = cdate[:4] + "-" + cdate[4:]
        cdate = cdate[:7] + "-" + cdate[7:]

        dbpath = os.path.join(logPath.getLogPath(), cdate, "pcd.log.v4.db3")
        if(False == os.path.isfile(dbpath)):
            return records()
        else:
            print(sql)
            r = records()
            conn = SQLiteUtil.Connect(dbpath)
            countrs = SQLiteUtil.executeSql(conn, countSql)
            r.total = countrs[0][0]
            rs = SQLiteUtil.executeSql(conn, sql)
            r.rows = list(map(maps.maprecord2errorlog, rs))
            return r
Example #4
0
def fun2(db, args):
    with records(db) as ro:
        for record in ro.get(args.datum):
            print("{}, {}".format(record.datetime, record.measurement))
Example #5
0
def fun1(db, args):
    with records(db) as ro:
        ro.update(args.datum, server, vendor_id, args.device_id, appbundle)
class clients(Frame):                                             #<clients> class created for <clients> page when <clients> button is pressed at the main menu
   def __init__(self,master = None):
        Frame.__init__(self, master)
        #Enter function to be called here
        self.master.title("Clients")

        #insert code here to create buttons, entries and any feature towards specified page


        #

def run_records_gui_class(root):  #function that will move towards class records_gui_class
    records_gui_class(root);
    
Records = records(); # places value of records class file into Records
class records_gui_class(Frame):                                              #<records> class created for <records> page when <records> button is pressed at the main menu
    
    Records = records();
    
    def __init__(self, master = None):
        Frame.__init__(self, master);
        self.master.title("Records");
        self.menu();
        
    def sequence(self, funct):
        for child in root.winfo_children():     #This is the loop that will go through the Frames widgets and delete the children
            child.destroy()
        return funct();
    
    def menu(self, master = None): #main menu for the buttons related to each of the different categories: sales, employees, payroll
Example #7
0
    def __init__(self, varib=1, login=''):
        self.MAIN_WINDOW = tk.Tk()
        self.MAIN_WINDOW.title("Scrollbar Test")
        self.MAIN_WINDOW.resizable(False, True)
        self.login = login
        self.color = 0
        if varib:
            global invert
            invert = 0
        print('#' + str(hex(abs(self.color - int('7CD5CB', 16))))[2:])
        self.variable = []
        self.test_buttons = []
        self.questions = tuple()
        self.answers = []
        self.types = tuple()
        self.id = tuple()
        self.number = 0
        self.correct = 0
        self.text = tk.StringVar()
        self.menu_varible = tk.IntVar()
        menu = tk.Menu()
        settings = tk.Menu(tearoff=0)
        self.menu_varible.set(varib)
        settings.add_radiobutton(label='Темная тема',
                                 value=0,
                                 variable=self.menu_varible,
                                 command=self.invett_colors)
        settings.add_radiobutton(label='Светлая тема',
                                 value=1,
                                 variable=self.menu_varible,
                                 command=self.invett_colors)
        menu.add_cascade(label='Настройки темы', menu=settings)
        menu.add_cascade(label='Рекорды', command=lambda: records.records())
        menu.add_cascade(label='Справка',
                         command=lambda: Info.Info(self.MAIN_WINDOW))
        self.MAIN_WINDOW.config(menu=menu)
        self.topic = -1
        width = 1200
        height = 900
        self.MAIN_WINDOW.geometry('{}x{}+{}+{}'.format(
            width, height, (self.MAIN_WINDOW.winfo_screenwidth() - width) // 2,
            (self.MAIN_WINDOW.winfo_screenheight() - height) // 2))
        self.MAIN_WINDOW.minsize(width=900, height=600)
        self.MAIN_WINDOW.protocol('WM_DELETE_WINDOW', self.window_deleted)
        self.MAIN_WINDOW.iconbitmap('icon.ico')
        self.buttons = []
        self.conn = connect('project_trpo')  # подлкючение к БД
        self.conn.row_factory = self.dict_factory
        cursor = self.conn.cursor()

        cursor.execute("SELECT topic FROM Topics")
        all_data = cursor.fetchall()

        self.frame = VerticalScrolledFrame(self.MAIN_WINDOW,
                                           width=168,
                                           borderwidth=2,
                                           relief=tk.SUNKEN,
                                           bg=invert_color("#F0F0F0"))
        self.next = tk.Button(self.MAIN_WINDOW,
                              text='Следующий',
                              width=10,
                              height=2,
                              bg=invert_color('#7CD5CB'),
                              fg='#111111',
                              bd=0,
                              activebackground='#333333',
                              disabledforeground='#FFFFFF',
                              highlightcolor="black",
                              relief=tk.SUNKEN,
                              font=font.Font(
                                  family="@Microsoft YaHei UI Light", size=10),
                              command=self.next_press)
        self.prev = tk.Button(self.MAIN_WINDOW,
                              text='Предыдущий',
                              width=10,
                              height=2,
                              bg=invert_color('#7CD5CB'),
                              fg='#111111',
                              bd=0,
                              activebackground='#333333',
                              disabledforeground='#FFFFFF',
                              highlightcolor="black",
                              relief=tk.SUNKEN,
                              font=font.Font(
                                  family="@Microsoft YaHei UI Light", size=10),
                              command=self.prev_press)
        self.end = tk.Button(self.MAIN_WINDOW,
                             text='Завершить',
                             width=10,
                             height=2,
                             bg=invert_color('#7CD5CB'),
                             fg='#111111',
                             bd=0,
                             activebackground='#333333',
                             disabledforeground='#FFFFFF',
                             highlightcolor="black",
                             relief=tk.SUNKEN,
                             font=font.Font(family="@Microsoft YaHei UI Light",
                                            size=10),
                             command=self.end_press)
        self.frame.pack(fill=tk.BOTH, expand=True)  # fill window
        cursor = self.conn.cursor()
        cursor.execute("SELECT topic, Theory FROM Topics")
        data = cursor.fetchall()
        self.frame.update_texts(usual_text=data[0]['Theory'],
                                main_text=data[0]['topic'])
        # self.frame.pack_propagate(0)
        self.MAIN_WINDOW.update()
        # self.frame.edit.place(x=225, y=20)

        self.MAIN_WINDOW['bg'] = invert_color('#F0F0F0')
        self.MAIN_WINDOW.update()
        self.frame.create_text()
        texts_for_buttons = ('Теория', 'Визуализация', 'Тест')
        kol = 0
        # all_data = ['Сортировка "пузырьком".', 'Сортировка "Вставками"', '"Быстрая" сортировка.',
        #             '"Быстрая" сортировка с асинхронностью.', 'Сортировка подсчётом.']
        for i, text in enumerate(all_data):
            self.buttons.append(
                tk.Button(self.frame,
                          text=text['topic'],
                          width=24,
                          height=3,
                          bg=invert_color('#7CD5CB'),
                          fg='#111111',
                          bd=0,
                          activebackground=invert_color('#333333'),
                          disabledforeground='#111111',
                          highlightcolor="black",
                          relief=tk.SUNKEN,
                          wraplength=100,
                          state='disabled',
                          command=lambda key=i + kol: self.press(key)))
            self.buttons[i + kol].bind(
                "<Enter>", lambda event, number=i + kol: self.but(number))
            self.buttons[i + kol].bind(
                "<Leave>", lambda event, number=i + kol: self.butleave(number))
            self.buttons[i + kol].grid(column=2, row=i + kol)
            for j, t in enumerate(texts_for_buttons):
                kol += 1
                self.buttons.append(
                    tk.Button(self.frame,
                              text=(t + ' по "' + text['topic'] + '"')[:21] +
                              "\n" + (t + ' по "' + text['topic'] + '"')[21:],
                              width=24,
                              height=3,
                              bg=invert_color('#222222'),
                              fg=invert_color('#EEEEEE'),
                              bd=0,
                              activebackground=invert_color('#333333'),
                              activeforeground=invert_color('#EEEEEE'),
                              highlightcolor="black",
                              relief=tk.SUNKEN,
                              justify=tk.LEFT,
                              wraplength=170,
                              command=lambda key=i + kol: self.press(key)))
                self.buttons[i + kol].bind(
                    "<Enter>", lambda event, number=i + kol: self.but(number))
                self.buttons[i + kol].bind(
                    "<Leave>",
                    lambda event, number=i + kol: self.butleave(number))
                self.buttons[i + kol].grid(column=2, row=i + kol)

        mas = ['ghgf', 'gfdg', 'fdswedfsd', '32e3df', '1wewer34frdsf']
        # self.activate_RadioButton(mas)
        # self.vizual()
        self.MAIN_WINDOW.mainloop()