import sqlite3 import os import argparse import json import getpass import datetime import logging import action class Action: def __init__(self, row): if not row: logging.debug('Action - empty row') raise Exception('No action found - database need to be initialized.') else: logging.debug('Action - fill fields') self.project_id, self.task_id, self.note_id = row def __str__(self): return str(self.__dict__) def create_action(cursor, project_id = '', task_id = '', note_id = '', message = ''): query = """ INSERT INTO action (project_id, task_id, note_id, username, message, created_at) VALUES (?, ?, ?, ?, ?, ?); """ cursor.execute(query, (project_id, task_id, note_id, getpass.getuser(), message, datetime.datetime.now(),)) logging.debug('created action') def read_last_action(conn): logging.info('> last_action') # query = 'SELECT * FROM action WHERE id = (SELECT MAX(id) FROM action' # query = 'SELECT project_id, task_id, note_id FROM action' query = 'SELECT project_id, task_id, note_id FROM action ORDER BY id DESC LIMIT 1;' cursor = conn.cursor() cursor.execute(query) last_action = Action(cursor.fetchone()) return last_action