我在的公司是廣告代理公司,廣告公司賺錢就是靠(從下游媒體這拿到的折扣>給上游客戶的折扣)賺差價。
我現在想要設計個資料庫滿足自己統計業務的需要:
大致業務關系是這樣的:
內部:
1) 一個客戶 ID 會有一個銷售(員工)ID 去跟進,但是會有轉戶的情況,就是說 19 年 A 君跟進的客戶 20 年會由 B 君跟進。
2) 一個客戶會通過多個供應商在多個媒體上開賬號投放,同時一個媒體也會有多個賬戶在上面投放
3) 客戶側:媒體不同,行業不同,我司給予客戶的折扣也不同
4) 媒體側:和客戶側一樣,客戶不同,行業不同,媒體給予我司的折扣也不同
5) 需要統計每天每個投放賬戶的日消耗
想問下:
A. 1)的情況是不是也算多對多關系?除了建映射表有別的設計方法不?
B. 我現在主要的問題是不知道該把給客戶的折扣和給媒體的折扣放在哪個表,是分別單獨建一張客戶折扣表和媒體折扣表還是說直接記錄在日投放資料這張表里?
C. 如果是把折扣單獨分開建表的話,像這種 分客戶分行業分媒體的政策該怎么畫關系圖?

這里我畫了給上游客戶的折扣,但是從下游媒體這拿到的折扣政策我不知道該怎么畫了。
或者說是應該把客戶側的折扣和媒體側的折扣都記錄在映射表里?

D. 由于從媒體側拿到的折扣政策會隨時間改變,所以需要記錄歷史折扣,我的想法是錄入資料的時候匹配當時的政策寫死,不知道有沒有什么更好的方法?
E. 由于需要統計歷史投放資料,所以像這種日消耗資料,大家一般是怎么記錄的呢?是當成一條訂單記錄還是用時間和賬戶做聯合主鍵記錄呢?
uj5u.com熱心網友回復:
A:客戶資料表與人員資料表是獨立分開來設計,它可以實作多對多的關系。比如A\B\C客戶,歸張三管,隨時可以調整為,其中C客戶劃給李四。要說到的是,多對多關系,涉及多點觸發的業務需求問題。以外表外鍵約束等等
B:折扣是屬于金額,它有兩個設計因素。
1. 取數邏輯是按客戶的等級或訂單金額的等級來計算折扣?
2.按客戶約談好的折扣方式,進行劃分設定?
如果是1的關系,就要將客戶劃分信用評分表以及訂單折扣基數基礎表來約定它的演算法邏輯。
如果是2的關系,只需要在客戶資料表,加上這個折扣基數,做為評定計算引數即可。
C.如果客戶在規劃的同時,要考慮按行業+媒體型別劃分,那有的層級關系應該是:
供應資料表:(媒體單位資料)
行業型別ID(建議一個系統的基礎分類表)
媒體型別ID(在基礎分類表)
以這種架構來搭建。
D.媒體的折扣政策是動態的,你要考慮,是按時間發生動態。還是按簽定的合同來發生。
如果是按時間,不管按年、季、月發生,都可以設定一個會計賬期表(時間范圍物件)用該表勾稽折扣基數,即可計算出具體折扣金額。
按合同發生,只能考慮寫在前端,具體要看合同業務內容怎么實作。找到規律再看
uj5u.com熱心網友回復:
歷史往來資料的回查,要多以下幾個角度考慮:1、是按業務型別回查,還是按什么方式查,比如時間、客戶+產品型別等等
2、實作的方式有多種,寫成procedure(存盤程序)前端通過傳參(特定條件)進行呼叫,回傳到前端回查。
也可以直接將方法寫到前端進行呼叫呈現。
3、資料的回查,有追溯上一次(前次)發生數,也有按設定時間范圍取數,更復雜一點,可以將這些動態引數考慮寫成一個業務引數表,存放到資料庫,前端可隨意配置這些引數。
再用相應的函式或存盤程序進行實作即可。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/52321.html
標籤:應用實例
上一篇:vscode
