示例#1
0
class TransactionTable(DashboardTable):
    order_number = LinkColumn('dashboard:order-detail',
                              args=[A('order_number')])

    amount = TemplateColumn(
        verbose_name=_('Amount'),
        template_name='dashboard/banktransfer/banktransfer_row_amount.html')

    date_confirmed = TemplateColumn(
        verbose_name=_('Date Confirmed'),
        template_name=
        'dashboard/banktransfer/banktransfer_row_date_confirmed.html',
        orderable=False)

    actions = TemplateColumn(
        verbose_name=_('Actions'),
        template_name='dashboard/banktransfer/banktransfer_row_actions.html',
        orderable=False)

    icon = "sitemap"

    class Meta(DashboardTable.Meta):
        model = BankTransferTransaction
        fields = ('order_number', 'bank_account', 'amount', 'confirmed',
                  'date_confirmed')
        sequence = ('order_number', 'bank_account', 'amount', 'confirmed',
                    'date_confirmed')
        order_by = '-date_created'
示例#2
0
文件: tables.py 项目: Marw0002/test
class VendorTable(DashboardTable):
    company_name = TemplateColumn(
        verbose_name=_('Company Name'),
        template_name='dashboard/partners/product_row_title.html',
        accessor=A('company_name'))
    company_logo = TemplateColumn(
        verbose_name=_('Company Logo'),
        template_name='dashboard/partners/product_row_image.html',
        orderable=False,
        accessor=A('company_logo'))
    check = TemplateColumn(
        template_name='dashboard/partners/user_row_checkbox.html',
        verbose_name=' ',
        orderable=False)

    user = Column(accessor='user')
    actions = TemplateColumn(
        verbose_name=_('Actions'),
        template_name='dashboard/partners/product_row_actions.html',
        orderable=False)

    icon = "sitemap"

    class Meta(DashboardTable.Meta):
        model = Company
        fields = ('company_name', 'user', 'company_logo')
        #fields = ('upc', 'date_updated')
        sequence = (
            'company_name',
            'user',
            'company_logo'  # 'upc','product_class', 
            #'variants', 'stock_records',
            #'...', 'date_updated', 'actions')
            ,
            'actions')
示例#3
0
文件: tables.py 项目: jcmarsh/drseus
class result(Table):
    outcome = TemplateColumn(
        '<input id="edit_outcome" type="text" value="{{ value }}" />')
    outcome_category = TemplateColumn(
        '<input id="edit_outcome_category" type="text" value="{{ value }}" />')
    timestamp = DateTimeColumn(format=datetime_format)

    def render_cycles(self, record):
        return '{:,}'.format(record.cycles)

    def render_data_diff(self, record):
        return '{0:.2f}%'.format(
            min(record.data_diff*100, 99.99) if record.data_diff < 1
            else record.data_diff*100)

    def render_execution_time(self, record):
        return '{0:.4f}'.format(record.execution_time)

    class Meta:
        fields = ('dut_serial_port', 'timestamp', 'outcome_category', 'outcome',
                  'execution_time', 'cycles', 'num_injections', 'data_diff',
                  'detected_errors')
        model = models.result
        orderable = False
        template = 'django_tables2/bootstrap.html'
示例#4
0
class ProductTable(DashboardTable):
    title = TemplateColumn(
        verbose_name=_('Title'),
        template_name='oscar/dashboard/catalogue/product_row_title.html',
        order_by='title', accessor=A('title'))
    image = TemplateColumn(
        verbose_name=_('Image'),
        template_name='oscar/dashboard/catalogue/product_row_image.html',
        orderable=False)
    product_class = Column(
        verbose_name=_('Product type'),
        accessor=A('product_class'),
        order_by='product_class__name')
    variants = TemplateColumn(
        verbose_name=_("Variants"),
        template_name='oscar/dashboard/catalogue/product_row_variants.html',
        orderable=False
    )
    stock_records = TemplateColumn(
        verbose_name=_('Stock records'),
        template_name='oscar/dashboard/catalogue/product_row_stockrecords.html',
        orderable=False)
    actions = TemplateColumn(
        verbose_name=_('Actions'),
        template_name='oscar/dashboard/catalogue/product_row_actions.html',
        orderable=False)

    icon = "sitemap"

    class Meta(DashboardTable.Meta):
        model = Product
        fields = ('upc', 'date_updated')
        sequence = ('title', 'upc', 'image', 'product_class', 'variants',
                    'stock_records', '...', 'date_updated', 'actions')
        order_by = '-date_updated'
示例#5
0
class events(Table):
    description = TemplateColumn(
        '{% if value %}<code class="console">{{ value }}</code>{% endif %}')
    result_id = TemplateColumn(
        '{% if value %}<a href="/result/{{ value }}">{{ value }}</a>'
        '{% else %}<a href="/campaign/{{ record.campaign_id }}/info">'
        'Campaign {{ record.campaign_id }}</a>{% endif %}',
        accessor='result_id')
    select_box = CheckBoxColumn(
        accessor='result_id',
        attrs={'th__input': {
            'onclick': 'update_selection(this)'
        }})
    success_ = TemplateColumn(
        '{% if value == None %}-'
        '{% elif value %}<span class="true">\u2714</span>'
        '{% else %}<span class="false">\u2718</span>{% endif %}',
        accessor='success')
    timestamp = DateTimeColumn(format=datetime_format)

    class Meta:
        fields = ('select_box', 'result_id', 'timestamp', 'level', 'source',
                  'type', 'success_', 'description')
        model = models.event
        order_by = '-timestamp'
        template = 'django_tables2/bootstrap.html'
示例#6
0
class CommandTokenTable(BaseTable):
    """Table for rendering a listing of CommandToken entries."""

    pk = ToggleColumn()

    platform = TemplateColumn(
        template_code=
        '<span style="font-family: monospace">{{ record.platform }}</span>')

    token = TemplateColumn(
        template_code=
        '<span style="font-family: monospace">{{ record.token }}</span>')

    comment = TemplateColumn(
        template_code=
        '<span style="font-family: monospace">{{ record.comment }}</span>')

    actions = TemplateColumn(
        template_code="""
<a href="{% url 'plugins:nautobot_chatops:commandtoken_changelog' pk=record.pk %}" class="btn btn-default btn-xs" title="Change log"><span class="mdi mdi-history"></span></a>
{% if perms.nautobot_chatops.change_commandtoken %}
<a href="{% url 'plugins:nautobot_chatops:commandtoken_edit' pk=record.pk %}" class="btn btn-xs btn-warning"><span class="glyphicon glyphicon-pencil" aria-hidden="true"></span></a>
{% endif %}""",
        attrs={"td": {
            "class": "text-right noprint"
        }},
        verbose_name="",
    )

    class Meta(BaseTable.Meta):
        """Metaclass attributes of CommandTokenTable."""

        model = CommandToken
        fields = ("pk", "platform", "token", "comment", "actions")
        default_columns = ("pk", "platform", "comment", "actions")
示例#7
0
class ExpressSendTable(DashboardTable):
    pickup_list_id = Column(verbose_name=u'发货单', order_by='pickup_list_id')
    product = Column(verbose_name=u'商品名称',
                     accessor=A('product'),
                     order_by='product__title')
    upc = TemplateColumn(
        verbose_name=u'商品代码',
        template_name='dashboard/pickup_admin/pickup_store_row_upc.html',
        order_by='product__upc')
    quantity = Column(verbose_name=u'发货数量')
    consignee = Column(verbose_name=u'收货人')
    user_address = Column(verbose_name=u'收货地址')
    mobile_phone = Column(verbose_name=u'联系电话')
    status = Column(verbose_name=u'状态')
    logistics_company = Column(verbose_name=u'物流公司')
    logistics_no = Column(verbose_name=u'物流单号')
    refuse_desc = Column(verbose_name=u'驳回原因')
    deal_datetime = Column(verbose_name=u'办理时间')
    actions = TemplateColumn(
        verbose_name=u'动作',
        template_name='dashboard/business/express_send_deal_action.html',
        orderable=False)
    caption = u'发货信息'
    icon = 'sitemap'

    class Meta(DashboardTable.Meta):
        sequence = ('pickup_list_id', 'upc', 'product', 'quantity',
                    'consignee', 'user_address', 'mobile_phone', 'status',
                    'logistics_company', 'logistics_no', 'refuse_desc',
                    'deal_datetime', 'actions')
        order_by = '-pickup_list_id'
示例#8
0
class ProductTable(Table):
    title = TemplateColumn(
        template_name='dashboard/catalogue/product_row_title.html',
        order_by='title',
        accessor=A('get_title'))
    image = TemplateColumn(
        template_name='dashboard/catalogue/product_row_image.html',
        orderable=False)
    product_class = Column(verbose_name=_("Type"),
                           accessor=A('get_product_class.name'),
                           order_by=('product_class__name'))
    parent = LinkColumn('dashboard:catalogue-product',
                        verbose_name=_("Parent"),
                        args=[A('parent.pk')],
                        accessor=A('parent.title'))
    children = Column(accessor=A('children.count'), orderable=False)
    stock_records = Column(accessor=A('stockrecords.count'), orderable=False)
    actions = TemplateColumn(
        template_name='dashboard/catalogue/product_row_actions.html',
        orderable=False)

    class Meta(DashboardTable.Meta):
        model = Product
        fields = ('upc', 'date_created')
        sequence = ('title', 'upc', 'image', 'product_class', 'parent',
                    'children', 'stock_records', '...', 'date_created',
                    'actions')
        order_by = '-date_created'
class GoldenConfigTable(BaseTable):
    """Table to display Config Management Status."""

    pk = ToggleColumn()
    device__name = TemplateColumn(
        template_code=
        """<a href="{% url 'dcim:device' pk=record.device.pk %}">{{ record.device }}</a>""",
        verbose_name="Device",
    )
    if ENABLE_BACKUP:
        backup_last_success_date = TemplateColumn(verbose_name="Backup Status",
                                                  template_code=BACKUP_SUCCESS)
    if ENABLE_INTENDED:
        intended_last_success_date = TemplateColumn(
            verbose_name="Intended Status", template_code=INTENDED_SUCCESS)
    if ENABLE_COMPLIANCE:
        compliance_last_success_date = TemplateColumn(
            verbose_name="Compliance Status", template_code=COMPLIANCE_SUCCESS)

    actions = TemplateColumn(template_code=ALL_ACTIONS,
                             verbose_name="Actions",
                             extra_context=CONFIG_FEATURES,
                             orderable=False)

    class Meta(BaseTable.Meta):
        """Meta for class CircuitMaintenanceTable."""

        model = models.GoldenConfig
        fields = actual_fields()
示例#10
0
class CookTable(tables.Table):
    """Table class for candidates"""
    Name = Column(verbose_name='Name', orderable=False, accessor='name')

    class Meta:
        """Meta class."""
        empty_text = 'No candidates to display'
        orderable = False
        model = Cook
        fields = (
            'name',
            'email',
            'information',
            'vacancy',
        )
        attrs = {"class": "table table-bordered table-hover"}

    actions = TemplateColumn(
        template_name="cook/tables/cook_actions.html",
        verbose_name='Actions',
    )

    name = TemplateColumn(
        template_name="cook/tables/cook_title.html",
        verbose_name='Name',
    )
示例#11
0
class CounterpartyTable(Table):
    # id = PrimaryKeyCheckboxColumn()

    Memo = TemplateColumn(
        '<span data-toggle="tooltip" title="{{ value }}">{{ value|truncatechars:20 }}</span>',
        empty_values=(None, ''),
        orderable=False)

    IsSupplier = BootstrapBooleanColumn()
    IsCustomer = BootstrapBooleanColumn()

    Actions = TemplateColumn(
        ('<a href="#editCounterparty" class="mr-2" data-toggle="modal" data-id="{{ value}}">'
         '<i class="bi bi-pencil-square text-success mr-1"></i>Edit</a>'
         '<a href="#deleteModal" data-toggle="modal" data-id="{{ value }}">'
         '<i class="bi bi-trash text-danger mr-1"></i>Delete</a>'),
        accessor='id',
        orderable=False,
        verbose_name=_('Actions'),
    )

    class Meta:
        model = Counterparty
        empty_text = _('There are no Counterparties for this User')
        fields = (
            'Name',
            'Phone',
            'City',
            'Memo',
            'IsSupplier',
            'IsCustomer',
            'Actions',
        )
        attrs = {"class": "table table-hover table-sm", "thead": {"class": ""}}
示例#12
0
class FollowedTable(Table):
    picture = TemplateColumn(template_name="users/_picture_column.html",
                             orderable=False)
    handle = LinkColumn(
        "users:profile-detail",
        args=[Accessor("guid")],
        text=lambda record: record.handle,
        attrs={
            "th": {
                "class": "hidden-md-down"
            },
            "td": {
                "class": "hidden-md-down"
            }
        },
    )
    name = LinkColumn("users:profile-detail",
                      args=[Accessor("guid")],
                      text=lambda record: record.name)
    actions = TemplateColumn(
        template_name="users/_actions_column.html",
        orderable=False,
        attrs={"td": {
            "class": "align-middle"
        }},
    )

    class Meta:
        model = Profile
        fields = tuple()
        order_by = ("name", "handle")
        template = "users/_followed_table.html"
        sequence = ("picture", "name", "handle")
示例#13
0
class ProfileTextTable(tables.Table):
    """
        Definisce una tabella personalizzata per visualizzare i testi inseriti dall'utente attualmente loggato
    """

    data = tables.DateTimeColumn(format='d/m/Y')
    data_caricamento = tables.DateTimeColumn(format='d/m/Y')

    class Meta:
        model = Articolo
        template_name = "django_tables2/bootstrap4.html"
        fields = ("titolo", "fonte", "data", "autore", "complessita",
                  "data_caricamento")
        attrs = {
            "class": "table table-striped table-bordered sortable",
            "data-toggle": "table"
        }

    detail = TemplateColumn(exclude_from_export=False,
                            template_name='testo/detail.html',
                            orderable=False,
                            verbose_name='')
    delete = TemplateColumn(exclude_from_export=False,
                            template_name='testo/delete.html',
                            orderable=False,
                            verbose_name='')
示例#14
0
class AttributeOptionGroupTable(DashboardTable):
    name = TemplateColumn(
        verbose_name=_('Name'),
        template_name=
        'dashboard/catalogue/attribute_option_group_row_name.html',
        order_by='name')
    option_summary = TemplateColumn(
        verbose_name=_('Option summary'),
        template_name=
        'dashboard/catalogue/attribute_option_group_row_option_summary.html',
        orderable=False)
    actions = TemplateColumn(
        verbose_name=_('Actions'),
        template_name=
        'dashboard/catalogue/attribute_option_group_row_actions.html',
        orderable=False)

    icon = "sitemap"
    caption = ungettext_lazy("%s Attribute Option Group",
                             "%s Attribute Option Groups")

    class Meta(DashboardTable.Meta):
        model = AttributeOptionGroup
        fields = ('name', )
        sequence = ('name', 'option_summary', 'actions')
        per_page = settings.OSCAR_DASHBOARD_ITEMS_PER_PAGE
class ConfirmationTable(DashboardTable):
    order_number = LinkColumn('dashboard:order-detail',
                              args=[A('order_number')])

    filename = TemplateColumn(
        verbose_name=_('Proof Of Payment'),
        template_name=
        'dashboard/confirmation/confirmation_row_proof_payment.html',
        orderable=False)

    amount = TemplateColumn(
        verbose_name=_('Amount'),
        template_name='dashboard/confirmation/confirmation_row_amount.html')

    actions = TemplateColumn(
        verbose_name=_('Actions'),
        template_name='dashboard/confirmation/confirmation_row_actions.html',
        orderable=False)

    icon = "sitemap"

    class Meta(DashboardTable.Meta):
        model = ConfirmationPayment
        fields = ('order_number', 'transfer_date', 'destination_bank',
                  'amount', 'status')
        sequence = ('order_number', 'transfer_date', 'destination_bank',
                    'amount', 'filename', 'status', 'actions')
        order_by = '-date_created'
示例#16
0
文件: tables.py 项目: Marw0002/test
class ProductTable(DashboardTable):
    title = TemplateColumn(
        verbose_name=_('Title'),
        template_name='dashboard/catalogue/product_row_title.html',
        order_by='title', accessor=A('title'))
    image = TemplateColumn(
        verbose_name=_('Image'),
        template_name='dashboard/catalogue/product_row_image.html',
        orderable=False)
    theme = TemplateColumn(
        verbose_name=_('Theme'),
        template_name='dashboard/catalogue/product_row_theme.html',
        order_by='theme')
    color = TemplateColumn(
        verbose_name=_('Color'),
        template_name='dashboard/catalogue/product_row_theme.html',
        order_by='color')

    actions = TemplateColumn(
        verbose_name=_('Actions'),
        template_name='dashboard/catalogue/product_row_actions.html',
        orderable=False)

    icon = "sitemap"

    class Meta(DashboardTable.Meta):
        model = Product
        fields = ('title','date_updated')
        sequence = ('title', 'image', 'theme','color',
                    'date_updated', 'actions')
        order_by = '-date_updated'
示例#17
0
class BusinessSaleTable(DashboardTable):
    isp = TemplateColumn(
        verbose_name=u'用户',
        template_name='dashboard/business/business_sale_row_isp.html',
    )
    ispname = TemplateColumn(
        verbose_name=u'商家名称',
        template_name='dashboard/business/business_sale_row_ispname.html',
    )
    upc = TemplateColumn(
        verbose_name=u'商品代码',
        template_name='dashboard/business/pickup_store_row_upc.html',
        order_by='product__upc')
    created_date = Column(verbose_name=u'成交日期')
    can_pickup_quantity = Column(verbose_name=u'待提取量')
    yet_pickup_quantity = TemplateColumn(
        verbose_name=u'已提取量',
        template_name='dashboard/business/business_sale_row_yetpick.html',
    )

    caption = u'商品销售情况'
    icon = 'sitemap'

    class Meta(DashboardTable.Meta):
        model = TradeComplete
        fields = ('product', 'c_type', 'unit_price', 'quantity', 'total',
                  'can_pickup_quantity', 'created_date')
        sequence = ('isp', 'ispname', 'product', 'upc', 'c_type', 'unit_price',
                    'quantity', 'total', 'can_pickup_quantity',
                    'yet_pickup_quantity', 'created_date')

        order_by = '-created_date'
示例#18
0
class RollingAdTable(DashboardTable):
    title = LinkColumn('dashboard:ad-rolling_ad-update', args=[A('pk')])
    image = TemplateColumn(
        verbose_name=_('Image'),
        template_name='dashboard/ad/rolling_ad_row_image.html',
        orderable=False)
    link_url = URLColumn(verbose_name=_(u'链接地址'),
                         accessor='link_url',
                         orderable=False)
    description = TemplateColumn(
        verbose_name=_("Description"),
        accessor='description',
        orderable=False,
        template_code='{{ record.description|default:""|striptags'
        '|cut:"&nbsp;"|truncatewords:6 }}')
    order_num = Column(verbose_name=_(u'顺序'),
                       accessor='order_num',
                       orderable=True)
    valid = Column(verbose_name=_(u'开启'), accessor='valid', orderable=False)
    actions = TemplateColumn(
        verbose_name=_('Actions'),
        template_name=
        'dashboard/ad/rolling_ad_row_actions.html',  #'dashboard/ad/rolling_ad_row_actions.html',
        orderable=False)

    icon = "sitemap"

    class Meta(DashboardTable.Meta):
        model = RollingAd
        fields = ('title', 'position', 'image', 'link_url', 'order_num',
                  'description', 'valid')
        sequence = ('title', 'position', 'image', 'link_url', 'order_num',
                    'description', 'valid', 'actions')
        order_by = '-order_num'
示例#19
0
class UserByObjectTable(tables.Table):
    actions = TemplateColumn(template_name='custom_columns/user_by_group_actions.html', orderable=False)
    role = TemplateColumn(template_name='custom_columns/role_object.html', orderable=False)

    class Meta:
        model = User
        attrs = {"id": "user_by_team_table", "class": "table squest-pagination-tables "}
        fields = ("username", "email", "role", "actions")
示例#20
0
class SimpleTable(tables.Table):
    class Meta:
        orderable = False
        model = Bills
        attrs = {'class': 'fl-table'}
        fields = ['id', 'company_id', 'type_id', 'uuid', 'receiver', 'xml', 'pdf', 'created_at']
    xml = TemplateColumn(template_name='reportes/training_update_column.html',verbose_name='XML')
    pdf = TemplateColumn(template_name='reportes/pdf_logo.html', verbose_name='PDF')
示例#21
0
class GroupTable(tables.Table):
    actions = TemplateColumn(template_name='custom_columns/group_actions.html', orderable=False)
    users = TemplateColumn(template_name='custom_columns/group_users.html', orderable=False)

    class Meta:
        model = Group
        attrs = {"id": "group_table", "class": "table squest-pagination-tables "}
        fields = ("name", "users", "actions")
class TeamsByObjectTable(tables.Table):
    actions = TemplateColumn(template_name='custom_columns/team_by_group_actions.html', orderable=False)
    role = TemplateColumn(template_name='custom_columns/role_object.html', orderable=False)

    class Meta:
        model = Team
        attrs = {"id": "teams_by_object_table", "class": "table squest-pagination-tables "}
        fields = ("name", "role", "actions")
示例#23
0
class CustomerOrderPositionsTable(Table):
    # id = PrimaryKeyCheckboxColumn()

    ProductName = TemplateColumn(
        '<p>{{ value }}</p>',
        accessor=A('get_product_name'),
        attrs={
            "td": {
                'class': 'original text-muted'
            },
            "th": {
                'class': 'original'
            }
        },
        verbose_name='',
    )

    Product__SKU = TemplateColumn('#{{ value }}')

    ActualPrice = NumericColumn(
        accessor=A('get_actual_price__Price'),
        attrs={"td": {
            "align": "right",
            'class': 'text-black-50'
        }},
        verbose_name=_('Actual'),
    )

    Price = NumericColumn(attrs={"td": {"align": "right"}})

    Discount = NumericColumn(attrs={"td": {"align": "right"}})

    DateDelivered = DateColumn('d.m.Y')

    Actions = TemplateColumn(
        ('<a href="#editPosition" class="mr-2" data-toggle="modal" data-id="{{ value}}">'
         '<i class="bi bi-pencil-square text-success mr-1"></i></a>'
         '<a href="#deleteModal" data-toggle="modal" data-id="{{ value }}">'
         '<i class="bi bi-trash text-danger mr-1"></i></a>'),
        accessor='id',
        orderable=False,
        verbose_name=_('Actions'),
    )

    class Meta:
        model = CustomerOrderPosition
        empty_text = _('There are no Position for this Customer Order')
        fields = ('ProductName', 'Product__SKU', 'ActualPrice', 'Price',
                  'Quantity', 'Discount', 'DiscountReason', 'Status',
                  'DateDelivered')
        attrs = {
            "class": "table table-hover table-sm small",
            "thead": {
                "class": ""
            }
        }
        row_attrs = {"class": "has_original"}
        orderable = False
示例#24
0
class StudentTable(tables.Table):
    info = TemplateColumn(template_name='info_button.html')
    checkbox = TemplateColumn(template_name='checkbox_studenttable.html')

    class Meta:
        model = Student
        template_name = "django_tables2/bootstrap4.html"
        exclude = ['uuid', 'registration_date', 'id']
        fields = ['user']
示例#25
0
class ApprovalHospitalTable(HospitalTable):
    info = TemplateColumn(template_name='info_button.html')
    status = TemplateColumn(template_name='approval_button.html')

    class Meta:
        model = Hospital
        template_name = "django_tables2/bootstrap4.html"
        fields = ['firmenname', 'ansprechpartner', 'user', 'telefon', 'plz']
        exclude = ['uuid', 'registration_date', 'id']
class IssuedBookTable(tables.Table):
    class Meta:
        model = IssuedBook
        template_name = 'django_tables2/bootstrap.html'
        fields = ('book', 'created', 'due_date', 'book_return_option')

    due_date = TemplateColumn(
        template_name='profiles/tables/issued_book_column_update.html')
    book_return_option = TemplateColumn(ACTION)
示例#27
0
class ServiceTable(SquestTable):
    actions = TemplateColumn(template_name='custom_columns/service_actions.html', orderable=False)
    enabled = TemplateColumn(template_name='custom_columns/boolean_check.html')
    operations = TemplateColumn(template_name='custom_columns/service_operations.html',
                                verbose_name="Operations", orderable=False)

    class Meta:
        model = Service
        attrs = {"id": "service_table", "class": "table squest-pagination-tables"}
        fields = ("name", "description", "enabled", "operations", "actions")
示例#28
0
class AdministratieTable(tables.Table):

   class Meta:
      model = BedrijfsAdministratie
      template_name = "django_tables2/bootstrap-responsive.html"
      fields = ('bedrijfsnummer','bedrijfsnaam','status')

   details = TemplateColumn(template_name='claus_administratie/button_tabel_details.html')

   bewerk = TemplateColumn(template_name='claus_administratie/button_tabel_wijzig.html')
示例#29
0
class DocTable(SquestTable):
    actions = TemplateColumn(template_name='custom_columns/doc_actions.html',
                             orderable=False)
    services = TemplateColumn(template_name='custom_columns/doc_services.html',
                              verbose_name="Linked services")
    title = LinkColumn("service_catalog:doc_show", args=[A("id")])

    class Meta:
        model = Doc
        attrs = {"id": "doc_table", "class": "table squest-pagination-tables"}
        fields = ("title", "services", "actions")
class GoldenConfigTable(BaseTable):
    """Table to display Config Management Status."""

    pk = ToggleColumn()
    name = TemplateColumn(
        template_code="""<a href="{% url 'dcim:device' pk=record.pk %}">{{ record.name }}</a>""",
        verbose_name="Device",
    )

    if ENABLE_BACKUP:
        backup_last_success_date = Column(verbose_name="Backup Status", empty_values=())
    if ENABLE_INTENDED:
        intended_last_success_date = Column(verbose_name="Intended Status", empty_values=())
    if ENABLE_COMPLIANCE:
        compliance_last_success_date = Column(verbose_name="Compliance Status", empty_values=())

    actions = TemplateColumn(
        template_code=ALL_ACTIONS, verbose_name="Actions", extra_context=CONFIG_FEATURES, orderable=False
    )

    def _render_last_success_date(self, record, column, value):  # pylint: disable=no-self-use
        """Abstract method to get last success per row record."""
        entry = record.goldenconfig_set.first()
        last_success_date = getattr(entry, f"{value}_last_success_date", None)
        last_attempt_date = getattr(entry, f"{value}_last_attempt_date", None)
        if not last_success_date or not last_attempt_date:
            column.attrs = {"td": {"style": "color:black"}}
            return "--"
        if not last_success_date and not last_attempt_date:
            column.attrs = {"td": {"style": "color:black"}}
            return "--"
        if last_success_date and last_attempt_date == last_success_date:
            column.attrs = {"td": {"style": "color:green"}}
            return last_success_date
        column.attrs = {"td": {"style": "color:red"}}
        return last_success_date

    def render_backup_last_success_date(self, record, column):  # pylint: disable=no-self-use
        """Pull back backup last success per row record."""
        return self._render_last_success_date(record, column, "backup")

    def render_intended_last_success_date(self, record, column):  # pylint: disable=no-self-use
        """Pull back intended last success per row record."""
        return self._render_last_success_date(record, column, "intended")

    def render_compliance_last_success_date(self, record, column):  # pylint: disable=no-self-use
        """Pull back compliance last success per row record."""
        return self._render_last_success_date(record, column, "compliance")

    class Meta(BaseTable.Meta):
        """Meta for class GoldenConfigTable."""

        model = Device
        fields = actual_fields()