!pB03k6TnvXOyelHLPZ|*Q@WhW^&hRdEB&czI66$iA#A}#E*oO7r< z87M=S@nMkCuYgRU`%U}jyRUc8_g?Q^e08a*)YMb-Z>r&9W}#(W?Ytk|J6o73Y((4F zqV0>mMN*0$Dav;v&9l~wwGnAsi?l6_FNvi{cTxHy*0K@nT8nip;h#>e$KENbzXfBP zp~l&PnSr^nh4J;!;mz2Ah5k~kYck(PAmBs=hO%I%(chw|3<*1GL^)K}WJ<~1 zX$U;3cH#gWpcB!H#@kiFtqwRCT|$OgJ+~$y|20SxhbEQb%N>WPCh=+!HvdQ)5KSx> zQ-WerHXkbmBOOeGk%RD~?LeSVfjzT5Gd)wMHiIn-{>4{*==rv1ZC|_;>|K?6c}R89 zFfZ9}=UpK4$gM`2sU7L?jjck}U+A&wc*a6q6daBa0|%-P(Cp-0j!sSBVNmu&8FAzo zu$;UM3}qFaLYuPs`I&2H=KSmOzRh54uD=v)U6ora^=|SSaVC)+b>cMT5I323DIe%% z{4<}t0~G}}|4I5{ob^gPm7pn;P{J@z{7fxWQR9P~FbH^&ddo@(fGN|WB*-+{>NU!D zV>9XS|5QrYXe#5XgK<2**BHlQ^zV`>z=#{;d@A2U`+b_5G(f*Cs&wmb$HX pE@k_IF^SGEJ=1Tu+q*+21R=MKiG_xSiV*q+(G$3N0*j~N1e$wm{sm!L GXa4~(srBCg literal 0 HcmV?d00001 diff --git a/project_manage/manage/migrations/0002_rename_employe_employee_and_more.py b/project_manage/manage/migrations/0002_rename_employe_employee_and_more.py new file mode 100644 index 0000000..2b08ce3 --- /dev/null +++ b/project_manage/manage/migrations/0002_rename_employe_employee_and_more.py @@ -0,0 +1,52 @@ +# Generated by Django 5.0.6 on 2024-05-31 02:45 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('manage', '0001_initial'), + ] + + operations = [ + migrations.RenameModel( + old_name='employe', + new_name='employee', + ), + migrations.RenameField( + model_name='employee', + old_name='employe_information', + new_name='employee_information', + ), + migrations.RemoveField( + model_name='department', + name='employe_number', + ), + migrations.AddField( + model_name='department', + name='employee_number', + field=models.CharField(default=1, max_length=4, verbose_name='员工数量'), + preserve_default=False, + ), + migrations.AlterField( + model_name='administrator', + name='administrator_name', + field=models.CharField(max_length=10, verbose_name='管理员名称'), + ), + migrations.AlterField( + model_name='customer', + name='customer_age', + field=models.CharField(max_length=3, verbose_name='客户年龄'), + ), + migrations.AlterField( + model_name='customer', + name='customer_name', + field=models.CharField(max_length=10, verbose_name='客户名称'), + ), + migrations.AlterField( + model_name='project', + name='project_leader', + field=models.CharField(max_length=10, verbose_name='项目名称'), + ), + ] diff --git a/project_manage/manage/migrations/__pycache__/0002_rename_employe_employee_and_more.cpython-312.pyc b/project_manage/manage/migrations/__pycache__/0002_rename_employe_employee_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8448e9bbc9beba5bb9d85ae0d26e7a1a347b08d8 GIT binary patch literal 1895 zcmb7EO=ufO6rR;etJPYv<&7LCwJqC98oDjGw%bceNeL|pl-i^{HA1kgJ!3^;f7FrW zR+rL(X>$p652b~kQYdY)Fgdiux%3?9r2>POxfaLhX0Sscr@oohs_P;ZGKkT8^S<}J zH#6VtADN7XVElIV_QpL0p})8jjzrHmxdz6!2qP@n$dQVY6D!6f6hk)=j%^_<6R8Th z{~bGWuu_y;aU;>?juB&;Qz=ucQSsb5QydQyyS^UH9P2qJT8tMZs3>7njA5xP73CNr z@v3Mznu4GWEVtu3kimyQr2{)UV;Lu~(oTkr3EXHD5!hJ8skU~8Ejti30t~5YZa^%J zGkCN;7FNR9_V`Xbz=^8o2juAZ+)%z8o@k#BJ8DmcyhFJz;EO}KUcgh&$u&KcD~D&E ziz|<3|A%XC5La0(rd#tyfu&YL<$#P7$8xPQVd=%i#U-=iRvHz{W=Z1IY_CO_+A|11 zRnNwzYdNs$l8*!HTrUop8y Z4bLHzr9;bvtLXCQ9_(oM zhbMO*9zOcD`}-El^fCM}qH$4*C2Q2Hl65%4o&kHdFrfn3z5nRw``w_aRU^YxQ#5Xx zOfyZmm8MO=PMhXOP0Qx|+=F`|E++1Jh14l;ij90gcyNVZW9Zxv#|9C{+a!UbUdLEi zlwS@@y?w``K}5T5H%MrEHPZWl{en&ah@O#m-YC^t>i~C3w^}^SnOk05etltSVW|{u zD-dic{0p^QFM)!WO)5GxLml-cW4RbMO36a4Mfo>YOx&nn1sQFjV+Exy9m}zt^4WXG z8cNOH)eh8rN6q^a@S8nN$SLhujjm75`x7tw6R(^m;}ANNGI_}#pYNwkbE>J1I_2~A zg0C00uN>%wj$ZhAX>a^-eqaC4pDCQC5 fpz1+!Oeu}^m G+5Z5lJ?i8D literal 0 HcmV?d00001 diff --git a/project_manage/manage/models.py b/project_manage/manage/models.py index a42e22a..15e5259 100644 --- a/project_manage/manage/models.py +++ b/project_manage/manage/models.py @@ -1,6 +1,5 @@ from django.db import models - class project(models.Model): project_leader = models.CharField(u'项目名称',max_length=10) project_description = models.CharField(u'项目描述',max_length=32) diff --git a/project_manage/manage/url.py b/project_manage/manage/url.py index 574a99a..c0ac523 100644 --- a/project_manage/manage/url.py +++ b/project_manage/manage/url.py @@ -2,8 +2,8 @@ from django.contrib import admin from django.urls import path,include from manage import views - +from manage.views import * urlpatterns = [ - + path('login/', ChooseLoginView.as_view()), ] \ No newline at end of file diff --git a/project_manage/manage/views.py b/project_manage/manage/views.py index 1cfb80d..59e7c93 100644 --- a/project_manage/manage/views.py +++ b/project_manage/manage/views.py @@ -1,47 +1,92 @@ -from django.shortcuts import render,redirect,HttpResponse -from django.contrib.auth.hashers import make_password,check_password +from django.shortcuts import render from django.views import View -from django.contrib import auth -from .models import administrator -from django.contrib.auth.decorators import login_required +import datetime +import uuid +from django.http import HttpResponseRedirect +from .models import * -# class Login(View): -# def get(self,request): -# error_info = request.session.pop('error_info',"") -# return render(request,'login.html',context={'error_info':error_info}) -# -# def post(self,request): -# -# res_get = request.GET.get('next',"") -# print("res_get:",res_get) -# -# user = request.POST.get('user',"") -# pwd = request.POST.get('passwd',"") -# -# user_obj = auth.authenticate(username=user,password=pwd) -# if user_obj: -# auth.login(request,user_obj) -# return redirect('index') -# else: -# request.session['error_info'] ="用户名或密码错误,请检查" -# return redirect('login') -# -# @login_required -# def index(request): -# res = request.user -# return HttpResponse("Ok %s" % res.username) -# -# def logout(request): -# auth.logout(request) -# return redirect('login') - -class LoginChooseView(View): + +# 登录选择 +class ChooseLoginView(View): def get(self,request): - return render(request,'login_choose.html') + return render(request, 'ChooseLogin.html') + +# 客户登录 class CustomerLoginView(View): + def get(self, request): + return render(request, 'Customerlogin.html') + + def post(self, request): + id = request.POST.get('id', "") + customer_name = request.POST.get('customer_name', "") + customer_list = customer.objects.filter(id=id, customer_name=customer_name) + if customer_list: + print(type(customer_list[0])) + request.session.clear() + request.session['customer'] = customer_list[0].name + return HttpResponseRedirect('/customercenter/') + else: + return HttpResponseRedirect('/customerlogin/') + + +#员工登录 +class EmployeeLoginView(View): def get(self,request): - return render(request,'Customerlogin.html') + return render(request, 'Employeelogin.html') + def post(self,request): id = request.POST.get('id',"") - customer_name = request.POST.get('customer_name',"") + password = request.POST.get('password',"") + employee_list =employee.objects.filter(id=id,password=password) + if employee_list: + request.session['employee'] = employee_list[0].name + request.session['employee_image'] = str(employee_list[0].img) + return HttpResponseRedirect('/employeecenter/') + else: + return HttpResponseRedirect('/employeelogin/') + + +#客户注册 +class CustomerRegisterView(View): + def get(self,request): + return render(request, 'Customerregister.html') + def post(self, request, customer):#customer引用失败 + # 只能注册客户账号,不能注册员工账号,员工账号只能由管理员创建 + id = request.POST.get('id',"") + customer_list = customer.objects.filter(id=id) + if customer_list: + return render(request, 'Customerregister.html'),{"err":1, "tips": "该客户账号已存在"} + else: + customer_name = request.POST.get('customer_name',"") + customer_age = request.POST.get('customer_age',"") + customer_priority = request.POST.get('customer_priority',"") + customer = customer.objects.create(id=id,customer_name=customer_name,customer_age=customer_age,customer_priority=customer_priority) + if customer: + return HttpResponseRedirect('/customerlogin/') + return HttpResponseRedirect('/customerregister/') + +#客户界面 +class CustomerCenterView(View): + def get(self,request): + customer = request.session.get('customer') + print(customer) + return render(request, 'Customercenter.html', {"customer_id":customer}) + +#员工界面 +class EmployeeCenterView(View): + def get(self,request): + employee = request.session.get('employee','') + employee_image = request.session.get('employee_image','') + return render(request, 'Employeecenter.html', {"employee_id":employee, 'employee_image':employee_image}) + + + + +#管理员登录 +# class AdministratorLoginView(View): +# def get(self,request): +# return render(request,'Administratorlogin.html') +# def post(self,request): +# id = request.POST.get('id',"") +# administrator_name = request.POST.get('administrator_name',"") diff --git a/project_manage/project_manage/__pycache__/settings.cpython-312.pyc b/project_manage/project_manage/__pycache__/settings.cpython-312.pyc index 7c8cfe2bee5deff2fda336280329910947755818..c29348092b5a8685981407d4b0cb29f7f5174793 100644 GIT binary patch delta 47 zcmaDU{z{zpG%qg~0}yn{N2Yz>$g9pOY>=CnmzbWamz$ZAl9O7VSd?14*^PBE8vtDg B4_N>J delta 46 zcmaDQ{!*OxG%qg~0}wDOMx=e+$g9pOq@SCZmzbWamz$ZAl9O7VSd_ZiopmuA06QxV ATL1t6 diff --git a/project_manage/project_manage/__pycache__/urls.cpython-312.pyc b/project_manage/project_manage/__pycache__/urls.cpython-312.pyc index ee71331117b2e98047553c8e56f1eb49be266bca..8b136f36ae9eb7838da384cf920377e8f0909547 100644 GIT binary patch delta 309 zcmX@a-pi?enwOW00SNvDMyBO4GcY^`abSQ0%J@8EqPl856GJLX3QH =CI}0xj}=I=rm(GMgovTYv16A@XO7~i JjAYknwOW00SMyEBGM|D85kaeI55BjWqj6{sIJP9&Je{`$)d@+@yJRhW F#>V1B#`*P%*e?2k%^y?<*Nb%qvCxAl@Bbe{7jA9MchDH0L``) AX#fBK diff --git a/project_manage/project_manage/settings.py b/project_manage/project_manage/settings.py index 052ed01..0c8afab 100644 --- a/project_manage/project_manage/settings.py +++ b/project_manage/project_manage/settings.py @@ -38,7 +38,7 @@ INSTALLED_APPS = [ 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', - 'manage' + 'manage', ] MIDDLEWARE = [ @@ -49,7 +49,7 @@ MIDDLEWARE = [ 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', - 'manage.middleware.my_middlewares.AuthMiddleware'#自定义中间件 + 'manage.middlewares.my_middlewares.AuthMiddleware'#自定义中间件 ] ROOT_URLCONF = 'project_manage.urls' diff --git a/project_manage/project_manage/urls.py b/project_manage/project_manage/urls.py index 9466d09..2821507 100644 --- a/project_manage/project_manage/urls.py +++ b/project_manage/project_manage/urls.py @@ -19,7 +19,6 @@ from django.urls import path,include urlpatterns = [ path('admin/', admin.site.urls), - path('user/',include('manage.urls')), - path('',include('manage.urls')) - + path('user/',include('manage.url')), + path('',include('manage.url')) ] diff --git a/project_manage/templates/Administratorlogin.html b/project_manage/templates/Administratorlogin.html new file mode 100644 index 0000000..5d96e0d --- /dev/null +++ b/project_manage/templates/Administratorlogin.html @@ -0,0 +1,10 @@ + + + + + 管理员登录 + + + + + \ No newline at end of file diff --git a/project_manage/templates/ChooseLogin.html b/project_manage/templates/ChooseLogin.html new file mode 100644 index 0000000..d17f3bc --- /dev/null +++ b/project_manage/templates/ChooseLogin.html @@ -0,0 +1,48 @@ + +{% load static %} + + + +Django企业项目管理系统 +{# #} + + +++ + + +Django企业项目管理系统
+++ + + \ No newline at end of file diff --git a/project_manage/templates/Customercenter.html b/project_manage/templates/Customercenter.html new file mode 100644 index 0000000..b6d4b4b --- /dev/null +++ b/project_manage/templates/Customercenter.html @@ -0,0 +1,10 @@ + + + + ++ Copyright(C). Create By BHML 2024, All Rights Reserved. +
+客户界面 + + + + + \ No newline at end of file diff --git a/project_manage/templates/Customerlogin.html b/project_manage/templates/Customerlogin.html new file mode 100644 index 0000000..2dd98ac --- /dev/null +++ b/project_manage/templates/Customerlogin.html @@ -0,0 +1,10 @@ + + + + +客户登录 + + + + + \ No newline at end of file diff --git a/project_manage/templates/Customerregister.html b/project_manage/templates/Customerregister.html new file mode 100644 index 0000000..d3533d5 --- /dev/null +++ b/project_manage/templates/Customerregister.html @@ -0,0 +1,10 @@ + + + + +客户注册 + + + + + \ No newline at end of file diff --git a/project_manage/templates/Employeecenter.html b/project_manage/templates/Employeecenter.html new file mode 100644 index 0000000..37b3450 --- /dev/null +++ b/project_manage/templates/Employeecenter.html @@ -0,0 +1,10 @@ + + + + +员工界面 + + + + + \ No newline at end of file diff --git a/project_manage/templates/Employeelogin.html b/project_manage/templates/Employeelogin.html new file mode 100644 index 0000000..e230daa --- /dev/null +++ b/project_manage/templates/Employeelogin.html @@ -0,0 +1,20 @@ + + + + +员工登录 + + + + {% load static %} ++++
+ ++ + \ No newline at end of file