import json
import time
from django.core.paginator import Paginator
from django.db import transaction
from django.db.models import Q
from django.http import HttpResponse, HttpResponseRedirect
from django.shortcuts import render
from django.views import View
from app import models
'''
基础处理类,其他处理继承这个类
'''
class BaseView(View):
'''
检查指定的参数是否存在
存在返回 True
不存在返回 False
'''
def isExit(param):
if (param == None) or (param == ''):
return False
else:
return True
'''
转换分页查询信息
'''
def parasePage(pageIndex, pageSize, pageTotal, count, data):
return {'pageIndex': pageIndex, 'pageSize': pageSize, 'pageTotal': pageTotal, 'count': count, 'data': data}
'''
转换分页查询信息
'''
def parasePage(pageIndex, pageSize, pageTotal, count, data):
return {'pageIndex': pageIndex, 'pageSize': pageSize, 'pageTotal': pageTotal, 'count': count, 'data': data}
'''
成功响应信息
'''
def success(msg='处理成功'):
resl = {'code': 0, 'msg': msg}
return HttpResponse(json.dumps(resl), content_type='application/json; charset=utf-8')
'''
成功响应信息, 携带数据
'''
def successData(data, msg='处理成功'):
resl = {'code': 0, 'msg': msg, 'data': data}
return HttpResponse(json.dumps(resl), content_type='application/json; charset=utf-8')
'''
系统警告信息
'''
def warn(msg='操作异常,请重试'):
resl = {'code': 1, 'msg': msg}
return HttpResponse(json.dumps(resl), content_type='application/json; charset=utf-8')
'''
系统异常信息
'''
def error(msg='系统异常'):
resl = {'code': 2, 'msg': msg}
return HttpResponse(json.dumps(resl), content_type='application/json; charset=utf-8')
'''
系统请求处理
'''
class SysView(BaseView):
def get(self, request, module, *args, **kwargs):
if module == 'login':
return render(request, 'login.html')
elif module == 'exit':
del request.session["user"]
del request.session["type"]
return HttpResponseRedirect('/jobs/login')
if module == 'info':
return SysView.getSessionInfo(request)
elif module == 'show':
return render(request, 'index.html')
elif module == 'sysNum':
return SysView.getSysNums(request)
def post(self, request, module, *args, **kwargs):
if module == 'login':
return SysView.login(request)
if module == 'info':
return SysView.updSessionInfo(request)
if module == 'pwd':
return SysView.updSessionPwd(request)
def login(request):
userName = request.POST.get('userName')
passWord = request.POST.get('passWord')
user = models.Users.objects.filter(userName=userName)
if (user.exists()):
user = user.first()
if user.passWord == passWord:
request.session["user"] = user.id
request.session["type"] = user.type
return SysView.success()
else:
return SysView.warn('用户密码输入错误')
else:
return SysView.warn('用户名输入错误')
def getSessionInfo(request):
user = request.session.get('user')
data = models.Users.objects.filter(id=user)
resl = {}
for item in data:
resl = {
'id': item.id,
'userName': item.userName,
'passWord': item.passWord,
'gender': item.gender,
'name': item.name,
'age': item.age,
'phone': item.phone,
'type': item.type,
}
return SysView.successData(resl)
def getSysNums(request):
resl = {
'companiesTotal' : models.Companies.objects.all().count(),
'jobTotal' : models.Jobs.objects.all().count(),
'inStuTotal' : models.Students.objects.filter(status=0).count(),
'outStuTotal' : models.Students.objects.filter(status=1).count()
}
return BaseView.successData(resl)
def updSessionInfo(request):
user = request.session.get('user')
models.Users.objects.filter(id=user).update(
userName=request.POST.get('userName'),
name=request.POST.get('name'),
age=request.POST.get('age'),
gender=request.POST.get('gender'),
phone=request.POST.get('phone'),
)
return SysView.success()
def updSessionPwd(request):
user = request.session.get('user')
models.Users.objects.filter(id=user).update(
passWord=request.POST.get('password'),
)
return SysView.success()
'''
学院信息管理
'''
class CollegesView(BaseView):
def get(self, request, module, *args, **kwargs):
if module == 'show':
return render(request, 'colleges.html')
elif module == 'info':
return self.getInfo(request)
elif module == 'page':
return self.getPageInfo(request)
else:
return self.error()
def post(self, request, module, *args, **kwargs):
if module == 'add':
return self.addInfo(request)
elif module == 'upd':
return self.updInfo(request)
elif module == 'del':
return self.delInfo(request)
else:
return self.error()
def getInfo(self, request):
data = models.Colleges.objects.filter(id=request.GET.get('id')).first()
resl = {
'id': data.id,
'name': data.name,
'createTime': data.createTime
}
return BaseView.successData(resl)
def getPageInfo(self, request):
pageIndex = request.GET.get('pageIndex', 1)
pageSize = request.GET.get('pageSize', 10)
name = request.GET.get('name')
qruery = Q();
if BaseView.isExit(name):
qruery = qruery & Q(name__contains=name)
data = models.Colleges.objects.filter(qruery)
paginator = Paginator(data, pageSize)
resl = []
for item in list(paginator.page(pageIndex)):
temp = {
'id': item.id,
'name': item.name,
'createTime': item.createTime
}
resl.append(temp)
pageData = BaseView.parasePage(pageIndex, pageSize,
paginator.page(pageIndex).paginator.num_pages,
paginator.count, resl)
return BaseView.successData(pageData)
def addInfo(self,request):
models.Colleges.objects.create(name=request.POST.get('name'),
createTime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
)
return BaseView.success()
def updInfo(self, request):
models.Colleges.objects.filter(id=request.POST.get('id')) \
.update(
name=request.POST.get('name')
)
return BaseView.success()
def delInfo(self, request):
if models.Students.objects.filter(college__id=request.POST.get('id')).exists():
return BaseView.warn('存在关联内容无法删除')
else:
models.Colleges.objects.filter(id=request.POST.get('id')).delete()
return BaseView.success()
'''
专业信息管理
'''
class MajorsView(BaseView):
def get(self, request, module, *args, **kwargs):
if module == 'show':
return render(request, 'majors.html')
elif module == 'info':
return self.getInfo(request)
elif module == 'page':
return self.getPageInfo(request)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【项目介绍】 毕业设计项目基于Django+Python实现的高校大学毕业生就业管理系统源码zip毕业设计项目基于Django+Python实现的高校大学毕业生就业管理系统源码zip毕业设计项目基于 该资源内项目代码都是经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶, 或者实际项目借鉴参考! 当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。如果基础还行,也可在此代码基础上进行修改,以实现其他功能。 【特别强调】 1、csdn上资源保证是完整最新,会不定期更新优化; 2、请用自己的账号在csdn官网下载,若通过第三方代下,博主不对您下载的资源作任何保证,且不提供任何形式的技术支持和答疑!!!
资源推荐
资源详情
资源评论





























收起资源包目录














































































































共 90 条
- 1
资源评论


onnx
- 粉丝: 1w+
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 机电体化项目管理.doc
- 【计算机视觉与机器学习】基于多任务学习的双通路驾驶员情绪分类网络:融合视觉面部与驾驶行为数据的情绪识别系统设计与实现(含详细代码及解释)
- Kook.Net-C#资源
- MDword-PHP资源
- AirPower-Transformer-JavaScript资源
- Yearning-SQL资源
- 电路CAD课程方案设计书----智能万年历时钟电路.doc
- 自动驾驶基于多模型冗余与自适应阈值的传感器和执行器故障检测算法:Python实现及优化(含详细代码及解释)
- National-Computer-Rank-Examination-计算机二级资源
- 电力系统基于牛顿-拉夫逊法的环网潮流计算与MATLAB实现:参数初始化、导纳矩阵构建及迭代求解过程详解电力系统环网(含详细代码及解释)
- springboot_uniapp-毕业设计资源
- 铁电薄膜基于时变Ginzburg-Landau方法的铁电薄膜畴结构模拟与电极效应分析:探讨不同表面电极分布对畴结构的影响(含详细代码及解释)
- 机械工程气压砂轮柔固耦合仿真与加工特性分析:磨粒层离散元建模及压力分布优化设计(含详细代码及解释)
- 这篇文章详细介绍了Prenflo气流床气化炉中熔渣流动行为的建模与仿真,涵盖从基础模型建立到复杂物理过程的深入分析(含详细代码及解释)
- 【计算机视觉】基于真实眼动数据的显著性排序检测:SIFR数据集与QAGNet模型设计及应用(含详细代码及解释)
- 铁路通信基于5G技术的铁路5G-R系统覆盖方案研究:链路预算、组网策略及共存方案设计(含详细代码及解释)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
