Browse Source

渠道数量处理

WH01243 1 year ago
parent
commit
bca7ad75c1

+ 8 - 2
api/internal/logic/candidatechannellistlogic.go

@@ -38,7 +38,13 @@ func (l *CandidateChannelListLogic) CandidateChannelList(req *types.ChannelListR
 		PositionId:   req.PositionId,
 		EntAccountId: req.EntAccountId,
 	}
-	data := ownerService.CandidateChannel()
-	resp.Data = data
+	data, a1, a2, a3, a4 := ownerService.CandidateChannel()
+	resp.Data = map[string]interface{}{
+		"list":  data,
+		"size1": a1,
+		"size3": a2,
+		"size4": a3,
+		"size2": a4,
+	}
 	return
 }

+ 4 - 5
api/internal/logic/candidatechannellogic.go

@@ -1,7 +1,6 @@
 package logic
 
 import (
-	"bp.jydev.jianyu360.cn/CRM/application/api/internal/service"
 	"context"
 	"fmt"
 
@@ -29,15 +28,15 @@ func (l *CandidateChannelLogic) CandidateChannel(req *types.ChannelListReq) (res
 	// todo: add your logic here and delete this line
 	logx.Info(fmt.Sprintf("%+v", req))
 	resp = &types.Reply{}
-	ownerService := &service.OwnerService{
+	/*ownerService := &service.OwnerService{
 		PartyA:       req.PartyA,
 		Supplier:     req.Supplier,
 		Intermediary: req.Intermediary,
 		Heterotophy:  req.Heterotophy,
 		Agency:       req.Agency,
 		PositionId:   req.PositionId,
-	}
-	data := ownerService.CandidateChannel()
-	resp.Data = data
+	}*/
+	/*data := ownerService.CandidateChannel()
+	resp.Data = data*/
 	return
 }

+ 19 - 2
api/internal/service/owner.go

@@ -483,6 +483,18 @@ func Findfirstparty(buyerArr []string, returnData []map[string]interface{}) []ma
 						"personName":   gconv.String(personMap[v.Aid]),
 					})
 				}
+				if code == "0201" {
+					returnData = append(returnData, map[string]interface{}{
+						"b_id":         v.Bid,
+						"b_name":       v.Bname,
+						"a_name":       v.Aname,
+						"a_id":         v.Aid,
+						"sourceType":   "firstparty",
+						"relationship": "业主的股东",
+						"personName":   gconv.String(personMap[v.Aid]),
+					})
+				}
+
 			}
 		}
 	}
@@ -1061,12 +1073,13 @@ func (t *OwnerService) OwnerCooperate() []map[string]interface{} {
 	}
 	return returData
 }
-func (t *OwnerService) CandidateChannel() []*ResultData {
+func (t *OwnerService) CandidateChannel() ([]*ResultData, int, int, int, int) {
 	returnData := []*ResultData{}
 	dataMap := &map[string]map[string]interface{}{}
 	if t.PartyA != "" || t.Supplier != "" || t.Heterotophy != "" || t.Intermediary != "" || t.Agency != "" {
 		dataMap = BuyerList(t.PartyA, t.Supplier, t.Heterotophy, t.Intermediary, t.Agency, t.PositionId)
 	}
+	a1, a2, a3, a4 := 0, 0, 0, 0
 	if len(*dataMap) > 0 && dataMap != nil {
 		propertyForm := ""
 		m1 := CrmMysql.FindOne("config_tenant", map[string]interface{}{"account_id": t.EntAccountId}, "probusfor", "")
@@ -1086,6 +1099,7 @@ func (t *OwnerService) CandidateChannel() []*ResultData {
 						RecentTime:  zbtime,
 						NearlyYears: near,
 					}
+					a1++
 					returnData = append(returnData, &tmp)
 				}
 			}
@@ -1101,6 +1115,7 @@ func (t *OwnerService) CandidateChannel() []*ResultData {
 						NearlyYears: near,
 						BuyerId:     common.ObjToString(m["nameId"]),
 					}
+					a2++
 					returnData = append(returnData, &tmp)
 				}
 			}
@@ -1117,6 +1132,7 @@ func (t *OwnerService) CandidateChannel() []*ResultData {
 						Relationship: "业主的关系人",
 						BuyerId:      common.ObjToString(m["b_id"]),
 					}
+					a3++
 					returnData = append(returnData, &tmp)
 				}
 			}
@@ -1132,6 +1148,7 @@ func (t *OwnerService) CandidateChannel() []*ResultData {
 						Relationship: common.ObjToString(m["relationship"]),
 						BuyerId:      common.ObjToString(m["b_id"]),
 					}
+					a4++
 					returnData = append(returnData, &tmp)
 				}
 			}
@@ -1164,5 +1181,5 @@ func (t *OwnerService) CandidateChannel() []*ResultData {
 			returnData[k] = value
 		}
 	}
-	return returnData
+	return returnData, a1, a2, a3, a4
 }