66 lines
2.1 KiB
Python
66 lines
2.1 KiB
Python
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
|
|
# ('<span class="log-time">%(asctime)s</span> '
|
|
# '<span class="level-%(levelname)s">%(levelname)s</span> - %(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
|