Django项目:CRM(客户关系管理系统)--66--56PerfectCRM实现CRM客户报名缴费链接
Posted 颜言
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django项目:CRM(客户关系管理系统)--66--56PerfectCRM实现CRM客户报名缴费链接相关的知识,希望对你有一定的参考价值。
1 # kingadmin.py 2 # ————————04PerfectCRM实现King_admin注册功能———————— 3 from crm import models 4 #print("kingadmin crm",models.Customer) 5 6 # ————————05PerfectCRM实现King_admin注册功能获取内存———————— 7 # from king_admin.base_admin import register,BaseAdmin 8 from king_admin.base_admin import site,BaseAdmin 9 # ————————05PerfectCRM实现King_admin注册功能获取内存———————— 10 11 # ————————24PerfectCRM实现King_admin自定义操作数据———————— 12 from django.shortcuts import render 13 # ————————24PerfectCRM实现King_admin自定义操作数据———————— 14 15 # ————————28PerfectCRM实现King_admin编辑限制———————— 16 from django.forms import ValidationError 17 from django.shortcuts import render,redirect 18 # ————————28PerfectCRM实现King_admin编辑限制———————— 19 20 #04客户信息表 21 class CustomerAdmin(BaseAdmin):#定制Djanago admin 22 # ————————54PerfectCRM实现CRM客户报名链接———————— 23 # list_display = (\'id\', \'qq\', \'source\', \'consultant\', \'content\', \'date\') # 显示字段表头 24 list_display = (\'id\', \'qq\', \'source\', \'consultant\', \'content\', \'date\',\'status\',\'enroll\') # 显示字段表头 25 # ————————54PerfectCRM实现CRM客户报名链接———————— 26 # ————————11PerfectCRM实现King_admin分页显示条数———————— 27 list_per_page = 2 #分页条数 # 默认分页条数10 28 # ————————11PerfectCRM实现King_admin分页显示条数———————— 29 # ————————16PerfectCRM实现King_admin日期过滤———————— 30 # ————————15PerfectCRM实现King_admin多条件过滤———————— 31 # 过滤器(可以包含ManyToManyField) (注意加 逗号 , ) 32 # list_filter = (\'source\',\'consultant\',\'consult_courses\',) 33 list_filter = (\'date\',\'source\',\'consultant\',\'consult_courses\',) 34 # ————————15PerfectCRM实现King_admin多条件过滤———————— 35 # ————————16PerfectCRM实现King_admin日期过滤———————— 36 # ————————18PerfectCRM实现King_admin搜索关键字———————— 37 #搜索(不能包含CharField)(注意加 逗号 , ) 38 search_fields = (\'name\',\'qq\',) 39 # ————————18PerfectCRM实现King_admin搜索关键字———————— 40 # ————————26PerfectCRM实现King_admin自定义排序———————— 41 ordering = \'-qq\' #自定义排序,默认\'-id\' 42 # ————————26PerfectCRM实现King_admin自定义排序———————— 43 # ————————27PerfectCRM实现King_admin编辑复选框———————— 44 filter_horizontal = (\'tags\',) #复选框 45 # ————————27PerfectCRM实现King_admin编辑复选框———————— 46 # ————————33PerfectCRM实现King_admin编辑整张表限制———————— 47 readonly_table=True#默认表单不锁定 48 # ————————33PerfectCRM实现King_admin编辑整张表限制———————— 49 50 # ————————55PerfectCRM实现CRM客户报名状态颜色变化———————— 51 colored_fields = { 52 \'status\':{\'已报名\':"rgba(145, 255, 0, 0.78)", 53 \'未报名\':"#ddd"},} 54 # ————————55PerfectCRM实现CRM客户报名状态颜色变化———————— 55 56 # ————————54PerfectCRM实现CRM客户报名链接———————— 57 def enroll(self): 58 \'\'\'报名\'\'\' 59 print("customize field enroll",self) 60 link_name = "报名" 61 if self.instance.status == 0: 62 link_name = "报名新课程" 63 return \'\'\'<a target="_blank" class="btn-link" href="/bpm/customer/%s/enrollment/">点击%s</a> \'\'\' % (self.instance.id,link_name) 64 # url(r\'^customer/(\\d+)/enrollment/$\', sales_views.enrollment, name="enrollment"), # 客户招生#报名流程一 下一步 65 # target属性用于表示所链接文件打开到的位置 #记住,“”内的文字只是表示一个对象的名子。 66 enroll.display_name = "报名链接" 67 # ————————54PerfectCRM实现CRM客户报名链接———————— 68 69 70 71 # ————————24PerfectCRM实现King_admin自定义操作数据———————— 72 # from django.shortcuts import render 73 actions = [\'test_actions\',]#定制功能 #测试返回到一个新页面 74 def test_actions(self,request,arg2):#对应的函数 #request类自己的请求 #arg2类的内容 75 return render(request,"king_admin/table_index.html") 76 test_actions.short_description = "测试显示中文" 77 # ————————24PerfectCRM实现King_admin自定义操作数据———————— 78 79 # ————————28PerfectCRM实现King_admin编辑限制———————— 80 # ————————31PerfectCRM实现King_admin编辑多对多限制———————— 81 # readonly_fields = (\'qq\', \'consultant\',) # 不可修改 82 readonly_fields = (\'qq\', \'consultant\',\'tags\',) # 不可修改 83 # ————————31PerfectCRM实现King_admin编辑多对多限制———————— 84 85 # ————————29PerfectCRM实现King_admin编辑自定义限制———————— 86 def default_form_validation(self,obj): 87 print(\'validation:制定的\',obj.cleaned_data) 88 consult_course=obj.cleaned_data.get(\'content\',\'\')#自制验证字段 89 if len(consult_course)<10: 90 return ValidationError(#添加错误信息 返回 91 ("该字段%(field)s 咨询内容记录不能少于10个字符"), 92 code=\'invalid\', 93 params={\'field\':\'content\',}, 94 ) 95 # ————————29PerfectCRM实现King_admin编辑自定义限制———————— 96 97 # ————————28PerfectCRM实现King_admin编辑限制———————— 98 99 # ————————30PerfectCRM实现King_admin编辑自定义字段验证———————— 100 def clean_name(self,obj,*args,**kwargs):#名称验证 单个 101 name=obj.cleaned_data[\'name\'] 102 if not name: 103 obj.add_error(\'name\',\'不能为空!\') 104 return ValidationError(#添加错误信息 返回 105 ("%(field)s:该字段 不能为空"), 106 code=\'invalid\', 107 params={\'field\':\'name\',}, 108 ) 109 elif len(name)<5: 110 obj.add_error(\'name\',\'不能小于5个字符!\') 111 #return ValidationError(\'\',) 112 return ValidationError(#添加错误信息 返回 113 ("%(field)s:该字段 不能小于5个字符!"), 114 code=\'invalid\', 115 params={\'field\':\'name\',}, 116 ) 117 # ————————30PerfectCRM实现King_admin编辑自定义字段验证———————— 118 119 # ————————34PerfectCRM实现CRM自定义用户———————— 120 #10账号表 121 class UserProfileAdmin(BaseAdmin):#定制Djanago admin 122 list_display = (\'id\', \'email\', \'name\') # 显示字段表头 123 124 # ————————36PerfectCRM实现King_admin密码修改———————— 125 readonly_fields = (\'password\',) # 不可修改,限制 126 filter_horizontal = (\'user_permissions\',\'groups\') #复选框 127 modelform_exclude_fields=[\'last_login\']#排除#不显示 #自增日期 #base_admin.py #forms.py 128 # ————————36PerfectCRM实现King_admin密码修改———————— 129 130 site.register(models.UserProfile, UserProfileAdmin) 131 # ————————34PerfectCRM实现CRM自定义用户———————— 132 133 # ————————05PerfectCRM实现King_admin注册功能获取内存———————— 134 # register(models.Customer,CustomerAdmin) 135 # register(models.CourseRecord) 136 site.register(models.Customer,CustomerAdmin) 137 site.register(models.CourseRecord) 138 # ————————05PerfectCRM实现King_admin注册功能获取内存———————— 139 140 # ————————04PerfectCRM实现King_admin注册功能———————— 141 142 143 # ————————56PerfectCRM实现CRM客户报名缴费链接———————— 144 # 06学员报名信息表 145 class EnrollmentAdmin(BaseAdmin): # 定制Djanago admin 146 list_display = (\'id\', \'customer\', \'enrolled_class\', \'consultant\', \'Pay_cost\', \'date\', \'payment\') # 显示字段表头 147 colored_fields = { 148 \'Pay_cost\': {True: "rgba(145, 255, 0, 0.78)", 149 False: "#ddd"}, } 150 def payment(self): 151 link_name = "增加缴费" 152 if self.instance.Pay_cost == False: 153 link_name = "缴费" 154 return \'\'\'<a target="_blank" class="btn-link" href="/bpm/payment/%s/" >点击%s</a> \'\'\' % (self.instance.id, link_name) 155 # url(r\'^payment/(\\d+)/$\', financial_views.payment, name="payment"), # 报名流程四 缴费 #财务 156 # target属性用于表示所链接文件打开到的位置 #记住,“”内的文字只是表示一个对象的名子。 157 payment.display_name = "缴费链接" 158 site.register(models.Enrollment, EnrollmentAdmin) # 06学员报名信息表 159 # ————————56PerfectCRM实现CRM客户报名缴费链接————————
以上是关于Django项目:CRM(客户关系管理系统)--66--56PerfectCRM实现CRM客户报名缴费链接的主要内容,如果未能解决你的问题,请参考以下文章
Django项目:CRM(客户关系管理系统)--66--56PerfectCRM实现CRM客户首列进入更改页优化路径
Django项目:CRM(客户关系管理系统)--70--60PerfectCRM实现CRM学生上课记录
Django项目:CRM(客户关系管理系统)--72--62PerfectCRM实现CRM讲师讲课记录