from Log_View import Log_View, Log_Handler import schema import logging class App_State : user_id = None imos_done_dir = "IMOS-Done" imos_order_dir = "ImOrder" sim_batches = "Batches" pgiq_dir = "OrderXML" L = logging.getLogger () Action_Kind = \ { 1 : "Create Order" , 2 : "Update Order" , 10 : "Change owner" , 15 : "Force order state" , 20 : "IMOS CAD started" , 25 : "IMOS CAD closed" , 30 : "CNC generation started" , 35 : "CNC generation finished" , 40 : "Odoo Freigabe" , 100 : "Article created" , 110 : "Order Line created" , 111 : "Order Line updated" } @classmethod def Create_Action (cls, kind, text, order = None) : if kind not in cls. Action_Kind : raise ValueError (f"Unknow action kind {kind}") schema.Action \ ( user = cls.user_id , date = schema.datetime.now () , action_kind = kind , action = text , order = order ) # end def create_action @classmethod def Log_View (cls, level = logging.INFO, parent = None) : cls.L.info ("Log window created") cls._log_view = Log_View (parent) lh = Log_Handler (cls._log_view) #lh.setFormatter \ # ( logging.Formatter # ('%(asctime)s ' # '%(levelname)s - %(message)s' # , datefmt = "%Y-%m-%d %H:%M:%S" # ) # ) lh.setLevel (level) lh.setFormatter \ ( logging.Formatter ( "%(asctime)s - %(message)s" , datefmt = "%Y-%m-%d %H:%M:%S" ) ) cls.L.addHandler (lh) return cls._log_view # end def Log_View # end class App_State