Merge branch 'master' of ssh://192.168.100.6/repo/record
Conflicts: .gitignore asuzr/tables.py record/settings.py
This commit is contained in:
@@ -88,6 +88,10 @@ class Order(models.Model):
|
||||
def approved_date(self):
|
||||
return self.approved.strftime("%d/%m/%Y %H:%M")
|
||||
|
||||
@property
|
||||
def sketch(self):
|
||||
return len(Sketch.objects.filter(order = self))
|
||||
|
||||
@property
|
||||
def ostatok(self):
|
||||
return self.price-self.paid
|
||||
@@ -101,7 +105,7 @@ class Order(models.Model):
|
||||
|
||||
#Эскизы
|
||||
class Sketch(models.Model):
|
||||
sketch_file = models.FileField(upload_to = 'sketches') #путь к файу
|
||||
sketch_file = models.FileField(upload_to = 'sketches/') #путь к файу
|
||||
order = models.ForeignKey(Order) #id заказа
|
||||
|
||||
def __unicode__(self):
|
||||
|
||||
@@ -11,9 +11,16 @@ def editable(field_name):
|
||||
class EditableColumn(tables.TemplateColumn):
|
||||
def __init__(self, field_name, *args, **kwargs):
|
||||
super(tables.TemplateColumn, self).__init__(*args, **kwargs)
|
||||
print kwargs
|
||||
template = '{{% load inplace_edit %}}\n\n{{% inplace_edit "record.{field}" auto_height = 1 %}}'.format(field = field_name)
|
||||
self.template_code = template
|
||||
|
||||
class ThumbnailColumn(tables.TemplateColumn):
|
||||
def __init__(self, field_name, *args, **kwargs):
|
||||
super(tables.TemplateColumn, self).__init__(*args, **kwargs)
|
||||
template = '{{% load thumbnail %}}\n\n{{% thumbnail record.{field} "100x100" as im %}}<img src="{{{{ im.url }}}}">{{% endthumbnail %}}'.format(field = field_name)
|
||||
self.template_code = template
|
||||
|
||||
class TestTable(tables.Table):
|
||||
name = EditableColumn('name', "Наименование")
|
||||
prod_period = EditableColumn('prod_period', "Время производства")
|
||||
@@ -33,7 +40,7 @@ class OrdersTable(tables.Table):
|
||||
paid = EditableColumn('paid', verbose_name = 'Оплачено')
|
||||
ostatok = tables.Column(verbose_name = 'Остаток')
|
||||
approved = EditableColumn('approved', verbose_name = 'Согласовано')
|
||||
sketch = tables.LinkColumn('sketches', verbose_name = 'Эскиз')
|
||||
sketch = tables.LinkColumn('asuzr.views.sketches', verbose_name = 'Эскизы', args=[tables.utils.A('pk')])
|
||||
executor = EditableColumn('executor', verbose_name = 'Исполнитель')
|
||||
is_done = EditableColumn('is_done', verbose_name = 'Сдан')
|
||||
id = tables.Column(visible = False)
|
||||
@@ -82,6 +89,10 @@ class DesignerTable(tables.Table):
|
||||
|
||||
def render_sum_price(self, value):
|
||||
return '%0.1f' % value
|
||||
|
||||
|
||||
class SketchesTable(tables.Table):
|
||||
sketch_file = tables.FileColumn(verbose_name = 'Имя файла')
|
||||
sketch_image = ThumbnailColumn('sketch_file', verbose_name = 'Эскиз', orderable = False)
|
||||
|
||||
class Meta:
|
||||
attrs = {'class': 'paleblue'}
|
||||
|
||||
0
asuzr/templatetags/__init__.py
Normal file
0
asuzr/templatetags/__init__.py
Normal file
9
asuzr/templatetags/filters.py
Normal file
9
asuzr/templatetags/filters.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from django import template
|
||||
from django.contrib.auth.models import Group
|
||||
|
||||
register = template.Library()
|
||||
|
||||
@register.filter(name='has_group')
|
||||
def has_group(user, group_name):
|
||||
group = Group.objects.get(name=group_name)
|
||||
return True if group in user.groups.all() else False
|
||||
@@ -105,6 +105,13 @@ def main(request, day, month, year):
|
||||
})
|
||||
return HttpResponse(t.render(c))
|
||||
|
||||
@login_required
|
||||
def sketches(request, order_id):
|
||||
curr_order = Order.objects.get(pk = order_id)
|
||||
table = SketchesTable(Sketch.objects.filter(order = curr_order))
|
||||
RequestConfig(request).configure(table)
|
||||
return render(request, 'asuzr/table.html', {'table': table, 'title': 'Эскизы заказа %s' % curr_order})
|
||||
|
||||
@login_required
|
||||
def orders(request, archive):
|
||||
is_archive = (archive == '1')
|
||||
@@ -137,4 +144,4 @@ def production_table(request, order_id):
|
||||
'sel_order' : sel_order,
|
||||
'cost_items' : cost_items,
|
||||
})
|
||||
return HttpResponse(t.render(c))
|
||||
return HttpResponse(t.render(c))
|
||||
|
||||
Reference in New Issue
Block a user