From 33c7e7db9fe7e5ee2a13af5bc3f4009e1b14a01d Mon Sep 17 00:00:00 2001 From: guillaume-renaud Date: Mon, 31 Oct 2016 08:19:46 +0100 Subject: [PATCH] addition of Stock app, model, templates, urls --- sith/settings.py | 1 + stock/admin.py | 4 ++++ stock/migrations/0001_initial.py | 32 ++++++++++++++++++++++++++ stock/models.py | 10 ++++---- stock/templates/stock/stock_main.jinja | 1 + stock/urls.py | 8 +++++++ 6 files changed, 52 insertions(+), 4 deletions(-) create mode 100644 stock/migrations/0001_initial.py create mode 100644 stock/templates/stock/stock_main.jinja create mode 100644 stock/urls.py diff --git a/sith/settings.py b/sith/settings.py index c88b1f24..78966035 100644 --- a/sith/settings.py +++ b/sith/settings.py @@ -59,6 +59,7 @@ INSTALLED_APPS = ( 'sas', 'com', 'election', + 'stock', ) MIDDLEWARE_CLASSES = ( diff --git a/stock/admin.py b/stock/admin.py index 8c38f3f3..08bb8622 100644 --- a/stock/admin.py +++ b/stock/admin.py @@ -1,3 +1,7 @@ from django.contrib import admin +from stock.models import Stock, StockItem + # Register your models here. +admin.site.register(Stock) +admin.site.register(StockItem) \ No newline at end of file diff --git a/stock/migrations/0001_initial.py b/stock/migrations/0001_initial.py new file mode 100644 index 00000000..75e99f5a --- /dev/null +++ b/stock/migrations/0001_initial.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('counter', '0011_auto_20161004_2039'), + ] + + operations = [ + migrations.CreateModel( + name='Stock', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=64, verbose_name='name')), + ('counter', models.OneToOneField(to='counter.Counter', related_name='stock', verbose_name='counter')), + ], + ), + migrations.CreateModel( + name='StockItem', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=64, verbose_name='name')), + ('unit_quantity', models.IntegerField(default=0, verbose_name='unit quantity')), + ('effective_quantity', models.IntegerField(default=0, verbose_name='effective quantity')), + ('stock_owner', models.ForeignKey(related_name='stock_owner', to='stock.Stock')), + ], + ), + ] diff --git a/stock/models.py b/stock/models.py index 1749ccc0..7c769679 100644 --- a/stock/models.py +++ b/stock/models.py @@ -1,13 +1,15 @@ from django.db import models -from django.counter import Counter +from django.utils.translation import ugettext_lazy as _ + +from counter.models import Counter class Stock(models.Model): """ The Stock class, this one is used to know how many products are left for a specific counter """ name = models.CharField(_('name'), max_length=64) counter = models.OneToOneField(Counter, verbose_name=_('counter'), related_name='stock') - + def __str__(self): - return self.name + return "%s (%s)" % (self.name, self.counter) class StockItem(models.Model): """ The StockItem class, element of the stock """ @@ -17,5 +19,5 @@ class StockItem(models.Model): stock_owner = models.ForeignKey(Stock, related_name="stock_owner") def __str__(self): - return self.name + return "%s (%s)" % (self.name, self.stock_owner) diff --git a/stock/templates/stock/stock_main.jinja b/stock/templates/stock/stock_main.jinja new file mode 100644 index 00000000..fe9f8145 --- /dev/null +++ b/stock/templates/stock/stock_main.jinja @@ -0,0 +1 @@ +TOTO \ No newline at end of file diff --git a/stock/urls.py b/stock/urls.py new file mode 100644 index 00000000..1b3a504e --- /dev/null +++ b/stock/urls.py @@ -0,0 +1,8 @@ +from django.conf.urls import include, url + +from stock.views import * + +urlpatterns = [ + url(r'^(?P[0-9]+)$', StockListView.as_view(), name='stock_list'), + url(r'^(?P[0-9]+)/new$', StockCreateView.as_view(), name='stock_new'), +]