Просмотр исходного кода

fix:微信模板跳转调整&导出调整&标的物广告数据展示

duxin 5 месяцев назад
Родитель
Сommit
50da8a18fe

+ 2 - 0
jyBXCore/rpc/bxcore.proto

@@ -76,6 +76,8 @@ message SearchData {
   string interceptOtherWords = 9;//关键词截取剩余关键词
   string interceptKeyWords = 10;//关键词截取后的关键词
   int64 bCount = 11;//返回模糊数据量
+  int64 sCount = 12;//返回模根据“项目名称/标的物”进行搜索(其他条件与此次搜索条件保持一致)的搜索结果条数
+  repeated SearchList sList = 13;//返回根据“项目名称/标的物”进行搜索,展示最近发布的1条标讯
 }
 
 message  SearchList {

+ 2 - 0
jyBXCore/rpc/etc/bxcore.yaml

@@ -83,3 +83,5 @@ SearchWinner:
   RegWinner: ".+[司院厂所心处普行]$"
 PurchaseCode: ygzc_cgxx
 PurchaseDiffSwitch: false
+SearchLimit: 10
+SubjectLimit: 3

+ 3 - 1
jyBXCore/rpc/internal/config/config.go

@@ -69,7 +69,9 @@ type Config struct {
 		RegWinner string
 	}
 	PurchaseCode       string
-	PurchaseDiffSwitch bool //付费和免费查询区分开关
+	PurchaseDiffSwitch bool  //付费和免费查询区分开关
+	SearchLimit        int64 //搜索数大于条数查询标的物数
+	SubjectLimit       int64 //标的物大于条数展示广告推荐
 }
 type Db struct {
 	Mysql     entity.Mysql      `json:"mysql"`

+ 17 - 0
jyBXCore/rpc/internal/logic/getsearchlistlogic.go

@@ -193,11 +193,28 @@ func (l *GetSearchListLogic) GetSearchList(in *bxcore.SearchReq) (*bxcore.Search
 		// 精准模式不足50条的非空标讯查询 匹配模糊查询数
 		ikWords := util.HttpEs(in.KeyWords, "ik_smart", IC.DB.Es.Addr)
 		log.Println(ikWords)
+		var isReset bool
 		if res.Count < IC.C.PaySearchLimit.PrecisionNum && in.SearchMode == 0 && in.KeyWords != "" {
+			isReset = true
 			ks.SearchParamsHandle(nin, isWhite)
 			res.BCount = service.GetBidSearchCount(nin)
 			log.Println("精准查询数据不足 匹配模糊查询数:", res.BCount)
 		}
+		//4.3.新增:“项目名称/标的物”搜索结果广告
+		if (in.UserType == "fType" || !in.IsPay) && res.Count > IC.C.SearchLimit {
+			switch isReset {
+			case true:
+				nin.SelectType = "purchasing,projectname.pname"
+			case false:
+				nin.SelectType = "ppa"
+				ks.SearchParamsHandle(nin, isWhite)
+			}
+			nin.PageSize, nin.PageNum = 1, 1
+			_, total, data := ks.GetBidSearchList(nin)
+			if total > IC.C.SubjectLimit {
+				res.SCount, res.SList = total, data
+			}
+		}
 		res.KeyWords = strings.Join(heightWords, " ")
 		res.InterceptOtherWords = in.InterceptOtherWords
 		res.InterceptKeyWords = in.InterceptKeyWords

Разница между файлами не показана из-за своего большого размера
+ 602 - 561
jyBXCore/rpc/type/bxcore/bxcore.pb.go


+ 42 - 67
jyBXCore/rpc/type/bxcore/bxcore_grpc.pb.go

@@ -1,11 +1,9 @@
 // Code generated by protoc-gen-go-grpc. DO NOT EDIT.
 // versions:
-// - protoc-gen-go-grpc v1.3.0
-// - protoc             v3.15.1
+// - protoc-gen-go-grpc v1.2.0
+// - protoc             v3.19.4
 // source: bxcore.proto
 
-//import    "google/protobuf/any.proto";
-
 package bxcore
 
 import (
@@ -20,29 +18,6 @@ import (
 // Requires gRPC-Go v1.32.0 or later.
 const _ = grpc.SupportPackageIsVersion7
 
-const (
-	BxCore_GetSearchList_FullMethodName          = "/bxcore.BxCore/GetSearchList"
-	BxCore_SearchLimit_FullMethodName            = "/bxcore.BxCore/SearchLimit"
-	BxCore_ParticipateShow_FullMethodName        = "/bxcore.BxCore/ParticipateShow"
-	BxCore_ParticipateInfo_FullMethodName        = "/bxcore.BxCore/ParticipateInfo"
-	BxCore_UpdateBidStatus_FullMethodName        = "/bxcore.BxCore/UpdateBidStatus"
-	BxCore_ParticipateContent_FullMethodName     = "/bxcore.BxCore/ParticipateContent"
-	BxCore_ParticipateRecords_FullMethodName     = "/bxcore.BxCore/ParticipateRecords"
-	BxCore_ParticipatePersons_FullMethodName     = "/bxcore.BxCore/ParticipatePersons"
-	BxCore_ParticipateSetUpInfo_FullMethodName   = "/bxcore.BxCore/ParticipateSetUpInfo"
-	BxCore_ParticipateAction_FullMethodName      = "/bxcore.BxCore/ParticipateAction"
-	BxCore_ParticipateList_FullMethodName        = "/bxcore.BxCore/ParticipateList"
-	BxCore_PushStatistics_FullMethodName         = "/bxcore.BxCore/PushStatistics"
-	BxCore_ProjectStatistics_FullMethodName      = "/bxcore.BxCore/ProjectStatistics"
-	BxCore_PolymerizeSearch_FullMethodName       = "/bxcore.BxCore/PolymerizeSearch"
-	BxCore_ProjectDetails_FullMethodName         = "/bxcore.BxCore/ProjectDetails"
-	BxCore_PropertySearchCriteria_FullMethodName = "/bxcore.BxCore/PropertySearchCriteria"
-	BxCore_SearchHotKey_FullMethodName           = "/bxcore.BxCore/SearchHotKey"
-	BxCore_PurchaseSearch_FullMethodName         = "/bxcore.BxCore/PurchaseSearch"
-	BxCore_OperatorSearchCriteria_FullMethodName = "/bxcore.BxCore/OperatorSearchCriteria"
-	BxCore_OperatorSearch_FullMethodName         = "/bxcore.BxCore/OperatorSearch"
-)
-
 // BxCoreClient is the client API for BxCore service.
 //
 // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
@@ -97,7 +72,7 @@ func NewBxCoreClient(cc grpc.ClientConnInterface) BxCoreClient {
 
 func (c *bxCoreClient) GetSearchList(ctx context.Context, in *SearchReq, opts ...grpc.CallOption) (*SearchResp, error) {
 	out := new(SearchResp)
-	err := c.cc.Invoke(ctx, BxCore_GetSearchList_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/GetSearchList", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -106,7 +81,7 @@ func (c *bxCoreClient) GetSearchList(ctx context.Context, in *SearchReq, opts ..
 
 func (c *bxCoreClient) SearchLimit(ctx context.Context, in *SearchLimitReq, opts ...grpc.CallOption) (*SearchLimitResp, error) {
 	out := new(SearchLimitResp)
-	err := c.cc.Invoke(ctx, BxCore_SearchLimit_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/SearchLimit", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -115,7 +90,7 @@ func (c *bxCoreClient) SearchLimit(ctx context.Context, in *SearchLimitReq, opts
 
 func (c *bxCoreClient) ParticipateShow(ctx context.Context, in *ParticipateShowReq, opts ...grpc.CallOption) (*ParticipateShowRes, error) {
 	out := new(ParticipateShowRes)
-	err := c.cc.Invoke(ctx, BxCore_ParticipateShow_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/ParticipateShow", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -124,7 +99,7 @@ func (c *bxCoreClient) ParticipateShow(ctx context.Context, in *ParticipateShowR
 
 func (c *bxCoreClient) ParticipateInfo(ctx context.Context, in *ParticipateInfoReq, opts ...grpc.CallOption) (*ParticipateInfoRes, error) {
 	out := new(ParticipateInfoRes)
-	err := c.cc.Invoke(ctx, BxCore_ParticipateInfo_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/ParticipateInfo", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -133,7 +108,7 @@ func (c *bxCoreClient) ParticipateInfo(ctx context.Context, in *ParticipateInfoR
 
 func (c *bxCoreClient) UpdateBidStatus(ctx context.Context, in *UpdateBidStatusReq, opts ...grpc.CallOption) (*UpdateBidStatusRes, error) {
 	out := new(UpdateBidStatusRes)
-	err := c.cc.Invoke(ctx, BxCore_UpdateBidStatus_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/UpdateBidStatus", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -142,7 +117,7 @@ func (c *bxCoreClient) UpdateBidStatus(ctx context.Context, in *UpdateBidStatusR
 
 func (c *bxCoreClient) ParticipateContent(ctx context.Context, in *ParticipateContentReq, opts ...grpc.CallOption) (*ParticipateContentRes, error) {
 	out := new(ParticipateContentRes)
-	err := c.cc.Invoke(ctx, BxCore_ParticipateContent_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/ParticipateContent", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -151,7 +126,7 @@ func (c *bxCoreClient) ParticipateContent(ctx context.Context, in *ParticipateCo
 
 func (c *bxCoreClient) ParticipateRecords(ctx context.Context, in *ParticipateRecordsReq, opts ...grpc.CallOption) (*ParticipateRecordsRes, error) {
 	out := new(ParticipateRecordsRes)
-	err := c.cc.Invoke(ctx, BxCore_ParticipateRecords_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/ParticipateRecords", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -160,7 +135,7 @@ func (c *bxCoreClient) ParticipateRecords(ctx context.Context, in *ParticipateRe
 
 func (c *bxCoreClient) ParticipatePersons(ctx context.Context, in *ParticipatePersonsReq, opts ...grpc.CallOption) (*ParticipatePersonsRes, error) {
 	out := new(ParticipatePersonsRes)
-	err := c.cc.Invoke(ctx, BxCore_ParticipatePersons_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/ParticipatePersons", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -169,7 +144,7 @@ func (c *bxCoreClient) ParticipatePersons(ctx context.Context, in *ParticipatePe
 
 func (c *bxCoreClient) ParticipateSetUpInfo(ctx context.Context, in *ParticipateSetUpInfoReq, opts ...grpc.CallOption) (*ParticipateSetUpInfoRes, error) {
 	out := new(ParticipateSetUpInfoRes)
-	err := c.cc.Invoke(ctx, BxCore_ParticipateSetUpInfo_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/ParticipateSetUpInfo", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -178,7 +153,7 @@ func (c *bxCoreClient) ParticipateSetUpInfo(ctx context.Context, in *Participate
 
 func (c *bxCoreClient) ParticipateAction(ctx context.Context, in *ParticipateActionReq, opts ...grpc.CallOption) (*ParticipateActionRes, error) {
 	out := new(ParticipateActionRes)
-	err := c.cc.Invoke(ctx, BxCore_ParticipateAction_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/ParticipateAction", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -187,7 +162,7 @@ func (c *bxCoreClient) ParticipateAction(ctx context.Context, in *ParticipateAct
 
 func (c *bxCoreClient) ParticipateList(ctx context.Context, in *ParticipateListReq, opts ...grpc.CallOption) (*ParticipateListRes, error) {
 	out := new(ParticipateListRes)
-	err := c.cc.Invoke(ctx, BxCore_ParticipateList_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/ParticipateList", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -196,7 +171,7 @@ func (c *bxCoreClient) ParticipateList(ctx context.Context, in *ParticipateListR
 
 func (c *bxCoreClient) PushStatistics(ctx context.Context, in *StatisticsListReq, opts ...grpc.CallOption) (*PushStatisticsDataRes, error) {
 	out := new(PushStatisticsDataRes)
-	err := c.cc.Invoke(ctx, BxCore_PushStatistics_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/PushStatistics", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -205,7 +180,7 @@ func (c *bxCoreClient) PushStatistics(ctx context.Context, in *StatisticsListReq
 
 func (c *bxCoreClient) ProjectStatistics(ctx context.Context, in *StatisticsListReq, opts ...grpc.CallOption) (*ProjectStatisticsDataRes, error) {
 	out := new(ProjectStatisticsDataRes)
-	err := c.cc.Invoke(ctx, BxCore_ProjectStatistics_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/ProjectStatistics", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -214,7 +189,7 @@ func (c *bxCoreClient) ProjectStatistics(ctx context.Context, in *StatisticsList
 
 func (c *bxCoreClient) PolymerizeSearch(ctx context.Context, in *PolymerizeSearchReq, opts ...grpc.CallOption) (*PolymerizeSearchResp, error) {
 	out := new(PolymerizeSearchResp)
-	err := c.cc.Invoke(ctx, BxCore_PolymerizeSearch_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/PolymerizeSearch", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -223,7 +198,7 @@ func (c *bxCoreClient) PolymerizeSearch(ctx context.Context, in *PolymerizeSearc
 
 func (c *bxCoreClient) ProjectDetails(ctx context.Context, in *ProjectDetailsReq, opts ...grpc.CallOption) (*DetailDataRes, error) {
 	out := new(DetailDataRes)
-	err := c.cc.Invoke(ctx, BxCore_ProjectDetails_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/ProjectDetails", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -232,7 +207,7 @@ func (c *bxCoreClient) ProjectDetails(ctx context.Context, in *ProjectDetailsReq
 
 func (c *bxCoreClient) PropertySearchCriteria(ctx context.Context, in *SearchReq, opts ...grpc.CallOption) (*SearchCriteriaRes, error) {
 	out := new(SearchCriteriaRes)
-	err := c.cc.Invoke(ctx, BxCore_PropertySearchCriteria_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/PropertySearchCriteria", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -241,7 +216,7 @@ func (c *bxCoreClient) PropertySearchCriteria(ctx context.Context, in *SearchReq
 
 func (c *bxCoreClient) SearchHotKey(ctx context.Context, in *HotKeysReq, opts ...grpc.CallOption) (*HotKeysRes, error) {
 	out := new(HotKeysRes)
-	err := c.cc.Invoke(ctx, BxCore_SearchHotKey_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/SearchHotKey", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -250,7 +225,7 @@ func (c *bxCoreClient) SearchHotKey(ctx context.Context, in *HotKeysReq, opts ..
 
 func (c *bxCoreClient) PurchaseSearch(ctx context.Context, in *PurchaseReq, opts ...grpc.CallOption) (*PurchaseResp, error) {
 	out := new(PurchaseResp)
-	err := c.cc.Invoke(ctx, BxCore_PurchaseSearch_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/PurchaseSearch", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -259,7 +234,7 @@ func (c *bxCoreClient) PurchaseSearch(ctx context.Context, in *PurchaseReq, opts
 
 func (c *bxCoreClient) OperatorSearchCriteria(ctx context.Context, in *OperatorSearchCriteriaReq, opts ...grpc.CallOption) (*OperatorSearchResp, error) {
 	out := new(OperatorSearchResp)
-	err := c.cc.Invoke(ctx, BxCore_OperatorSearchCriteria_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/OperatorSearchCriteria", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -268,7 +243,7 @@ func (c *bxCoreClient) OperatorSearchCriteria(ctx context.Context, in *OperatorS
 
 func (c *bxCoreClient) OperatorSearch(ctx context.Context, in *OperatorSearchReq, opts ...grpc.CallOption) (*OperatorSearchResp, error) {
 	out := new(OperatorSearchResp)
-	err := c.cc.Invoke(ctx, BxCore_OperatorSearch_FullMethodName, in, out, opts...)
+	err := c.cc.Invoke(ctx, "/bxcore.BxCore/OperatorSearch", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -407,7 +382,7 @@ func _BxCore_GetSearchList_Handler(srv interface{}, ctx context.Context, dec fun
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_GetSearchList_FullMethodName,
+		FullMethod: "/bxcore.BxCore/GetSearchList",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).GetSearchList(ctx, req.(*SearchReq))
@@ -425,7 +400,7 @@ func _BxCore_SearchLimit_Handler(srv interface{}, ctx context.Context, dec func(
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_SearchLimit_FullMethodName,
+		FullMethod: "/bxcore.BxCore/SearchLimit",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).SearchLimit(ctx, req.(*SearchLimitReq))
@@ -443,7 +418,7 @@ func _BxCore_ParticipateShow_Handler(srv interface{}, ctx context.Context, dec f
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_ParticipateShow_FullMethodName,
+		FullMethod: "/bxcore.BxCore/ParticipateShow",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).ParticipateShow(ctx, req.(*ParticipateShowReq))
@@ -461,7 +436,7 @@ func _BxCore_ParticipateInfo_Handler(srv interface{}, ctx context.Context, dec f
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_ParticipateInfo_FullMethodName,
+		FullMethod: "/bxcore.BxCore/ParticipateInfo",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).ParticipateInfo(ctx, req.(*ParticipateInfoReq))
@@ -479,7 +454,7 @@ func _BxCore_UpdateBidStatus_Handler(srv interface{}, ctx context.Context, dec f
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_UpdateBidStatus_FullMethodName,
+		FullMethod: "/bxcore.BxCore/UpdateBidStatus",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).UpdateBidStatus(ctx, req.(*UpdateBidStatusReq))
@@ -497,7 +472,7 @@ func _BxCore_ParticipateContent_Handler(srv interface{}, ctx context.Context, de
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_ParticipateContent_FullMethodName,
+		FullMethod: "/bxcore.BxCore/ParticipateContent",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).ParticipateContent(ctx, req.(*ParticipateContentReq))
@@ -515,7 +490,7 @@ func _BxCore_ParticipateRecords_Handler(srv interface{}, ctx context.Context, de
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_ParticipateRecords_FullMethodName,
+		FullMethod: "/bxcore.BxCore/ParticipateRecords",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).ParticipateRecords(ctx, req.(*ParticipateRecordsReq))
@@ -533,7 +508,7 @@ func _BxCore_ParticipatePersons_Handler(srv interface{}, ctx context.Context, de
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_ParticipatePersons_FullMethodName,
+		FullMethod: "/bxcore.BxCore/ParticipatePersons",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).ParticipatePersons(ctx, req.(*ParticipatePersonsReq))
@@ -551,7 +526,7 @@ func _BxCore_ParticipateSetUpInfo_Handler(srv interface{}, ctx context.Context,
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_ParticipateSetUpInfo_FullMethodName,
+		FullMethod: "/bxcore.BxCore/ParticipateSetUpInfo",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).ParticipateSetUpInfo(ctx, req.(*ParticipateSetUpInfoReq))
@@ -569,7 +544,7 @@ func _BxCore_ParticipateAction_Handler(srv interface{}, ctx context.Context, dec
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_ParticipateAction_FullMethodName,
+		FullMethod: "/bxcore.BxCore/ParticipateAction",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).ParticipateAction(ctx, req.(*ParticipateActionReq))
@@ -587,7 +562,7 @@ func _BxCore_ParticipateList_Handler(srv interface{}, ctx context.Context, dec f
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_ParticipateList_FullMethodName,
+		FullMethod: "/bxcore.BxCore/ParticipateList",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).ParticipateList(ctx, req.(*ParticipateListReq))
@@ -605,7 +580,7 @@ func _BxCore_PushStatistics_Handler(srv interface{}, ctx context.Context, dec fu
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_PushStatistics_FullMethodName,
+		FullMethod: "/bxcore.BxCore/PushStatistics",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).PushStatistics(ctx, req.(*StatisticsListReq))
@@ -623,7 +598,7 @@ func _BxCore_ProjectStatistics_Handler(srv interface{}, ctx context.Context, dec
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_ProjectStatistics_FullMethodName,
+		FullMethod: "/bxcore.BxCore/ProjectStatistics",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).ProjectStatistics(ctx, req.(*StatisticsListReq))
@@ -641,7 +616,7 @@ func _BxCore_PolymerizeSearch_Handler(srv interface{}, ctx context.Context, dec
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_PolymerizeSearch_FullMethodName,
+		FullMethod: "/bxcore.BxCore/PolymerizeSearch",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).PolymerizeSearch(ctx, req.(*PolymerizeSearchReq))
@@ -659,7 +634,7 @@ func _BxCore_ProjectDetails_Handler(srv interface{}, ctx context.Context, dec fu
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_ProjectDetails_FullMethodName,
+		FullMethod: "/bxcore.BxCore/ProjectDetails",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).ProjectDetails(ctx, req.(*ProjectDetailsReq))
@@ -677,7 +652,7 @@ func _BxCore_PropertySearchCriteria_Handler(srv interface{}, ctx context.Context
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_PropertySearchCriteria_FullMethodName,
+		FullMethod: "/bxcore.BxCore/PropertySearchCriteria",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).PropertySearchCriteria(ctx, req.(*SearchReq))
@@ -695,7 +670,7 @@ func _BxCore_SearchHotKey_Handler(srv interface{}, ctx context.Context, dec func
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_SearchHotKey_FullMethodName,
+		FullMethod: "/bxcore.BxCore/SearchHotKey",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).SearchHotKey(ctx, req.(*HotKeysReq))
@@ -713,7 +688,7 @@ func _BxCore_PurchaseSearch_Handler(srv interface{}, ctx context.Context, dec fu
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_PurchaseSearch_FullMethodName,
+		FullMethod: "/bxcore.BxCore/PurchaseSearch",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).PurchaseSearch(ctx, req.(*PurchaseReq))
@@ -731,7 +706,7 @@ func _BxCore_OperatorSearchCriteria_Handler(srv interface{}, ctx context.Context
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_OperatorSearchCriteria_FullMethodName,
+		FullMethod: "/bxcore.BxCore/OperatorSearchCriteria",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).OperatorSearchCriteria(ctx, req.(*OperatorSearchCriteriaReq))
@@ -749,7 +724,7 @@ func _BxCore_OperatorSearch_Handler(srv interface{}, ctx context.Context, dec fu
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: BxCore_OperatorSearch_FullMethodName,
+		FullMethod: "/bxcore.BxCore/OperatorSearch",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 		return srv.(BxCoreServer).OperatorSearch(ctx, req.(*OperatorSearchReq))

+ 39 - 37
jyBXSubscribe/api/bxsubscribe.api

@@ -1,8 +1,8 @@
 syntax = "v1"
 
 info (
-	title:  "剑鱼标讯" // TODO: add title
-	desc:   "订阅模块" // TODO: add description
+	title: "剑鱼标讯" // TODO: add title
+	desc:  "订阅模块" // TODO: add description
 )
 
 type (
@@ -24,9 +24,9 @@ type (
 		Subtype        string                 `json:"subtype,optional"`
 		Price          string                 `json:"price,optional"`
 		FileExists     string                 `json:"fileExists,optional"`
-		Source         string                 `json:"source,optional"`                                        //信息来源
-		IsRead         string                 `json:"isRead,optional"`                                        //是否已读
-		Staffs         string                 `json:"staffs,optional"`                                        //分发的员工
+		Source         string                 `json:"source,optional"` //信息来源
+		IsRead         string                 `json:"isRead,optional"` //是否已读
+		Staffs         string                 `json:"staffs,optional"` //分发的员工
 		UserType       string                 `path:"userType,default=fType,options=fType|vType|mType|eType"` //fType:普通用户;vType:超级订阅用户;mType:大会员用户;eType:商机管理用户;
 		NewUserId      int64                  `header:"newUserId"`
 		IsEnt          bool                   `json:"isEnt,optional"`
@@ -40,6 +40,7 @@ type (
 		MgoUserId      string                 `header:"mgoUserId,optional"` //原userId
 		District       string                 `json:"district,optional"`
 		Stag           string                 `json:"stag,optional"` // home
+		PushTime       string                 `json:"pushTime,optional"` //推送时间
 	}
 	//
 	someInfoReq {
@@ -61,11 +62,10 @@ type (
 		AccountId    string   `header:"accountId,optional"`
 		PositionType string   `header:"positionType,optional"`
 		PositionId   string   `header:"positionId,optional"`
-		Area         string   `json:"area"`                // 省份、城市  格式  {"福建" : ["福州市","厦门市",]}
-		District     string   `json:"district,optional"`   // 区县 格式  {"莆田市" : ["城厢区","荔城区","秀屿区","仙游县"]}
-		Keywords     []string `json:"keywords"`            // 关键词 ["关键词1 附加词","关键词2"]
+		Area         string   `json:"area"` // 省份、城市  格式  {"福建" : ["福州市","厦门市",]}
+		District     string   `json:"district,optional"` // 区县 格式  {"莆田市" : ["城厢区","荔城区","秀屿区","仙游县"]}
+		Keywords     []string `json:"keywords"` // 关键词 ["关键词1 附加词","关键词2"]
 		AppSwitch    bool     `json:"app_switch,optional"` // app提醒总开关
-
 	}
 	//
 	commonResp {
@@ -76,16 +76,16 @@ type (
 	}
 	//
 	subscribeUpdateReq {
-		Area            map[string]interface{}   `json:"area,optional"`            //地区
-		Buyerclass      []string                 `json:"buyerclass,optional"`      //采购单位类型
-		Items           []map[string]interface{} `json:"items,optional"`           //关键词
-		Infotype        []string                 `json:"infotype,optional"`        //信息类型
-		Matchway        string                   `json:"matchway,optional"`        //匹配方式 1标题 2正文
-		Projectmatch    string                   `json:"projectmatch,optional"`    //项目匹配 1开始 0关闭
-		Ratemode        string                   `json:"ratemode,optional"`        // 1:实时推送,2:每天9点推送,3:每周推送,4:每月推送 5:每日推送两次
-		Apppush         string                   `json:"apppush,optional"`         //app推送 1开启 0关闭
-		Mailpush        string                   `json:"mailpush,optional"`        //邮箱推送 1开启 0关闭
-		Mail            string                   `json:"mail,optional"`            //邮箱
+		Area            map[string]interface{}   `json:"area,optional"` //地区
+		Buyerclass      []string                 `json:"buyerclass,optional"` //采购单位类型
+		Items           []map[string]interface{} `json:"items,optional"` //关键词
+		Infotype        []string                 `json:"infotype,optional"` //信息类型
+		Matchway        string                   `json:"matchway,optional"` //匹配方式 1标题 2正文
+		Projectmatch    string                   `json:"projectmatch,optional"` //项目匹配 1开始 0关闭
+		Ratemode        string                   `json:"ratemode,optional"` // 1:实时推送,2:每天9点推送,3:每周推送,4:每月推送 5:每日推送两次
+		Apppush         string                   `json:"apppush,optional"` //app推送 1开启 0关闭
+		Mailpush        string                   `json:"mailpush,optional"` //邮箱推送 1开启 0关闭
+		Mail            string                   `json:"mail,optional"` //邮箱
 		Otherbuyerclass string                   `json:"otherbuyerclass,optional"` //匹配未分类类型 1匹配 0不匹配
 		AppId           string                   `header:"appId,optional"`
 		UserType        string                   `path:"userType,optional"`
@@ -226,54 +226,56 @@ type (
 service bxsubscribe-api {
 	@handler subscribeList
 	post /jybx/subscribe/:userType/list (subscribeReq) returns (commonResp)
-	
+
 	@handler someInfo
 	post /jybx/subscribe/:userType/someInfo (someInfoReq) returns (commonResp)
-	
+
 	@handler subscribeUpdate
 	post /jybx/subscribe/:userType/update (subscribeUpdateReq) returns (commonResp)
-	
+
 	@handler ByPushHistory
 	post /jybx/subscribe/:userType/byPushHistory (subscribeReq) returns (commonResp)
-	
+
 	@handler SetRead
 	post /jybx/subscribe/:userType/setRead (SetReadReq) returns (commonResp)
-	
+
 	@handler getKey
 	post /jybx/subscribe/:userType/getKey (GetKeyReq) returns (commonResp)
-	
+
 	@handler distributor
 	post /jybx/subscribe/:userType/distributor (DistributorReq) returns (commonResp)
-	
+
 	@handler viewStatus
 	post /jybx/subscribe/:userType/viewStatus (viewStatusReq) returns (commonResp)
-	
+
 	@handler msgDistributor
 	post /jybx/subscribe/msgDistributor (msgDistributor) returns (commonResp)
-	
+
 	@handler getUser //查询用户信息
 	post /jybx/subscribe/getUser (GetUserReq) returns (commonResp)
-	
+
 	@handler setUser //设置用户信息
 	post /jybx/subscribe/setUser (SetUserReq) returns (commonResp)
-	
+
 	@handler getPushSet //推送设置查询
 	post /jybx/subscribe/getPushSet (GetUserReq) returns (commonResp)
-	
+
 	@handler setPushSet //推送设置修改
 	post /jybx/subscribe/setPushSet (SetPushSetReq) returns (commonResp)
-	
+
 	@handler getStaffSubscribeList //查询企业员工订阅状态
 	post /jybx/subscribe/getStaffSubscribe (GetStaffSubscribeListReq) returns (StaffSubscribeCommonResp)
-	
+
 	@handler getStaffSubscribeDetail //查询企业员工订阅详情
 	post /jybx/subscribe/getStaffSubscribeDetail (GetStaffSubscribeDetailReq) returns (StaffSubscribeCommonResp)
-	
+
 	@handler bidDistributor //标讯分发
 	post /jybx/subscribe/bidDistributor (BidDistributor) returns (commonResp)
-	
+
 	@handler bidRecList // 订阅推荐列表
 	post /jybx/subscribe/getRecList (BidRecListReq) returns (commonResp)
-	@handler saveTSGuide  // 保存订阅向导设置信息
+
+	@handler saveTSGuide // 保存订阅向导设置信息
 	post /jybx/subscribe/:userType/saveTSGuide (saveTsGuideReq) returns (commonResp)
-}
+}
+

+ 32 - 32
jyBXSubscribe/api/internal/handler/routes.go

@@ -14,23 +14,28 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
 		[]rest.Route{
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/:userType/list",
-				Handler: subscribeListHandler(serverCtx),
+				Path:    "/jybx/subscribe/:userType/byPushHistory",
+				Handler: ByPushHistoryHandler(serverCtx),
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/:userType/someInfo",
-				Handler: someInfoHandler(serverCtx),
+				Path:    "/jybx/subscribe/:userType/distributor",
+				Handler: distributorHandler(serverCtx),
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/:userType/update",
-				Handler: subscribeUpdateHandler(serverCtx),
+				Path:    "/jybx/subscribe/:userType/getKey",
+				Handler: getKeyHandler(serverCtx),
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/:userType/byPushHistory",
-				Handler: ByPushHistoryHandler(serverCtx),
+				Path:    "/jybx/subscribe/:userType/list",
+				Handler: subscribeListHandler(serverCtx),
+			},
+			{
+				Method:  http.MethodPost,
+				Path:    "/jybx/subscribe/:userType/saveTSGuide",
+				Handler: saveTSGuideHandler(serverCtx),
 			},
 			{
 				Method:  http.MethodPost,
@@ -39,13 +44,13 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/:userType/getKey",
-				Handler: getKeyHandler(serverCtx),
+				Path:    "/jybx/subscribe/:userType/someInfo",
+				Handler: someInfoHandler(serverCtx),
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/:userType/distributor",
-				Handler: distributorHandler(serverCtx),
+				Path:    "/jybx/subscribe/:userType/update",
+				Handler: subscribeUpdateHandler(serverCtx),
 			},
 			{
 				Method:  http.MethodPost,
@@ -54,18 +59,8 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/msgDistributor",
-				Handler: msgDistributorHandler(serverCtx),
-			},
-			{
-				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/getUser",
-				Handler: getUserHandler(serverCtx),
-			},
-			{
-				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/setUser",
-				Handler: setUserHandler(serverCtx),
+				Path:    "/jybx/subscribe/bidDistributor",
+				Handler: bidDistributorHandler(serverCtx),
 			},
 			{
 				Method:  http.MethodPost,
@@ -74,8 +69,8 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/setPushSet",
-				Handler: setPushSetHandler(serverCtx),
+				Path:    "/jybx/subscribe/getRecList",
+				Handler: bidRecListHandler(serverCtx),
 			},
 			{
 				Method:  http.MethodPost,
@@ -89,18 +84,23 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/bidDistributor",
-				Handler: bidDistributorHandler(serverCtx),
+				Path:    "/jybx/subscribe/getUser",
+				Handler: getUserHandler(serverCtx),
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/getRecList",
-				Handler: bidRecListHandler(serverCtx),
+				Path:    "/jybx/subscribe/msgDistributor",
+				Handler: msgDistributorHandler(serverCtx),
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/subscribe/:userType/saveTSGuide",
-				Handler: saveTSGuideHandler(serverCtx),
+				Path:    "/jybx/subscribe/setPushSet",
+				Handler: setPushSetHandler(serverCtx),
+			},
+			{
+				Method:  http.MethodPost,
+				Path:    "/jybx/subscribe/setUser",
+				Handler: setUserHandler(serverCtx),
 			},
 		},
 	)

+ 4 - 1
jyBXSubscribe/api/internal/logic/byPushHistoryLogic.go

@@ -2,9 +2,9 @@ package logic
 
 import (
 	"app.yhyue.com/moapp/jybase/common"
+	"bp.jydev.jianyu360.cn/BaseService/jyMicroservices/jyBXSubscribe/rpc/type/bxsubscribe"
 	"context"
 	"github.com/gogf/gf/v2/util/gconv"
-	"bp.jydev.jianyu360.cn/BaseService/jyMicroservices/jyBXSubscribe/rpc/type/bxsubscribe"
 	"strings"
 
 	"bp.jydev.jianyu360.cn/BaseService/jyMicroservices/jyBXSubscribe/api/internal/svc"
@@ -52,6 +52,9 @@ func (l *ByPushHistoryLogic) ByPushHistory(req *types.SubscribeReq) (resp *types
 		matchkeys = strings.Join(matchkeysArr, ",")
 		matchkeys = strings.ReplaceAll(matchkeys, " ", ",")
 	}
+	if req.SelectTime == "" && req.PushTime != "" { //微信跳转过来的 按照推送时间查询导出
+		req.SelectTime = req.PushTime
+	}
 	res, err := l.svcCtx.Suscribe.ByPushHistory(l.ctx, &bxsubscribe.SubscribeInfosReq{
 		PageNum:        req.PageNum,
 		PageSize:       req.PageSize,

+ 6 - 3
jyBXSubscribe/api/internal/logic/subscribeListLogic.go

@@ -2,12 +2,12 @@ package logic
 
 import (
 	"app.yhyue.com/moapp/jybase/common"
-	"context"
-	"github.com/gogf/gf/v2/util/gconv"
-	"github.com/zeromicro/go-zero/core/logx"
 	"bp.jydev.jianyu360.cn/BaseService/jyMicroservices/jyBXSubscribe/api/internal/svc"
 	"bp.jydev.jianyu360.cn/BaseService/jyMicroservices/jyBXSubscribe/api/internal/types"
 	"bp.jydev.jianyu360.cn/BaseService/jyMicroservices/jyBXSubscribe/rpc/type/bxsubscribe"
+	"context"
+	"github.com/gogf/gf/v2/util/gconv"
+	"github.com/zeromicro/go-zero/core/logx"
 	"net/http"
 	"strings"
 )
@@ -54,6 +54,9 @@ func (l *SubscribeListLogic) SubscribeList(req *types.SubscribeReq) (resp *types
 		matchkeys = strings.Join(matchkeysArr, ",")
 		matchkeys = strings.ReplaceAll(matchkeys, " ", ",")
 	}
+	if req.SelectTime == "" && req.PushTime != "" { //微信跳转过来的 按照推送时间查询导出
+		req.SelectTime = req.PushTime
+	}
 	res, err := l.svcCtx.Suscribe.GetSubList(l.ctx, &bxsubscribe.SubscribeInfosReq{
 		PageNum:        req.PageNum,
 		PageSize:       req.PageSize,

+ 154 - 153
jyBXSubscribe/api/internal/types/types.go

@@ -1,114 +1,33 @@
 // Code generated by goctl. DO NOT EDIT.
 package types
 
-type SubscribeReq struct {
-	AppId          string                 `header:"appId"`
-	UserId         string                 `header:"userId"`
-	EntId          string                 `header:"entId,optional"`
-	EntUserId      string                 `header:"entUserId,optional"`
-	DeptId         string                 `header:"deptId,optional"` //部门id
-	PageNum        int64                  `json:"pageNum,optional"`
-	PageSize       int64                  `json:"pageSize,optional"`
-	SelectTime     string                 `json:"selectTime,optional"`
-	Area           string                 `json:"area,optional"`
-	City           string                 `json:"city,optional"`
-	Industry       string                 `json:"industry,optional"`
-	BuyerClass     string                 `json:"buyerClass,optional"`
-	KeyWords       string                 `json:"keyWords,optional"`
-	Subtype        string                 `json:"subtype,optional"`
-	Price          string                 `json:"price,optional"`
-	FileExists     string                 `json:"fileExists,optional"`
-	Source         string                 `json:"source,optional"`                                        //信息来源
-	IsRead         string                 `json:"isRead,optional"`                                        //是否已读
-	Staffs         string                 `json:"staffs,optional"`                                        //分发的员工
-	UserType       string                 `path:"userType,default=fType,options=fType|vType|mType|eType"` //fType:普通用户;vType:超级订阅用户;mType:大会员用户;eType:商机管理用户;
-	NewUserId      int64                  `header:"newUserId"`
-	IsEnt          bool                   `json:"isEnt,optional"`
-	SelectIds      string                 `json:"selectIds,optional"`
-	SelectKeys     string                 `json:"selectKeys,optional"`
-	PositionType   int64                  `header:"positionType,optional"`
-	NotReturnCount int64                  `json:"notReturnCount,optional"`
-	Item           map[string]interface{} `json:"item,optional"`
-	AccountId      string                 `header:"accountId,optional"`
-	PositionId     string                 `header:"positionId,optional"`
-	MgoUserId      string                 `header:"mgoUserId,optional"` //原userId
-	District       string                 `json:"district,optional"`
-	Stag           string                 `json:"stag,optional"` // home
-}
-
-type SomeInfoReq struct {
-	AppId        string `header:"appId"`
-	UserType     string `path:"userType"`
-	UserId       string `header:"userId,optional"`
-	NewUserId    string `header:"newUserId,optional"`
-	EntId        string `header:"entId,optional"`
-	AccountId    string `header:"accountId,optional"`
-	PositionType string `header:"positionType,optional"`
-	PositionId   string `header:"positionId,optional"`
-}
-
-type SaveTsGuideReq struct {
-	AppId        string   `header:"appId"`
-	UserType     string   `path:"userType"`
-	UserId       string   `header:"userId,optional"`
-	NewUserId    string   `header:"newUserId,optional"`
-	EntId        string   `header:"entId,optional"`
-	AccountId    string   `header:"accountId,optional"`
-	PositionType string   `header:"positionType,optional"`
-	PositionId   string   `header:"positionId,optional"`
-	Area         string   `json:"area"`                // 省份、城市  格式  {"福建" : ["福州市","厦门市",]}
-	District     string   `json:"district,optional"`   // 区县 格式  {"莆田市" : ["城厢区","荔城区","秀屿区","仙游县"]}
-	Keywords     []string `json:"keywords"`            // 关键词 ["关键词1 附加词","关键词2"]
-	AppSwitch    bool     `json:"app_switch,optional"` // app提醒总开关
-}
-
-type CommonResp struct {
-	Err_code int64       `json:"error_code"`
-	Err_msg  string      `json:"error_msg"`
-	Data     interface{} `json:"data"`
-	TimeData interface{} `json:"timeData"`
-}
-
-type SubscribeUpdateReq struct {
-	Area            map[string]interface{}   `json:"area,optional"`            //地区
-	Buyerclass      []string                 `json:"buyerclass,optional"`      //采购单位类型
-	Items           []map[string]interface{} `json:"items,optional"`           //关键词
-	Infotype        []string                 `json:"infotype,optional"`        //信息类型
-	Matchway        string                   `json:"matchway,optional"`        //匹配方式 1标题 2正文
-	Projectmatch    string                   `json:"projectmatch,optional"`    //项目匹配 1开始 0关闭
-	Ratemode        string                   `json:"ratemode,optional"`        // 1:实时推送,2:每天9点推送,3:每周推送,4:每月推送 5:每日推送两次
-	Apppush         string                   `json:"apppush,optional"`         //app推送 1开启 0关闭
-	Mailpush        string                   `json:"mailpush,optional"`        //邮箱推送 1开启 0关闭
-	Mail            string                   `json:"mail,optional"`            //邮箱
-	Otherbuyerclass string                   `json:"otherbuyerclass,optional"` //匹配未分类类型 1匹配 0不匹配
-	AppId           string                   `header:"appId,optional"`
-	UserType        string                   `path:"userType,optional"`
-	UserId          string                   `header:"userId,optional"`
-	PositionType    int64                    `header:"positionType,optional"`
-	NewUserId       int64                    `header:"newUserId,optional"`
-	EntId           int64                    `header:"entId,optional"`
-	AccountId       int64                    `header:"accountId,optional"`
-	PositionId      int64                    `header:"positionId,optional"`
-	District        map[string]interface{}   `json:"district,optional"`
-	ISwitch         int64                    `json:"iSwitch,optional"`
-	Amount          string                   `json:"amount,optional"`
-	Matchmode       string                   `json:"matchmode,optional"`
-	MgoUserId       string                   `header:"mgoUserId,optional"` //原userId
+type BidDistributor struct {
+	AppId     string   `header:"appId"`
+	EntId     string   `header:"entId,optional"`
+	EntUserId string   `header:"entUserId,optional"`
+	Infoids   []string `json:"infoids"`
+	Staffs    string   `json:"staffs"`
 }
 
-type SetReadReq struct {
+type BidRecListReq struct {
 	AppId        string `header:"appId"`
 	UserId       string `header:"userId"`
 	EntId        string `header:"entId,optional"`
 	EntUserId    string `header:"entUserId,optional"`
-	DeptId       string `header:"deptId,optional"` //部门id
-	Vsid         int64  `form:"vsid"`
-	NewUserId    int64  `header:"newUserId"`
-	IsEnt        bool   `form:"isEnt,optional"`
-	UserType     string `path:"userType,optional"`
+	Spath        string `json:"spath"` // 页面入口,1: 订阅更多;2:模版消息
 	PositionType int64  `header:"positionType,optional"`
 }
 
+type DistributorReq struct {
+	AppId     string `header:"appId"`
+	EntId     string `header:"entId,optional"`
+	EntUserId string `header:"entUserId,optional"`
+	UserType  string `path:"userType,optional"`
+	Region    string `json:"region,optional"`
+	SelectIds string `json:"selectIds,optional"`
+	QueryType string `json:"queryType,optional"`
+}
+
 type GetKeyReq struct {
 	AppId        string `header:"appId"`
 	UserId       string `header:"userId"`
@@ -125,30 +44,22 @@ type GetKeyReq struct {
 	PositionType int64  `header:"positionType,optional"`
 }
 
-type DistributorReq struct {
-	AppId     string `header:"appId"`
-	EntId     string `header:"entId,optional"`
-	EntUserId string `header:"entUserId,optional"`
-	UserType  string `path:"userType,optional"`
-	Region    string `json:"region,optional"`
-	SelectIds string `json:"selectIds,optional"`
-	QueryType string `json:"queryType,optional"`
-}
-
-type ViewStatusReq struct {
+type GetStaffSubscribeDetailReq struct {
 	AppId     string `header:"appId"`
-	EntId     string `header:"entId,optional"`
-	EntUserId string `header:"entUserId,optional"`
-	UserType  string `path:"userType,optional"`
-	InfoId    string `json:"infoId,optional"`
+	EntId     int64  `header:"entId,optional"`
+	EntUserId int64  `header:"entUserId,optional"`
+	Token     string `json:"token,optional"`
 }
 
-type MsgDistributor struct {
+type GetStaffSubscribeListReq struct {
 	AppId     string `header:"appId"`
-	EntId     string `header:"entId,optional"`
-	EntUserId string `header:"entUserId,optional"`
-	MessageId string `json:"messageId"`
-	Staffs    string `json:"staffs"`
+	EntId     int64  `header:"entId,optional"`
+	EntUserId int64  `header:"entUserId,optional"`
+	EStatus   int64  `json:"e_status,optional"`
+	PStatus   int64  `json:"p_status,optional"`
+	Search    string `json:"search,optional"`
+	PageNum   int64  `json:"pageNum,optional"`
+	PageSize  int64  `json:"pageSize,optional"`
 }
 
 type GetUserReq struct {
@@ -164,15 +75,6 @@ type GetUserReq struct {
 	MgoUserId    string `header:"mgoUserId,optional"` //原userId
 }
 
-type SetUserReq struct {
-	AppId        string `header:"appId"`
-	EntId        int64  `header:"entId,optional"`
-	EntUserId    int64  `header:"entUserId,optional"`
-	PositionType int64  `header:"positionType,optional"`
-	UserId       string `header:"userId,optional"`
-	Mail         string `json:"mail,optional"`
-}
-
 type SetPushSetReq struct {
 	AppId        string   `header:"appId"`
 	EntId        int64    `header:"entId,optional"`
@@ -188,22 +90,26 @@ type SetPushSetReq struct {
 	Interested   int64    `json:"interested,optional"`
 }
 
-type GetStaffSubscribeListReq struct {
-	AppId     string `header:"appId"`
-	EntId     int64  `header:"entId,optional"`
-	EntUserId int64  `header:"entUserId,optional"`
-	EStatus   int64  `json:"e_status,optional"`
-	PStatus   int64  `json:"p_status,optional"`
-	Search    string `json:"search,optional"`
-	PageNum   int64  `json:"pageNum,optional"`
-	PageSize  int64  `json:"pageSize,optional"`
+type SetReadReq struct {
+	AppId        string `header:"appId"`
+	UserId       string `header:"userId"`
+	EntId        string `header:"entId,optional"`
+	EntUserId    string `header:"entUserId,optional"`
+	DeptId       string `header:"deptId,optional"` //部门id
+	Vsid         int64  `form:"vsid"`
+	NewUserId    int64  `header:"newUserId"`
+	IsEnt        bool   `form:"isEnt,optional"`
+	UserType     string `path:"userType,optional"`
+	PositionType int64  `header:"positionType,optional"`
 }
 
-type GetStaffSubscribeDetailReq struct {
-	AppId     string `header:"appId"`
-	EntId     int64  `header:"entId,optional"`
-	EntUserId int64  `header:"entUserId,optional"`
-	Token     string `json:"token,optional"`
+type SetUserReq struct {
+	AppId        string `header:"appId"`
+	EntId        int64  `header:"entId,optional"`
+	EntUserId    int64  `header:"entUserId,optional"`
+	PositionType int64  `header:"positionType,optional"`
+	UserId       string `header:"userId,optional"`
+	Mail         string `json:"mail,optional"`
 }
 
 type StaffSubscribeCommonResp struct {
@@ -212,19 +118,114 @@ type StaffSubscribeCommonResp struct {
 	Data     interface{} `json:"data"`
 }
 
-type BidDistributor struct {
-	AppId     string   `header:"appId"`
-	EntId     string   `header:"entId,optional"`
-	EntUserId string   `header:"entUserId,optional"`
-	Infoids   []string `json:"infoids"`
-	Staffs    string   `json:"staffs"`
+type CommonResp struct {
+	Err_code int64       `json:"error_code"`
+	Err_msg  string      `json:"error_msg"`
+	Data     interface{} `json:"data"`
+	TimeData interface{} `json:"timeData"`
 }
 
-type BidRecListReq struct {
+type MsgDistributor struct {
+	AppId     string `header:"appId"`
+	EntId     string `header:"entId,optional"`
+	EntUserId string `header:"entUserId,optional"`
+	MessageId string `json:"messageId"`
+	Staffs    string `json:"staffs"`
+}
+
+type SaveTsGuideReq struct {
+	AppId        string   `header:"appId"`
+	UserType     string   `path:"userType"`
+	UserId       string   `header:"userId,optional"`
+	NewUserId    string   `header:"newUserId,optional"`
+	EntId        string   `header:"entId,optional"`
+	AccountId    string   `header:"accountId,optional"`
+	PositionType string   `header:"positionType,optional"`
+	PositionId   string   `header:"positionId,optional"`
+	Area         string   `json:"area"`                // 省份、城市  格式  {"福建" : ["福州市","厦门市",]}
+	District     string   `json:"district,optional"`   // 区县 格式  {"莆田市" : ["城厢区","荔城区","秀屿区","仙游县"]}
+	Keywords     []string `json:"keywords"`            // 关键词 ["关键词1 附加词","关键词2"]
+	AppSwitch    bool     `json:"app_switch,optional"` // app提醒总开关
+}
+
+type SomeInfoReq struct {
 	AppId        string `header:"appId"`
-	UserId       string `header:"userId"`
+	UserType     string `path:"userType"`
+	UserId       string `header:"userId,optional"`
+	NewUserId    string `header:"newUserId,optional"`
 	EntId        string `header:"entId,optional"`
-	EntUserId    string `header:"entUserId,optional"`
-	Spath        string `json:"spath"` // 页面入口,1: 订阅更多;2:模版消息
-	PositionType int64  `header:"positionType,optional"`
+	AccountId    string `header:"accountId,optional"`
+	PositionType string `header:"positionType,optional"`
+	PositionId   string `header:"positionId,optional"`
+}
+
+type SubscribeReq struct {
+	AppId          string                 `header:"appId"`
+	UserId         string                 `header:"userId"`
+	EntId          string                 `header:"entId,optional"`
+	EntUserId      string                 `header:"entUserId,optional"`
+	DeptId         string                 `header:"deptId,optional"` //部门id
+	PageNum        int64                  `json:"pageNum,optional"`
+	PageSize       int64                  `json:"pageSize,optional"`
+	SelectTime     string                 `json:"selectTime,optional"`
+	Area           string                 `json:"area,optional"`
+	City           string                 `json:"city,optional"`
+	Industry       string                 `json:"industry,optional"`
+	BuyerClass     string                 `json:"buyerClass,optional"`
+	KeyWords       string                 `json:"keyWords,optional"`
+	Subtype        string                 `json:"subtype,optional"`
+	Price          string                 `json:"price,optional"`
+	FileExists     string                 `json:"fileExists,optional"`
+	Source         string                 `json:"source,optional"`                                        //信息来源
+	IsRead         string                 `json:"isRead,optional"`                                        //是否已读
+	Staffs         string                 `json:"staffs,optional"`                                        //分发的员工
+	UserType       string                 `path:"userType,default=fType,options=fType|vType|mType|eType"` //fType:普通用户;vType:超级订阅用户;mType:大会员用户;eType:商机管理用户;
+	NewUserId      int64                  `header:"newUserId"`
+	IsEnt          bool                   `json:"isEnt,optional"`
+	SelectIds      string                 `json:"selectIds,optional"`
+	SelectKeys     string                 `json:"selectKeys,optional"`
+	PositionType   int64                  `header:"positionType,optional"`
+	NotReturnCount int64                  `json:"notReturnCount,optional"`
+	Item           map[string]interface{} `json:"item,optional"`
+	AccountId      string                 `header:"accountId,optional"`
+	PositionId     string                 `header:"positionId,optional"`
+	MgoUserId      string                 `header:"mgoUserId,optional"` //原userId
+	District       string                 `json:"district,optional"`
+	Stag           string                 `json:"stag,optional"`     // home
+	PushTime       string                 `json:"pushTime,optional"` //推送时间
+}
+
+type SubscribeUpdateReq struct {
+	Area            map[string]interface{}   `json:"area,optional"`            //地区
+	Buyerclass      []string                 `json:"buyerclass,optional"`      //采购单位类型
+	Items           []map[string]interface{} `json:"items,optional"`           //关键词
+	Infotype        []string                 `json:"infotype,optional"`        //信息类型
+	Matchway        string                   `json:"matchway,optional"`        //匹配方式 1标题 2正文
+	Projectmatch    string                   `json:"projectmatch,optional"`    //项目匹配 1开始 0关闭
+	Ratemode        string                   `json:"ratemode,optional"`        // 1:实时推送,2:每天9点推送,3:每周推送,4:每月推送 5:每日推送两次
+	Apppush         string                   `json:"apppush,optional"`         //app推送 1开启 0关闭
+	Mailpush        string                   `json:"mailpush,optional"`        //邮箱推送 1开启 0关闭
+	Mail            string                   `json:"mail,optional"`            //邮箱
+	Otherbuyerclass string                   `json:"otherbuyerclass,optional"` //匹配未分类类型 1匹配 0不匹配
+	AppId           string                   `header:"appId,optional"`
+	UserType        string                   `path:"userType,optional"`
+	UserId          string                   `header:"userId,optional"`
+	PositionType    int64                    `header:"positionType,optional"`
+	NewUserId       int64                    `header:"newUserId,optional"`
+	EntId           int64                    `header:"entId,optional"`
+	AccountId       int64                    `header:"accountId,optional"`
+	PositionId      int64                    `header:"positionId,optional"`
+	District        map[string]interface{}   `json:"district,optional"`
+	ISwitch         int64                    `json:"iSwitch,optional"`
+	Amount          string                   `json:"amount,optional"`
+	Matchmode       string                   `json:"matchmode,optional"`
+	MgoUserId       string                   `header:"mgoUserId,optional"` //原userId
+}
+
+type ViewStatusReq struct {
+	AppId     string `header:"appId"`
+	EntId     string `header:"entId,optional"`
+	EntUserId string `header:"entUserId,optional"`
+	UserType  string `path:"userType,optional"`
+	InfoId    string `json:"infoId,optional"`
 }

Некоторые файлы не были показаны из-за большого количества измененных файлов