關於python開發CRM系統

2021-09-08 12:33:32 字數 4434 閱讀 8759

注意本專案是針對培訓學校開發簡化的crm

crm全稱:customer relationship management

沒有cmr的缺點及痛點:

每個銷售會通過excel來統計客戶資訊,造成資訊不能同步和共享

客戶資訊沒有記錄和跟進資訊

會造成搶單問題

無法統計成單率和報表

沒有和客戶的溝通記錄

客戶資訊表,唯一的客戶端id

一對多的跟進記錄

客戶狀態,報名和未報名

客戶**分析

學員報名資訊

學員可以報多個課程,每個課程的每節課程都有成績,以及成績排名

班級資訊

班級—>課程節次—>學員上課記錄

課程資訊

繳費記錄

使用者使用場景分析

角色管理

許可權管理

動態選單

後續完整後補充

知識點回顧:

使用django中的admin的方法:

1、models.py中建立好錶的類

2、執行python3 manager.py makemigrations

3、執行python3 manager.py migrate

4、上述操作完成後預設是在專案檔案下生成db.sqlite3資料庫檔案

5、 在admin.py檔案中先導入modes,然後將表進行註冊,該項目的**例子如下:

from django.contrib import

admin

#register your models here.

from crm import

models

admin.site.register(models.customer)

admin.site.register(models.studyrecord)

admin.site.register(models.role)

admin.site.register(models.menu)

admin.site.register(models.enrollment)

admin.site.register(models.classlist)

admin.site.register(models.branch)

admin.site.register(models.courserecord)

admin.site.register(models.course)

admin.site.register(models.followuprecord)

admin.site.register(models.userprofile)

6、 最後執行python3 manage.py createsuperuser,建立admin使用者

如果想要呼叫django中的admin認證需要:

在models.py檔案中建立表的類的時候,先導入乙個模組

from django.contrib.auth.models import user

然後在使用者資訊的類中,通過和admin中user表建立一對一的關係,從而實現認證功能

class

userprofile(models.model):

'''使用者資訊

'''user =models.onetoonefield(user)

name = models.charfield(max_length=32)

這樣就可以呼叫django中admin的認證

呼叫django中admin的認證功能需要匯入如下模組,authenticate用於認證,login用於登入,logout用於退出

from django.contrib.auth import authenticate,login,logout

具體**如下:

def

acc_login(request):

if request.method == "

post":

username = request.post.get("

username")

password = request.post.get("

password")

user = authenticate(username=username,password=password)

#因為這裡呼叫的django中admin的認證功能,所以這個時候如果認證成功得到的是物件

#如果想要獲取具體的使用者名稱,可以user.userprofile.name得到

#print("res:",type(user),user.userprofile.name)

ifuser:

#auth認證成功

login(request,user)

return redirect("

/crm")

return render(request,"

login.html

")

這裡需要知道的是authenticate返回的其實是乙個使用者物件

,如果想要獲取具體的使用者名字則需要通過user.userprofile.name,

根據屬於不同的使用者角色的使用者登入是顯示不同的選單

(這裡有乙個問題需要注意,當乙個選單選項屬於多個角色的時候,而這個使用者又屬於多個角色,這個時候就會造成該使用者登入的時候選單選項重複問題)

動態選單這裡還有乙個事情需要小技巧,就是選中某選單的時候給乙個背景色,即動態新增active

這裡可以根據url來設定,因為每個選單的都是乙個a標籤而a標籤的href屬性和當前的頁面的url是相同的

通過通過在js中獲取當前的url也就是』}』

在django的admin中可以自定義顯示的字段內容,需要在admin.py配置檔案中做如下配置:

class

customeradmin(admin.modeladmin):

list_display = ("

id","

name

","qq

","consultant

","consult_content

","status

","date

")

在admin.py中建立類,並且讓繼承admin.modeladmin

list_display表示要顯示的字段,將要顯示的字段在後面列出,這樣在前端頁面就可以看到

當然也可以通過list_filter實現過濾的搜尋的功能

通過search_fields實現關鍵字搜尋

分析過程:

首先從外觀分析

這裡有幾個知識點需要注意:

而這裡獲得方法如下:

from django import

conf

try:

print(__import__("

%s.kingadmin

except

importerror as e:

print("

")

分析django的admin的原始碼可以看出關於註冊這裡,是建立了乙個adminsite類,並且例項化

在初始化函式的時候頂乙個registery字典

每次註冊都會新增到這個字典中,所以我們可以模仿這個樣子寫

自定義標籤******_tag

建立過程:

建立templatetags包

在templatetags建立py檔案

匯入template模組:from django import template

register = template.library()

@register.******_tag

如果返回的內容中有html則需要

from django.utils.safestring import mark_safe

在要返回的字串:mark_safe(內容)

最要在前段頁面匯入:這裡kingadmin_tags 是在templatetags包建立的py檔案

待續。。。。。。。。

CRM系統哪家好?CRM系統功能介紹

在與客戶建立聯絡後,緊接著就要考慮如何維護客戶關係,這不是一件容易的事,卻又時刻決定企業生存和發展。為了維護與客戶良好的關係,越來越多企業開始採用crm系統。然而,不同的crm品牌,產品功能各不相同,那麼,crm系統哪家好?crm系統又有哪些功能特點呢?根據網上最新統計資料,算上國際廠商產品的漢化版...

CRM開發要點(七)

本文主要總計下crm增強的一些技術點。先看這個圖,此圖為crm增強的路線圖,所有的ui增強都是沿著這個思路做下來的。bspwdvc cmp ext 建 下面的圖是乙個增強的簡單步驟示例。下圖的示例指如果我們增強了乙個元件,整個增強動作具體做了哪些事情。此外crm還提供了一些badi做特殊的需求,比如...

雲CRM系統與本地CRM系統對比分析

雲crm早已不是新名詞了,很多人都認為基於雲計算的crm系統能夠使企業業務以更加快捷 準確的方式與客戶關係管理資料庫進行對接。儘管有很多軟體 商都在向使用者大力推薦雲crm,但事實上作為企業的管理者,最先考慮的問題應該是雲crm是否真的適合企業,而不是 商的廣告。無論是雲crm系統還是本地crm系統...