wangchuanjin 9 hónapja
szülő
commit
7319e0f52c

+ 32 - 20
api/internal/service/initNetwork.go

@@ -2,6 +2,7 @@ package service
 
 
 import (
 import (
 	"context"
 	"context"
+	"database/sql"
 	"fmt"
 	"fmt"
 	"strings"
 	"strings"
 
 
@@ -133,33 +134,44 @@ func (i *InitNetwork) Init() {
 	//
 	//
 	nowFormat := NowFormat(Date_Full_Layout)
 	nowFormat := NowFormat(Date_Full_Layout)
 	values := []interface{}{}
 	values := []interface{}{}
-	fields := []string{"position_id", "ent_id", "ent_dept_id", "ent_user_id", "itype", "company_name", "company_id", "qyxy_id", "contact_person", "contact_phone", "status", "create_time", "update_time"}
+	fields := []string{"position_id", "ent_id", "ent_dept_id", "ent_user_id", "itype", "company_name", "company_id", "qyxy_id", "contact_person", "contact_phone", "status", "source", "create_time", "update_time"}
 	index := 0
 	index := 0
 	typeLimit := map[int]int{}
 	typeLimit := map[int]int{}
-	for _, v := range array {
-		if v.Company_name == i.EntName || v.ContactInfo == nil || v.ContactInfo.Phone == "" || v.ContactInfo.Name == "" {
-			continue
-		} else if typeLimit[v.Itype] >= 100 {
-			continue
+	if CrmMysql.ExecTx("初始化人脉", func(tx *sql.Tx) bool {
+		if CrmMysql.UpdateOrDeleteBySqlByTx(tx, `delete a,b from crm.connection a inner join crm.connection_introduce on (a.position_id=? and a.source=1 and a.id=b.connection_id)`, i.PositionId) < 0 {
+			return false
 		}
 		}
-		if CrmMysql.CountBySql(`select count(1) from crm.connection where position_id=? and company_id=? and itype=?`, i.PositionId, v.Company_id, v.Itype) == 0 {
-			typeLimit[v.Itype] = typeLimit[v.Itype] + 1
-			logx.Info("保存人脉", fmt.Sprintf("%+v", v))
-			values = append(values, i.PositionId, i.EntId, i.DeptId, i.UserId, v.Itype, v.Company_name, v.Company_id, v.QyxyId, v.ContactInfo.Name, v.ContactInfo.Phone, 1, nowFormat, nowFormat)
-		} else {
-			logx.Info("过滤掉已存在的人脉", fmt.Sprintf("%+v", v))
+		for _, v := range array {
+			if v.Company_name == i.EntName || v.ContactInfo == nil || v.ContactInfo.Phone == "" || v.ContactInfo.Name == "" {
+				continue
+			} else if typeLimit[v.Itype] >= 100 {
+				continue
+			}
+			if CrmMysql.CountBySqlByTx(tx, `select count(1) from crm.connection where position_id=? and company_id=? and itype=?`, i.PositionId, v.Company_id, v.Itype) == 0 {
+				typeLimit[v.Itype] = typeLimit[v.Itype] + 1
+				logx.Info("保存人脉", fmt.Sprintf("%+v", v))
+				values = append(values, i.PositionId, i.EntId, i.DeptId, i.UserId, v.Itype, v.Company_name, v.Company_id, v.QyxyId, v.ContactInfo.Name, v.ContactInfo.Phone, 1, 1, nowFormat, nowFormat)
+			} else {
+				logx.Info("过滤掉已存在的人脉", fmt.Sprintf("%+v", v))
+			}
+			index++
+			if index == 200 {
+				if r1, r2 := CrmMysql.InsertBatchByTx(tx, "crm.connection", fields, values); r1 <= 0 || r2 <= 0 {
+					return false
+				}
+				values = []interface{}{}
+			}
 		}
 		}
-		index++
-		if index == 200 {
-			CrmMysql.InsertBatch("crm.connection", fields, values)
+		if len(values) > 0 {
+			if r1, r2 := CrmMysql.InsertBatchByTx(tx, "crm.connection", fields, values); r1 <= 0 || r2 <= 0 {
+				return false
+			}
 			values = []interface{}{}
 			values = []interface{}{}
 		}
 		}
+		return true
+	}) {
+		Network.DeleteCache(i.PositionId)
 	}
 	}
-	if len(values) > 0 {
-		CrmMysql.InsertBatch("crm.connection", fields, values)
-		values = []interface{}{}
-	}
-	Network.DeleteCache(i.PositionId)
 }
 }
 
 
 //
 //

+ 15 - 8
api/internal/service/network.go

@@ -422,8 +422,8 @@ func (n *network) AllProject(in *types.AllprojectReq) (reply *types.Reply) {
 					ntc.Count = aio.Adiffb[v.Company_id].ProjectCount
 					ntc.Count = aio.Adiffb[v.Company_id].ProjectCount
 				}
 				}
 			case 4:
 			case 4:
-				if v.Relate_project_id != "" {
-					for _, v := range strings.Split(v.Relate_project_id, ",") {
+				if v.Relate_buyer_id != "" {
+					for _, v := range strings.Split(v.Relate_buyer_id, ",") {
 						if aio.Middleman[v] != nil {
 						if aio.Middleman[v] != nil {
 							ntc.Count++
 							ntc.Count++
 						}
 						}
@@ -733,12 +733,12 @@ func (n *network) List(in *types.NetWorkListReq) *types.Reply {
 					}
 					}
 				}
 				}
 			}
 			}
-			if v.Relate_project_id != "" {
-				export_id = strings.Split(v.Relate_project_id, ",")
-				for _, v := range export_id {
+			if v.Relate_buyer_id != "" {
+				for _, v := range strings.Split(v.Relate_buyer_id, ",") {
 					if aio.Middleman[v] != nil {
 					if aio.Middleman[v] != nil {
 						project_count++
 						project_count++
 						expect_amount += aio.Middleman[v].ProjectAmount
 						expect_amount += aio.Middleman[v].ProjectAmount
+						export_id = append(export_id, aio.Middleman[v].ExportId...)
 					}
 					}
 				}
 				}
 			}
 			}
@@ -1082,7 +1082,11 @@ func (n *network) Introduce_Agency(values []string, businessType []string) map[s
 }
 }
 
 
 //
 //
-func (n *network) Introduce_Middleman(values []string, businessType []string) map[string]*projectInfo {
+func (n *network) Introduce_Middleman_Buyer(values []string, businessType []string) map[string]*projectInfo {
+	return n.BuyerProjectInfo(values, businessType)
+}
+
+func (n *network) Introduce_Middleman_Project(values []string, businessType []string) map[string]*projectInfo {
 	result := map[string]*projectInfo{}
 	result := map[string]*projectInfo{}
 	if len(values) == 0 {
 	if len(values) == 0 {
 		return result
 		return result
@@ -1264,7 +1268,7 @@ func (n *network) AllIntroduceOwner(sqlAppend1, sqlAppend2 string, args []interf
 	q := `select a.id,a.company_id,a.company_name,a.qyxy_id,a.itype,a.contact_person as person,a.contact_phone as phone,count(DISTINCT if(b.itype=1,b.relate_id,null)) as buyer_count,count(DISTINCT if(b.itype=2,b.relate_id,null)) as project_count,GROUP_CONCAT(IF(b.itype=1,b.relate_id,NULL)) AS relate_buyer_id,GROUP_CONCAT(IF(b.itype=1,b.relate_name,NULL)) AS relate_buyer_name,GROUP_CONCAT(IF(b.itype=2,b.relate_id,NULL)) AS relate_project_id,a.create_time from crm.connection a 
 	q := `select a.id,a.company_id,a.company_name,a.qyxy_id,a.itype,a.contact_person as person,a.contact_phone as phone,count(DISTINCT if(b.itype=1,b.relate_id,null)) as buyer_count,count(DISTINCT if(b.itype=2,b.relate_id,null)) as project_count,GROUP_CONCAT(IF(b.itype=1,b.relate_id,NULL)) AS relate_buyer_id,GROUP_CONCAT(IF(b.itype=1,b.relate_name,NULL)) AS relate_buyer_name,GROUP_CONCAT(IF(b.itype=2,b.relate_id,NULL)) AS relate_project_id,a.create_time from crm.connection a 
 		left join crm.connection_introduce b on (a.position_id=? and b.position_id=? and a.id=b.connection_id) where a.position_id=?` + sqlAppend1 + ` GROUP BY a.id order by a.create_time desc` + sqlAppend2
 		left join crm.connection_introduce b on (a.position_id=? and b.position_id=? and a.id=b.connection_id) where a.position_id=?` + sqlAppend1 + ` GROUP BY a.id order by a.create_time desc` + sqlAppend2
 	listTemp := CrmMysql.SelectBySql(q, args...)
 	listTemp := CrmMysql.SelectBySql(q, args...)
-	firstparty_array, supplier_array, adiffb_array, agency_array, middleman_project_array := []string{}, []string{}, []string{}, []string{}, []string{}
+	firstparty_array, supplier_array, adiffb_array, agency_array, middleman_buyer_array, middleman_project_array := []string{}, []string{}, []string{}, []string{}, []string{}, []string{}
 	myNetworks := []*myNetwork{}
 	myNetworks := []*myNetwork{}
 	for _, v := range *listTemp {
 	for _, v := range *listTemp {
 		myNetwork := &myNetwork{
 		myNetwork := &myNetwork{
@@ -1290,6 +1294,9 @@ func (n *network) AllIntroduceOwner(sqlAppend1, sqlAppend2 string, args []interf
 		case 3:
 		case 3:
 			adiffb_array = append(adiffb_array, myNetwork.Company_id)
 			adiffb_array = append(adiffb_array, myNetwork.Company_id)
 		case 4:
 		case 4:
+			if myNetwork.Relate_buyer_id != "" {
+				middleman_buyer_array = append(middleman_buyer_array, strings.Split(myNetwork.Relate_buyer_id, ",")...)
+			}
 			if myNetwork.Relate_project_id != "" {
 			if myNetwork.Relate_project_id != "" {
 				middleman_project_array = append(middleman_project_array, strings.Split(myNetwork.Relate_project_id, ",")...)
 				middleman_project_array = append(middleman_project_array, strings.Split(myNetwork.Relate_project_id, ",")...)
 			}
 			}
@@ -1313,7 +1320,7 @@ func (n *network) AllIntroduceOwner(sqlAppend1, sqlAppend2 string, args []interf
 		iop.Supplier = n.Introduce_Supplier(supplier_array, businessType)
 		iop.Supplier = n.Introduce_Supplier(supplier_array, businessType)
 		iop.Adiffb = n.Introduce_Supplier(adiffb_array, businessType)
 		iop.Adiffb = n.Introduce_Supplier(adiffb_array, businessType)
 		iop.Agency = n.Introduce_Agency(agency_array, businessType)
 		iop.Agency = n.Introduce_Agency(agency_array, businessType)
-		iop.Middleman = n.Introduce_Middleman(middleman_project_array, businessType)
+		iop.Middleman = n.Introduce_Middleman_Buyer(middleman_buyer_array, businessType)
 	}
 	}
 	return iop
 	return iop
 }
 }

+ 2 - 1
api/internal/service/network_test.go

@@ -124,7 +124,8 @@ func TestOwner(t *testing.T) {
 	InitConf()
 	InitConf()
 	ownerService := &OwnerService{
 	ownerService := &OwnerService{
 		//PartyA:      "30604a74c36f47daa532503ac496914c",
 		//PartyA:      "30604a74c36f47daa532503ac496914c",
-		Heterotophy: "ffe7b3b526f048f9999b803a4241ce77",
+		//Heterotophy: "ffe7b3b526f048f9999b803a4241ce77",
+		Agency:      "wcj_11111111c,112233445566,001dfe3364b8480c965f81ab64d76bb4,00172d07d1fd4d90bd95fe5a348a845d",
 		PositionId:  935,
 		PositionId:  935,
 		PageIndex:   1,
 		PageIndex:   1,
 		PageSize:    100,
 		PageSize:    100,

+ 27 - 23
api/internal/service/owner.go

@@ -252,8 +252,10 @@ func Findwinner(buyerArr []string) []map[string]interface{} {
 	if len(buyerArr) == 0 {
 	if len(buyerArr) == 0 {
 		return returnData
 		return returnData
 	}
 	}
+	wh1, args1 := common.WhArgs(buyerArr)
+	args1 = append(args1, args1...)
 	//供应商  采购单位 供应商     招标代理机构  采购单位  招标代理机构  需要计算合作次数
 	//供应商  采购单位 供应商     招标代理机构  采购单位  招标代理机构  需要计算合作次数
-	winnerSql := fmt.Sprintf(`select  * from  (select
+	winnerSql := `select  * from  (select
 			zbtime,
 			zbtime,
 			project_id,
 			project_id,
 			project_name,
 			project_name,
@@ -265,7 +267,7 @@ from
 			transaction_info_all ARRAY
 			transaction_info_all ARRAY
 JOIN winner_id as entId
 JOIN winner_id as entId
 where
 where
-		buyer_id in (%s)
+		buyer_id in (` + wh1 + `)
 UNION ALL
 UNION ALL
 		select
 		select
 			zbtime,
 			zbtime,
@@ -278,8 +280,8 @@ UNION ALL
 from
 from
 			transaction_info_all
 			transaction_info_all
 where
 where
-		buyer_id in (%s) and  agency_id!='') order by  zbtime DESC,project_id DESC   `, strings.Join(buyerArr, ","), strings.Join(buyerArr, ","))
-	winnerArr := SupplierFindConnectionsHandle(winnerSql)
+		buyer_id in (` + wh1 + `) and  agency_id!='') order by  zbtime DESC,project_id DESC`
+	winnerArr := SupplierFindConnectionsHandle(winnerSql, args1...)
 	if winnerArr != nil && len(winnerArr) > 0 {
 	if winnerArr != nil && len(winnerArr) > 0 {
 		//企业联系人处理
 		//企业联系人处理
 		entIdArr := []string{}
 		entIdArr := []string{}
@@ -291,14 +293,15 @@ where
 		personMap := map[string]string{}
 		personMap := map[string]string{}
 		entNameMap := map[string]string{}
 		entNameMap := map[string]string{}
 		if len(entIdArr) > 0 {
 		if len(entIdArr) > 0 {
-			personSql := fmt.Sprintf(`select  id,name as personName from   ent_contact    where   id in (%s)  ORDER by  name`, strings.Join(entIdArr, ","))
-			personArr := PersonFindConnectionsHandle(personSql)
+			wh2, args2 := common.WhArgs(entIdArr)
+			personSql := `select  id,name as personName from   ent_contact    where   id in (` + wh2 + `)  ORDER by  name`
+			personArr := PersonFindConnectionsHandle(personSql, args2...)
 			//联系人处理
 			//联系人处理
 			for _, v := range personArr {
 			for _, v := range personArr {
 				personMap[v.Id] = v.PersonName
 				personMap[v.Id] = v.PersonName
 			}
 			}
-			entSql := fmt.Sprintf(`select  id ,company_name as personName  from  ent_info where   id in (%s)  ORDER by  company_name`, strings.Join(entIdArr, ","))
-			entNameArr := PersonFindConnectionsHandle(entSql)
+			entSql := `select  id ,company_name as personName  from  ent_info where   id in (` + wh2 + `)  ORDER by  company_name`
+			entNameArr := PersonFindConnectionsHandle(entSql, args2...)
 			for _, v := range entNameArr {
 			for _, v := range entNameArr {
 				entNameMap[v.Id] = v.PersonName
 				entNameMap[v.Id] = v.PersonName
 			}
 			}
@@ -459,7 +462,9 @@ func Findfirstparty(buyerArr []string, returnData []map[string]interface{}) []ma
 	if len(buyerArr) == 0 {
 	if len(buyerArr) == 0 {
 		return returnData
 		return returnData
 	}
 	}
-	buyerSql := fmt.Sprintf(`select DISTINCT 
+	wh1, args1 := common.WhArgs(buyerArr)
+	args1 = append(args1, args1...)
+	buyerSql := `select DISTINCT 
 			a.a_id as a_id,
 			a.a_id as a_id,
 			a.b_id as b_id,
 			a.b_id as b_id,
 			a.a_name as a_name,
 			a.a_name as a_name,
@@ -469,7 +474,7 @@ func Findfirstparty(buyerArr []string, returnData []map[string]interface{}) []ma
 		from
 		from
 			ent_map_code a
 			ent_map_code a
 		where
 		where
-			a.a_id in (%s)
+			a.a_id in (` + wh1 + `)
 			and a.code in('0101', '0201')
 			and a.code in('0101', '0201')
 			UNION  ALL
 			UNION  ALL
 			select
 			select
@@ -482,11 +487,9 @@ func Findfirstparty(buyerArr []string, returnData []map[string]interface{}) []ma
 		from
 		from
 			ent_map_code a
 			ent_map_code a
 		where
 		where
-			a.b_id in (%s)
-			and a.code in('0101', '0201')`,
-		strings.Join(buyerArr, ","),
-		strings.Join(buyerArr, ","))
-	relationshipArr := BuyerFindConnectionsHandle(buyerSql)
+			a.b_id in (` + wh1 + `)
+			and a.code in('0101', '0201')`
+	relationshipArr := BuyerFindConnectionsHandle(buyerSql, args1...)
 	if relationshipArr != nil && len(relationshipArr) > 0 {
 	if relationshipArr != nil && len(relationshipArr) > 0 {
 		entIdArr := []string{}
 		entIdArr := []string{}
 		for _, v := range relationshipArr {
 		for _, v := range relationshipArr {
@@ -496,8 +499,9 @@ func Findfirstparty(buyerArr []string, returnData []map[string]interface{}) []ma
 		}
 		}
 		personMap := map[string]string{}
 		personMap := map[string]string{}
 		if len(entIdArr) > 0 {
 		if len(entIdArr) > 0 {
-			personSql := fmt.Sprintf(`select  id,name as  personName from   ent_contact    where   id in (%s)  ORDER by  name`, strings.Join(entIdArr, ","))
-			personArr := PersonFindConnectionsHandle(personSql)
+			wh2, args2 := common.WhArgs(entIdArr)
+			personSql := `select  id,name as  personName from   ent_contact    where   id in (` + wh2 + `)  ORDER by  name`
+			personArr := PersonFindConnectionsHandle(personSql, args2...)
 			//联系人处理
 			//联系人处理
 			for _, v := range personArr {
 			for _, v := range personArr {
 				personMap[v.Id] = v.PersonName
 				personMap[v.Id] = v.PersonName
@@ -816,9 +820,9 @@ type TimeConnectionsEntity struct {
 }
 }
 
 
 // 采购单位人脉信息查询sql
 // 采购单位人脉信息查询sql
-func BuyerFindConnectionsHandle(sqlStr string) []ConnectionsEntity {
+func BuyerFindConnectionsHandle(sqlStr string, args ...interface{}) []ConnectionsEntity {
 	returnData := []ConnectionsEntity{}
 	returnData := []ConnectionsEntity{}
-	rows, err := ClickhouseConn.Query(context.Background(), sqlStr)
+	rows, err := ClickhouseConn.Query(context.Background(), sqlStr, args...)
 	if err != nil {
 	if err != nil {
 		logx.Error("查询失败", sqlStr, err)
 		logx.Error("查询失败", sqlStr, err)
 	}
 	}
@@ -830,9 +834,9 @@ func BuyerFindConnectionsHandle(sqlStr string) []ConnectionsEntity {
 	}
 	}
 	return returnData
 	return returnData
 }
 }
-func PersonFindConnectionsHandle(sqlStr string) []PersonEntity {
+func PersonFindConnectionsHandle(sqlStr string, args ...interface{}) []PersonEntity {
 	returnData := []PersonEntity{}
 	returnData := []PersonEntity{}
-	rows, err := ClickhouseConn.Query(context.Background(), sqlStr)
+	rows, err := ClickhouseConn.Query(context.Background(), sqlStr, args...)
 	if err != nil {
 	if err != nil {
 		logx.Error("查询失败", sqlStr, err)
 		logx.Error("查询失败", sqlStr, err)
 	}
 	}
@@ -845,9 +849,9 @@ func PersonFindConnectionsHandle(sqlStr string) []PersonEntity {
 }
 }
 
 
 // 供应商
 // 供应商
-func SupplierFindConnectionsHandle(sqlStr string) []SupplierConnectionsEntitys {
+func SupplierFindConnectionsHandle(sqlStr string, args ...interface{}) []SupplierConnectionsEntitys {
 	returnData := []SupplierConnectionsEntitys{}
 	returnData := []SupplierConnectionsEntitys{}
-	rows, err := ClickhouseConn.Query(context.Background(), sqlStr)
+	rows, err := ClickhouseConn.Query(context.Background(), sqlStr, args...)
 	if err != nil {
 	if err != nil {
 		logx.Error("查询失败", sqlStr, err)
 		logx.Error("查询失败", sqlStr, err)
 	}
 	}

+ 1 - 1
go.mod

@@ -3,7 +3,7 @@ module bp.jydev.jianyu360.cn/CRM/networkManage
 go 1.19
 go 1.19
 
 
 require (
 require (
-	app.yhyue.com/moapp/jybase v0.0.0-20241016090300-f39a281ac0ff
+	app.yhyue.com/moapp/jybase v0.0.0-20241028060726-9b8837ab6e42
 	app.yhyue.com/moapp/jypkg v0.0.0-20230825092743-3bfc415bb5bb
 	app.yhyue.com/moapp/jypkg v0.0.0-20230825092743-3bfc415bb5bb
 	bp.jydev.jianyu360.cn/BaseService/gateway v1.3.4
 	bp.jydev.jianyu360.cn/BaseService/gateway v1.3.4
 	github.com/ClickHouse/clickhouse-go/v2 v2.2.0
 	github.com/ClickHouse/clickhouse-go/v2 v2.2.0

+ 2 - 9
go.sum

@@ -4,10 +4,8 @@ app.yhyue.com/moapp/jybase v0.0.0-20220415064050-37ce64b3e2d4/go.mod h1:qNRA0sHu
 app.yhyue.com/moapp/jybase v0.0.0-20220418104200-46c3fff161c7/go.mod h1:qNRA0sHuYqcLoYoP8irpaWnW9YsXixe6obBIkwaXpD0=
 app.yhyue.com/moapp/jybase v0.0.0-20220418104200-46c3fff161c7/go.mod h1:qNRA0sHuYqcLoYoP8irpaWnW9YsXixe6obBIkwaXpD0=
 app.yhyue.com/moapp/jybase v0.0.0-20220420032112-668025915ee4/go.mod h1:qNRA0sHuYqcLoYoP8irpaWnW9YsXixe6obBIkwaXpD0=
 app.yhyue.com/moapp/jybase v0.0.0-20220420032112-668025915ee4/go.mod h1:qNRA0sHuYqcLoYoP8irpaWnW9YsXixe6obBIkwaXpD0=
 app.yhyue.com/moapp/jybase v0.0.0-20220421060131-a1001013ba46/go.mod h1:qNRA0sHuYqcLoYoP8irpaWnW9YsXixe6obBIkwaXpD0=
 app.yhyue.com/moapp/jybase v0.0.0-20220421060131-a1001013ba46/go.mod h1:qNRA0sHuYqcLoYoP8irpaWnW9YsXixe6obBIkwaXpD0=
-app.yhyue.com/moapp/jybase v0.0.0-20241016083144-6514c1b3c6c5 h1:i602vXS1OsRapLatZREDqw/Wo4jGOdN4XEzEkYbmylA=
-app.yhyue.com/moapp/jybase v0.0.0-20241016083144-6514c1b3c6c5/go.mod h1:quV41Rmzzh+XmHqNFTSGoDv0AnbEYiDayHORFYfyGXk=
-app.yhyue.com/moapp/jybase v0.0.0-20241016090300-f39a281ac0ff h1:9jtnqcPNSjkfSfpLqBsIyRLEG8IEoDD68S/KwIqeDl4=
-app.yhyue.com/moapp/jybase v0.0.0-20241016090300-f39a281ac0ff/go.mod h1:XHNATN6tsJKHdCB0DbUtFdPPHXexTUFyB3RlO+lUUoM=
+app.yhyue.com/moapp/jybase v0.0.0-20241028060726-9b8837ab6e42 h1:W4vYVQtoPsSCor6mO1iTjQlucodrxXeN38fKiWkPhE4=
+app.yhyue.com/moapp/jybase v0.0.0-20241028060726-9b8837ab6e42/go.mod h1:XHNATN6tsJKHdCB0DbUtFdPPHXexTUFyB3RlO+lUUoM=
 app.yhyue.com/moapp/jypkg v0.0.0-20230825092743-3bfc415bb5bb h1:J9CQ60meKlABYqeOB6zdZXJtBHAsJqnHeWhd/OOCUtU=
 app.yhyue.com/moapp/jypkg v0.0.0-20230825092743-3bfc415bb5bb h1:J9CQ60meKlABYqeOB6zdZXJtBHAsJqnHeWhd/OOCUtU=
 app.yhyue.com/moapp/jypkg v0.0.0-20230825092743-3bfc415bb5bb/go.mod h1:VaHDi3twSg4G84k2+UFOe7ZCw5EqUZVAkW2N2dHeMbU=
 app.yhyue.com/moapp/jypkg v0.0.0-20230825092743-3bfc415bb5bb/go.mod h1:VaHDi3twSg4G84k2+UFOe7ZCw5EqUZVAkW2N2dHeMbU=
 bp.jydev.jianyu360.cn/BP/jynsq v0.0.0-20220222052708-ebc43af90698/go.mod h1:ojo/AUH9Yr1wzarEjOaNMkj1Cet/9r8IgLyba64Z52E=
 bp.jydev.jianyu360.cn/BP/jynsq v0.0.0-20220222052708-ebc43af90698/go.mod h1:ojo/AUH9Yr1wzarEjOaNMkj1Cet/9r8IgLyba64Z52E=
@@ -182,7 +180,6 @@ github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vb
 github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE=
 github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE=
 github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
 github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
 github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A=
 github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A=
-github.com/go-logfmt/logfmt v0.5.1/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs=
 github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas=
 github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas=
 github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU=
 github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU=
 github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
 github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
@@ -205,7 +202,6 @@ github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh
 github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
 github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
 github.com/go-redis/redis/v8 v8.11.4/go.mod h1:2Z2wHZXdQpCDXEGzqMockDpNyYvi2l4Pxt6RJr792+w=
 github.com/go-redis/redis/v8 v8.11.4/go.mod h1:2Z2wHZXdQpCDXEGzqMockDpNyYvi2l4Pxt6RJr792+w=
 github.com/go-redis/redis/v8 v8.11.5 h1:AcZZR7igkdvfVmQTPnu9WE37LRrO/YrBH5zWyjDC0oI=
 github.com/go-redis/redis/v8 v8.11.5 h1:AcZZR7igkdvfVmQTPnu9WE37LRrO/YrBH5zWyjDC0oI=
-github.com/go-redis/redis/v8 v8.11.5/go.mod h1:gREzHqY1hg6oD9ngVRbLStwAWKhA0FEgq8Jd4h5lpwo=
 github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
 github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
 github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
 github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
 github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
 github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
@@ -284,8 +280,6 @@ github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEW
 github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM=
 github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM=
 github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
 github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
 github.com/gomodule/redigo v1.8.9/go.mod h1:7ArFNvsTjH8GMMzB4uy1snslv2BwmginuMs06a1uzZE=
 github.com/gomodule/redigo v1.8.9/go.mod h1:7ArFNvsTjH8GMMzB4uy1snslv2BwmginuMs06a1uzZE=
-github.com/gomodule/redigo v1.9.2 h1:HrutZBLhSIU8abiSfW8pj8mPhOyMYjZT/wcA4/L9L9s=
-github.com/gomodule/redigo v1.9.2/go.mod h1:KsU3hiK/Ay8U42qpaJk+kuNa3C+spxapWpM+ywhcgtw=
 github.com/gomodule/redigo v2.0.0+incompatible h1:K/R+8tc58AaqLkqG2Ol3Qk+DR/TlNuhuh457pBFPtt0=
 github.com/gomodule/redigo v2.0.0+incompatible h1:K/R+8tc58AaqLkqG2Ol3Qk+DR/TlNuhuh457pBFPtt0=
 github.com/gomodule/redigo v2.0.0+incompatible/go.mod h1:B4C85qUVwatsJoIUNIfCRsp7qO0iAmpGFZ4EELWSbC4=
 github.com/gomodule/redigo v2.0.0+incompatible/go.mod h1:B4C85qUVwatsJoIUNIfCRsp7qO0iAmpGFZ4EELWSbC4=
 github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
 github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
@@ -484,7 +478,6 @@ github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINE
 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 github.com/prashantv/gostub v1.1.0 h1:BTyx3RfQjRHnUWaGF9oQos79AlQ5k8WNktv7VGvVH4g=
 github.com/prashantv/gostub v1.1.0 h1:BTyx3RfQjRHnUWaGF9oQos79AlQ5k8WNktv7VGvVH4g=
-github.com/prashantv/gostub v1.1.0/go.mod h1:A5zLQHz7ieHGG7is6LLXLz7I8+3LZzsrV0P1IAHhP5U=
 github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
 github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
 github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=
 github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=
 github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M=
 github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M=