|
|
@@ -96,7 +96,6 @@ func (s CtrContractSaleTargetService) Import(ctx context.Context, req *model.Exc
|
|
|
|
|
|
// 获取销售分成数据 人/年/月份
|
|
|
shareMap := make(map[string]map[string]map[string]float64)
|
|
|
- saleMap := make(map[string]int)
|
|
|
var shares []*model.Share
|
|
|
err = s.Dao.DB.Model("ctr_contract a").LeftJoin("ctr_contract_share b", "a.id=b.contract_id").Where(fmt.Sprintf("a.contract_sign_time >= '%v'", minYear)).Fields("a.contract_amount, a.incharge_id, a.incharge_name, a.contract_sign_time, b.id, b.sale_id, b.sale_name, b.share_amount").Scan(&shares)
|
|
|
if err != nil {
|
|
|
@@ -104,17 +103,14 @@ func (s CtrContractSaleTargetService) Import(ctx context.Context, req *model.Exc
|
|
|
}
|
|
|
// 统计 人/年度/月度金额
|
|
|
for _, share := range shares {
|
|
|
- id := 0
|
|
|
name := ""
|
|
|
amount := float64(0)
|
|
|
year := share.ContractSignTime.Format("Y")
|
|
|
month := share.ContractSignTime.Format("m")
|
|
|
if share.Id == 0 {
|
|
|
- id = share.InchargeId
|
|
|
name = share.InchargeName
|
|
|
amount = share.ContractAmount
|
|
|
} else {
|
|
|
- id = share.SaleId
|
|
|
name = share.SaleName
|
|
|
amount = share.ShareAmount
|
|
|
}
|
|
|
@@ -124,10 +120,19 @@ func (s CtrContractSaleTargetService) Import(ctx context.Context, req *model.Exc
|
|
|
if _, ok := shareMap[name][year]; !ok {
|
|
|
shareMap[name][year] = make(map[string]float64)
|
|
|
}
|
|
|
- saleMap[name] = id
|
|
|
shareMap[name][year][month] += amount
|
|
|
}
|
|
|
|
|
|
+ // 获取用户信息
|
|
|
+ saleMap := make(map[string]int)
|
|
|
+ users, err := s.Dao.DB.Model("sys_user").FindAll()
|
|
|
+ if err != nil {
|
|
|
+ return err
|
|
|
+ }
|
|
|
+ for _, user := range users {
|
|
|
+ saleMap[user["nick_name"].String()] = user["id"].Int()
|
|
|
+ }
|
|
|
+
|
|
|
// 获取历史销售目标信息
|
|
|
targetMap := make(map[string]map[string]*model.CtrContractSaleTarget)
|
|
|
targets, err := s.Dao.Where(fmt.Sprintf("year >= '%v'", minYear)).FindAll()
|
|
|
@@ -158,7 +163,7 @@ func (s CtrContractSaleTargetService) parseExcel(b []byte) ([]*model.CtrContract
|
|
|
if err != nil {
|
|
|
return nil, "", err
|
|
|
}
|
|
|
- sheet := "Sheet1"
|
|
|
+ sheet := "销售指标"
|
|
|
rows, err := f.GetRows(sheet)
|
|
|
if err != nil {
|
|
|
return nil, "", err
|