From f9aadc88d3f17c63ebc7abde0b1a6bebb4f455dd Mon Sep 17 00:00:00 2001
From: haze on hillside <2428349829@qq.com>
Date: Tue, 23 May 2023 11:38:56 +0800
Subject: [PATCH 1/2] =?UTF-8?q?=E5=BA=93=E5=AD=98=E7=B3=BB=E7=BB=9F1?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/Dj_web.iml | 2 +-
.idea/misc.xml | 2 +-
system/LiveStream/settings.py | 2 +-
system/LiveStream/urls.py | 1 +
system/login/urls.py | 8 +-
system/templates/WareHouse/index.html | 8 +-
system/templates/index.html | 2 +-
system/warehouse/models.py | 307 ++++++++++++++++++++++++++
system/warehouse/urls.py | 4 +-
system/warehouse/views.py | 8 +-
10 files changed, 329 insertions(+), 15 deletions(-)
diff --git a/.idea/Dj_web.iml b/.idea/Dj_web.iml
index d0876a7..fce4d43 100644
--- a/.idea/Dj_web.iml
+++ b/.idea/Dj_web.iml
@@ -2,7 +2,7 @@
-
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index f6104af..66d986f 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,6 +1,6 @@
-
+
diff --git a/system/LiveStream/settings.py b/system/LiveStream/settings.py
index ac97590..f92e11a 100644
--- a/system/LiveStream/settings.py
+++ b/system/LiveStream/settings.py
@@ -84,7 +84,7 @@ DATABASES = {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'livestream',
'USER': 'root',
- 'PASSWORD': '123456',
+ 'PASSWORD': '123123',
'HOST': 'localhost',
'PORT': '3306'
}
diff --git a/system/LiveStream/urls.py b/system/LiveStream/urls.py
index 96c3709..8e75141 100644
--- a/system/LiveStream/urls.py
+++ b/system/LiveStream/urls.py
@@ -26,5 +26,6 @@ urlpatterns = [
path('index1/Proc_index/',include('proc.urls',namespace='proc')),
path('index1/Sales_index/',include('sales.urls',namespace='sales')),
path('admin/', admin.site.urls),#系统默认创建的
+ path('index1/Warehouse_index',include('warehouse.urls',namespace='warehouse')),
]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
diff --git a/system/login/urls.py b/system/login/urls.py
index 66911f4..1fd1782 100644
--- a/system/login/urls.py
+++ b/system/login/urls.py
@@ -1,4 +1,4 @@
-from django.urls import path
+from django.urls import path, include
from django.urls import re_path as url
from . import views
from . import view1
@@ -13,10 +13,10 @@ urlpatterns = [
path('i_graph1/', views.index_graph1, name='i_graph1'),
path('index1/Proc_index/', views.proc_index, name='proc_index'),
path('index1/Sales_index/', views.sale_index, name='sale_index'),
- path('index1/Warehouse_index/', views.Warehouse_index, name='warehouse_index'),
+ path('index1/Warehouse_index/', include('warehouse.urls')),
path('index1/live_info', views.Stream_info, name='stream_info'),
- url(r'^line/$', view1.ChartView.as_view(), name='demo'),
- url(r'^lineUpdate/$', view1.ChartUpdateView.as_view(), name='demo'),
+ url(r'^line/$', view1.ChartView.as_view(), name='demo1'),
+ url(r'^lineUpdate/$', view1.ChartUpdateView.as_view(), name='demo2'),
url(r'^line_test/$', view1.home_page, name='demo'),
]
diff --git a/system/templates/WareHouse/index.html b/system/templates/WareHouse/index.html
index 434313d..4a37de8 100644
--- a/system/templates/WareHouse/index.html
+++ b/system/templates/WareHouse/index.html
@@ -160,14 +160,16 @@
+ {% for item in pandian_list %}
- | 1 |
- ? |
- ? |
+ {{item.goods_id}} |
+ {{item.goods_name}} |
+ {{item.gprice}} |
? |
出 |
? |
+ {% endfor %}
diff --git a/system/templates/index.html b/system/templates/index.html
index f467cfd..a515f61 100644
--- a/system/templates/index.html
+++ b/system/templates/index.html
@@ -100,7 +100,7 @@
-
+
diff --git a/system/warehouse/models.py b/system/warehouse/models.py
index 71a8362..9b5d476 100644
--- a/system/warehouse/models.py
+++ b/system/warehouse/models.py
@@ -1,3 +1,310 @@
from django.db import models
# Create your models here.
+# This is an auto-generated Django model module.
+# You'll have to do the following manually to clean this up:
+# * Rearrange models' order
+# * Make sure each model has one field with primary_key=True
+# * Make sure each ForeignKey and OneToOneField has `on_delete` set to the desired behavior
+# * Remove `managed = False` lines if you wish to allow Django to create, modify, and delete the table
+# Feel free to rename the models, but don't rename db_table values or field names.
+from django.db import models
+
+
+class BackgroundEmp(models.Model):
+ eid = models.OneToOneField('EmployeeInfo', models.DO_NOTHING, db_column='eid', primary_key=True)
+ bge_name = models.CharField(max_length=10, blank=True, null=True)
+ bge_duty = models.CharField(max_length=10, blank=True, null=True)
+ login_status = models.IntegerField(blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'background_emp'
+
+
+class CollectingNotes(models.Model):
+ collect_id = models.CharField(primary_key=True, max_length=20)
+ recv = models.ForeignKey('Receivables', models.DO_NOTHING)
+ collect_name = models.CharField(max_length=20, blank=True, null=True)
+ collect_way = models.CharField(max_length=20, blank=True, null=True)
+ collect_num = models.FloatField(blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'collecting_notes'
+
+
+class CustomerInfo(models.Model):
+ cid = models.CharField(primary_key=True, max_length=20)
+ clevel = models.CharField(max_length=10, blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'customer_info'
+
+
+class Danmu(models.Model):
+ dm_id = models.CharField(primary_key=True, max_length=25)
+ live_record = models.ForeignKey('LiveRecord', models.DO_NOTHING)
+ user_name = models.CharField(max_length=10, blank=True, null=True)
+ send_time = models.DateTimeField(blank=True, null=True)
+ send_text = models.CharField(max_length=256, blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'danmu'
+
+
+class EmployeeInfo(models.Model):
+ eid = models.CharField(primary_key=True, max_length=10)
+ ename = models.CharField(max_length=10, blank=True, null=True)
+ psword = models.CharField(max_length=20, blank=True, null=True)
+ etype = models.CharField(max_length=20, blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'employee_info'
+
+
+class GoodsInfo(models.Model):
+ goods_id = models.CharField(primary_key=True, max_length=10)
+ goods_name = models.CharField(max_length=20, blank=True, null=True)
+ goods_type = models.CharField(max_length=20, blank=True, null=True)
+ gprice = models.FloatField(blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'goods_info'
+
+
+class GoodsInv(models.Model):
+ inv_id = models.CharField(primary_key=True, max_length=10)
+ eid = models.ForeignKey('StockAdmin', models.DO_NOTHING, db_column='eid')
+ inv_time = models.DateTimeField()
+
+ class Meta:
+ managed = False
+ db_table = 'goods_inv'
+
+
+class Inventory(models.Model):
+ inv = models.OneToOneField(GoodsInv, models.DO_NOTHING, primary_key=True) # The composite primary key (inv_id, goods_id) found, that is not supported. The first column is selected.
+ goods = models.ForeignKey('StockInfo', models.DO_NOTHING)
+
+ class Meta:
+ managed = False
+ db_table = 'inventory'
+ unique_together = (('inv', 'goods'),)
+
+
+class LiveRecord(models.Model):
+ live_record_id = models.CharField(primary_key=True, max_length=20)
+ liveroom = models.ForeignKey('LiveroomInfo', models.DO_NOTHING)
+ eid = models.ForeignKey('ZbInfo', models.DO_NOTHING, db_column='eid')
+ live_starttime = models.DateTimeField(blank=True, null=True)
+ live_endtime = models.DateTimeField(blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'live_record'
+
+
+class LiveroomInfo(models.Model):
+ liveroom_id = models.CharField(primary_key=True, max_length=10)
+ liveroom_status = models.IntegerField(blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'liveroom_info'
+
+
+class LogisticsInfo(models.Model):
+ pass
+
+
+class OrderDetails(models.Model):
+ order = models.OneToOneField('OrderInfo', models.DO_NOTHING, primary_key=True) # The composite primary key (order_id, goods_id) found, that is not supported. The first column is selected.
+ goods = models.ForeignKey(GoodsInfo, models.DO_NOTHING)
+ goods_num = models.IntegerField(blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'order_details'
+ unique_together = (('order', 'goods'),)
+
+
+class OrderInfo(models.Model):
+ order_id = models.CharField(primary_key=True, max_length=25)
+ live_record = models.ForeignKey(LiveRecord, models.DO_NOTHING)
+ cid = models.ForeignKey(CustomerInfo, models.DO_NOTHING, db_column='cid')
+ eid = models.ForeignKey('SalesInfo', models.DO_NOTHING, db_column='eid')
+ order_time = models.DateTimeField(blank=True, null=True)
+ address = models.CharField(max_length=100, blank=True, null=True)
+ sum_price = models.FloatField(blank=True, null=True)
+ process_status = models.CharField(max_length=10, blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'order_info'
+
+
+class ProcureAdmin(models.Model):
+ eid = models.OneToOneField(EmployeeInfo, models.DO_NOTHING, db_column='eid', primary_key=True)
+ pro_name = models.CharField(max_length=10, blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'procure_admin'
+
+
+class ProcureOrder(models.Model):
+ sup = models.OneToOneField('SupplyInfo', models.DO_NOTHING, primary_key=True) # The composite primary key (sup_id, procure_id) found, that is not supported. The first column is selected.
+ procure = models.ForeignKey('ProcurePlan', models.DO_NOTHING)
+ procure_price = models.FloatField()
+ procure_num = models.IntegerField()
+
+ class Meta:
+ managed = False
+ db_table = 'procure_order'
+ unique_together = (('sup', 'procure'),)
+
+
+class ProcurePlan(models.Model):
+ procure = models.OneToOneField('ReplenishRequest', models.DO_NOTHING, primary_key=True)
+ check_status = models.CharField(max_length=8)
+ project_intro = models.CharField(max_length=1024, blank=True, null=True)
+ procure_rule = models.CharField(max_length=1024, blank=True, null=True)
+ procure_comtent = models.CharField(max_length=1024, blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'procure_plan'
+
+
+class QualityInfo(models.Model):
+ pass
+
+
+class Receivables(models.Model):
+ recv_id = models.CharField(primary_key=True, max_length=20)
+ order = models.ForeignKey(OrderInfo, models.DO_NOTHING)
+ invoice_id = models.CharField(max_length=20, blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'receivables'
+
+
+class ReplenishRequest(models.Model):
+ request_num = models.IntegerField()
+ request_time = models.DateTimeField()
+ procure_id = models.CharField(primary_key=True, max_length=10)
+ eid = models.ForeignKey(ProcureAdmin, models.DO_NOTHING, db_column='eid')
+ goods = models.ForeignKey('StockInfo', models.DO_NOTHING, blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'replenish_request'
+
+
+class ReturnInfo(models.Model):
+ return_id = models.CharField(primary_key=True, max_length=20)
+ order = models.ForeignKey(OrderInfo, models.DO_NOTHING)
+ apply_time = models.DateTimeField(blank=True, null=True)
+ process_time = models.DateTimeField(blank=True, null=True)
+ process_way = models.CharField(max_length=20, blank=True, null=True)
+ retrun_status = models.CharField(max_length=20, blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'return_info'
+
+
+class SalesIndex(models.Model):
+ goods = models.OneToOneField(GoodsInfo, models.DO_NOTHING, primary_key=True) # The composite primary key (goods_id, index_month) found, that is not supported. The first column is selected.
+ profit_rate = models.FloatField(blank=True, null=True)
+ sales_num = models.IntegerField(blank=True, null=True)
+ return_rate = models.FloatField(blank=True, null=True)
+ kpi_rate = models.FloatField(blank=True, null=True)
+ index_month = models.DateTimeField()
+
+ class Meta:
+ managed = False
+ db_table = 'sales_index'
+ unique_together = (('goods', 'index_month'),)
+
+
+class SalesInfo(models.Model):
+ eid = models.OneToOneField(EmployeeInfo, models.DO_NOTHING, db_column='eid', primary_key=True)
+ sales_name = models.CharField(max_length=10, blank=True, null=True)
+ sales_duty = models.CharField(max_length=20, blank=True, null=True)
+ login_status = models.IntegerField(blank=True, null=True)
+ salary = models.FloatField(blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'sales_info'
+
+
+class SalesPerformance(models.Model):
+ sales_performance = models.IntegerField(blank=True, null=True)
+ performance_rank = models.IntegerField(blank=True, null=True)
+ performance_month = models.DateTimeField(primary_key=True) # The composite primary key (performance_month, eid) found, that is not supported. The first column is selected.
+ eid = models.ForeignKey(EmployeeInfo, models.DO_NOTHING, db_column='eid')
+
+ class Meta:
+ managed = False
+ db_table = 'sales_performance'
+ unique_together = (('performance_month', 'eid'),)
+
+
+class StockAdmin(models.Model):
+ eid = models.OneToOneField(EmployeeInfo, models.DO_NOTHING, db_column='eid', primary_key=True)
+ st_name = models.CharField(max_length=10, blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'stock_admin'
+
+
+class StockInfo(models.Model):
+ goods = models.OneToOneField(GoodsInfo, models.DO_NOTHING, primary_key=True)
+ goods_details = models.CharField(max_length=1024, blank=True, null=True)
+ stock_num = models.IntegerField()
+
+ class Meta:
+ managed = False
+ db_table = 'stock_info'
+
+
+class StockOut(models.Model):
+ goods = models.OneToOneField(StockInfo, models.DO_NOTHING, primary_key=True)
+ out_time = models.DateTimeField()
+ out_num = models.IntegerField()
+
+ class Meta:
+ managed = False
+ db_table = 'stock_out'
+
+
+class SupplyInfo(models.Model):
+ sup_id = models.CharField(primary_key=True, max_length=10)
+ sup_name = models.CharField(max_length=20)
+ sup_contact = models.CharField(max_length=15)
+ sup_serve = models.CharField(max_length=1024)
+ sup_level = models.CharField(max_length=10)
+
+ class Meta:
+ managed = False
+ db_table = 'supply_info'
+
+
+class ZbInfo(models.Model):
+ eid = models.OneToOneField(EmployeeInfo, models.DO_NOTHING, db_column='eid', primary_key=True)
+ zbname = models.CharField(max_length=10, blank=True, null=True)
+ zblevel = models.CharField(max_length=1024, blank=True, null=True)
+ login_status = models.IntegerField(blank=True, null=True)
+
+ class Meta:
+ managed = False
+ db_table = 'zb_info'
diff --git a/system/warehouse/urls.py b/system/warehouse/urls.py
index 108e8b4..75e64ba 100644
--- a/system/warehouse/urls.py
+++ b/system/warehouse/urls.py
@@ -1,11 +1,11 @@
from django.urls import path
-from sales import views
+from warehouse import views
app_name='warehouse'#需要添加app名称,不然include无法找到该model,在html文件里需要加上app名
urlpatterns = [
# 主页,用来显示类别等其他数据
-
+ path('', views.pandian ,name='warehouse_index')
]
diff --git a/system/warehouse/views.py b/system/warehouse/views.py
index 213657d..94d4a7b 100644
--- a/system/warehouse/views.py
+++ b/system/warehouse/views.py
@@ -1,5 +1,9 @@
from django.shortcuts import render
-
+from .models import *
# Create your views here.
-from django.http import HttpResponse
\ No newline at end of file
+from django.http import HttpResponse
+
+def pandian(request):#进入注册界面
+ pandian_list = GoodsInfo.objects.all()
+ return render(request,'../templates/Warehouse/index.html', {'pandian_list':pandian_list})
\ No newline at end of file
--
Gitee
From 1e1d1e07d5a82c3d58559a7d5e3a153455f41fa2 Mon Sep 17 00:00:00 2001
From: haze on hillside <2428349829@qq.com>
Date: Fri, 2 Jun 2023 13:00:59 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E5=BA=93=E5=AD=98=E7=B3=BB=E7=BB=9F2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/encodings.xml | 2 +
system/LiveStream/settings.py | 2 +-
system/proc/models.py | 3 -
system/templates/WareHouse/in_out_return.html | 136 ++++++++++
system/templates/WareHouse/index.html | 123 ++-------
system/templates/WareHouse/pandian.html | 72 +++++
system/templates/WareHouse/predict_num.html | 59 +++++
system/templates/WareHouse/print_bar.html | 239 +++++++++++++++++
system/templates/demo.html | 36 +++
system/warehouse/models.py | 250 ++++++++++++++----
system/warehouse/urls.py | 11 +-
system/warehouse/views.py | 138 +++++++++-
12 files changed, 906 insertions(+), 165 deletions(-)
create mode 100644 system/templates/WareHouse/in_out_return.html
create mode 100644 system/templates/WareHouse/pandian.html
create mode 100644 system/templates/WareHouse/predict_num.html
create mode 100644 system/templates/WareHouse/print_bar.html
create mode 100644 system/templates/demo.html
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
index b722ebc..234d9e3 100644
--- a/.idea/encodings.xml
+++ b/.idea/encodings.xml
@@ -2,5 +2,7 @@
+
+
\ No newline at end of file
diff --git a/system/LiveStream/settings.py b/system/LiveStream/settings.py
index f92e11a..4185f2e 100644
--- a/system/LiveStream/settings.py
+++ b/system/LiveStream/settings.py
@@ -82,7 +82,7 @@ WSGI_APPLICATION = 'LiveStream.wsgi.application'
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
- 'NAME': 'livestream',
+ 'NAME': 'live',
'USER': 'root',
'PASSWORD': '123123',
'HOST': 'localhost',
diff --git a/system/proc/models.py b/system/proc/models.py
index 71a8362..e69de29 100644
--- a/system/proc/models.py
+++ b/system/proc/models.py
@@ -1,3 +0,0 @@
-from django.db import models
-
-# Create your models here.
diff --git a/system/templates/WareHouse/in_out_return.html b/system/templates/WareHouse/in_out_return.html
new file mode 100644
index 0000000..a37a59e
--- /dev/null
+++ b/system/templates/WareHouse/in_out_return.html
@@ -0,0 +1,136 @@
+
+
+
+
+
+
+ 库存管理系统
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
商品入库信息表
+
+
+
+
+ | # |
+ 订单编号 |
+ 商品代码 |
+ 商品名称 |
+ 商品流转量 |
+ 入库时间 |
+ 入库 |
+
+
+
+ {% for item in stock_in_list %}
+
+ | {{forloop.counter}} |
+ {{item.procure}} |
+ {{item.goods_id}} |
+ {{item.goods_name}} |
+ {{item.in_num}} |
+ {{item.in_time}} |
+ 入 |
+
+ {% endfor %}
+
+
+
+
+
+
+
+
+
+
+
+
+
商品出库信息表
+
+
+
+
+ | # |
+ 订单编号 |
+ 商品代码 |
+ 商品名称 |
+ 商品流转量 |
+ 出库时间 |
+ 出库 |
+
+
+
+ {% for item in stock_out_list%}
+
+ | {{forloop.counter}} |
+ {{item.oder.order_id}} |
+ {{item.goods.goods_id}} |
+ {{item.goods_name}} |
+ {{item.out_num}} |
+ {{item.out_time}} |
+ 出 |
+
+ {% endfor %}
+
+
+
+
+
+
+
+
+
+
+
+
+
商品退货信息表
+
+
+
+
+ | # |
+ 订单编号 |
+ 商品代码 |
+ 商品名称 |
+ 商品流转量 |
+ 退货时间 |
+ 退货 |
+
+
+
+ {% for item in stock_return_list%}
+
+ | {{forloop.counter}} |
+ {{item.order.order_id}} |
+ {{item.goods.goods_id}} |
+ {{item.goods_name}} |
+ {{item.goods_num}} |
+ {{item.return_time}} |
+ 退 |
+
+ {% endfor %}
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/system/templates/WareHouse/index.html b/system/templates/WareHouse/index.html
index 4a37de8..39c2260 100644
--- a/system/templates/WareHouse/index.html
+++ b/system/templates/WareHouse/index.html
@@ -17,7 +17,7 @@
-
+