forked from abdellaui/GreaterWMS
-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
*Fix Bug and add all data download to csv
- Loading branch information
Showing
727 changed files
with
97,603 additions
and
0 deletions.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
from django.contrib import admin | ||
from . models import AsnListModel, AsnDetailModel | ||
|
||
admin.site.register(AsnListModel) | ||
admin.site.register(AsnDetailModel) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
from django.apps import AppConfig | ||
|
||
|
||
class AsnConfig(AppConfig): | ||
name = 'asn' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,117 @@ | ||
from rest_framework_csv.renderers import CSVStreamingRenderer | ||
|
||
class FileListRenderCN(CSVStreamingRenderer): | ||
header = [ | ||
'asn_code', | ||
'asn_status', | ||
'total_weight', | ||
'total_volume', | ||
'supplier', | ||
'creater', | ||
'create_time', | ||
'update_time' | ||
] | ||
labels = dict([ | ||
('asn_code', u'ASN单号'), | ||
('asn_status', u'ASN状态'), | ||
('total_weight', u'总重量'), | ||
('total_volume', u'总体积'), | ||
('supplier', u'供应商'), | ||
('creater', u'创建人'), | ||
('create_time', u'创建时间'), | ||
('update_time', u'更新时间'), | ||
]) | ||
|
||
class FileListRenderEN(CSVStreamingRenderer): | ||
header = [ | ||
'asn_code', | ||
'asn_status', | ||
'total_weight', | ||
'total_volume', | ||
'supplier', | ||
'creater', | ||
'create_time', | ||
'update_time' | ||
] | ||
labels = dict([ | ||
('asn_code', u'ASN Code'), | ||
('asn_status', u'ASN Status'), | ||
('total_weight', u'Total Weight'), | ||
('total_volume', u'Total Volume'), | ||
('supplier', u'Supplier'), | ||
('creater', u'Creater'), | ||
('create_time', u'Create Time'), | ||
('update_time', u'Update Time'), | ||
]) | ||
|
||
class FileDetailRenderCN(CSVStreamingRenderer): | ||
header = [ | ||
'asn_code', | ||
'asn_status', | ||
'supplier', | ||
'goods_code', | ||
'goods_qty', | ||
'goods_actual_qty', | ||
'sorted_qty', | ||
'goods_shortage_qty', | ||
'goods_more_qty', | ||
'goods_damage_qty', | ||
'goods_weight', | ||
'goods_volume', | ||
'creater', | ||
'create_time', | ||
'update_time' | ||
] | ||
labels = dict([ | ||
('asn_code', u'ASN单号'), | ||
('asn_status', u'ASN状态'), | ||
('supplier', u'供应商'), | ||
('goods_code', u'商品编码'), | ||
('goods_qty', u'订单数量'), | ||
('goods_actual_qty', u'实际到货数量'), | ||
('sorted_qty', u'已分拣数量'), | ||
('goods_shortage_qty', u'少到货数量'), | ||
('goods_more_qty', u'多到货数量'), | ||
('goods_damage_qty', u'破损数量'), | ||
('goods_weight', u'商品重量'), | ||
('goods_volume', u'商品体积'), | ||
('creater', u'创建人'), | ||
('create_time', u'创建时间'), | ||
('update_time', u'更新时间') | ||
]) | ||
|
||
class FileDetailRenderEN(CSVStreamingRenderer): | ||
header = [ | ||
'asn_code', | ||
'asn_status', | ||
'supplier', | ||
'goods_code', | ||
'goods_qty', | ||
'goods_actual_qty', | ||
'sorted_qty', | ||
'goods_shortage_qty', | ||
'goods_more_qty', | ||
'goods_damage_qty', | ||
'goods_weight', | ||
'goods_volume', | ||
'creater', | ||
'create_time', | ||
'update_time' | ||
] | ||
labels = dict([ | ||
('asn_code', u'ASN Code'), | ||
('asn_status', u'ASN Status'), | ||
('supplier', u'Supplier'), | ||
('goods_code', u'Goods Code'), | ||
('goods_qty', u'Goods Qty'), | ||
('goods_actual_qty', u'Goods Actual Qty'), | ||
('sorted_qty', u'Sorted Qty'), | ||
('goods_shortage_qty', u'Goods Shortage Qty'), | ||
('goods_more_qty', u'Goods More Qty'), | ||
('goods_damage_qty', u'Goods Damage Qty'), | ||
('goods_weight', u'Goods Weight'), | ||
('goods_volume', u'Goods Volume'), | ||
('creater', u'Creater'), | ||
('create_time', u'Create Time'), | ||
('update_time', u'Update Time') | ||
]) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
from django_filters import FilterSet | ||
from .models import AsnListModel, AsnDetailModel | ||
|
||
class AsnListFilter(FilterSet): | ||
class Meta: | ||
model = AsnListModel | ||
fields = { | ||
"id": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'], | ||
"create_time": ['year', 'month', 'day', 'week_day', 'gt', 'gte', 'lt', 'lte', 'range'], | ||
"update_time": ['year', 'month', 'day', 'week_day', 'gt', 'gte', 'lt', 'lte', 'range'] | ||
} | ||
|
||
class AsnDetailFilter(FilterSet): | ||
class Meta: | ||
model = AsnDetailModel | ||
fields = { | ||
"id": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'], | ||
"asn_code": ['exact', 'iexact', 'contains', 'icontains'], | ||
"asn_status": ['exact', 'iexact'], | ||
"goods_actual_qty": ['exact', 'iexact', 'gt', 'lt', 'gte', 'lte'], | ||
"goods_shortage_qty": ['exact', 'iexact', 'gt', 'lt', 'gte', 'lte'], | ||
"goods_more_qty": ['exact', 'iexact', 'gt', 'lt', 'gte', 'lte'], | ||
"create_time": ['year', 'month', 'day', 'week_day', 'gt', 'gte', 'lt', 'lte', 'range'], | ||
"update_time": ['year', 'month', 'day', 'week_day', 'gt', 'gte', 'lt', 'lte', 'range'] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
# Generated by Django 3.1.4 on 2021-01-17 15:22 | ||
|
||
from django.db import migrations, models | ||
|
||
|
||
class Migration(migrations.Migration): | ||
|
||
initial = True | ||
|
||
dependencies = [ | ||
] | ||
|
||
operations = [ | ||
migrations.CreateModel( | ||
name='AsnDetailModel', | ||
fields=[ | ||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), | ||
('asn_code', models.CharField(max_length=255, verbose_name='ASN Code')), | ||
('asn_status', models.IntegerField(default=1, verbose_name='ASN Status')), | ||
('supplier', models.CharField(max_length=255, verbose_name='ASN Supplier')), | ||
('goods_code', models.CharField(max_length=255, verbose_name='Goods Code')), | ||
('goods_qty', models.IntegerField(default=0, verbose_name='Goods QTY')), | ||
('goods_actual_qty', models.IntegerField(default=0, verbose_name='Goods Actual QTY')), | ||
('sorted_qty', models.IntegerField(default=0, verbose_name='Sorted QTY')), | ||
('goods_shortage_qty', models.IntegerField(default=0, verbose_name='Goods Shortage QTY')), | ||
('goods_more_qty', models.IntegerField(default=0, verbose_name='Goods More QTY')), | ||
('goods_damage_qty', models.IntegerField(default=0, verbose_name='Goods damage QTY')), | ||
('goods_weight', models.FloatField(default=0, verbose_name='Goods Weight')), | ||
('goods_volume', models.FloatField(default=0, verbose_name='Goods Volume')), | ||
('creater', models.CharField(max_length=11, verbose_name='Who Created')), | ||
('openid', models.CharField(max_length=255, verbose_name='Openid')), | ||
('is_delete', models.BooleanField(default=False, verbose_name='Delete Label')), | ||
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='Create Time')), | ||
('update_time', models.DateTimeField(auto_now=True, null=True, verbose_name='Update Time')), | ||
], | ||
options={ | ||
'verbose_name': 'data id', | ||
'verbose_name_plural': 'data id', | ||
'db_table': 'asndetail', | ||
'ordering': ['-id'], | ||
}, | ||
), | ||
migrations.CreateModel( | ||
name='AsnListModel', | ||
fields=[ | ||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), | ||
('asn_code', models.CharField(max_length=255, verbose_name='ASN Code')), | ||
('asn_status', models.IntegerField(default=1, verbose_name='ASN Status')), | ||
('total_weight', models.FloatField(default=0, verbose_name='Total Weight')), | ||
('total_volume', models.FloatField(default=0, verbose_name='Total Volume')), | ||
('supplier', models.CharField(max_length=255, verbose_name='ASN Supplier')), | ||
('creater', models.CharField(max_length=255, verbose_name='Who Created')), | ||
('openid', models.CharField(max_length=255, verbose_name='Openid')), | ||
('transportation_fee', models.JSONField(default=dict, verbose_name='Transportation Fee')), | ||
('is_delete', models.BooleanField(default=False, verbose_name='Delete Label')), | ||
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='Create Time')), | ||
('update_time', models.DateTimeField(auto_now=True, null=True, verbose_name='Update Time')), | ||
], | ||
options={ | ||
'verbose_name': 'data id', | ||
'verbose_name_plural': 'data id', | ||
'db_table': 'asnlist', | ||
'ordering': ['-id'], | ||
}, | ||
), | ||
] |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
from django.db import models | ||
|
||
class AsnListModel(models.Model): | ||
asn_code = models.CharField(max_length=255, verbose_name="ASN Code") | ||
asn_status = models.IntegerField(default=1, verbose_name="ASN Status") | ||
total_weight = models.FloatField(default=0, verbose_name="Total Weight") | ||
total_volume = models.FloatField(default=0, verbose_name="Total Volume") | ||
supplier = models.CharField(max_length=255, verbose_name="ASN Supplier") | ||
creater = models.CharField(max_length=255, verbose_name="Who Created") | ||
openid = models.CharField(max_length=255, verbose_name="Openid") | ||
transportation_fee = models.JSONField(default=dict, verbose_name="Transportation Fee") | ||
is_delete = models.BooleanField(default=False, verbose_name='Delete Label') | ||
create_time = models.DateTimeField(auto_now_add=True, verbose_name="Create Time") | ||
update_time = models.DateTimeField(auto_now=True, blank=True, null=True, verbose_name="Update Time") | ||
|
||
class Meta: | ||
db_table = 'asnlist' | ||
verbose_name = 'data id' | ||
verbose_name_plural = "data id" | ||
ordering = ['-id'] | ||
|
||
def __str__(self): | ||
return self.pk | ||
|
||
class AsnDetailModel(models.Model): | ||
asn_code = models.CharField(max_length=255, verbose_name="ASN Code") | ||
asn_status = models.IntegerField(default=1, verbose_name="ASN Status") | ||
supplier = models.CharField(max_length=255, verbose_name="ASN Supplier") | ||
goods_code = models.CharField(max_length=255, verbose_name="Goods Code") | ||
goods_qty = models.IntegerField(default=0, verbose_name="Goods QTY") | ||
goods_actual_qty = models.IntegerField(default=0, verbose_name="Goods Actual QTY") | ||
sorted_qty = models.IntegerField(default=0, verbose_name="Sorted QTY") | ||
goods_shortage_qty = models.IntegerField(default=0, verbose_name="Goods Shortage QTY") | ||
goods_more_qty = models.IntegerField(default=0, verbose_name="Goods More QTY") | ||
goods_damage_qty = models.IntegerField(default=0, verbose_name="Goods damage QTY") | ||
goods_weight = models.FloatField(default=0, verbose_name="Goods Weight") | ||
goods_volume = models.FloatField(default=0, verbose_name="Goods Volume") | ||
creater = models.CharField(max_length=11, verbose_name="Who Created") | ||
openid = models.CharField(max_length=255, verbose_name="Openid") | ||
is_delete = models.BooleanField(default=False, verbose_name='Delete Label') | ||
create_time = models.DateTimeField(auto_now_add=True, verbose_name="Create Time") | ||
update_time = models.DateTimeField(auto_now=True, blank=True, null=True, verbose_name="Update Time") | ||
|
||
class Meta: | ||
db_table = 'asndetail' | ||
verbose_name = 'data id' | ||
verbose_name_plural = "data id" | ||
ordering = ['-id'] | ||
|
||
def __str__(self): | ||
return self.pk | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
from collections import OrderedDict | ||
from rest_framework.pagination import PageNumberPagination | ||
from rest_framework.response import Response | ||
from supplier.models import ListModel as supplier | ||
|
||
class MyPageNumberPaginationASNList(PageNumberPagination): | ||
page_size = 30 | ||
page_size_query_param = "max_page" | ||
max_page_size = 1000 | ||
page_query_param = 'page' | ||
|
||
def get_paginated_response(self, data): | ||
supplier_list_data = supplier.objects.filter(openid=self.request.auth.openid, is_delete=False) | ||
supplier_list = [] | ||
for i in range(len(supplier_list_data)): | ||
supplier_list.append(supplier_list_data[i].supplier_name) | ||
return Response(OrderedDict([ | ||
('supplier_list', supplier_list), | ||
('count', self.page.paginator.count), | ||
('next', self.get_next_link()), | ||
('previous', self.get_previous_link()), | ||
('results', data) | ||
])) |
Oops, something went wrong.