Exemple #1
0
 def set_filters(self, request):
     _start = date.today().replace(day=1)
     _end = (_start + timedelta(days=33)).replace(day=1) - timedelta(days=1)
     filters = dict(
         data=dict(start_datetime=[
             _start.strftime('%d.%m.%Y'),
             _end.strftime('%d.%m.%Y'),
         ]),
         ordered=['branch', 'start_datetime', 'master'],
         fields=dict(
             branch=dict(label='Филиал',
                         key='branch__in',
                         widget=dict(attrs={},
                                     name='SelectMultiple',
                                     input_type='select',
                                     choices=get_choices(
                                         request, 'company.Branch'))),
             start_datetime=dict(label='Период',
                                 key='start_datetime',
                                 widget=dict(attrs={},
                                             name="DateInput",
                                             input_type="daterange")),
             master=dict(label='Правщик',
                         key='master',
                         widget=dict(attrs={},
                                     name="Select",
                                     input_type="select",
                                     choices=get_choices(
                                         request, 'company.Master'))),
         ))
     filters = self.get_filters(request, filters=filters)
     filters = filters_choices(request, filters, self.model)
     return filters
Exemple #2
0
 def set_filters(self, request):
     filters = dict(
         ordered=['branch', 'time_planned', 'type'],
         fields=dict(branch=dict(label='Филиал',
                                 key='deal__branch',
                                 widget=dict(attrs={},
                                             name='Select',
                                             input_type='select',
                                             model_name='company.Branch')),
                     time_planned=dict(label='Период',
                                       key='time_planned',
                                       widget=dict(attrs={},
                                                   name='DateInput',
                                                   input_type='daterange')),
                     type=dict(label='Тип задачи',
                               key='type',
                               widget=dict(attrs={},
                                           name='Select',
                                           input_type='select',
                                           choices=[
                                               dict(value=i[0], label=i[1])
                                               for i in DealTask.TASK_TYPE
                                           ]))))
     filters = self.get_filters(request, filters=filters)
     filters = filters_choices(request, filters, self.model)
     return filters
Exemple #3
0
 def set_filters(self, request):
     filters = dict(
         ordered=['branch', 'start_datetime', 'deal_stage',
                  'person__full_name', 'persons__phones', 'persons__control'],
         fields=dict(
             branch=dict(
                 label='Филиал', key='branch',
                 widget=dict(attrs={}, name='Select', input_type='select', model_name='company.Branch')
             ),
             start_datetime=dict(
                 label='Период', key='start_datetime',
                 widget=dict(attrs={}, name='DateInput', input_type='daterange')
             ),
             person__full_name=dict(
                 label='Клиент (Ф.И.О.)', key='persons__cache__full_name__icontains',
                 widget=dict(attrs={}, name='TextInput', input_type='text')
             ),
             persons__phones=dict(
                 label='Клиент (телефон)', key='persons__phones__value__icontains',
                 widget=dict(attrs={}, name='TextInput', input_type='text')
             ),
             persons__control=dict(
                 label='Тип услуги', key='rel_persons__control',
                 widget=dict(
                     attrs={}, name='Select', input_type='select',
                     choices=[dict(label='Правка', value=False), dict(label='Контроль', value=True)]
                 )
             )
         )
     )
     filters = self.get_filters(request, filters=filters)
     filters = filters_choices(request, filters, self.model)
     return filters
Exemple #4
0
 def dispatch(self, request, *args, **kwargs):
     self.model = User
     self.list_display = ['id'] + getattr(self.model, 'list_display', [])
     self.paging['page'] = int(request.GET.get('page', 1))
     filters = self.model.get_filters(request)
     self.filters = filters_choices(request, filters, self.model)
     return super().dispatch(request, *args, **kwargs)
Exemple #5
0
 def set_filters(self, request):
     filters = dict(
         ordered=['comment'],
         fields=dict(comment=dict(
             label='Комментарий',
             key='comment__icontains',
             widget=dict(attrs={}, name='TextInput', input_type='text'))))
     filters = self.get_filters(request, filters=filters)
     filters = filters_choices(request, filters, self.model)
     return filters
Exemple #6
0
 def set_filters(self, request):
     filters = dict(
         ordered=['branch'],
         fields=dict(
             branch=dict(
                 label='Филиал', key='branch',
                 widget=dict(attrs={}, name='Select', input_type='select', model_name='company.Branch')
             ),
         )
     )
     filters = self.get_filters(request, filters=filters)
     filters = filters_choices(request, filters, self.model)
     return filters
Exemple #7
0
 def dispatch(self, request, *args, **kwargs):
     self.permissions = DealExpense.get_permissions(request)
     self.model = Expense if kwargs.get(
         'model_name') == 'expense' else DealExpense
     self.filters = {}
     self.filters = self.model.get_filters(request)
     self.filters = filters_choices(request, self.filters, self.model)
     self.filters_q = self.model.get_filters_q(self.request,
                                               filters=self.filters)
     self.action = kwargs.get('action')
     self.permissions = self.model.get_permissions(request)
     self.list_display = ['id'] + getattr(self.model, 'list_display', [])
     return super().dispatch(request, *args, **kwargs)
Exemple #8
0
    def dispatch(self, request, *args, **kwargs):
        self.paging = dict(range=9, page=1, page_items=30, pages=1)
        self.permissions = self.model.get_permissions(request)
        self.kwargs.update(kwargs)
        try:
            self.agent = self.model.objects.get(pk=kwargs['pk'])
        except ValueError:
            pass

        self.list_display = ['id'] + getattr(self.model, 'list_display', [])
        self.paging['page'] = int(request.GET.get('page', 1))
        filters = self.model.get_filters(request)
        self.filters = filters_choices(request, filters, self.model)
        return super().dispatch(request, *args, **kwargs)
Exemple #9
0
    def dispatch(self, request, *args, **kwargs):
        self.paging = dict(range=9, page=1, page_items=100, pages=1)
        # try:
        #     self.model = apps.get_model(request.GET.get('meta_label'))
        # except (ValueError, LookupError):
        self.model = get_model(
            kwargs.get('model_name') or request.GET.get('model_name'))
        self.permissions = self.model.get_permissions(request)
        parent_model_name = request.GET.get('parent_model_name',
                                            kwargs.get('parent_model_name'))
        if parent_model_name:
            self.parent_model = get_model(parent_model_name)
            pk = request.GET.get('parent_pk', kwargs.get('parent_pk'))
            self.object = self.parent_model.objects.get(pk=pk)
            self.related_name = request.GET.get('related_name',
                                                kwargs.get('related_name'))
            self.model = getattr(self.object, self.related_name).model
        self.list_display = ['id'] + getattr(self.model, 'list_display', [])

        self.paging['page'] = int(request.GET.get('page', 1))
        filters = self.model.get_filters(request)
        self.filters = filters_choices(request, filters, self.model)
        return super().dispatch(request, *args, **kwargs)
Exemple #10
0
 def set_filters(self, request):
     filters = dict(
         ordered=['branch', 'start_datetime', 'created_at', 'deal_step', 'stage', 'deal_id',
                  'manager', 'master', 'comment',
                  'person__full_name', 'persons__phones', 'persons__control', 'mlm_agent'],
         fields=dict(
             branch=dict(
                 label='Филиал', key='branch',
                 widget=dict(attrs={}, name='Select', input_type='select', model_name='company.Branch')
             ),
             start_datetime=dict(
                 label='Период', key='start_datetime',
                 widget=dict(attrs={}, name='DateInput', input_type='daterange')
             ),
             created_at=dict(
                 label='Когда создана', key='created_at',
                 widget=dict(attrs={}, name='DateInput', input_type='daterange')
             ),
             stage=dict(
                 label='Этап сделки', key='stage',
                 widget=dict(attrs={}, name='Select', input_type='select', model_name='deal.Stage')
             ),
             deal_id=dict(
                 label='id сделки', key='id',
                 widget=dict(attrs={}, name='TextInput', input_type='number')
             ),
             comment=dict(
                 label='Комментарий', key='comment__icontains',
                 widget=dict(attrs={}, name='TextInput', input_type='text')
             ),
             manager=dict(
                 label='Организатор', key='manager',
                 widget=dict(attrs={}, name='Select', input_type='select', model_name='company.Manager')
             ),
             master=dict(
                 label='Правщик', key='master',
                 widget=dict(attrs={}, name='Select', input_type='select', model_name='company.Master')
             ),
             person__full_name=dict(
                 label='Клиент (Ф.И.О.)', key='persons__cache__full_name__icontains',
                 widget=dict(attrs={}, name='TextInput', input_type='text')
             ),
             persons__phones=dict(
                 label='Клиент (телефон)', key='persons__phones__value__icontains',
                 widget=dict(attrs={}, name='TextInput', input_type='text')
             ),
             persons__control=dict(
                 label='Тип услуги', key='rel_persons__control',
                 widget=dict(
                     attrs={}, name='Select', input_type='select',
                     choices=[dict(label='Правка', value=False), dict(label='Контроль', value=True)]
                 )
             ),
             mlm_agent=dict(
                 label='Промокод', key='mlm_agent__code__icontains',
                 widget=dict(attrs={}, name='TextInput', input_type='text')
             )
         )
     )
     filters = self.get_filters(request, filters=filters)
     filters = filters_choices(request, filters, self.model)
     return filters