class OmdataFiles(models.Model): ''' classdocs ''' file = models.FileField(upload_to=get_file_path) size = models.IntegerField(verbose_name=_('大小'), blank=True) createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) delete = models.BooleanField(verbose_name=_('是否刪除'), default=False) file_name = models.TextField(verbose_name=_('檔案名稱'), null=True, blank=True) flow_uuid = models.UUIDField(verbose_name=_('流程編號'), null=True, blank=True) data_no = models.IntegerField(verbose_name=_('資料流水號'), null=True, blank=True) data_id = models.IntegerField(verbose_name=_('資料編號'), null=True, blank=True) upload_user = models.ForeignKey('omuser.OmUser', verbose_name=_('上傳人員'), to_field='username', on_delete=models.SET_NULL, blank=True, null=True, related_name='update_omdatefile') objects = FormatManager() class Meta: default_permissions = ()
class Omdata_2d2fe67815a34cafa606640bdc7a3209_DataNo(models.Model): createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) objects = FormatManager() class Meta: default_permissions = ()
class Omdata_dc33fb340034418c8fbb3baf15525e86_DataNo(models.Model): createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) objects = FormatManager() class Meta: default_permissions = ()
class Omdata_cf119f3e9198464f8fe1aff7a4e3e3b8_DataNo(models.Model): createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) objects = FormatManager() class Meta: default_permissions = ()
class FlowWorkspace(models.Model): ''' form design author: Kolin Hsu ''' flow_name = models.CharField(verbose_name=_('名稱'), max_length=200) description = models.TextField(verbose_name=_('說明'), null=True, blank=True) create_user = models.ForeignKey('omuser.OmUser', on_delete=models.SET_NULL, blank=True, null=True) createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) updatetime = models.DateTimeField(verbose_name=_('更新時間'), auto_now=True) formobject = models.TextField(verbose_name=_('流程表單設計'), null=True, blank=True) flowobject = models.TextField(verbose_name=_('流程設計'), null=True, blank=True) config = models.TextField(verbose_name=_('流程設定'), null=True, blank=True) subflow = models.TextField(verbose_name=_('子流程'), null=True, blank=True) flow_app = models.ForeignKey('WorkspaceApplication', on_delete=models.CASCADE) objects = FormatManager() class Meta: default_permissions = ()
class Omdata_dc33fb340034418c8fbb3baf15525e86_ValueHistory(models.Model): flow_uuid = models.UUIDField(verbose_name=_('流程編號'), null=True, blank=True) data_no = models.IntegerField(verbose_name=_('資料編號'), null=True, blank=True) data_id = models.IntegerField(verbose_name=_('多重資料編號'), blank=True, null=True) chart_id = models.CharField(verbose_name=_('功能點'), max_length=500, null=True, blank=True) stop_chart_type = models.TextField(verbose_name=_('關卡類型'), blank=True, null=True) stop_chart_text = models.TextField(verbose_name=_('關卡名稱'), blank=True, null=True) input_data = models.TextField(verbose_name=_('輸入參數'), null=True, blank=True) output_data = models.TextField(verbose_name=_('輸出參數'), null=True, blank=True) createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) updatetime = models.DateTimeField(verbose_name=_('更新時間'), auto_now=True) error = models.BooleanField(verbose_name=_('異常標記'), default=False) objects = FormatManager() class Meta: default_permissions = ()
class EventManagement(models.Model): ''' author: Kolin Hsu ''' application = models.TextField(verbose_name=_('應用程式'), null=True, blank=True) type = models.TextField(verbose_name=_('分類'), null=True, blank=True) title = models.TextField(verbose_name=_('標題'), null=True, blank=True) content = models.TextField(verbose_name=_('內文'), null=True, blank=True) critical = models.IntegerField(verbose_name=_('嚴重等級'), default=1) collector = models.ForeignKey('Collector', on_delete=models.SET_NULL, blank=True, null=True) source = models.TextField(verbose_name=_('來源'), null=True, blank=True) source2 = models.TextField(verbose_name=_('來源2'), null=True, blank=True) createtime = models.DateTimeField(verbose_name=_('開單時間'), auto_now_add=True) updatetime = models.DateTimeField(verbose_name=_('更新時間'), auto_now=True) closed = models.BooleanField(verbose_name=_('關單標記'), default=False) objects = FormatManager() class Meta: default_permissions = ()
class Omdata_65147887cf6a4237a3ae2b5584623d30_DataNo(models.Model): createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) objects = FormatManager() class Meta: default_permissions = ()
class Omdata_738e0f41896f4478bc20987b0852c2d4_DataNo(models.Model): createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) objects = FormatManager() class Meta: default_permissions = ()
class Omdata_a9016845ef2b4dc0bbf98c1cbd50e2ec_DataNo(models.Model): createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) objects = FormatManager() class Meta: default_permissions = ()
class Omdata_1e1f6c4c66b84d46bccbcd9f51f96bb7_DataNo(models.Model): createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) objects = FormatManager() class Meta: default_permissions = ()
class SLAData(models.Model): ''' classdocs ''' sla = models.ForeignKey('SLARule', on_delete=models.CASCADE) type = models.TextField(verbose_name=_('類型'), default='num') app_name = models.CharField(verbose_name=_('應用名稱'), max_length=200) flow_name = models.CharField(verbose_name=_('流程名稱'), max_length=200) data_no = models.IntegerField(verbose_name=_('資料編號'), null=True, blank=True) createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) updatetime = models.DateTimeField(verbose_name=_('更新時間'), auto_now=True) remind = models.TextField(verbose_name=_('提醒'), null=True, blank=True) violation = models.TextField(verbose_name=_('違反'), null=True, blank=True) level = models.CharField(verbose_name=_('燈號'), max_length=50, default='green') closed = models.BooleanField(verbose_name=_('關閉標記'), default=False) objects = FormatManager() class Meta: default_permissions = ()
class OmdataRelation(models.Model): ''' classdocs ''' subject_flow = models.UUIDField(verbose_name=_('主表單流程'), null=True, blank=True) subject_no = models.IntegerField(verbose_name=_('主資料編號'), null=True, blank=True) relation_type = models.TextField(verbose_name=_('關聯類型'), null=True, blank=True) relation_percentage = models.IntegerField(verbose_name=_('被影響百分比'), null=True, blank=True) object_flow = models.UUIDField(verbose_name=_('副表單流程'), null=True, blank=True) object_no = models.IntegerField(verbose_name=_('副資料編號'), null=True, blank=True) createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) create_user = models.ForeignKey('omuser.OmUser', verbose_name=_('建立人員'), to_field='username', on_delete=models.SET_NULL, blank=True, null=True) objects = FormatManager() class Meta: default_permissions = ()
class Collector(models.Model): ''' author: Kolin Hsu ''' nick_name = models.CharField(verbose_name=_('顯示名稱'), max_length=100, null=True, blank=True) host_name = models.CharField(verbose_name=_('主機名稱'), max_length=100, null=True, blank=True) unique_id = models.TextField(verbose_name=_('主機識別碼'), max_length=100) os_type = models.CharField(verbose_name=_('作業系統'), max_length=100, null=True, blank=True) os_release = models.CharField(verbose_name=_('作業系統版本1'), max_length=100, null=True, blank=True) os_version = models.CharField(verbose_name=_('作業系統版本2'), max_length=100, null=True, blank=True) ip_address = models.CharField(verbose_name=_('IP位置'), max_length=100, null=True, blank=True) access_port = models.CharField(verbose_name=_('連接阜'), max_length=30, null=True, blank=True) omflow_version = models.CharField(verbose_name=_('omflow版本'), max_length=100, null=True, blank=True) nodegroup = models.ForeignKey('CollectorGroup', on_delete=models.SET_NULL, blank=True, null=True) loadbalance = models.BooleanField(verbose_name=_('負載平衡'), default=False) level = models.IntegerField(verbose_name=_('燈號'), default=1) software = models.TextField(verbose_name=_('軟體清單'), null=True, blank=True) hardware = models.TextField(verbose_name=_('硬體資訊'), null=True, blank=True) security = models.TextField(verbose_name=_('api碼'), null=True, blank=True) policys = models.ManyToManyField(MonitorFlow, through='PolicyCollector') updatetime = models.DateTimeField(verbose_name=_('更新時間'), auto_now_add=True) active = models.BooleanField(verbose_name=_('啟用'), default=True) objects = FormatManager() class Meta: default_permissions = ()
class HistoryGroups(models.Model): ''' classdocs ''' group = models.ForeignKey('omuser.OmGroup', on_delete=models.CASCADE) messagehistory = models.ForeignKey('MessageHistory', on_delete=models.CASCADE) objects = FormatManager() class Meta: default_permissions = ()
class Scheduler(models.Model): ''' Scheduler author: Kolin Hsu ''' Recurrence = ( ("ONCE", _("執行一次")), ("SECONDLY", _("每秒鐘")), ("MINUTELY", _("每分鐘")), ("HOURLY", _("每小時")), ("DAILY", _("每天")), ("WEEKLY", _("每週")), ("MONTHLY", _("每月")), ) create_time = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) exec_time = models.DateTimeField(verbose_name=_('執行時間'), null=True, blank=True) every = models.CharField(verbose_name=_('每次'), max_length=50, null=True, blank=True) cycle = models.CharField(verbose_name=_('週期'), max_length=50, choices=Recurrence, null=True, blank=True) cycle_date = models.CharField(verbose_name=_('週期執行日期'), max_length=50, null=True, blank=True) exec_fun = models.CharField(verbose_name=_('執行功能'), max_length=500) input_param = models.TextField(verbose_name=_('輸入參數')) is_active = models.BooleanField(verbose_name=_('啟用/停用'), default=True) last_exec_time = models.TextField(verbose_name=_('上次執行時間'), null=True, blank=True) next_exec_time = models.TextField(verbose_name=_('下次執行時間'), null=True, blank=True) flowactive = models.ForeignKey('omformflow.FlowActive', related_name="specific_flowactive", on_delete=models.SET_NULL, blank=True, null=True) type = models.TextField(verbose_name=_('分類'), null=True, blank=True) objects = FormatManager() class Meta: default_permissions = ()
class MessageHistoryFiles(models.Model): ''' classdocs ''' file = models.FileField(upload_to=get_file_path) size = models.IntegerField(verbose_name = _('大小'), blank=True) createtime = models.DateTimeField(verbose_name = _('建立時間'), auto_now_add=True) delete = models.BooleanField(verbose_name = _('是否刪除'), default=False) main = models.ForeignKey('MessageHistory', on_delete=models.CASCADE) objects = FormatManager() class Meta: default_permissions = ()
class MessageBox(models.Model): ''' classdocs ''' read = models.BooleanField(verbose_name = _('是否讀取'), default=False) messages = models.ForeignKey('Messages', on_delete=models.CASCADE) messagehistory = models.ForeignKey('MessageHistory', on_delete=models.CASCADE) delete = models.BooleanField(verbose_name = _('是否刪除'), default=False) omuser = models.ForeignKey('omuser.OmUser', on_delete=models.CASCADE) objects = FormatManager() class Meta: default_permissions = ()
class SystemSetting(models.Model): ''' left sidebar management author: Kolin Hsu ''' name = models.CharField(verbose_name=_('名稱'), max_length=50) value = models.TextField(verbose_name=_('值')) description = models.TextField(verbose_name=_('說明'), null=True, blank=True) updatetime = models.DateTimeField(verbose_name=_('更新時間'), auto_now=True) objects = FormatManager() class Meta: default_permissions = ()
class OmParameter(models.Model): ''' classdocs ''' name = models.TextField(verbose_name=_('參數名稱'), null=True, blank=True) value = models.TextField(verbose_name=_('參數值'), null=True, blank=True) type = models.TextField(verbose_name=_('類型'), null=True, blank=True) description = models.TextField(verbose_name=_('說明'), null=True, blank=True) shadow = models.BooleanField(verbose_name=_('是否遮蔽'), default=False) group_id = models.TextField(verbose_name=_('群組id'), null=True, blank=True) objects = FormatManager() class Meta: default_permissions = ()
class PolicyCollector(models.Model): ''' author: Kolin Hsu ''' node = models.ForeignKey(Collector, on_delete=models.CASCADE) policy = models.ForeignKey(MonitorFlow, on_delete=models.CASCADE) table_id = models.TextField(verbose_name=_('資料表編號'), null=True, blank=True) policy_version = models.IntegerField(verbose_name=_('版本'), null=True, blank=True) createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) objects = FormatManager() class Meta: default_permissions = ()
class MessageHistory(models.Model): ''' classdocs ''' create_user = models.ForeignKey('omuser.OmUser', on_delete=models.SET_NULL, blank=True, null=True) create_user_username = models.CharField(verbose_name = _('發送者名稱'), max_length=100, blank=True) create_group = models.ForeignKey('omuser.OmGroup', on_delete=models.SET_NULL, blank=True, null=True) create_group_name = models.CharField(verbose_name = _('發送群組名稱'), max_length=100, blank=True) delete_users_username = models.TextField(verbose_name = _('已刪除的接收者名稱'), blank=True) receive_groups_name = models.TextField(verbose_name = _('接收群組名稱'), blank=True) createtime = models.DateTimeField(verbose_name = _('建立時間'), auto_now_add=True) content = models.TextField(verbose_name = _('內文'), blank=True) messages = models.ForeignKey('Messages', on_delete=models.CASCADE) objects = FormatManager() class Meta: default_permissions = ()
class Messages(models.Model): ''' classdocs ''' subject = models.CharField(verbose_name = _('主旨'), max_length=100) formid = models.CharField(verbose_name = _('表單編號'), blank=True, max_length=100) dataid = models.CharField(verbose_name = _('資料編號'), blank=True, max_length=100) createtime = models.DateTimeField(verbose_name = _('建立時間'), auto_now_add=True) updatetime = models.DateTimeField(verbose_name = _('更新時間'), auto_now=True) flag = models.BooleanField(verbose_name = _('標記'), default=False) objects = FormatManager() class Meta: default_permissions = () @property def getJSON(self): pass def __str__(self): return self.subject
class QueueData(models.Model): ''' Queue Data author: Kolin Hsu ''' queue_id = models.TextField(verbose_name=_('佇列編號'), null=True, blank=True) name = models.CharField(verbose_name=_('名稱'), max_length=50) module_name = models.TextField(verbose_name=_('模組名稱'), null=True, blank=True) method_name = models.TextField(verbose_name=_('方法名稱'), null=True, blank=True) input_param = models.TextField(verbose_name=_('輸入參數'), null=True, blank=True) objects = FormatManager() class Meta: default_permissions = ()
class MonitorFlow(models.Model): ''' author: Kolin Hsu ''' table_id = models.TextField(verbose_name=_('資料表編號'), null=True, blank=True) flow_name = models.CharField(verbose_name=_('名稱'), max_length=200) description = models.TextField(verbose_name=_('說明'), null=True, blank=True) create_user = models.ForeignKey('omuser.OmUser', on_delete=models.SET_NULL, blank=True, null=True) createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) updatetime = models.DateTimeField(verbose_name=_('更新時間'), auto_now=True) formobject = models.TextField(verbose_name=_('流程表單設計'), null=True, blank=True) flowobject = models.TextField(verbose_name=_('流程設計'), null=True, blank=True) config = models.TextField(verbose_name=_('流程設定'), null=True, blank=True) subflow = models.TextField(verbose_name=_('子流程'), null=True, blank=True) attr = models.TextField(verbose_name=_('屬性'), null=True, blank=True) type = models.TextField(verbose_name=_('分類'), null=True, blank=True) os_type = models.TextField(verbose_name=_('作業系統'), null=True, blank=True) version = models.IntegerField(verbose_name=_('版本'), default=1) schedule = models.TextField(verbose_name=_('排程'), null=True, blank=True) event_rule = models.TextField(verbose_name=_('事件規則'), null=True, blank=True) flow_app = models.ForeignKey('MonitorApplication', on_delete=models.CASCADE) python_package = models.BooleanField(verbose_name=_('套件'), default=False) history = models.BooleanField(verbose_name=_('歷史資料'), default=False) objects = FormatManager() class Meta: default_permissions = ()
class MonitorApplication(models.Model): ''' author: Kolin Hsu ''' app_name = models.CharField(max_length=200) user = models.ForeignKey('omuser.OmUser', on_delete=models.SET_NULL, blank=True, null=True) createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) active_app_name = models.CharField(verbose_name=_('對應名稱'), max_length=200, null=True, blank=True) app_attr = models.CharField(verbose_name=_('屬性'), max_length=100) objects = FormatManager() class Meta: default_permissions = () permissions = (("OmMonitor_Manage", _('資料收集管理')), )
def addModelClass(model_name, policy_name, variable_list): class Meta: default_permissions = () #add model to memory attrs = {'__module__': 'ompolicymodel.models', 'Meta': Meta} attrs['table_name'] = policy_name attrs['collector'] = models.ForeignKey('ommonitor.Collector', on_delete=models.CASCADE) attrs['error'] = models.BooleanField(verbose_name=_('是否異常'), default=False) attrs['createtime'] = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) attrs['error_message'] = models.TextField(verbose_name=_('錯誤訊息'), null=True, blank=True) for variable_name in variable_list: attrs[variable_name] = models.TextField(null=True, blank=True) attrs['objects'] = FormatManager() type(model_name, (models.Model, ), attrs) call_command('makemigrations', 'ompolicymodel') call_command('migrate', app_label='ompolicymodel')
class OmdataWorklog(models.Model): ''' classdocs ''' flow_uuid = models.UUIDField(verbose_name=_('流程編號'), null=True, blank=True) data_no = models.IntegerField(verbose_name=_('資料流水號'), null=True, blank=True) content = models.TextField(verbose_name=_('內容'), null=True, blank=True) createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) create_user = models.ForeignKey('omuser.OmUser', verbose_name=_('建立人'), on_delete=models.SET_NULL, blank=True, null=True, related_name='create_worklog') objects = FormatManager() class Meta: default_permissions = ()
class SLARule(models.Model): ''' classdocs ''' sla_name = models.CharField(verbose_name=_('服務水準名稱'), max_length=200) description = models.TextField(verbose_name=_('說明'), null=True, blank=True) app_name = models.CharField(verbose_name=_('應用名稱'), max_length=200) flow_name = models.CharField(verbose_name=_('流程名稱'), max_length=200) flow_uuid = models.UUIDField(verbose_name=_('流程編號'), null=True, blank=True) type = models.TextField(verbose_name=_('類型'), null=True, blank=True) timer_start = models.TextField(verbose_name=_('時間測量開始'), null=True, blank=True) timer_end = models.TextField(verbose_name=_('時間測量終止'), null=True, blank=True) advanced = models.TextField(verbose_name=_('進階條件'), null=True, blank=True) target = models.TextField(verbose_name=_('數值測量欄位'), null=True, blank=True) remind = models.TextField(verbose_name=_('提醒'), null=True, blank=True) violation = models.TextField(verbose_name=_('違反'), null=True, blank=True) title = models.TextField(verbose_name=_('標題'), null=True, blank=True) content = models.TextField(verbose_name=_('內容'), null=True, blank=True) createtime = models.DateTimeField(verbose_name=_('建立時間'), auto_now_add=True) updatetime = models.DateTimeField(verbose_name=_('更新時間'), auto_now=True) notify_createuser = models.BooleanField(verbose_name=_('通知開單人'), default=False) notify_group = models.TextField(verbose_name=_('通知角色'), null=True, blank=True) notify_user = models.TextField(verbose_name=_('通知人'), null=True, blank=True) objects = FormatManager() class Meta: default_permissions = ()
class ActiveApplication(models.Model): ''' author: Kolin Hsu ''' app_name = models.CharField(max_length=200) user = models.ForeignKey('omuser.OmUser', on_delete=models.SET_NULL, blank=True, null=True) updatetime = models.DateTimeField(verbose_name=_('更新時間'), blank=True, null=True) version = models.IntegerField(verbose_name=_('流程版本'), null=True, blank=True) app_attr = models.CharField(verbose_name=_('屬性'), max_length=100) undeploy_flag = models.BooleanField(verbose_name=_('下線'), default=False) language_package = models.TextField(verbose_name=_('語言包'), default='{}') objects = FormatManager() class Meta: default_permissions = ()