Django项目:CRM(客户关系管理系统)--07--03PerfectCRM创建基本数据02
from django.conf.urls import url
from DBadd import auth_views
from DBadd import crm_views urlpatterns = [
url(r'^auth_user/$', auth_views.auth_user), #Django账号表 url(r'^crm_Role/$', crm_views.crm_Role), #角色表 等基本信息
url(r'^crm_UserProfile/$', crm_views.crm_UserProfile),#账号表 #随机学生
url(r'^crm_userprofile_roles/$', crm_views.crm_userprofile_roles),#账号角色关联表 #随机学生 url(r'^crm_Customer/$', crm_views.crm_Customer), # 04客户信息表 ]
DBadd_urls.py
from django.shortcuts import render
from django.shortcuts import redirect from django.contrib.auth import models #随机字符串
import random
import string #添加admin 账号
def auth_user(request):
if request.method == "GET":
user_list = models.User.objects.all()
return render(request, 'auth_user.html', {'user_list':user_list})
elif request.method == "POST":
for i in range(50):
salt = ''.join(random.sample(string.ascii_letters, 6)) #随机英文
u=salt
print(u)
p='admin123456'
s=''
models.User.objects.create(username=u,password=p,is_staff=s)
return redirect('/DBadd/auth_user/')
auth_views.py
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h3>添加用户</h3> <form method="POST" action="/DBadd/auth_user/">
{% csrf_token %}
<input type="submit"value="添加"/>
</form> <h3>用户列表详细</h3>
<ul>
{% for row in user_list %}
<li> <a>{{row.id}}-{{row.username}}</a> </li>
{% endfor %}
</ul> </body>
</html>
auth_user.html
from django.shortcuts import render
from django.shortcuts import redirect
from django.shortcuts import HttpResponse from crm import models
from django.contrib.auth import models as auth_models # 随机字符串
import random
from random import choice # 添加"""基本数据"""
def crm_Role(request):
if request.method == "GET":
user_list = models.Role.objects.all()
return render(request, 'crm_Role.html', {'user_list': user_list})
elif request.method == "POST":
try:
models.Role.objects.create(name='角色学生')
models.Role.objects.create(name='角色销售')
models.Role.objects.create(name='角色老师')
models.Role.objects.create(name='角色校长')
models.Role.objects.create(name='角色系统维护') models.Branch.objects.create(name='北京校区', addr='北京天安门')
models.Branch.objects.create(name='广东校区', addr='广东东莞市')
models.Branch.objects.create(name='上海校区', addr='上海黄浦江')
models.Branch.objects.create(name='福建校区', addr='福建仙游县')
models.Branch.objects.create(name='四川校区', addr='四川成都市') models.Tag.objects.create(name='好,很好')
models.Tag.objects.create(name='很有兴趣')
models.Tag.objects.create(name='兴趣不大')
models.Tag.objects.create(name='交钱很爽快')
models.Tag.objects.create(name='随便问问的') models.Course.objects.create(name='Pyton', price='', period='',
outline='Python , 是一种面向对象的解释型计算机程序设计语言,具有丰富和强大的库,Python 已经成为继JAVA,C++之后的的第三大语言。 特点:简单易学、免费开源、高层语言、可移植性强、面向对象、可扩展性、可嵌入型、丰富的库、规范的代码等。')
models.Course.objects.create(name='PHP', price='', period='',
outline='PHP语言是目前Web后端开发使用最广泛的语言,几乎绝大多数网站使用。PHP开发快速,开发成本低,周期短,后期维护费用低,开源产品丰富。')
models.Course.objects.create(name='Java', price='', period='',
outline='完成本套餐的学习,学员可以全面掌握后续JavaEE开发所需的Java技术,为后续学习JavaEE开发打下坚实的基础。') models.UserProfile.objects.create(name='ADMIN系统维护', user_id=1)
models.UserProfile.objects.create(name='李白销售老师', user_id=2)
models.UserProfile.objects.create(name='杜甫销售老师', user_id=3)
models.UserProfile.objects.create(name='唐伯虎销售老师', user_id=4)
models.UserProfile.objects.create(name='颜真卿老师', user_id=5)
models.UserProfile.objects.create(name='罗贯中老师', user_id=6)
models.UserProfile.objects.create(name='白居易老师', user_id=7)
models.UserProfile.objects.create(name='施耐庵老师', user_id=8)
models.UserProfile.objects.create(name='曹雪芹校长', user_id=9) models.ClassList.objects.create(class_type=1, semester=2, start_date='2018-03-20', branch_id=1, course_id=1)
models.ClassList.objects.create(class_type=0, semester=5, start_date='2018-03-20', branch_id=1, course_id=1)
models.ClassList.objects.create(class_type=2, semester=8, start_date='2018-03-20', branch_id=1, course_id=1)
models.ClassList.objects.create(class_type=0, semester=1, start_date='2018-03-20', branch_id=1, course_id=1)
models.ClassList.objects.create(class_type=1, semester=3, start_date='2018-03-20', branch_id=1, course_id=1)
models.ClassList.objects.create(class_type=0, semester=9, start_date='2018-03-20', branch_id=1, course_id=1)
models.ClassList.objects.create(class_type=2, semester=6, start_date='2018-03-20', branch_id=1, course_id=1)
models.ClassList.objects.create(class_type=1, semester=20, start_date='2018-03-20', branch_id=1,
course_id=1)
models.ClassList.objects.create(class_type=0, semester=32, start_date='2018-03-20', branch_id=1,
course_id=1) except:
return HttpResponse('基本数据已经添加了。。。') return redirect('/DBadd/crm_Role/') # 添加"""10账号表""" #随机学生
def crm_UserProfile(request):
if request.method == "GET":
user_list = models.UserProfile.objects.all()
return render(request, 'crm_UserProfile.html', {'user_list': user_list})
elif request.method == "POST":
for i in range(50): Rword = ''.join(''.join([chr(random.randint(0x4E00, 0x9FBF)) for i in range(3)]).split()) # 随机中文
n = Rword a = models.UserProfile.objects.values("user_id").all()
e = auth_models.User.objects.values("id").all()
print('eeeee', e, type(e))
x = e.difference(a)
# for i in x:
# print('zzz', x, type(x)) l = []
for i in x:
l.append(i['id'])
print('llll', l, type(l)) if len(l) == 0:
return HttpResponse('请添加 admin的用户后,再来添加。。。')
else:
c = choice(l)
u = c
models.UserProfile.objects.create(name=n, user_id=u)
return redirect('/DBadd/crm_UserProfile/') # 添加"""10账号表--11角色表""" #随机学生
def crm_userprofile_roles(request):
if request.method == "GET":
user_list = models.UserProfile.objects.all()
role_list = models.Role.objects.get(id=1)
return render(request, 'crm_userprofile_roles.html', {'user_list': user_list, 'role_list': role_list})
elif request.method == "POST":
try:
for i in range(50):
b1 = models.Role.objects.get(id=1)
a = b1.userprofile_set.values("id").all() e = models.UserProfile.objects.values("id").all()
x = e.difference(a) l = []
for i in x:
l.append(i['id'])
print('llll', l, type(l)) if len(l) == 0:
return HttpResponse('请添加 数据 后,再来添加。。。')
else:
c = choice(l)
print('c', c, type(c)) g1 = models.UserProfile.objects.get(id=c)
b1 = models.Role.objects.get(id=1)
g1.roles.add(b1)
return redirect('/DBadd/crm_userprofile_roles/')
except:
return HttpResponse('没有数据了。。。') # 添加"""04客户信息表"""
def crm_Customer(request):
if request.method == "GET":
user_list = models.Customer.objects.all()
return render(request, 'crm_Customer.html', {'user_list': user_list})
elif request.method == "POST":
for i in range(50):
Rword = ''.join(''.join([chr(random.randint(0x4E00, 0x9FBF)) for i in range(3)]).split()) # 随机中文
r=random.randint(5,18)
Num = "".join(random.choice("") for i in range(r)) # 随机数字 #保证qq的唯一性
Cnum = "".join(random.choice("") for i in range(1)) # 随机数字 #不能选择0
try:
models.Customer.objects.create(name=Rword, qq=Num, qq_name=Rword, phone=Num, source=1,
referral_from=Rword, consult_courses_id=1, content=Rword,
consultant_id=Cnum, memo=Rword, date='2018-03-20')
except:
return HttpResponse('数据重复了。。。') return redirect('/DBadd/crm_Customer/')
crm_views.py
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h3>添加用户</h3> <form method="POST" action="/DBadd/crm_Role/">
{% csrf_token %}
<input type="submit"value="添加"/>
</form> <h3>用户列表详细</h3>
<ul>
{% for row in user_list %}
<li> <a>{{row.id}}-{{row.name}}</a> </li>
{% endfor %}
</ul> </body>
</html>
crm_Role.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h3>添加用户</h3> <form method="POST" action="/DBadd/crm_UserProfile/">
{% csrf_token %}
<input type="submit"value="添加"/>
</form> <h3>用户列表详细</h3>
<ul>
{% for row in user_list %}
<li> <a>{{row.id}}-{{row.name}}-{{row.user_id}}</a> </li>
{% endfor %}
</ul> </body>
</html>
crm_UserProfile.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h3>添加用户</h3> <form method="POST" action="/DBadd/crm_userprofile_roles/">
{% csrf_token %}
<input type="submit"value="添加"/>
</form> <h3>用户列表详细</h3>
<ul>
<li>
<a>{{role_list.id}}-{{role_list.name}}</a>
</li>
</ul>
<h3>用户列表详细</h3>
<ul>
{% for row in user_list %}
<li>
<a>{{row.id}}-{{row.name}}</a>
</li>
{% endfor %}
</ul> </body>
</html>
crm_userprofile_roles.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h3>添加用户</h3> <form method="POST" action="/DBadd/crm_Customer/">
{% csrf_token %}
<input type="submit"value="添加"/>
</form> <h3>用户列表详细</h3>
<ul>
{% for row in user_list %}
<li> <a>{{row.id}}-{{row.name}}</a> </li>
{% endfor %}
</ul> </body>
</html>
crm_Customer.html
Django项目:CRM(客户关系管理系统)--07--03PerfectCRM创建基本数据02的更多相关文章
- Django CRM客户关系管理系统
CRM需求分析 随着信息化时代带来的科技创新,CRM客户关系管理系统带来的效益在已经成为很多企业提高竞争优势的一分部,CRM客户关系管理系统将企业管理和客户关系管理集成到统一的平台,其系统功能主要体现 ...
- Django项目:CRM(客户关系管理系统)--70--60PerfectCRM实现CRM学生上课记录
#urls.py """PerfectCRM URL Configuration The `urlpatterns` list routes URLs to views. ...
- Django项目:CRM(客户关系管理系统)--58--48PerfectCRM实现CRM客户报名流程学生合同
# sales_urls.py # ————————47PerfectCRM实现CRM客户报名流程———————— from django.conf.urls import url from bpm. ...
- Django项目:CRM(客户关系管理系统)--71--61PerfectCRM实现CRM学生上传作业
# student_urls.py # ————————60PerfectCRM实现CRM学生上课记录———————— from django.conf.urls import url from bp ...
- Django项目:CRM(客户关系管理系统)--63--53PerfectCRM实现CRM客户报名流程缴费
#urls.py """PerfectCRM URL Configuration The `urlpatterns` list routes URLs to views. ...
- Django项目:CRM(客户关系管理系统)--42--34PerfectCRM实现CRM自定义用户
#models.py # ————————01PerfectCRM基本配置ADMIN———————— from django.db import models # Create your models ...
- Django项目:CRM(客户关系管理系统)--81--71PerfectCRM实现CRM项目首页
{#portal.html#} {## ————————46PerfectCRM实现登陆后页面才能访问————————#} {#{% extends 'king_admin/table_index.h ...
- Django项目:CRM(客户关系管理系统)--72--62PerfectCRM实现CRM讲师讲课记录
#urls.py """PerfectCRM URL Configuration The `urlpatterns` list routes URLs to views. ...
- Django项目:CRM(客户关系管理系统)--61--51PerfectCRM实现CRM客户报名流程学生合同上传照片
# sales_views.py # ————————47PerfectCRM实现CRM客户报名流程———————— from django.db import IntegrityError # 主动 ...
- Django项目:CRM(客户关系管理系统)--56--47PerfectCRM实现CRM客户报名流程01
#urls.py """PerfectCRM URL Configuration The `urlpatterns` list routes URLs to views. ...
随机推荐
- Jeecg-Boot 2.0 版本发布,基于Springboot+Vue 前后端分离快速开发平台
目录 Jeecg-Boot项目简介 源码下载 升级日志 Issues解决 v1.1升级到v2.0不兼容地方 系统截图 Jeecg-Boot项目简介 Jeecg-boot 是一款基于代码生成器的智能开发 ...
- 《DSP using MATLAB》Problem 8.28
代码: %% ------------------------------------------------------------------------ %% Output Info about ...
- Spring Cloud Alibaba 使用Sentinel实现接口限流
Sentinel是什么 Sentinel的官方标题是:分布式系统的流量防卫兵.从名字上来看,很容易就能猜到它是用来作服务稳定性保障的.对于服务稳定性保障组件,如果熟悉Spring Cloud的用户,第 ...
- NtQuerySystemInformation 枚举进程
函数原型: NTSTATUS WINAPI NtQuerySystemInformation( _In_ SYSTEM_INFORMATION_CLASS SystemInformat ...
- IDEA取消形参名显示
idea默认情况下如显示形参名,看起来有点不习惯 现在设置去掉 (1)点击工具栏上的快捷按钮(快捷键:alt + ctrl + s) 或者"File" -> "Se ...
- NOIP2018崩崩记
比赛前,做做往年的题目,嗯,似乎都很水,400+绝对没问题,如果完全发挥,起码500+. 然而-- Day0 这天是运动会,信息学的同学们向老师请假来机房. 然后我在机房里刷往届的题目,信心倍增. 最 ...
- Makefile知识点
1.标准Makefile文件示例如下: #把.o .C .cxx .cpp .hxx .h添加到后缀列表中. .SUFFIXES: .o .C .cxx .cpp .hxx .h #设置变量并赋值,方 ...
- 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
导语 发布app后,开发者最头疼的问题就是如何解决交付后的用户侧问题的还原和定位,是业界缺乏一整套系统的解决方案的空白领域,闲鱼技术团队结合自己业务痛点在flutter上提出一套全新的技术思路解决这个 ...
- Django项目:CMDB(服务器硬件资产自动采集系统)--10--06CMDB测试Linux系统采集硬件数据的命令05
cd /py/AutoClient/bin python3 auto-client.py /usr/local/python3/bin/pip install requests python3 aut ...
- jsx简介
react文档笔记 jsx简介 jsx是一种javascript的语法扩展,jsx用来声明React当中的元素. 在jsx中使用表达式 jsx当中的表达式要包含在大括号里.例如2+2,user.fir ...