from django.shortcuts import render,redirect
from django.http import HttpResponse
from django.core.paginator import Paginator,EmptyPage,PageNotAnInteger
from .models import *
from .form import *
from django.db.models import Q
import datetime
from pystrich.ean13 import EAN13Encoder
# Create your views here.
def indexView(request,page):
username = request.user.username
if request.method =='GET':
search = request.GET.get('search')
if search:
Item_list = Item.objects.filter(Q(item_name__contains=search) | Q(item_type__contains=search) | Q(item_speciality__contains=search)).order_by('item_id')
else:
Item_list=Item.objects.all().order_by('item_id')
paginator =Paginator(Item_list,10)
try:
pageInfo =paginator.page(page)
except PageNotAnInteger:
pageInfo=paginator.page(1)
except EmptyPage:
pageInfo=paginator.page(paginator.num_pages)
else:
#borrow_item=Item.objects.filter(item_id__lt= request.POST.get('borrow_item_id'))
borrow_id=request.POST.get('borrow_item_id')
borrow_number=int(request.POST.get('borrow_item_number'))
item_number_full=int(request.POST.get('item_number'))
borrow_item_type=request.POST.get('borrow_item_type')
borrow_item_speciality=request.POST.get('borrow_item_speciality')
borrow_item_remark=request.POST.get('borrow_item_remark')
Item.objects.filter(item_id=borrow_id).update(item_number=item_number_full-borrow_number)
tips = '已借取'
itemstatusinfo=ItemstatusInfo()
item_name=request.POST.get('borrow_item_name')
item_unit=request.POST.get('borrow_item_unit')
itemstatusinfo.item_id=borrow_id
itemstatusinfo.item_name=item_name
itemstatusinfo.number=borrow_number
itemstatusinfo.should_number=borrow_number
itemstatusinfo.remark=borrow_item_remark
itemstatusinfo.item_speciality=borrow_item_speciality
itemstatusinfo.item_type=borrow_item_type
itemstatusinfo.person=username
itemstatusinfo.status = '已借取'
itemstatusinfo.save()
Item_list = Item.objects.all().order_by('item_id')
paginator = Paginator(Item_list, 10)
try:
pageInfo = paginator.page(page)
except PageNotAnInteger:
pageInfo = paginator.page(1)
except EmptyPage:
pageInfo = paginator.page(paginator.num_pages)
return render(request,'index.html',locals())
def additemView(request):
username = request.user.username
if request.method=='GET':
form=ItemModelForm()
return render(request,'add.html',locals())
else:
item=ItemModelForm(request.POST)
if item.is_valid():
item.save()
tips='提交成功'
form = ItemModelForm()
return render(request,'add.html',locals())
return render(request,'add.html',locals())
def iteminfoView(request,page):
username = request.user.username
if request.method == 'GET':
search = request.GET.get('search')
if search:
Item_list = ItemstatusInfo.objects.filter(Q(item_name__contains=search)|Q(item_type__contains=search)|Q(item_speciality__contains=search) ,person=username).order_by('-update')
else:
Item_list = ItemstatusInfo.objects.filter(person=username ,status='已借取').order_by('-update')
paginator = Paginator(Item_list, 10)
try:
pageInfo = paginator.page(page)
except PageNotAnInteger:
pageInfo = paginator.page(1)
except EmptyPage:
pageInfo = paginator.page(paginator.num_pages)
else:
# borrow_item=Item.objects.filter(item_id__lt= request.POST.get('borrow_item_id'))
back_id = request.POST.get('back_id')
borrow_item_id=request.POST.get('borrow_item_id')
borrow_number = int(request.POST.get('borrow_item_number'))
back_number = int(request.POST.get('back_item_number'))
re_number=ItemstatusInfo.objects.get(id=back_id).re_number+back_number
number=ItemstatusInfo.objects.get(id=back_id).number
item_temp=ItemstatusInfo.objects.filter(id=back_id).update(re_number= re_number,should_number=number - re_number,update=datetime.datetime.now())
if borrow_number-back_number == 0:
tips = '已归还'
ItemstatusInfo.objects.filter(id=back_id).update(status='已归还')
else:
tips='未全部归还'
item_number=int(Item.objects.get(item_id=borrow_item_id).item_number)
Item.objects.filter(item_id=borrow_item_id).update(item_number=item_number + back_number)
Item_list = ItemstatusInfo.objects.filter(person=username, status='已借取').order_by('-update')
paginator = Paginator(Item_list, 10)
try:
pageInfo = paginator.page(page)
except PageNotAnInteger:
pageInfo = paginator.page(1)
except EmptyPage:
pageInfo = paginator.page(paginator.num_pages)
return render(request, 'iteminfo.html', locals())
def baomiView(request,page):
username = request.user.username
if request.method == 'GET':
search = request.GET.get('search')
if search:
Item_list = ItemstatusInfo.objects.filter(
Q(item_name__contains=search) | Q(item_type__contains=search) | Q(item_speciality__contains=search)).order_by('-update')
else:
Item_list = ItemstatusInfo.objects.filter(item_type='保密物资').order_by('-update')
paginator = Paginator(Item_list, 10)
try:
pageInfo = paginator.page(page)
except PageNotAnInteger:
pageInfo = paginator.page(1)
except EmptyPage:
pageInfo = paginator.page(paginator.num_pages)
else:
pass
return render(request, 'baomi.html', locals())
def gudingView(request,page):
username = request.user.username
if request.method == 'GET':
search = request.GET.get('search')
if search:
Item_list = ItemstatusInfo.objects.filter(
Q(item_name__contains=search) | Q(item_type__contains=search) | Q(
item_speciality__contains=search)).order_by('-update')
else:
Item_list = ItemstatusInfo.objects.filter(item_type='固定资产').order_by('-update')
paginator = Paginator(Item_list, 10)
try:
pageInfo = paginator.page(page)
except PageNotAnInteger:
pageInfo = paginator.page(1)
except EmptyPage:
pageInfo = paginator.page(paginator.num_pages)
else:
pass
return render(request, 'guding.html', locals())
def zhuanyeView(request,page):
username = request.user.username
if request.method == 'GET':
search = request.GET.get('search')
if search:
Item_list = ItemstatusInfo.objects.filter(
Q(item_name__contains=search) | Q(item_type__contains=search) | Q(
item_speciality__contains=search)).order_by('-update')
else:
Item_list = ItemstatusInfo.objects.all().order_by('-update')
paginator = Paginator(Item_list, 10)
try:
pageInfo = paginator.page(page)
except PageNotAnInteger:
pageInfo = paginator.page(1)
except EmptyPage:
pageInfo = paginator.page(paginator.num_pages)
else:
pass
return render(request, 'zhuanye.html', locals())
def xiugaiView(request,page):
username = request.user.username
if request.method =='GET':
search = request.GET.get('search')
if search:
Item_list = Item.objects.filter(Q(it
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
python基于django 实现的物资管理系统,有二维码生成和扫码功能。 此作品为作者学习Python后的第一个作品,所有的视图处理都放在了VIEW视图里,而且鄙人比较懒,并不想在model加函数了,程序结构很臃肿,对于一些复用率高的函数没有封装,此作品仅为新手处作,还有许多功能不完善,扫码功能需要搭配市面上的扫码枪来实现,本人使用科密的WX70扫码枪做的测试
资源详情
资源评论
资源推荐
收起资源包目录
Python基于Django的物资管理系统 实现二维码生成与扫码功能 (135个子文件)
bootstrap.css 144KB
bootstrap.min.css 120KB
bootstrap-theme.css 25KB
bootstrap-theme.min.css 23KB
font-awesome.min.css 15KB
mmss.css 4KB
Thumbs.db 11KB
django_db 148KB
fontawesome-webfont.eot 25KB
glyphicons-halflings-regular.eot 20KB
index.html 18KB
xiugai.html 14KB
bar_generate.html 14KB
iteminfo.html 14KB
xiugaijilu.html 13KB
guding.html 13KB
baomi.html 13KB
zhuanye.html 13KB
bar_back2.html 13KB
bar_borrow2.html 11KB
p2.html 10KB
bar_back1.html 8KB
bar_borrow1.html 8KB
add.html 8KB
p3.html 7KB
setpassword.html 7KB
register.html 6KB
login.html 6KB
mysite.iml 1KB
logo.jpg 13KB
bootlint.js 334KB
jquery-1.11.3.js 278KB
JsBarcode.all.js 123KB
Chart.js 107KB
bootstrap.js 67KB
respond.min.js 4KB
html5shiv.min.js 3KB
myboot.js 136B
mmss.js 0B
FontAwesome.otf 48KB
bg-login.png 241KB
logo.png 25KB
views.py 15KB
models.py 4KB
settings.py 4KB
views.py 3KB
0007_auto_20211222_0009.py 2KB
0003_auto_20211220_2251.py 2KB
0013_itemxiugai.py 2KB
0001_initial.py 2KB
0006_auto_20211221_1302.py 1KB
form.py 1012B
urls.py 868B
0012_alter_item_item_speciality.py 816B
urls.py 740B
manage.py 684B
0008_alter_item_item_type.py 602B
0011_itemstatusinfo_created.py 552B
0004_alter_item_item_type.py 516B
0005_alter_item_item_type.py 514B
0016_itemstatusinfo_should_number.py 507B
0015_alter_itemstatusinfo_re_number.py 450B
0010_alter_item_item_remark.py 446B
0009_alter_item_item_updated.py 441B
0014_itemstatusinfo_re_number.py 431B
asgi.py 405B
wsgi.py 405B
0002_alter_item_item_updated.py 403B
urls.py 302B
bar_generate.py 228B
myfilter.py 175B
apps.py 148B
apps.py 146B
admin.py 124B
admin.py 66B
tests.py 63B
tests.py 63B
models.py 60B
__init__.py 0B
__init__.py 0B
__init__.py 0B
__init__.py 0B
__init__.py 0B
__init__.py 0B
__init__.py 0B
__init__.py 0B
views.cpython-37.pyc 8KB
models.cpython-37.pyc 3KB
settings.cpython-37.pyc 2KB
views.cpython-37.pyc 2KB
0003_auto_20211220_2251.cpython-37.pyc 2KB
0007_auto_20211222_0009.cpython-37.pyc 1KB
0013_itemxiugai.cpython-37.pyc 1KB
0006_auto_20211221_1302.cpython-37.pyc 1KB
0001_initial.cpython-37.pyc 1KB
0012_alter_item_item_speciality.cpython-37.pyc 1KB
urls.cpython-37.pyc 1007B
form.cpython-37.pyc 1002B
urls.cpython-37.pyc 812B
0008_alter_item_item_type.cpython-37.pyc 802B
共 135 条
- 1
- 2
砺剑2021
- 粉丝: 3
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0