예제 #1
0
def builder_add_form(areas=[]):
    return btforms.Form(btforms.Textbox('builder_name',
                                        rules.len_of(2, 128),
                                        description=u'服务人员姓名',
                                        required='required',
                                        **input_style),
                        btforms.Textbox('builder_phone',
                                        rules.len_of(2, 128),
                                        description=u'服务人员电话',
                                        required='required',
                                        **input_style),
                        btforms.Dropdown('areas',
                                         description=u'关联社区',
                                         args=areas,
                                         multiple='multiple',
                                         size=5,
                                         required='required',
                                         **input_style),
                        btforms.Button('submit',
                                       type='submit',
                                       html=u'<b>提交</b>',
                                       **button_style),
                        title=u'创建服务人员',
                        htopic='builder',
                        action='/admin/builder/add')
예제 #2
0
def issues_add_form(oprs=[]):
    return btforms.Form(btforms.Textbox('account_number',
                                        rules.len_of(1, 32),
                                        description=u'用户账号',
                                        readonly='readonly',
                                        **input_style),
                        btforms.Dropdown('issues_type',
                                         description=u'工单类型',
                                         args=issues_types.items(),
                                         **input_style),
                        btforms.Textarea('content',
                                         rules.len_of(1, 1024),
                                         description=u'工单内容',
                                         rows=6,
                                         required='required',
                                         **input_style),
                        btforms.Dropdown('builder_name',
                                         description=u'指派施工人员',
                                         args=oprs,
                                         required='required',
                                         **input_style),
                        btforms.Button('submit',
                                       type='submit',
                                       html=u'<b> 提交 </b>',
                                       **button_style),
                        action='/admin/issues/add',
                        title=u'创建用户工单')()
예제 #3
0
def customer_update_form(nodes=[]):
    return btforms.Form(btforms.Hidden('account_number', description=u'用户账号'),
                        btforms.Dropdown('node_id',
                                         description=u'区域*',
                                         args=nodes,
                                         required='required',
                                         **input_style),
                        btforms.Dropdown('area_id',
                                         description=u'社区*',
                                         args=[],
                                         required='required',
                                         **input_style),
                        btforms.Hidden('customer_id',
                                       description=u'mid',
                                       required='required',
                                       **input_style),
                        btforms.Textbox('realname',
                                        rules.len_of(1, 64),
                                        description=u'用户姓名',
                                        required='required',
                                        **input_style),
                        btforms.Hidden('customer_name',
                                       description=u'自助服务用户名',
                                       readonly='readonly',
                                       autocomplete='off',
                                       **input_style),
                        btforms.Hidden('new_password',
                                       rules.len_of(0, 128),
                                       value='',
                                       description=u'自助服务密码(留空不修改)',
                                       **input_style),
                        btforms.Textbox('email',
                                        rules.len_of(0, 128),
                                        description=u'电子邮箱',
                                        **input_style),
                        btforms.Textbox('idcard',
                                        rules.len_of(0, 32),
                                        description=u'证件号码',
                                        **input_style),
                        btforms.Textbox('mobile',
                                        rules.len_of(0, 32),
                                        description=u'用户手机号码',
                                        **input_style),
                        btforms.Textbox('address',
                                        description=u'用户地址',
                                        hr=True,
                                        **input_style),
                        btforms.Textarea('customer_desc',
                                         description=u'用户描述',
                                         rows=4,
                                         **input_style),
                        btforms.Button('submit',
                                       type='submit',
                                       html=u'<b>提交</b>',
                                       **button_style),
                        title=u'用户基本信息修改',
                        action='/admin/customer/update')
예제 #4
0
def bind_form():
    return btforms.Form(btforms.Hidden('openid', description=u'openid'),
                        btforms.Textbox('username',
                                        rules.len_of(1, 32),
                                        description=u'账号名称',
                                        required='required',
                                        **input_style),
                        btforms.Password('password',
                                         rules.len_of(1, 32),
                                         description=u'账号密码',
                                         required='required',
                                         **input_style),
                        btforms.Button('submit',
                                       type='submit',
                                       html=u'<b>绑定</b>',
                                       **button_style),
                        title=u'用户微信绑定',
                        action='')
예제 #5
0
def operator_add_form(nodes=[], products=[]):
    return btforms.Form(btforms.Textbox('operator_name',
                                        rules.len_of(2, 32),
                                        description=u'操作员名称',
                                        required='required',
                                        **input_style),
                        btforms.Textbox('operator_desc',
                                        rules.len_of(0, 255),
                                        description=u'操作员姓名',
                                        **input_style),
                        btforms.Password('operator_pass',
                                         rules.len_of(6, 128),
                                         description=u'操作员密码',
                                         required='required',
                                         **input_style),
                        btforms.Dropdown('operator_status',
                                         description=u'操作员状态',
                                         args=opr_status_dict.items(),
                                         required='required',
                                         **input_style),
                        btforms.Dropdown('operator_nodes',
                                         description=u'关联区域(多选)',
                                         args=nodes,
                                         required='required',
                                         multiple='multiple',
                                         size=4,
                                         **input_style),
                        btforms.Dropdown('operator_products',
                                         description=u'关联资费(多选)',
                                         args=products,
                                         required='required',
                                         multiple='multiple',
                                         size=6,
                                         **input_style),
                        btforms.Button('submit',
                                       type='submit',
                                       html=u'<b>提交</b>',
                                       **button_style),
                        title=u'创建操作员',
                        action='/admin/operator/add')
예제 #6
0
def operator_update_form(nodes=[], products=[]):
    return btforms.Form(btforms.Hidden('id', description=u'编号'),
                        btforms.Textbox('operator_name',
                                        description=u'操作员名称',
                                        readonly='readonly',
                                        **input_style),
                        btforms.Textbox('operator_desc',
                                        rules.len_of(0, 255),
                                        description=u'操作员姓名',
                                        **input_style),
                        btforms.Password('operator_pass',
                                         rules.len_of(0, 128),
                                         description=u'操作员密码(留空不修改)',
                                         autocomplete='off',
                                         **input_style),
                        btforms.Dropdown('operator_status',
                                         description=u'操作员状态',
                                         args=opr_status_dict.items(),
                                         required='required',
                                         **input_style),
                        btforms.Dropdown('operator_nodes',
                                         description=u'关联区域(多选)',
                                         args=nodes,
                                         required='required',
                                         multiple='multiple',
                                         size=4,
                                         **input_style),
                        btforms.Dropdown('operator_products',
                                         description=u'关联资费(多选)',
                                         args=products,
                                         required='required',
                                         multiple='multiple',
                                         size=6,
                                         **input_style),
                        btforms.Button('submit',
                                       type='submit',
                                       html=u'<b>提交</b>',
                                       **button_style),
                        title=u'修改操作员',
                        action='/admin/operator/update')
예제 #7
0
def issues_process_form():
    return btforms.Form(btforms.Hidden('issues_id',
                                       rules.len_of(1, 32),
                                       description=u'工单id',
                                       required='required',
                                       **input_style),
                        btforms.Textarea('accept_result',
                                         rules.len_of(1, 1024),
                                         description=u'处理描述',
                                         rows=6,
                                         required='required',
                                         **input_style),
                        btforms.Dropdown('accept_status',
                                         description=u'处理结果',
                                         args=process_status.items(),
                                         required='required',
                                         **input_style),
                        btforms.Button('submit',
                                       type='submit',
                                       html=u'<b> 处理用户工单 </b>',
                                       **button_style),
                        action='/admin/issues/process',
                        title=u'处理用户工单')()
예제 #8
0
def node_update_form(rule_ids=[], bas_ids=[]):
    return btforms.Form(btforms.Hidden('id', description=u'区域ID'),
                        btforms.Textbox('node_name',
                                        rules.len_of(2, 32),
                                        description=u'区域名称',
                                        **input_style),
                        btforms.Dropdown('node_type',
                                         description=u'区域接入类型',
                                         args=node_types.items(),
                                         required='required',
                                         help=u'仅提供设备同步使用',
                                         **input_style),
                        btforms.Dropdown('rule_id',
                                         description=u'账号生成规则',
                                         args=rule_ids,
                                         required='required',
                                         **input_style),
                        btforms.Dropdown('bas_id',
                                         description=u'绑定接入设备',
                                         args=bas_ids,
                                         multiple='multiple',
                                         size=6,
                                         **input_style),
                        btforms.Textarea('node_desc',
                                         rules.len_of(2, 128),
                                         description=u'区域描述',
                                         rows=3,
                                         required='required',
                                         **input_style),
                        btforms.Button('submit',
                                       type='submit',
                                       html=u'<b>更新</b>',
                                       **button_style),
                        title=u'修改区域',
                        htopic='node',
                        action='/admin/node/update')
예제 #9
0
def account_change_form(products=[]):
    return btforms.Form(btforms.Hidden('account_number',
                                       description=u'用户账号',
                                       required='required',
                                       **input_style),
                        btforms.Dropdown('product_id',
                                         args=products,
                                         description=u'资费',
                                         required='required',
                                         **input_style),
                        btforms.Textbox('add_value',
                                        rules.is_rmb,
                                        description=u'缴费金额',
                                        required='required',
                                        value='0',
                                        **input_style),
                        btforms.Textbox('expire_date',
                                        rules.is_date,
                                        description=u'过期日期',
                                        value='0000-00-00',
                                        **input_style),
                        btforms.Textbox('balance',
                                        rules.is_rmb,
                                        description=u'用户变更后余额',
                                        value='0.00',
                                        **input_style),
                        btforms.Textbox('time_length',
                                        description=u'用户时长(小时)',
                                        value='0.00',
                                        **input_style),
                        btforms.Textbox('flow_length',
                                        description=u'用户流量(G)',
                                        value='0',
                                        **input_style),
                        btforms.Textarea('operate_desc',
                                         rules.len_of(0, 512),
                                         description=u'操作描述',
                                         rows=4,
                                         **input_style),
                        btforms.Button('submit',
                                       type='submit',
                                       html=u'<b>提交</b>',
                                       **button_style),
                        title=u'用户资费变更',
                        action='/admin/account/change')
예제 #10
0
def agency_recharge_form():
    return btforms.Form(btforms.Hidden('agency_id', description=u'编号'), btforms.Textbox('agency_name', rules.len_of(1, 255), description=u'代理商名称', readonly='readonly', **input_style), btforms.Textbox('fee_value', rules.is_rmb, description=u'充值金额', **input_style), btforms.Button('submit', type='submit', html=u'<b>提交</b>', **button_style), title=u'代理商充值', action='/admin/agency/recharge')
예제 #11
0
product_attr_add_form = btforms.Form(btforms.Hidden('product_id',
                                                    description=u'资费编号'),
                                     btforms.Dropdown(
                                         'attr_type',
                                         args=attrtype_dict.items(),
                                         description=u'属性类型',
                                         required='required',
                                         **input_style),
                                     btforms.Dropdown('attr_types',
                                                      args=attr_types.items(),
                                                      description=u'预定义属性',
                                                      required='required',
                                                      **input_style),
                                     btforms.Textbox('attr_name',
                                                     rules.len_of(1, 255),
                                                     description=u'属性名称',
                                                     required='required',
                                                     help=u'属性参考',
                                                     **input_style),
                                     btforms.Textbox('attr_value',
                                                     rules.len_of(1, 255),
                                                     description=u'属性值',
                                                     required='required',
                                                     **input_style),
                                     btforms.Textbox('attr_desc',
                                                     rules.len_of(1, 255),
                                                     description=u'属性描述',
                                                     required='required',
                                                     **input_style),
                                     btforms.Button('submit',
예제 #12
0
#!/usr/bin/env python
# coding=utf-8
from taurusxradius.taurusxlib import btforms
from taurusxradius.taurusxlib.btforms import dataform
from taurusxradius.taurusxlib.btforms import rules
from taurusxradius.taurusxlib.btforms.rules import button_style, input_style
from taurusxradius.modules.settings import *
button_style = {'class': 'btn btn-sm'}
tpl_types = {OpenNotify: u'用户开户通知模板',
 NextNotify: u'用户续费通知模板',
 ExpireNotify: u'用户到期通知模板',
 IssuesNotify: u'工单通知模板',
 VcodeNotify: u'验证码通知模板'}
content_tpl_add_form = btforms.Form(btforms.Dropdown('tpl_type', args=tpl_types.items(), description=u'模板类型', required='required', **input_style), btforms.Textbox('tpl_id', rules.not_null, description=u'模板ID', required='required', **input_style), btforms.Textarea('tpl_content', rules.len_of(2, 1024), description=u'模板内容', rows=7, required='required', **input_style), btforms.Button('submit', type='submit', html=u'<b>提交</b>', **button_style), title=u'创建模板', action='/admin/contenttpl/add')
content_tpl_update_form = btforms.Form(btforms.Hidden('id', description=u'模板ID'), btforms.Dropdown('tpl_type', args=tpl_types.items(), description=u'模板类型', **input_style), btforms.Textbox('tpl_id', rules.not_null, description=u'模板ID', required='required', **input_style), btforms.Textarea('tpl_content', rules.len_of(2, 1024), description=u'模板内容', rows=7, required='required', **input_style), btforms.Button('submit', type='submit', html=u'<b>更新</b>', **button_style), title=u'修改模板', action='/admin/contenttpl/update')
예제 #13
0
def register_customer_open_form():
    form = btforms.Form(title=u'用户注册开户')
    items = form.inputs = []
    items.append(
        btforms.Textbox('node_id',
                        description=u'区域*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('area_id',
                        description=u'社区*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('realname',
                        rules.len_of(1, 64),
                        description=u'用户姓名*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('idcard',
                        rules.len_of(0, 18),
                        description=u'证件号码*',
                        **input_style))
    items.append(
        btforms.Textbox('mobile',
                        rules.len_of(0, 11),
                        description=u'用户手机号码*',
                        **input_style))
    items.append(btforms.Textbox('email', description=u'电子邮箱*', **input_style))
    items.append(
        btforms.Textbox('address',
                        rules.len_of(1, 255),
                        description=u'用户地址',
                        hr=True,
                        **input_style))
    items.append(
        btforms.Textbox('account_number',
                        description=u'用户账号*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('password',
                        description=u'认证密码*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('ip_address', description=u'用户IP地址', **input_style))
    items.append(
        btforms.Textbox('product_id',
                        description=u'资费*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('agency_id', description=u'代理商', **input_style))
    items.append(
        btforms.Textbox('charge_code', description=u'收费项', **input_style))
    items.append(
        btforms.Textbox('months', description=u'月数(包月有效)', **input_style))
    items.append(
        btforms.Textbox('days', description=u'天数(包日有效)', **input_style))
    items.append(
        btforms.Textbox('giftdays',
                        rules.is_number,
                        description=u'赠送天数',
                        help=u'包月资费,买断包月资费有效',
                        value=0,
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('giftflows',
                        rules.is_number,
                        description=u'赠送流量(G)',
                        help=u'流量包月资费有效',
                        value=0,
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('fee_value',
                        rules.is_rmb,
                        description=u'缴费金额(套餐资费+收费项)*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('expire_date',
                        rules.is_date,
                        description=u'过期日期*',
                        readonly='readonly',
                        **input_style))
    items.append(
        btforms.Hidden('status', value=1, description=u'用户状态', **input_style))
    items.append(
        btforms.Textbox('builder_name', description=u'指派施工人员', **input_style))
    items.append(
        btforms.Textarea('customer_desc',
                         description=u'备注信息',
                         rows=4,
                         **input_style))
    items.append(
        btforms.Textbox('billing_type', description=u'计费开始时间', **input_style))
    items.append(btforms.Hidden('account_rule', description=u'账号生成规则'))
    return form
예제 #14
0
def product_add_form(policy=0, charges=[], pools=[]):
    _policy = int(policy)
    form = btforms.Form(title=u'创建资费', action='/admin/product/add')
    form.inputs = []
    additem = form.inputs.append
    additem(
        btforms.Textbox('product_id',
                        rules.is_alphanum2(4, 32),
                        description=u'资费编码',
                        required='required',
                        **input_style))
    additem(
        btforms.Textbox('product_name',
                        rules.len_of(4, 64),
                        description=u'资费名称',
                        required='required',
                        **input_style))
    additem(
        btforms.Dropdown('ispub',
                         args=boolean.items(),
                         description=u'是否发布到自助订购套餐',
                         **input_style))
    additem(btforms.Hidden('product_policy', value=policy, description=u''))
    if _policy == PPMonth:
        form.desc = u'预付费包月:以每月单价为基础,用户可自由订购多月,到期即停止服务。'
        additem(
            btforms.Textbox('fee_price',
                            rules.is_rmb,
                            description=u'每月单价(元)',
                            required='required',
                            **input_style))
        additem(btforms.Hidden('fee_flows', value=0, description=u'买断流量(G)'))
        additem(btforms.Hidden('fee_times', value=0, description=u'买断时长(小时)'))
        additem(btforms.Hidden('fee_months', value=0, description=u'买断授权月数'))
        additem(btforms.Hidden('fee_days', value=0, description=u'买断授权天数'))
    elif _policy == APMonth:
        form.desc = u'后付费包月:以每月单价为基础,先使用,下个月初期生成使用账单'
        additem(
            btforms.Textbox('fee_price',
                            rules.is_rmb,
                            description=u'每月单价(元)',
                            required='required',
                            **input_style))
        additem(btforms.Hidden('fee_flows', value=0, description=u'买断流量(G)'))
        additem(btforms.Hidden('fee_times', value=0, description=u'买断时长(小时)'))
        additem(btforms.Hidden('fee_months', value=0, description=u'买断授权月数'))
        additem(btforms.Hidden('fee_days', value=0, description=u'买断授权天数'))
    elif _policy == BOMonth:
        form.desc = u'买断包月:以月为单位进行套餐打包(如包季度,半年,一年等),设定买断总价,用户一次性订购,到期即停止服务。'
        additem(
            btforms.Textbox('fee_price',
                            rules.is_rmb,
                            description=u'买断包月总价(元)',
                            required='required',
                            **input_style))
        additem(
            btforms.Textbox('fee_months',
                            rules.is_number,
                            description=u'买断授权月数',
                            value=0,
                            **input_style))
        additem(btforms.Hidden('fee_times', value=0, description=u'买断时长(小时)'))
        additem(btforms.Hidden('fee_flows', value=0, description=u'买断流量(G)'))
        additem(btforms.Hidden('fee_days', value=0, description=u'买断授权天数'))
    elif _policy == BOTimes:
        form.desc = u'买断时长:一次性将固定的时长打包为套餐,提供用户一次性订购,在使用过程中实时扣除时间,扣完为止。(设备必须支持实时记帐),剩余时长为零时停止服务'
        additem(
            btforms.Textbox('fee_price',
                            rules.is_rmb,
                            description=u'买断时长总价(元)',
                            required='required',
                            **input_style))
        additem(
            btforms.Textbox('fee_times',
                            rules.is_number3,
                            description=u'买断时长(小时)',
                            value=0,
                            **input_style))
        additem(btforms.Hidden('fee_flows', value=0, description=u'买断流量(G)'))
        additem(btforms.Hidden('fee_days', value=0, description=u'买断授权天数'))
        additem(btforms.Hidden('fee_months', value=0, description=u'买断授权月数'))
    elif _policy == BOFlows:
        form.desc = u'买断流量:一次性将固定的流量打包为套餐,提供用户一次性订购,在使用过程中实时扣除流量,扣完为止。(设备必须支持实时记帐),剩余流量为零时停止服务。'
        additem(
            btforms.Textbox('fee_price',
                            rules.is_rmb,
                            description=u'买断流量总价(元)',
                            required='required',
                            **input_style))
        additem(
            btforms.Textbox('fee_flows',
                            rules.is_number3,
                            description=u'买断流量(G)',
                            value=0,
                            **input_style))
        additem(btforms.Hidden('fee_times', value=0, description=u'买断时长(小时)'))
        additem(btforms.Hidden('fee_days', value=0, description=u'买断授权天数'))
        additem(btforms.Hidden('fee_months', value=0, description=u'买断授权月数'))
    elif _policy == PPDay:
        form.desc = u'预付费包日:以每日单价为基础,用户可自由订购多日,到期即停止服务。'
        additem(
            btforms.Textbox('fee_price',
                            rules.is_rmb,
                            description=u'每日单价(元)',
                            required='required',
                            **input_style))
        additem(btforms.Hidden('fee_times', value=0, description=u'买断时长(小时)'))
        additem(btforms.Hidden('fee_flows', value=0, description=u'买断流量(G)'))
        additem(btforms.Hidden('fee_days', value=0, description=u'买断授权天数'))
        additem(btforms.Hidden('fee_months', value=0, description=u'买断授权月数'))
    elif _policy == BODay:
        form.desc = u'买断包日:以日为单位进行套餐打包(任意天数),设定买断总价,用户一次性订购,到期即停止服务。'
        additem(
            btforms.Textbox('fee_price',
                            rules.is_rmb,
                            description=u'买断包日总价(元)',
                            required='required',
                            **input_style))
        additem(
            btforms.Textbox('fee_days',
                            rules.is_number3,
                            description=u'买断授权天数',
                            value=0,
                            **input_style))
        additem(btforms.Hidden('fee_flows', value=0, description=u'买断流量(G)'))
        additem(btforms.Hidden('fee_times', value=0, description=u'买断时长(小时)'))
        additem(btforms.Hidden('fee_months', value=0, description=u'买断授权月数'))
    additem(
        btforms.Dropdown('product_charges',
                         description=u'关联收费项(多选)',
                         args=charges,
                         multiple='multiple',
                         size=6,
                         **input_style))
    additem(
        btforms.Dropdown('addr_pool',
                         args=pools,
                         description=u'地址池',
                         **input_style))
    additem(
        btforms.Textbox('concur_number',
                        rules.is_numberOboveZore,
                        description=u'同时在线数(0表示不限制)',
                        value='0',
                        **input_style))
    additem(
        btforms.Dropdown('bind_mac',
                         args=boolean.items(),
                         description=u'是否绑定MAC ',
                         **input_style))
    additem(
        btforms.Dropdown('bind_vlan',
                         args=boolean.items(),
                         description=u'是否绑定VLAN ',
                         **input_style))
    additem(
        btforms.Textbox('input_max_limit',
                        rules.is_number3,
                        description=u'最大上行速率(Mbps)',
                        required='required',
                        **input_style))
    additem(
        btforms.Textbox('output_max_limit',
                        rules.is_number3,
                        description=u'最大下行速率(Mbps)',
                        required='required',
                        **input_style))
    additem(
        btforms.Dropdown('free_auth',
                         args=boolean.items(),
                         description=u'支持到期免费授权',
                         **input_style))
    additem(
        btforms.Textbox('free_auth_uprate',
                        rules.is_number3,
                        description=u' 免费授权最大上行速率(Mbps)',
                        **input_style))
    additem(
        btforms.Textbox('free_auth_downrate',
                        rules.is_number3,
                        description=u'免费授权最大下行速率(Mbps)',
                        **input_style))
    additem(
        btforms.Button('submit',
                       type='submit',
                       id='submit',
                       html=u'<b>提交</b>',
                       **button_style))
    return form
예제 #15
0
def agency_update_form(nodes = [], products = []):
    return btforms.Form(btforms.Hidden('agency_id', description=u'编号'), btforms.Textbox('agency_name', rules.len_of(1, 255), description=u'代理商名称', **input_style), btforms.Textbox('contact', rules.not_null, description=u'联系人', **input_style), btforms.Textbox('mobile', rules.len_of(1, 255), description=u'手机号码', **input_style), btforms.Textbox('share_rate', rules.is_number, description=u'分成比例(0-100)', **input_style), btforms.Textbox('operator_name', description=u'操作员名称', readonly='readonly', **input_style), btforms.Textbox('operator_desc', rules.len_of(0, 255), description=u'操作员姓名', **input_style), btforms.Password('operator_pass', rules.len_of(0, 128), description=u'操作员密码(留空不修改)', autocomplete='off', **input_style), btforms.Dropdown('operator_status', description=u'操作员状态', args=opr_status_dict.items(), required='required', **input_style), btforms.Dropdown('operator_nodes', description=u'关联区域(多选)', args=nodes, required='required', multiple='multiple', size=4, **input_style), btforms.Dropdown('operator_products', description=u'关联资费(多选)', args=products, required='required', multiple='multiple', size=6, **input_style), btforms.Textarea('agency_desc', description=u'代理商描述', rows=2, **input_style), btforms.Button('submit', type='submit', html=u'<b>提交</b>', **button_style), title=u'代理商修改', action='/admin/agency/update')
예제 #16
0
#!/usr/bin/env python
# coding=utf-8
from taurusxradius.taurusxlib import btforms
from taurusxradius.taurusxlib.btforms import rules
from taurusxradius.taurusxlib.btforms.rules import button_style, input_style
button_style = {'class': 'btn btn-sm'}
password_update_form = btforms.Form(btforms.Textbox('tr_user',
                                                    description=u'管理员名',
                                                    size=32,
                                                    readonly='readonly',
                                                    **input_style),
                                    btforms.Password('tr_user_pass',
                                                     rules.len_of(4, 32),
                                                     description=u'管理员新密码',
                                                     size=32,
                                                     value='',
                                                     required='required',
                                                     **input_style),
                                    btforms.Password('tr_user_pass_chk',
                                                     rules.len_of(4, 32),
                                                     description=u'确认管理员新密码',
                                                     size=32,
                                                     value='',
                                                     required='required',
                                                     **input_style),
                                    btforms.Button('submit',
                                                   type='submit',
                                                   html=u'<b>更新</b>',
                                                   **button_style),
                                    title=u'管理密码更新',
                                    action='/admin/password')
예제 #17
0
def agency_add_form(nodes = [], products = []):
    return btforms.Form(btforms.Textbox('agency_name', rules.len_of(1, 255), description=u'代理商名称', **input_style), btforms.Textbox('contact', rules.not_null, description=u'联系人', **input_style), btforms.Textbox('mobile', rules.len_of(1, 255), description=u'手机号码', **input_style), btforms.Textbox('amount', rules.is_rmb, description=u'初始余额', **input_style), btforms.Textbox('share_rate', rules.is_number, description=u'分成比例(0-100)', **input_style), btforms.Textbox('operator_name', rules.len_of(2, 32), description=u'操作员名称', required='required', **input_style), btforms.Password('operator_pass', rules.len_of(6, 128), description=u'操作员密码', required='required', **input_style), btforms.Dropdown('operator_nodes', description=u'关联区域(多选)', args=nodes, required='required', multiple='multiple', size=4, **input_style), btforms.Dropdown('operator_products', description=u'关联资费(多选)', args=products, required='required', multiple='multiple', size=6, **input_style), btforms.Textarea('agency_desc', description=u'代理商描述', rows=2, **input_style), btforms.Button('submit', type='submit', html=u'<b>提交</b>', **button_style), title=u'代理商开户', action='/admin/agency/add')
예제 #18
0
def bas_update_form(nodes = []):
    return btforms.Form(btforms.Hidden('id', description=u'编号'), btforms.Textbox('ip_addr', rules.is_ip, description=u'接入设备地址', **input_style), btforms.Textbox('bas_name', rules.len_of(2, 64), description=u'接入设备名称', required='required', **input_style), btforms.Textbox('nas_id', rules.len_of(4, 32), description=u'接入设备标识', help=u'动态IP专用', **input_style), btforms.Textbox('bas_secret', rules.is_alphanum2(4, 32), description=u'共享秘钥', required='required', **input_style), btforms.Dropdown('vendor_id', description=u'接入设备类型', args=bastype.items(), required='required', **input_style), btforms.Dropdown('portal_vendor', description=u'portal协议', args=portaltype.items(), required='required', **input_style), btforms.Textbox('ac_port', rules.is_number, description=u'无线控制器端口', default=2000, **input_style), btforms.Textbox('coa_port', rules.is_number, description=u'授权端口', default=3799, required='required', **input_style), btforms.Dropdown('time_type', description=u'时间类型', args=timetype.items(), required='required', **input_style), btforms.Dropdown('nodes', description=u'绑定区域(多选)', args=nodes, required='required', multiple='multiple', size=6, **input_style), btforms.Button('submit', type='submit', html=u'<b>更新</b>', **button_style), attrs=dict(mselect=['nodes']), title=u'修改接入设备', htopic='bas', action='/admin/bas/update')
예제 #19
0
#!/usr/bin/env python
# coding=utf-8
from taurusxradius.taurusxlib import btforms
from taurusxradius.taurusxlib.btforms import dataform
from taurusxradius.taurusxlib.btforms import rules
from taurusxradius.taurusxlib.btforms.rules import button_style, input_style
button_style = {'class': 'btn btn-sm'}
tpl_types = {
    'open': u'开户',
    'next': u'续费',
    'change': u'变更',
    'charge': u'充值',
    'cancel': u'销户'
}
print_tpl_add_form = btforms.Form(btforms.Textbox('tpl_name',
                                                  rules.len_of(2, 128),
                                                  description=u'模板名',
                                                  required='required',
                                                  **input_style),
                                  btforms.Dropdown('tpl_types',
                                                   description=u'打印类型(多选)',
                                                   args=tpl_types.items(),
                                                   required='required',
                                                   multiple='multiple',
                                                   size=5,
                                                   **input_style),
                                  btforms.Textarea('tpl_content',
                                                   rules.not_null,
                                                   description=u'模板内容',
                                                   rows=14,
                                                   required='required',
예제 #20
0
def customer_open_form(nodes=[], products=[], agencies=[]):
    form = btforms.Form(title=u'用户正常开户', action='/admin/customer/open')
    items = form.inputs = []
    items.append(
        btforms.Dropdown('node_id',
                         description=u'区域*',
                         args=nodes,
                         required='required',
                         **input_style))
    items.append(
        btforms.Dropdown('area_id',
                         description=u'社区*',
                         args=[],
                         required='required',
                         **input_style))
    items.append(
        btforms.Textbox('realname',
                        rules.len_of(1, 64),
                        description=u'用户姓名*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('idcard',
                        rules.len_of(0, 18),
                        description=u'证件号码*',
                        **input_style))
    items.append(
        btforms.Textbox('mobile',
                        rules.len_of(0, 11),
                        description=u'用户手机号码*',
                        **input_style))
    items.append(btforms.Textbox('email', description=u'电子邮箱*', **input_style))
    items.append(
        btforms.Textbox('address',
                        rules.len_of(1, 255),
                        description=u'用户地址',
                        hr=True,
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('account_number',
                        description=u'用户账号*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('password',
                        description=u'认证密码*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Button('button',
                       type='button',
                       onclick='reBuildAccount();',
                       html=u'<b>生成账号密码</b>',
                       **_btn_style))
    items.append(
        btforms.Textbox('ip_address', description=u'用户IP地址', **input_style))
    items.append(
        btforms.Dropdown('product_id',
                         args=products,
                         description=u'资费*',
                         required='required',
                         **input_style))
    items.append(
        btforms.Dropdown('agency_id',
                         args=agencies,
                         description=u'代理商',
                         **input_style))
    items.append(
        btforms.Dropdown('charge_code',
                         args=[],
                         description=u'收费项',
                         **input_style))
    items.append(
        btforms.Textbox('months', description=u'月数(包月有效)', **input_style))
    items.append(
        btforms.Textbox('days', description=u'天数(包日有效)', **input_style))
    items.append(
        btforms.Textbox('giftdays',
                        rules.is_number,
                        description=u'赠送天数',
                        help=u'包月资费,买断包月资费有效',
                        value=0,
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('giftflows',
                        rules.is_number,
                        description=u'赠送流量(G)',
                        help=u'流量包月资费有效',
                        value=0,
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('fee_value',
                        rules.is_rmb,
                        description=u'缴费金额(套餐资费+收费项)*',
                        required='required',
                        **input_style))
    items.append(
        btforms.Textbox('expire_date',
                        rules.is_date,
                        description=u'过期日期*',
                        readonly='readonly',
                        **input_style))
    items.append(
        btforms.Hidden('status', value=1, description=u'用户状态', **input_style))
    items.append(
        btforms.Dropdown('builder_name',
                         args=[],
                         description=u'指派施工人员',
                         **input_style))
    items.append(
        btforms.Textarea('customer_desc',
                         description=u'备注信息',
                         rows=4,
                         **input_style))
    items.append(
        btforms.Dropdown('billing_type',
                         args=billing_types.items(),
                         description=u'计费开始时间',
                         **input_style))
    items.append(btforms.Hidden('account_rule', description=u'账号生成规则'))
    items.append(
        btforms.Button('submit',
                       type='submit',
                       html=u'<b>提交</b>',
                       **button_style))
    return form
예제 #21
0
               rules.not_null,
               description=u'用户账号'),
 dataform.Item('password',
               rules.not_null,
               description=u'用户密码'),
 dataform.Item('node',
               rules.not_null,
               description=u'用户区域名'),
 dataform.Item('area',
               rules.not_null,
               description=u'用户社区名'),
 dataform.Item('product',
               rules.not_null,
               description=u'用户资费名称'),
 dataform.Item('idcard',
               rules.len_of(0, 32),
               description=u'证件号码'),
 dataform.Item('mobile',
               rules.len_of(0, 32),
               description=u'用户手机号码'),
 dataform.Item('address',
               description=u'用户地址'),
 dataform.Item('begin_date',
               rules.is_date,
               description=u'开通日期'),
 dataform.Item('expire_date',
               rules.is_date,
               description=u'过期日期'),
 dataform.Item('balance',
               rules.is_rmb,
               description=u'用户余额'),
예제 #22
0
timetype = {0: u'标准时区,北京时间',
 1: u'时区和时间同区'}
bastype = {'0': u'标准',
 '3041': u'阿尔卡特',
 '2352': u'爱立信',
 '2011': u'华为',
 '25506': u'H3C',
 '3902': u'中兴',
 '14988': u'RouterOS/Smart6/神行者/Panabit',
 '10055': u'爱快路由',
 '30001': u'华为扩展1'}
portaltype = {'0': u'无',
 'cmccv1': u'中国移动 V1',
 'cmccv2': u'中国移动 V2',
 'huaweiv1': u'华为 V1',
 'huaweiv2': u'华为 V2'}
attr_types = {'ros_api_addr': u'RouterOS Api 地址',
 'ros_api_port': u'RouterOS Api 端口',
 'ros_api_user': u'RouterOS Api 用户',
 'ros_api_pwd': u'RouterOS Api 密码'}

def bas_add_form(nodes = []):
    return btforms.Form(btforms.Textbox('ip_addr', rules.is_ip, description=u'接入设备地址', **input_style), btforms.Textbox('bas_name', rules.len_of(2, 64), description=u'接入设备名称', required='required', **input_style), btforms.Textbox('nas_id', rules.len_of(4, 32), description=u'接入设备标识', help=u'动态IP专用', **input_style), btforms.Textbox('bas_secret', rules.is_alphanum2(4, 32), description=u'共享秘钥', required='required', **input_style), btforms.Dropdown('vendor_id', description=u'接入设备类型', args=bastype.items(), required='required', **input_style), btforms.Dropdown('portal_vendor', description=u'portal协议', args=portaltype.items(), required='required', **input_style), btforms.Textbox('coa_port', rules.is_number, description=u'授权端口', default=3799, required='required', **input_style), btforms.Textbox('ac_port', rules.is_number, description=u'无线控制器端口', default=2000, **input_style), btforms.Dropdown('time_type', description=u'时间类型', args=timetype.items(), required='required', **input_style), btforms.Dropdown('nodes', description=u'绑定区域(多选)', args=nodes, required='required', multiple='multiple', size=6, **input_style), btforms.Button('submit', type='submit', html=u'<b>提交</b>', **button_style), attrs=dict(mselect=['nodes']), title=u'创建接入设备', htopic='bas', action='/admin/bas/add')


def bas_update_form(nodes = []):
    return btforms.Form(btforms.Hidden('id', description=u'编号'), btforms.Textbox('ip_addr', rules.is_ip, description=u'接入设备地址', **input_style), btforms.Textbox('bas_name', rules.len_of(2, 64), description=u'接入设备名称', required='required', **input_style), btforms.Textbox('nas_id', rules.len_of(4, 32), description=u'接入设备标识', help=u'动态IP专用', **input_style), btforms.Textbox('bas_secret', rules.is_alphanum2(4, 32), description=u'共享秘钥', required='required', **input_style), btforms.Dropdown('vendor_id', description=u'接入设备类型', args=bastype.items(), required='required', **input_style), btforms.Dropdown('portal_vendor', description=u'portal协议', args=portaltype.items(), required='required', **input_style), btforms.Textbox('ac_port', rules.is_number, description=u'无线控制器端口', default=2000, **input_style), btforms.Textbox('coa_port', rules.is_number, description=u'授权端口', default=3799, required='required', **input_style), btforms.Dropdown('time_type', description=u'时间类型', args=timetype.items(), required='required', **input_style), btforms.Dropdown('nodes', description=u'绑定区域(多选)', args=nodes, required='required', multiple='multiple', size=6, **input_style), btforms.Button('submit', type='submit', html=u'<b>更新</b>', **button_style), attrs=dict(mselect=['nodes']), title=u'修改接入设备', htopic='bas', action='/admin/bas/update')


bas_attr_add_form = btforms.Form(btforms.Hidden('bas_id', description=u'BAS编号'), btforms.Dropdown('attr_types', args=attr_types.items(), description=u'预定义属性', required='required', **input_style), btforms.Textbox('attr_name', rules.len_of(1, 255), description=u'属性名称', required='required', help=u'属性参考', **input_style), btforms.Textbox('attr_value', rules.len_of(1, 255), description=u'属性值', required='required', **input_style), btforms.Textbox('attr_desc', rules.len_of(1, 255), description=u'属性描述', required='required', **input_style), btforms.Button('submit', type='submit', html=u'<b>提交</b>', **button_style), title=u'创建BAS属性', action='/admin/bas/attr/add')
bas_attr_update_form = btforms.Form(btforms.Hidden('id', description=u'编号'), btforms.Hidden('bas_id', description=u'BAS编号'), btforms.Dropdown('attr_types', args=attr_types.items(), description=u'预定义属性', required='required', **input_style), btforms.Textbox('attr_name', rules.len_of(1, 255), description=u'属性名称', readonly='required', **input_style), btforms.Textbox('attr_value', rules.len_of(1, 255), description=u'属性值', required='required', **input_style), btforms.Textbox('attr_desc', rules.len_of(1, 255), description=u'属性描述', required='required', **input_style), btforms.Button('submit', type='submit', html=u'<b>更新</b>', **button_style), title=u'修改BAS属性', action='/admin/bas/attr/update')
예제 #23
0
def ppmflow_product_update_form():
    return btforms.Form(btforms.Hidden('id', description=u'编号'),
                        btforms.Textbox('product_name',
                                        rules.len_of(4, 64),
                                        description=u'资费名称',
                                        required='required',
                                        **input_style),
                        btforms.Dropdown('ispub',
                                         args=boolean.items(),
                                         description=u'是否发布到自助订购套餐',
                                         **input_style),
                        btforms.Textbox('fee_flows',
                                        rules.is_number3,
                                        description=u'授权流量(G)',
                                        value=0,
                                        **input_style),
                        btforms.Textbox('fee_price',
                                        rules.is_rmb,
                                        description=u'资费价格(元)',
                                        required='required',
                                        **input_style),
                        btforms.Textbox('flow_price',
                                        rules.is_rmb,
                                        description=u'流量充值单价(元/G)',
                                        required='required',
                                        **input_style),
                        btforms.Textbox('max_giftflows',
                                        rules.is_number3,
                                        description=u'最大赠送流量值(G)',
                                        required='required',
                                        **input_style),
                        btforms.Dropdown('product_status',
                                         args=product_status_dict.items(),
                                         description=u'资费状态',
                                         required='required',
                                         **input_style),
                        btforms.Textbox('concur_number',
                                        rules.is_numberOboveZore,
                                        description=u'并发数控制(0表示不限制)',
                                        value='0',
                                        **input_style),
                        btforms.Dropdown('bind_mac',
                                         args=boolean.items(),
                                         description=u'是否绑定MAC ',
                                         **input_style),
                        btforms.Dropdown('bind_vlan',
                                         args=boolean.items(),
                                         description=u'是否绑定VLAN ',
                                         **input_style),
                        btforms.Textbox('input_max_limit',
                                        rules.is_number3,
                                        description=u'最大上行速率(Mbps)',
                                        required='required',
                                        **input_style),
                        btforms.Textbox('output_max_limit',
                                        rules.is_number3,
                                        description=u'最大下行速率(Mbps)',
                                        required='required',
                                        **input_style),
                        btforms.Dropdown('free_auth',
                                         args=boolean.items(),
                                         description=u'支持到期免费授权',
                                         **input_style),
                        btforms.Textbox('free_auth_uprate',
                                        rules.is_number3,
                                        description=u' 免费授权最大上行速率(Mbps)',
                                        **input_style),
                        btforms.Textbox('free_auth_downrate',
                                        rules.is_number3,
                                        description=u'免费授权最大下行速率(Mbps)',
                                        **input_style),
                        btforms.Button('submit',
                                       type='submit',
                                       id='submit',
                                       html=u'<b>提交</b>',
                                       **button_style),
                        title=u'创建预付费包月流量套餐',
                        action='/admin/product/ppmf/update')
예제 #24
0
def note_print_form(tpls = []):
    return btforms.Form(btforms.Dropdown('tpl_id', args=tpls, description=u'票据模板', required='required', **input_style), btforms.Textbox('note_id', rules.len_of(2, 32), description=u'票据凭证号', required='required', readonly='readonly', **input_style), btforms.Textbox('order_id', description=u'缴费订单号', readonly='readonly', **input_style), btforms.Textbox('customer_cname', description=u'客户姓名', required='required', readonly='readonly', **input_style), btforms.Textbox('account_number', description=u'上网账号', readonly='readonly', **input_style), btforms.Textbox('mobile', description=u'手机号码', required='required', readonly='readonly', **input_style), btforms.Textbox('install_address', description=u'客户安装地址', required='required', readonly='readonly', **input_style), btforms.Textbox('pay_type', description=u'付款方式', required='required', readonly='readonly', **input_style), btforms.Textbox('pay_date', description=u'付款日期', required='required', readonly='readonly', **input_style), btforms.Textbox('expire_date', description=u'到期日期', required='required', readonly='readonly', **input_style), btforms.Textbox('order_num', description=u'订购套餐数', required='required', readonly='readonly', **input_style), btforms.Textbox('fee_price', description=u'套餐单价', required='required', readonly='readonly', **input_style), btforms.Textbox('fee_total', description=u'套餐总价', required='required', readonly='readonly', **input_style), btforms.Textarea('remark', description=u'备注内容', rows=4, readonly='readonly', **input_style), btforms.Textbox('operator_name', description=u'收款人', readonly='readonly', **input_style), btforms.Button('doprint', type='button', onclick='doPrint();', html=u'<b>打印预览</b>', **button_style), title=u'用户票据打印', action='/admin/customer/note/print')
예제 #25
0
                                                 value=0,
                                                 required='required',
                                                 **input_style),
                                 btforms.Textbox('fee_value',
                                                 rules.is_rmb,
                                                 description=u'缴费金额',
                                                 value=0,
                                                 required='required',
                                                 **input_style),
                                 btforms.Textbox('expire_date',
                                                 rules.is_date,
                                                 description=u'过期日期',
                                                 readonly='readonly',
                                                 **input_style),
                                 btforms.Textarea('operate_desc',
                                                  rules.len_of(0, 512),
                                                  description=u'操作描述',
                                                  rows=4,
                                                  **input_style),
                                 btforms.Button('submit',
                                                type='submit',
                                                html=u'<b>提交</b>',
                                                **button_style),
                                 title=u'用户续费',
                                 action='/admin/account/next')
account_charge_form = btforms.Form(btforms.Hidden('account_number',
                                                  description=u'用户账号',
                                                  required='required',
                                                  **input_style),
                                   btforms.Textbox('fee_value',
                                                   rules.is_rmb,