class CpeNewForm(FormPro): ctrl_id = SelectFieldPro(u'所属EOC', validators=[required(message=u'必填')], choices=lambda: eoc_choices(3, u'请选择EOC')) area_id = SelectFieldPro(u'接入点', validators=[required(message=u'必填')], choices=lambda: area_choices(4, u'请选择接入点')) name = TextField(u'CPE名称', validators=[required(message=u'必填')]) alias = TextField(u'CPE别名', validators=[required(message=u'必填')]) mac = TextField(u'MAC地址', validators=[required(message=u'必填')]) vendor = QuerySelectField( u'CPE厂商', query_factory=lambda: Vendor.query.filter(Vendor.is_valid == 1), allow_blank=True, blank_text=u'请选择厂商', get_label='alias') model = QuerySelectField( u'CPE型号', query_factory=lambda: Model.query.filter(Model.is_valid == 1).filter( Model.category_id == 51), allow_blank=True, blank_text=u'请选择型号', get_label='alias') esn = TextField(u'ESN') owner = TextField(u'用户名') card_id = TextField(u'身份证号') contact_tel = TextField(u'联系电话') location = TextField(u'安装地址') install_time = DateFieldPro(u'安装时间') remark = TextAreaField(u'备注信息')
class ModuleForm(Form): name = TextField(u'名称', [required(message=u'必填')]) alias = TextField(u'显示名', [required(message=u'必填')]) period = IntegerField(u'周期(min)') retries = IntegerField(u'重试次数(次)') timeout = IntegerField(u'超时(s)') remark = TextAreaField(u'备注')
class CategoryForm(Form): id = TextField(validators=[required(message=u'必填')]) obj = TextField(u'分组', [required(message=u'必填')]) name = TextField(u'名称', [required(message=u'必填')]) alias = TextField(u'显示名', [required(message=u'必填')]) is_valid = SelectField(u'有效性', [required(message=u'必填')], choices=[(u'0', u'无效'), (u'1', u'有效')])
class MiboidForm(Form): mib = TextField(u'mib', [required(message=u'必填')]) grp = TextField(u'分组', [required(message=u'必填')]) name = TextField(u'名称', [required(message=u'必填')]) alias = TextField(u'显示名', [required(message=u'必填')]) oid = TextField(u'oid') is_valid = SelectField(u'有效性', [required(message=u'必填')], choices=[(u'0', u'无效'), (u'1', u'有效')]) remark = TextAreaField(u'备注')
class TownNewForm(FormPro): parent_id = SelectFieldPro(u'所属地市', validators=[required(message=u'必填')], choices=lambda: area_choices(1, u'请选择地市')) name = TextField(u'区县名称', validators=[required(message=u'必填')]) alias = TextField(u'区县别名', validators=[required(message=u'必填')]) longitude = DecimalFieldPro(u'经度') latitude = DecimalFieldPro(u'纬度') remark = TextAreaField(u'备注')
class BranchNewForm(FormPro): cityid = SelectFieldPro(u'所属地市', choices=lambda: area_choices(1, u'请选择地市')) parent_id = SelectFieldPro(u'所属区县', validators=[required(message=u'必填')], choices=lambda: area_choices(2, u'请选择区县')) name = TextField(u'分局名称', validators=[required(message=u'必填')]) alias = TextField(u'分局别名', validators=[required(message=u'必填')]) longitude = DecimalFieldPro(u'经度') latitude = DecimalFieldPro(u'纬度') remark = TextAreaField(u'备注')
class ProfileForm(Form): name = TextField(u'真实姓名', validators=[required(message=u'必填')]) role_name = TextField(u'角色名') domain_name = TextField(u'管理域名') department = TextField(u'部门') email = TextField( u'邮箱', validators=[required(message=u'必填'), email(message=u'不是合法的邮箱地址')]) telephone = TextField(u'电话') mobile = TextField(u'手机', validators=[validate_mobile()]) memo = TextAreaField(u'备注')
class AlarmKnowledgeForm(Form): class_id = SelectFieldPro( u'告警类型', validators=[required(message=u'必填')], choices=lambda: [('', u'Choice')] + [(unicode(r.id), r.alias) for r in AlarmClass.query]) probability = SelectField(u'发生几率', validators=[required(message=u'必填')], choices=[(unicode(1), u'极少发生'), (unicode(2), u'偶尔发生'), (unicode(3), u'频繁发生')]) probable_cause = TextAreaField(u'可能原因') resolvent = TextAreaField(u'解决方案')
class ModelForm(Form): category = QuerySelectField( u'类别', get_label=u'alias', query_factory=lambda: Category.query.filter_by(obj='node')) name = TextField(u'名称', [required(message=u'必填')]) alias = TextField(u'显示名', [required(message=u'必填')]) sysoid = TextField(u'Sysoid') vendor = QuerySelectField(u'厂商', get_label=u'alias', query_factory=lambda: Vendor.query) is_valid = SelectField(u'有效性', [required(message=u'必填')], choices=[(u'0', u'无效'), (u'1', u'有效')]) remark = TextAreaField(u'备注')
class PermissionForm(Form): endpoint = TextField(u'Endpoint') module_text = TextField(u'模块显示名') name = TextField(u'子模块显示名') operation = TextField(u'操作名') default_permission = SelectField(u'有效性', [required(message=u'必填')], choices=[(u'0', u'无权限'), (u'1', u'有权限')]) next = HiddenField()
class UserNewForm(Form): username = TextField(u'用户名', validators=[required(message=u'必填')]) name = TextField(u'真实姓名', validators=[required(message=u'必填')]) password = PasswordField( u'密码', validators=[required(message=u'必填'), v.Length(min=6, max=20)]) password_confirm = PasswordField(u'重复密码', validators=[ required(message=u'必填'), equal_to('password', message=u'两次输入的密码不同') ]) role_id = SelectFieldPro( u'角色', validators=[required(message=u'必填')], choices=lambda: [('', u'请选择角色')] + [(unicode(r.id), r.name) for r in Role.query]) domain_id = SelectFieldPro( u'管理域', validators=[required(message=u'必填')], choices=lambda: [('', u'请选择管理域')] + [(unicode(d.id), d.name) for d in Domain.query]) department = TextField(u'部门') email = TextField( u'邮箱', validators=[required(message=u'必填'), email(message=u'不是合法的邮箱地址')]) telephone = TextField(u'电话') mobile = TextField(u'手机', validators=[validate_mobile()]) memo = TextAreaField(u'备注')
class RouterNewForm(FormPro): cityid = SelectFieldPro(u'所属地市', choices=lambda: area_choices(1, u'请选择地市')) town = SelectFieldPro(u'', choices=lambda: area_choices(2, u'请选择区县')) area_id = SelectFieldPro(u'所属区域', validators=[required(message=u'必填')], choices=lambda: area_choices(4, u'请选择接入点')) name = TextField(u'路由器名称', validators=[required(message=u'必填')]) alias = TextField(u'路由器别名', validators=[required(message=u'必填')]) addr = TextField(u'IP 地址', validators=[ required(message=u'必填'), IPAddress(message=u'IP地址格式不正确'), NoneOf(['0.0.0.0', '255.255.255.255'], message=u'IP地址格式不正确') ]) snmp_comm = TextField(u'读团体名', validators=[required(message=u'必填')]) snmp_wcomm = TextField(u'写团体名', validators=[required(message=u'必填')]) snmp_ver = RadioField(u'SNMP版本', default=SNMP_VER_DICT.keys()[0], validators=[required(message=u'必填')], choices=[(value, label) for value, label in SNMP_VER_DICT.items()]) mask = TextField(u'子网掩码') location = TextField(u'位置') remark = TextAreaField(u'备注信息')
class AlarmClassForm(Form): id = HiddenField(u'Id') severity = SelectFieldPro(u'级别', validators=[required(message=u'必填')], choices=lambda: [(unicode(r.id), r.alias) for r in AlarmSeverity.query]) #x733_type = tables.Column(verbose_name=u'X733类型') probable_cause = TextAreaField(u'可能原因') specific_problem = TextAreaField(u'特定原因') additional_info = TextAreaField(u'附加信息') remark = TextAreaField(u'备注')
class SysoidForm(Form): sysoid = TextField(u'SysOid', [required(message=u'必填')]) model = QuerySelectField(u'设备型号', get_label=u'alias', query_factory=lambda: Model.query) disco = TextField(u'发现模块') mib = QuerySelectField( u'Mib文件', get_pk=lambda x: x, get_label=lambda x: x, query_factory=lambda: [m[0] for m in db.session.query(Miboid.mib).distinct().all()]) remark = TextAreaField(u'备注')
class OnuNewForm(FormPro): ctrl_id = SelectFieldPro(u'所属OLT', validators=[required(message=u'必填')], choices=lambda: olt_choices(3, u'请选择OLT')) area_id = SelectFieldPro(u'接入点', validators=[required(message=u'必填')], choices=lambda: area_choices(4, u'请选择接入点')) name = TextField(u'ONU名称', validators=[required(message=u'必填')]) alias = TextField(u'ONU别名', validators=[required(message=u'必填')]) addr = TextField(u'IP 地址', validators=[ required(message=u'必填'), IPAddress(message=u'IP地址格式不正确'), NoneOf(['0.0.0.0', '255.255.255.255'], message=u'IP地址格式不正确') ]) snmp_comm = TextField(u'读团体名', validators=[required(message=u'必填')]) snmp_wcomm = TextField(u'写团体名', validators=[required(message=u'必填')]) snmp_ver = RadioField(u'SNMP版本', default=SNMP_VER_DICT.keys()[0], validators=[required(message=u'必填')], choices=[(value, label) for value, label in SNMP_VER_DICT.items()]) vendor_id = SelectFieldPro( u'ONU厂商', validators=[required(message=u'必填')], choices=lambda: [('', u'请选择厂商')] + [(unicode(r.id), r.alias) for r in Vendor.query.filter( Vendor.is_valid == 1)]) model_id = SelectFieldPro(u'ONU型号', validators=[required(message=u'必填')], choices=lambda: [('', u'请选择型号')] + [(unicode(r.id), r.alias) for r in Model.query.filter(Model.is_valid == 1) .filter(Model.category_id == 21)]) mask = TextField(u'子网掩码') location = TextField(u'位置') remark = TextAreaField(u'备注信息')
class UserEditForm(Form): name = TextField(u'真实姓名', validators=[required(message=u'必填')]) role_id = SelectFieldPro( u'角色', validators=[required(message=u'必填')], choices=lambda: [('', u'请选择角色')] + [(unicode(r.id), r.name) for r in Role.query]) domain_id = SelectFieldPro( u'管理域', validators=[required(message=u'必填')], choices=lambda: [('', u'请选择管理域')] + [(unicode(d.id), d.name) for d in Domain.query]) department = TextField(u'部门') email = TextField( u'邮箱', validators=[required(message=u'必填'), email(message=u'不是合法的邮箱地址')]) telephone = TextField(u'电话') mobile = TextField(u'手机', validators=[validate_mobile()]) memo = TextAreaField(u'备注')
class EocNewForm(FormPro): cityid = SelectFieldPro(u'所属地市', choices=lambda: area_choices(1, u'请选择地市')) town = SelectFieldPro(u'', choices=lambda: area_choices(2, u'请选择区县')) area_id = SelectFieldPro(u'所属区域', validators=[required(message=u'必填')], choices=lambda: area_choices(3, u'请选择分局')) name = TextField(u'EOC名称', validators=[required(message=u'必填')]) alias = TextField(u'EOC别名', validators=[required(message=u'必填')]) addr = TextField(u'IP 地址', validators=[ required(message=u'必填'), IPAddress(message=u'IP地址格式不正确'), NoneOf(['0.0.0.0', '255.255.255.255'], message=u'IP地址格式不正确') ]) snmp_comm = TextField(u'读团体名', validators=[required(message=u'必填')]) snmp_wcomm = TextField(u'写团体名', validators=[required(message=u'必填')]) snmp_ver = RadioField(u'SNMP版本', default=SNMP_VER_DICT.keys()[0], validators=[required(message=u'必填')], choices=[(value, label) for value, label in SNMP_VER_DICT.items()]) vendor = QuerySelectField( u'EOC厂商', query_factory=lambda: Vendor.query.filter(Vendor.is_valid == 1), allow_blank=True, blank_text=u'请选择厂商', get_label='alias') model = QuerySelectField( u'EOC型号', query_factory=lambda: Model.query.filter(Model.is_valid == 1).filter( Model.category_id == 50), allow_blank=True, blank_text=u'请选择型号', get_label='alias') mask = TextField(u'子网掩码') esn = TextField(u'ESN') owner = TextField(u'维护人员') contact_tel = TextField(u'联系电话') location = TextField(u'安装地址') install_time = DateFieldPro(u'安装时间') remark = TextAreaField(u'备注信息')
class AlarmClearForm(Form): cleared_note = TextAreaField(u'清除说明', validators=[required(message=u'必填')])
class AlarmAckForm(Form): acked_note = TextAreaField(u'确认说明', validators=[required(message=u'必填')])
class QueryNewForm(Form): tab = HiddenField() name = TextField(u'名称', validators=[required(message=u'必填')]) is_public = BooleanField()
class VendorForm(Form): name = TextField(u'名称', [required(message=u'必填')]) alias = TextField(u'显示名', [required(message=u'必填')]) url = TextField(u'厂商主页') is_valid = SelectField(u'有效性', [required(message=u'必填')], choices=[(u'0', u'无效'), (u'1', u'有效')])
class RoleForm(Form): name = TextField(u'角色名', validators=[required(message=u'必填')]) description = TextField(u'描述')
def scaffold_form(self): form = super(UserView, self).scaffold_form() form.pw_hash = PasswordField(validators=[required()]) form.roles.kwargs['validators'] = [] return form
class CityNewForm(FormPro): name = TextField(u'地市名称', validators=[required(message=u'必填')]) alias = TextField(u'地市别名', validators=[required(message=u'必填')]) longitude = DecimalFieldPro(u'经度') latitude = DecimalFieldPro(u'纬度') remark = TextAreaField(u'备注')
class DomainForm(Form): name = TextField(u'名称', validators=[required(message=u'必填')]) description = TextField(u'描述')