浏览代码

feat:修改搜索保存

duxin 3 年之前
父节点
当前提交
c9a4eb7e15

+ 15 - 15
jyBXBase/api/bxcore.api

@@ -55,27 +55,27 @@ type (
 	}
 	//删除筛选条件
 	DelSearch {
-		Id string `header:"id"`
+		Id string `json:"id"`
 	}
 
 	//保存筛选条件
 	AddSearch {
 		UserId       string `header:"userId"`
 		Type         string `header:"type,,optional"`
-		Keywords     string `json:"keywords"`             //搜索词
+		Keywords     string `json:"searchvalue"`          //搜索词
 		Publishtime  string `json:"publishtime,optional"` //发布时间
-		Province     string `json:"province,optional"`
-		Area         string `json:"area,optional"`         //地区
-		Subtype      string `json:"subtype,optional"`      //信息类型
-		Minprice     string `json:"minprice,optional"`     //最低价格
-		Maxprice     string `json:"maxprice,optional"`     //最高价格
-		Industry     string `json:"industry,optional"`     //选中的行业
-		SelectType   string `json:"selectType,optional"`   //标题 or 全文
-		Buyerclass   string `json:"buyerclass,optional"`   //采购单位行业
-		Hasbuyertel  string `json:"hasbuyertel,optional"`  //是否有采购电话
-		Haswinnertel string `json:"haswinnertel,optional"` //是否有中标电话
-		Attachment   string `json:"attachment,optional"`   //附件
-		Notkey       string `json:"notkey,optional"`       //排除词
+		City         string `json:"city,optional"`        //城市
+		Area         string `json:"area,optional"`        //地区
+		Subtype      string `json:"subtype,optional"`     //信息类型
+		Minprice     string `json:"minprice,optional"`    //最低价格
+		Maxprice     string `json:"maxprice,optional"`    //最高价格
+		Industry     string `json:"industry,optional"`    //选中的行业
+		SelectType   string `json:"selectType,optional"`  //标题 or 全文
+		Buyerclass   string `json:"buyerclass,optional"`  //采购单位行业
+		Hasbuyertel  string `json:"buyertel,optional"`    //是否有采购电话
+		Haswinnertel string `json:"winnertel,optional"`   //是否有中标电话
+		FileExists   string `json:"fileExists,optional"`  //附件
+		Notkey       string `json:"notkey,optional"`      //排除词
 		Tabularflag  string `json:"tabularflag,optional"`
 	}
 
@@ -109,7 +109,7 @@ service bxcore-api {
 	
 	//展示标签
 	@handler ShowSearch
-	post /search/ShowSearch (ShowSearch) returns(CommonRes)
+	post /search/showSearch (ShowSearch) returns(CommonRes)
 	
 	//添加筛选条件
 	@handler AddSearch

+ 1 - 1
jyBXBase/api/internal/handler/routes.go

@@ -44,7 +44,7 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/search/ShowSearch",
+				Path:    "/search/showSearch",
 				Handler: ShowSearchHandler(serverCtx),
 			},
 			{

+ 3 - 2
jyBXBase/api/internal/logic/addsearchlogic.go

@@ -32,7 +32,7 @@ func (l *AddSearchLogic) AddSearch(req *types.AddSearch) (resp *types.CommonRes,
 		Type:         req.Type,
 		Keywords:     req.Keywords,
 		PublishTime:  req.Publishtime,
-		Provincial:   req.Province,
+		City:         req.City,
 		Area:         req.Area,
 		Subtype:      req.Subtype,
 		MinPrice:     req.Minprice,
@@ -42,8 +42,9 @@ func (l *AddSearchLogic) AddSearch(req *types.AddSearch) (resp *types.CommonRes,
 		BuyerClass:   req.Buyerclass,
 		HasBuyerTel:  req.Hasbuyertel,
 		HasWinnerTel: req.Haswinnertel,
-		Attachment:   req.Attachment,
+		FileExists:   req.FileExists,
 		NotKey:       req.Notkey,
+		TabularFlag:  req.Tabularflag,
 	})
 	if err0 != nil {
 		return &types.CommonRes{

+ 2 - 2
jyBXBase/api/internal/logic/checksearchlogic.go

@@ -33,7 +33,7 @@ func (l *CheckSearchLogic) CheckSearch(req *types.AddSearch) (resp *types.Common
 		Keywords:     req.Keywords,
 		PublishTime:  req.Publishtime,
 		Area:         req.Area,
-		Provincial:   req.Province,
+		City:         req.City,
 		Subtype:      req.Subtype,
 		MinPrice:     req.Minprice,
 		MaxPrice:     req.Maxprice,
@@ -42,7 +42,7 @@ func (l *CheckSearchLogic) CheckSearch(req *types.AddSearch) (resp *types.Common
 		BuyerClass:   req.Buyerclass,
 		HasBuyerTel:  req.Hasbuyertel,
 		HasWinnerTel: req.Haswinnertel,
-		Attachment:   req.Attachment,
+		FileExists:   req.FileExists,
 		NotKey:       req.Notkey,
 		TabularFlag:  req.Tabularflag,
 	})

+ 14 - 14
jyBXBase/api/internal/types/types.go

@@ -47,26 +47,26 @@ type ShowSearch struct {
 }
 
 type DelSearch struct {
-	Id string `header:"id"`
+	Id string `json:"id"`
 }
 
 type AddSearch struct {
 	UserId       string `header:"userId"`
 	Type         string `header:"type,,optional"`
-	Keywords     string `json:"keywords"`             //搜索词
+	Keywords     string `json:"searchvalue"`          //搜索词
 	Publishtime  string `json:"publishtime,optional"` //发布时间
-	Province     string `json:"province,optional"`
-	Area         string `json:"area,optional"`         //地区
-	Subtype      string `json:"subtype,optional"`      //信息类型
-	Minprice     string `json:"minprice,optional"`     //最低价格
-	Maxprice     string `json:"maxprice,optional"`     //最高价格
-	Industry     string `json:"industry,optional"`     //选中的行业
-	SelectType   string `json:"selectType,optional"`   //标题 or 全文
-	Buyerclass   string `json:"buyerclass,optional"`   //采购单位行业
-	Hasbuyertel  string `json:"hasbuyertel,optional"`  //是否有采购电话
-	Haswinnertel string `json:"haswinnertel,optional"` //是否有中标电话
-	Attachment   string `json:"attachment,optional"`   //附件
-	Notkey       string `json:"notkey,optional"`       //排除词
+	City         string `json:"city,optional"`        //城市
+	Area         string `json:"area,optional"`        //地区
+	Subtype      string `json:"subtype,optional"`     //信息类型
+	Minprice     string `json:"minprice,optional"`    //最低价格
+	Maxprice     string `json:"maxprice,optional"`    //最高价格
+	Industry     string `json:"industry,optional"`    //选中的行业
+	SelectType   string `json:"selectType,optional"`  //标题 or 全文
+	Buyerclass   string `json:"buyerclass,optional"`  //采购单位行业
+	Hasbuyertel  string `json:"buyertel,optional"`    //是否有采购电话
+	Haswinnertel string `json:"winnertel,optional"`   //是否有中标电话
+	FileExists   string `json:"fileExists,optional"`  //附件
+	Notkey       string `json:"notkey,optional"`      //排除词
 	Tabularflag  string `json:"tabularflag,optional"`
 }
 

+ 148 - 149
jyBXBase/rpc/bxcollection/bxcol/bxcollection.pb.go

@@ -1263,25 +1263,25 @@ type ListSearchRes struct {
 	sizeCache     protoimpl.SizeCache
 	unknownFields protoimpl.UnknownFields
 
-	UserId       string `protobuf:"bytes,1,opt,name=userId,proto3" json:"userId,omitempty"`
-	Type         string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
-	Keywords     string `protobuf:"bytes,3,opt,name=keywords,proto3" json:"keywords,omitempty"`          //搜索词
-	PublishTime  string `protobuf:"bytes,4,opt,name=publishTime,proto3" json:"publishTime,omitempty"`    //发布时间
-	Area         string `protobuf:"bytes,5,opt,name=area,proto3" json:"area,omitempty"`                  //地区
-	Subtype      string `protobuf:"bytes,6,opt,name=subtype,proto3" json:"subtype,omitempty"`            //信息类型
-	MinPrice     string `protobuf:"bytes,7,opt,name=minPrice,proto3" json:"minPrice,omitempty"`          //最低价格
-	MaxPrice     string `protobuf:"bytes,8,opt,name=maxPrice,proto3" json:"maxPrice,omitempty"`          //最高价格
-	Industry     string `protobuf:"bytes,9,opt,name=industry,proto3" json:"industry,omitempty"`          //选中的行业
-	SelectType   string `protobuf:"bytes,10,opt,name=selectType,proto3" json:"selectType,omitempty"`     //标题 or 全文
-	BuyerClass   string `protobuf:"bytes,11,opt,name=buyerClass,proto3" json:"buyerClass,omitempty"`     //采购单位行业
-	HasBuyerTel  string `protobuf:"bytes,12,opt,name=hasBuyerTel,proto3" json:"hasBuyerTel,omitempty"`   //是否有采购电话
-	HasWinnerTel string `protobuf:"bytes,13,opt,name=hasWinnerTel,proto3" json:"hasWinnerTel,omitempty"` //是否有中标电话
-	Attachment   string `protobuf:"bytes,14,opt,name=attachment,proto3" json:"attachment,omitempty"`     //附件
-	NotKey       string `protobuf:"bytes,15,opt,name=notKey,proto3" json:"notKey,omitempty"`             //排除词
-	Provincial   string `protobuf:"bytes,16,opt,name=provincial,proto3" json:"provincial,omitempty"`
-	Id           string `protobuf:"bytes,17,opt,name=id,proto3" json:"id,omitempty"`
-	IsPay        bool   `protobuf:"varint,18,opt,name=isPay,proto3" json:"isPay,omitempty"`
-	Tabularflag  string `protobuf:"bytes,19,opt,name=tabularflag,proto3" json:"tabularflag,omitempty"`
+	UserId      string `protobuf:"bytes,1,opt,name=userId,proto3" json:"userId,omitempty"`
+	Type        string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
+	Searchvalue string `protobuf:"bytes,3,opt,name=searchvalue,proto3" json:"searchvalue,omitempty"` //搜索词
+	Publishtime string `protobuf:"bytes,4,opt,name=publishtime,proto3" json:"publishtime,omitempty"` //发布时间
+	Area        string `protobuf:"bytes,5,opt,name=area,proto3" json:"area,omitempty"`               //地区
+	Subtype     string `protobuf:"bytes,6,opt,name=subtype,proto3" json:"subtype,omitempty"`         //信息类型
+	Minprice    string `protobuf:"bytes,7,opt,name=minprice,proto3" json:"minprice,omitempty"`       //最低价格
+	Maxprice    string `protobuf:"bytes,8,opt,name=maxprice,proto3" json:"maxprice,omitempty"`       //最高价格
+	Industry    string `protobuf:"bytes,9,opt,name=industry,proto3" json:"industry,omitempty"`       //选中的行业
+	SelectType  string `protobuf:"bytes,10,opt,name=selectType,proto3" json:"selectType,omitempty"`  //标题 or 全文
+	Buyerclass  string `protobuf:"bytes,11,opt,name=buyerclass,proto3" json:"buyerclass,omitempty"`  //采购单位行业
+	Buyertel    string `protobuf:"bytes,12,opt,name=buyertel,proto3" json:"buyertel,omitempty"`      //是否有采购电话
+	Winnertel   string `protobuf:"bytes,13,opt,name=winnertel,proto3" json:"winnertel,omitempty"`    //是否有中标电话
+	FileExists  string `protobuf:"bytes,14,opt,name=fileExists,proto3" json:"fileExists,omitempty"`  //附件
+	NotKey      string `protobuf:"bytes,15,opt,name=notKey,proto3" json:"notKey,omitempty"`          //排除词
+	City        string `protobuf:"bytes,16,opt,name=city,proto3" json:"city,omitempty"`
+	Id          string `protobuf:"bytes,17,opt,name=id,proto3" json:"id,omitempty"`
+	IsPay       bool   `protobuf:"varint,18,opt,name=isPay,proto3" json:"isPay,omitempty"`
+	Tabularflag string `protobuf:"bytes,19,opt,name=tabularflag,proto3" json:"tabularflag,omitempty"`
 }
 
 func (x *ListSearchRes) Reset() {
@@ -1330,16 +1330,16 @@ func (x *ListSearchRes) GetType() string {
 	return ""
 }
 
-func (x *ListSearchRes) GetKeywords() string {
+func (x *ListSearchRes) GetSearchvalue() string {
 	if x != nil {
-		return x.Keywords
+		return x.Searchvalue
 	}
 	return ""
 }
 
-func (x *ListSearchRes) GetPublishTime() string {
+func (x *ListSearchRes) GetPublishtime() string {
 	if x != nil {
-		return x.PublishTime
+		return x.Publishtime
 	}
 	return ""
 }
@@ -1358,16 +1358,16 @@ func (x *ListSearchRes) GetSubtype() string {
 	return ""
 }
 
-func (x *ListSearchRes) GetMinPrice() string {
+func (x *ListSearchRes) GetMinprice() string {
 	if x != nil {
-		return x.MinPrice
+		return x.Minprice
 	}
 	return ""
 }
 
-func (x *ListSearchRes) GetMaxPrice() string {
+func (x *ListSearchRes) GetMaxprice() string {
 	if x != nil {
-		return x.MaxPrice
+		return x.Maxprice
 	}
 	return ""
 }
@@ -1386,30 +1386,30 @@ func (x *ListSearchRes) GetSelectType() string {
 	return ""
 }
 
-func (x *ListSearchRes) GetBuyerClass() string {
+func (x *ListSearchRes) GetBuyerclass() string {
 	if x != nil {
-		return x.BuyerClass
+		return x.Buyerclass
 	}
 	return ""
 }
 
-func (x *ListSearchRes) GetHasBuyerTel() string {
+func (x *ListSearchRes) GetBuyertel() string {
 	if x != nil {
-		return x.HasBuyerTel
+		return x.Buyertel
 	}
 	return ""
 }
 
-func (x *ListSearchRes) GetHasWinnerTel() string {
+func (x *ListSearchRes) GetWinnertel() string {
 	if x != nil {
-		return x.HasWinnerTel
+		return x.Winnertel
 	}
 	return ""
 }
 
-func (x *ListSearchRes) GetAttachment() string {
+func (x *ListSearchRes) GetFileExists() string {
 	if x != nil {
-		return x.Attachment
+		return x.FileExists
 	}
 	return ""
 }
@@ -1421,9 +1421,9 @@ func (x *ListSearchRes) GetNotKey() string {
 	return ""
 }
 
-func (x *ListSearchRes) GetProvincial() string {
+func (x *ListSearchRes) GetCity() string {
 	if x != nil {
-		return x.Provincial
+		return x.City
 	}
 	return ""
 }
@@ -1467,9 +1467,9 @@ type AddSearchReq struct {
 	BuyerClass   string `protobuf:"bytes,11,opt,name=buyerClass,proto3" json:"buyerClass,omitempty"`     //采购单位行业
 	HasBuyerTel  string `protobuf:"bytes,12,opt,name=hasBuyerTel,proto3" json:"hasBuyerTel,omitempty"`   //是否有采购电话
 	HasWinnerTel string `protobuf:"bytes,13,opt,name=hasWinnerTel,proto3" json:"hasWinnerTel,omitempty"` //是否有中标电话
-	Attachment   string `protobuf:"bytes,14,opt,name=attachment,proto3" json:"attachment,omitempty"`     //附件
+	FileExists   string `protobuf:"bytes,14,opt,name=fileExists,proto3" json:"fileExists,omitempty"`     //附件
 	NotKey       string `protobuf:"bytes,15,opt,name=notKey,proto3" json:"notKey,omitempty"`             //排除词
-	Provincial   string `protobuf:"bytes,16,opt,name=provincial,proto3" json:"provincial,omitempty"`
+	City         string `protobuf:"bytes,16,opt,name=city,proto3" json:"city,omitempty"`
 	TabularFlag  string `protobuf:"bytes,17,opt,name=tabularFlag,proto3" json:"tabularFlag,omitempty"`
 }
 
@@ -1596,9 +1596,9 @@ func (x *AddSearchReq) GetHasWinnerTel() string {
 	return ""
 }
 
-func (x *AddSearchReq) GetAttachment() string {
+func (x *AddSearchReq) GetFileExists() string {
 	if x != nil {
-		return x.Attachment
+		return x.FileExists
 	}
 	return ""
 }
@@ -1610,9 +1610,9 @@ func (x *AddSearchReq) GetNotKey() string {
 	return ""
 }
 
-func (x *AddSearchReq) GetProvincial() string {
+func (x *AddSearchReq) GetCity() string {
 	if x != nil {
-		return x.Provincial
+		return x.City
 	}
 	return ""
 }
@@ -1859,115 +1859,114 @@ var file_bxcollection_proto_rawDesc = []byte{
 	0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x28, 0x0a, 0x04, 0x64, 0x61, 0x74,
 	0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e,
 	0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x52, 0x04, 0x64,
-	0x61, 0x74, 0x61, 0x22, 0xa1, 0x04, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x61, 0x72,
+	0x61, 0x74, 0x61, 0x22, 0x8f, 0x04, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x61, 0x72,
 	0x63, 0x68, 0x52, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18,
 	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a,
 	0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70,
-	0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x03, 0x20,
-	0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x20, 0x0a,
-	0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
-	0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x12,
-	0x12, 0x0a, 0x04, 0x61, 0x72, 0x65, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61,
-	0x72, 0x65, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06,
-	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a,
-	0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
-	0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78,
-	0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x78,
-	0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x64, 0x75, 0x73, 0x74, 0x72,
-	0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x64, 0x75, 0x73, 0x74, 0x72,
-	0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18,
-	0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70,
-	0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x79, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x18,
-	0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x79, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x73,
-	0x73, 0x12, 0x20, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x42, 0x75, 0x79, 0x65, 0x72, 0x54, 0x65, 0x6c,
-	0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x68, 0x61, 0x73, 0x42, 0x75, 0x79, 0x65, 0x72,
-	0x54, 0x65, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x68, 0x61, 0x73, 0x57, 0x69, 0x6e, 0x6e, 0x65, 0x72,
-	0x54, 0x65, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x61, 0x73, 0x57, 0x69,
-	0x6e, 0x6e, 0x65, 0x72, 0x54, 0x65, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63,
-	0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x74, 0x74,
-	0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x4b, 0x65,
-	0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x74, 0x4b, 0x65, 0x79, 0x12,
-	0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x63, 0x69, 0x61, 0x6c, 0x18, 0x10, 0x20,
-	0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x63, 0x69, 0x61, 0x6c, 0x12,
-	0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12,
-	0x14, 0x0a, 0x05, 0x69, 0x73, 0x50, 0x61, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05,
-	0x69, 0x73, 0x50, 0x61, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x75, 0x6c, 0x61, 0x72,
-	0x66, 0x6c, 0x61, 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x61, 0x62, 0x75,
-	0x6c, 0x61, 0x72, 0x66, 0x6c, 0x61, 0x67, 0x22, 0xfa, 0x03, 0x0a, 0x0c, 0x41, 0x64, 0x64, 0x53,
-	0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72,
-	0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
-	0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
-	0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73,
-	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73,
-	0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18,
-	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x69,
-	0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x65, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x04, 0x61, 0x72, 0x65, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70,
-	0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65,
-	0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01,
-	0x28, 0x09, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08,
-	0x6d, 0x61, 0x78, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
-	0x6d, 0x61, 0x78, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x64, 0x75,
-	0x73, 0x74, 0x72, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x64, 0x75,
-	0x73, 0x74, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x54, 0x79,
-	0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74,
-	0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x79, 0x65, 0x72, 0x43, 0x6c, 0x61,
-	0x73, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x79, 0x65, 0x72, 0x43,
-	0x6c, 0x61, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x42, 0x75, 0x79, 0x65, 0x72,
-	0x54, 0x65, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x68, 0x61, 0x73, 0x42, 0x75,
-	0x79, 0x65, 0x72, 0x54, 0x65, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x68, 0x61, 0x73, 0x57, 0x69, 0x6e,
-	0x6e, 0x65, 0x72, 0x54, 0x65, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x61,
-	0x73, 0x57, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x54, 0x65, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x74,
-	0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
-	0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f,
-	0x74, 0x4b, 0x65, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x74, 0x4b,
-	0x65, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x63, 0x69, 0x61, 0x6c,
-	0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x63, 0x69,
-	0x61, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x75, 0x6c, 0x61, 0x72, 0x46, 0x6c, 0x61,
-	0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x61, 0x62, 0x75, 0x6c, 0x61, 0x72,
-	0x46, 0x6c, 0x61, 0x67, 0x22, 0x1e, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x53, 0x65, 0x61, 0x72, 0x63,
-	0x68, 0x52, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x02, 0x69, 0x64, 0x22, 0x3f, 0x0a, 0x09, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65,
-	0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x72, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20,
-	0x01, 0x28, 0x03, 0x52, 0x07, 0x65, 0x72, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x0a, 0x07,
-	0x65, 0x72, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65,
-	0x72, 0x72, 0x4d, 0x73, 0x67, 0x32, 0xb5, 0x04, 0x0a, 0x05, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x12,
-	0x32, 0x0a, 0x08, 0x41, 0x64, 0x64, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x12, 0x2e, 0x62, 0x78,
-	0x63, 0x6f, 0x6c, 0x2e, 0x41, 0x64, 0x64, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x1a,
-	0x12, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x41, 0x64, 0x64, 0x6c, 0x61, 0x62, 0x65, 0x6c,
-	0x52, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41,
-	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x47, 0x65,
-	0x74, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a,
-	0x18, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x62, 0x65, 0x6c,
-	0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x0b, 0x4c, 0x61, 0x62,
-	0x65, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c,
-	0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a,
-	0x15, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x63, 0x74,
-	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x42, 0x43, 0x41, 0x63, 0x74, 0x69,
-	0x6f, 0x6e, 0x12, 0x12, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x42, 0x43, 0x41, 0x63, 0x74,
-	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x4c,
-	0x61, 0x62, 0x65, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x3e, 0x0a,
-	0x0c, 0x49, 0x73, 0x43, 0x6f, 0x6c, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x2e,
-	0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x49, 0x73, 0x43, 0x6f, 0x6c, 0x6c, 0x41, 0x63, 0x74, 0x69,
-	0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x49, 0x73,
-	0x43, 0x6f, 0x6c, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x26, 0x0a,
-	0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x0e, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x4c, 0x69,
-	0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x0e, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x4c, 0x69,
-	0x73, 0x74, 0x52, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x61,
-	0x72, 0x63, 0x68, 0x12, 0x14, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x53, 0x68, 0x6f, 0x77,
-	0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x62, 0x78, 0x63, 0x6f,
-	0x6c, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x12,
-	0x32, 0x0a, 0x09, 0x41, 0x64, 0x64, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x13, 0x2e, 0x62,
-	0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x41, 0x64, 0x64, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65,
-	0x71, 0x1a, 0x10, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
-	0x52, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x0b, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x65, 0x61, 0x72,
-	0x63, 0x68, 0x12, 0x13, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x41, 0x64, 0x64, 0x53, 0x65,
-	0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x10, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e,
-	0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x09, 0x44, 0x65, 0x6c,
-	0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x13, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x44,
-	0x65, 0x6c, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x10, 0x2e, 0x62, 0x78,
-	0x63, 0x6f, 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x42, 0x09, 0x5a,
-	0x07, 0x2e, 0x2f, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+	0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x76, 0x61, 0x6c, 0x75, 0x65,
+	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x76, 0x61,
+	0x6c, 0x75, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x74, 0x69,
+	0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73,
+	0x68, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x65, 0x61, 0x18, 0x05, 0x20,
+	0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, 0x65, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62,
+	0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x74,
+	0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18,
+	0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12,
+	0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69,
+	0x6e, 0x64, 0x75, 0x73, 0x74, 0x72, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69,
+	0x6e, 0x64, 0x75, 0x73, 0x74, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x6c, 0x65, 0x63,
+	0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x6c,
+	0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x79, 0x65, 0x72,
+	0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x79,
+	0x65, 0x72, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x75, 0x79, 0x65, 0x72,
+	0x74, 0x65, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x75, 0x79, 0x65, 0x72,
+	0x74, 0x65, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x74, 0x65, 0x6c,
+	0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x74, 0x65,
+	0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18,
+	0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x45, 0x78, 0x69, 0x73, 0x74,
+	0x73, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x4b, 0x65, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x06, 0x6e, 0x6f, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x74,
+	0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x69, 0x74, 0x79, 0x12, 0x0e, 0x0a,
+	0x02, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a,
+	0x05, 0x69, 0x73, 0x50, 0x61, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73,
+	0x50, 0x61, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x75, 0x6c, 0x61, 0x72, 0x66, 0x6c,
+	0x61, 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x61, 0x62, 0x75, 0x6c, 0x61,
+	0x72, 0x66, 0x6c, 0x61, 0x67, 0x22, 0xee, 0x03, 0x0a, 0x0c, 0x41, 0x64, 0x64, 0x53, 0x65, 0x61,
+	0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
+	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12,
+	0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79,
+	0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x03,
+	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x20,
+	0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20,
+	0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65,
+	0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x65, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
+	0x61, 0x72, 0x65, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18,
+	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a,
+	0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
+	0x52, 0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61,
+	0x78, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61,
+	0x78, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x64, 0x75, 0x73, 0x74,
+	0x72, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x64, 0x75, 0x73, 0x74,
+	0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65,
+	0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x54, 0x79,
+	0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x79, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x73, 0x73,
+	0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x79, 0x65, 0x72, 0x43, 0x6c, 0x61,
+	0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x42, 0x75, 0x79, 0x65, 0x72, 0x54, 0x65,
+	0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x68, 0x61, 0x73, 0x42, 0x75, 0x79, 0x65,
+	0x72, 0x54, 0x65, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x68, 0x61, 0x73, 0x57, 0x69, 0x6e, 0x6e, 0x65,
+	0x72, 0x54, 0x65, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x61, 0x73, 0x57,
+	0x69, 0x6e, 0x6e, 0x65, 0x72, 0x54, 0x65, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65,
+	0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x69,
+	0x6c, 0x65, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x4b,
+	0x65, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x74, 0x4b, 0x65, 0x79,
+	0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x74, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
+	0x63, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x75, 0x6c, 0x61, 0x72, 0x46,
+	0x6c, 0x61, 0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x61, 0x62, 0x75, 0x6c,
+	0x61, 0x72, 0x46, 0x6c, 0x61, 0x67, 0x22, 0x1e, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x53, 0x65, 0x61,
+	0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x3f, 0x0a, 0x09, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
+	0x52, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x72, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18,
+	0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x65, 0x72, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x17,
+	0x0a, 0x07, 0x65, 0x72, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+	0x06, 0x65, 0x72, 0x72, 0x4d, 0x73, 0x67, 0x32, 0xb5, 0x04, 0x0a, 0x05, 0x62, 0x78, 0x63, 0x6f,
+	0x6c, 0x12, 0x32, 0x0a, 0x08, 0x41, 0x64, 0x64, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x12, 0x2e,
+	0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x41, 0x64, 0x64, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x52, 0x65,
+	0x71, 0x1a, 0x12, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x41, 0x64, 0x64, 0x6c, 0x61, 0x62,
+	0x65, 0x6c, 0x52, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x62, 0x65,
+	0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e,
+	0x47, 0x65, 0x74, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
+	0x71, 0x1a, 0x18, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x62,
+	0x65, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x0b, 0x4c,
+	0x61, 0x62, 0x65, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x2e, 0x62, 0x78, 0x63,
+	0x6f, 0x6c, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
+	0x71, 0x1a, 0x15, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41,
+	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x42, 0x43, 0x41, 0x63,
+	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x42, 0x43, 0x41,
+	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c,
+	0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12,
+	0x3e, 0x0a, 0x0c, 0x49, 0x73, 0x43, 0x6f, 0x6c, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
+	0x16, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x49, 0x73, 0x43, 0x6f, 0x6c, 0x6c, 0x41, 0x63,
+	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e,
+	0x49, 0x73, 0x43, 0x6f, 0x6c, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12,
+	0x26, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x0e, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e,
+	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x0e, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e,
+	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x53,
+	0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x14, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x53, 0x68,
+	0x6f, 0x77, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x62, 0x78,
+	0x63, 0x6f, 0x6c, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65,
+	0x73, 0x12, 0x32, 0x0a, 0x09, 0x41, 0x64, 0x64, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x13,
+	0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x41, 0x64, 0x64, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68,
+	0x52, 0x65, 0x71, 0x1a, 0x10, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x6d,
+	0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x0b, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x65,
+	0x61, 0x72, 0x63, 0x68, 0x12, 0x13, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x41, 0x64, 0x64,
+	0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x10, 0x2e, 0x62, 0x78, 0x63, 0x6f,
+	0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x09, 0x44,
+	0x65, 0x6c, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x13, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x6c,
+	0x2e, 0x44, 0x65, 0x6c, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x10, 0x2e,
+	0x62, 0x78, 0x63, 0x6f, 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x42,
+	0x09, 0x5a, 0x07, 0x2e, 0x2f, 0x62, 0x78, 0x63, 0x6f, 0x6c, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
+	0x6f, 0x33,
 }
 
 var (

+ 12 - 12
jyBXBase/rpc/bxcollection/bxcollection.proto

@@ -112,20 +112,20 @@ message ShowSearchRes{
 message ListSearchRes{
   string userId =1;
   string type =2;
-  string keywords =3;                   //搜索词
-  string publishTime=4;   //发布时间
+  string searchvalue =3;                   //搜索词
+  string publishtime=4;   //发布时间
   string area =5;       //地区
   string subtype =6;    //信息类型
-  string minPrice =7; //最低价格
-  string maxPrice =8;//最高价格
+  string minprice =7; //最低价格
+  string maxprice =8;//最高价格
   string industry =9;//选中的行业
   string selectType =10;//标题 or 全文
-  string buyerClass =11;//采购单位行业
-  string hasBuyerTel =12;//是否有采购电话
-  string hasWinnerTel =13;//是否有中标电话
-  string attachment =14;//附件
-  string notKey =15;//排除词
-  string provincial=16;
+  string buyerclass =11;//采购单位行业
+  string buyertel =12;//是否有采购电话
+  string winnertel =13;//是否有中标电话
+  string fileExists =14;//附件
+  string notkey =15;//排除词
+  string city=16;
   string id =17;
   bool isPay =18;
   string tabularflag =19;
@@ -145,9 +145,9 @@ message AddSearchReq{
   string buyerClass =11;//采购单位行业
   string hasBuyerTel =12;//是否有采购电话
   string hasWinnerTel =13;//是否有中标电话
-  string attachment =14;//附件
+  string fileExists =14;//附件
   string notKey =15;//排除词
-  string  provincial=16;
+  string  city=16;
   string tabularFlag =17;
 }
 

+ 6 - 5
jyBXBase/rpc/bxcollection/internal/logic/addsearchlogic.go

@@ -36,24 +36,25 @@ func (l *AddSearchLogic) AddSearch(in *bxcol.AddSearchReq) (res *bxcol.CommonRes
 		res.ErrMsg = "用户未登录"
 		return
 	}
-
+	in.NotKey = strings.Replace(in.NotKey, " ", ",", -1)
 	in.Keywords = strings.Replace(in.Keywords, " ", ",", -1)
 	newData["keywords"] = in.Keywords
 	newData["type"] = in.Type
 	newData["publish_time"] = in.PublishTime
 	newData["area"] = in.Area
+	newData["city"] = in.City
 	newData["subtype"] = in.Subtype
 	newData["min_price"] = in.MinPrice
 	newData["max_price"] = in.MaxPrice
 	newData["industry"] = in.Industry
 	newData["select_type"] = in.SelectType
 	newData["buyer_class"] = in.BuyerClass
-	newData["has_buyer_tel"] = in.HasBuyerTel
-	newData["has_winner_tel"] = in.HasWinnerTel
-	newData["attachment"] = in.Attachment
+	newData["buyer_tel"] = in.HasBuyerTel
+	newData["winner_tel"] = in.HasWinnerTel
+	newData["file_exists"] = in.FileExists
 	newData["not_key"] = in.NotKey
 	newData["tabular_flag"] = in.TabularFlag
-	newData["creation_time"] = time.Now()
+	newData["creation_time"] = time.Now().Unix()
 	newData["user_id"] = in.UserId
 	model.Mgo.Save("search_condition", newData)
 	return

+ 17 - 34
jyBXBase/rpc/bxcollection/internal/logic/checksearchlogic.go

@@ -40,6 +40,7 @@ func (l *CheckSearchLogic) CheckSearch(in *bxcol.AddSearchReq) (res *bxcol.Commo
 		res.ErrMsg = "请先输入关键词"
 		return
 	}
+	in.NotKey = strings.Replace(in.NotKey, " ", ",", -1)
 	in.Keywords = strings.Replace(in.Keywords, " ", ",", -1)
 	query := map[string]interface{}{
 		"user_id": in.UserId,
@@ -50,23 +51,6 @@ func (l *CheckSearchLogic) CheckSearch(in *bxcol.AddSearchReq) (res *bxcol.Commo
 		res.ErrMsg = "查询失败"
 		return
 	}
-	newData := make(map[string]interface{})
-	newData["keywords"] = in.Keywords
-	newData["type"] = in.Type
-	newData["publish_time"] = in.PublishTime
-	newData["area"] = in.Area
-	newData["provincial"] = in.Provincial
-	newData["subtype"] = in.Subtype
-	newData["min_price"] = in.MinPrice
-	newData["max_price"] = in.MaxPrice
-	newData["industry"] = in.Industry
-	newData["select_type"] = in.SelectType
-	newData["buyer_class"] = in.BuyerClass
-	newData["has_buyer_tel"] = in.HasBuyerTel
-	newData["has_winner_tel"] = in.HasWinnerTel
-	newData["attachment"] = in.Attachment
-	newData["not_key"] = in.NotKey
-	mapStr := common.MapToJson(newData)
 	if allData != nil {
 		if len(*allData) >= 10 {
 			res.ErrCode = 1
@@ -75,23 +59,22 @@ func (l *CheckSearchLogic) CheckSearch(in *bxcol.AddSearchReq) (res *bxcol.Commo
 		}
 		//判重
 		for _, vlu := range *allData {
-			oldData := make(map[string]interface{})
-			oldData["keywords"] = common.InterfaceToStr(vlu["keywords"])
-			oldData["type"] = common.InterfaceToStr(vlu["type"])
-			oldData["publish_time"] = common.InterfaceToStr(vlu["publish_time"])
-			oldData["area"] = common.InterfaceToStr(vlu["area"])
-			oldData["provincial"] = common.InterfaceToStr(vlu["provincial"])
-			oldData["subtype"] = common.InterfaceToStr(vlu["subtype"])
-			oldData["min_price"] = common.InterfaceToStr(vlu["min_price"])
-			oldData["max_price"] = common.InterfaceToStr(vlu["max_price"])
-			oldData["industry"] = common.InterfaceToStr(vlu["industry"])
-			oldData["select_type"] = common.InterfaceToStr(vlu["select_type"])
-			oldData["buyer_class"] = common.InterfaceToStr(vlu["buyer_class"])
-			oldData["has_buyer_tel"] = common.InterfaceToStr(vlu["has_buyer_tel"])
-			oldData["has_winner_tel"] = common.InterfaceToStr(vlu["has_winner_tel"])
-			oldData["attachment"] = common.InterfaceToStr(vlu["attachment"])
-			oldData["not_key"] = common.InterfaceToStr(vlu["not_key"])
-			if common.MapToJson(oldData) == mapStr {
+			if in.Keywords == common.InterfaceToStr(vlu["keywords"]) &&
+				in.Type == common.InterfaceToStr(vlu["type"]) &&
+				in.PublishTime == common.InterfaceToStr(vlu["publish_time"]) &&
+				in.Area == common.InterfaceToStr(vlu["area"]) &&
+				in.City == common.InterfaceToStr(vlu["city"]) &&
+				in.Subtype == common.InterfaceToStr(vlu["subtype"]) &&
+				in.MinPrice == common.InterfaceToStr(vlu["min_price"]) &&
+				in.MaxPrice == common.InterfaceToStr(vlu["max_price"]) &&
+				in.Industry == common.InterfaceToStr(vlu["industry"]) &&
+				in.SelectType == common.InterfaceToStr(vlu["select_type"]) &&
+				in.BuyerClass == common.InterfaceToStr(vlu["buyer_class"]) &&
+				in.HasBuyerTel == common.InterfaceToStr(vlu["buyer_tel"]) &&
+				in.HasWinnerTel == common.InterfaceToStr(vlu["winner_tel"]) &&
+				in.FileExists == common.InterfaceToStr(vlu["file_exists"]) &&
+				in.NotKey == common.InterfaceToStr(vlu["not_key"]) &&
+				in.TabularFlag == common.InterfaceToStr(vlu["tabular_flag"]) {
 				res.ErrCode = 1
 				res.ErrMsg = "该条件已保存,无需重复添加。"
 				return

+ 15 - 6
jyBXBase/rpc/bxcollection/internal/logic/delsearchlogic.go

@@ -2,13 +2,12 @@ package logic
 
 import (
 	"context"
+	"github.com/zeromicro/go-zero/core/logx"
+	"go.mongodb.org/mongo-driver/bson/primitive"
 	"jyBXBase/rpc/bxcollection/bxcol"
+	"jyBXBase/rpc/bxcollection/internal/svc"
 	"jyBXBase/rpc/bxcollection/model"
 	"strings"
-
-	"jyBXBase/rpc/bxcollection/internal/svc"
-
-	"github.com/zeromicro/go-zero/core/logx"
 )
 
 type DelSearchLogic struct {
@@ -30,10 +29,20 @@ func (l *DelSearchLogic) DelSearch(in *bxcol.DelSearchReq) (res *bxcol.CommonRes
 	// todo: add your logic here and delete this line
 	res = new(bxcol.CommonRes)
 	delId := strings.Split(in.Id, ",")
+	if len(delId) < 1 {
+		return
+	}
+	var allDelId []primitive.ObjectID
+	for _, v := range delId {
+		ss, _ := primitive.ObjectIDFromHex(v)
+		allDelId = append(allDelId, ss)
+	}
+
 	query := map[string]interface{}{
-		"_id": map[string]interface{}{"$in": delId},
+		"_id": map[string]interface{}{"$in": allDelId},
 	}
-	if !model.Mgo.Del("search_condition", query) {
+	delCount := model.Mgo.Delete("search_condition", query)
+	if delCount == 0 {
 		res.ErrCode = 1
 		res.ErrMsg = "删除失败"
 	}

+ 12 - 11
jyBXBase/rpc/bxcollection/internal/logic/showsearchlogic.go

@@ -50,24 +50,25 @@ func (l *ShowSearchLogic) ShowSearch(in *bxcol.ShowSearchReq) (res *bxcol.ShowSe
 		for _, vlu := range *allSearch {
 			var listSearch bxcol.ListSearchRes
 			listSearch.Id = common.InterfaceToStr(vlu["_id"])
-			listSearch.Keywords = common.InterfaceToStr(vlu["keywords"])
-			listSearch.PublishTime = common.InterfaceToStr(vlu["publish_time"])
+			listSearch.Searchvalue = common.InterfaceToStr(vlu["keywords"])
+			listSearch.Publishtime = common.InterfaceToStr(vlu["publish_time"])
 			listSearch.Area = common.InterfaceToStr(vlu["area"])
-			listSearch.Provincial = common.InterfaceToStr(vlu["provincial"])
+			listSearch.City = common.InterfaceToStr(vlu["city"])
 			listSearch.Subtype = common.InterfaceToStr(vlu["subtype"])
-			listSearch.MinPrice = common.InterfaceToStr(vlu["min_price"])
-			listSearch.MaxPrice = common.InterfaceToStr(vlu["max_price"])
+			listSearch.Minprice = common.InterfaceToStr(vlu["min_price"])
+			listSearch.Maxprice = common.InterfaceToStr(vlu["max_price"])
 			listSearch.Industry = common.InterfaceToStr(vlu["industry"])
 			listSearch.SelectType = common.InterfaceToStr(vlu["select_type"])
-			listSearch.BuyerClass = common.InterfaceToStr(vlu["buyer_class"])
-			listSearch.HasBuyerTel = common.InterfaceToStr(vlu["has_buyer_tel"])
-			listSearch.HasWinnerTel = common.InterfaceToStr(vlu["has_winner_tel"])
-			listSearch.Attachment = common.InterfaceToStr(vlu["attachment"])
+			listSearch.Buyerclass = common.InterfaceToStr(vlu["buyer_class"])
+			listSearch.Buyertel = common.InterfaceToStr(vlu["buyer_tel"])
+			listSearch.Winnertel = common.InterfaceToStr(vlu["winner_tel"])
+			listSearch.FileExists = common.InterfaceToStr(vlu["attachment"])
 			listSearch.NotKey = common.InterfaceToStr(vlu["not_key"])
+			listSearch.Tabularflag = common.InterfaceToStr(vlu["tabular_flag"])
 			//ppa,buyer,winner,agency
 			if (listSearch.SelectType != "title,content" && listSearch.SelectType != "title" && listSearch.SelectType != "content") ||
-				(listSearch.PublishTime != "lately-7" && listSearch.PublishTime != "thisyear" && listSearch.PublishTime != "lately-30") ||
-				listSearch.Area != "" || listSearch.NotKey != "" || listSearch.HasWinnerTel != "" || listSearch.HasBuyerTel != "" || listSearch.BuyerClass != "Y" {
+				(listSearch.Publishtime != "lately-7" && listSearch.Publishtime != "thisyear" && listSearch.Publishtime != "lately-30") ||
+				listSearch.City != "" || listSearch.NotKey != "" || listSearch.Winnertel != "" || listSearch.Buyertel != "" || listSearch.Tabularflag != "Y" {
 				listSearch.IsPay = true
 			}
 			data = append(data, &listSearch)