Browse Source

feat:更新

wangshan 2 years ago
parent
commit
57317c47a9

+ 21 - 21
jyBXCore/api/bxcore.api

@@ -62,12 +62,12 @@ type (
 		EntId        int64  `header:"entId,optional"`     // 企业id
 		EntUserId    int64  `header:"entUserId,optional"` // 企业下用户id
 		PositionType int64  `header:"positionType"`       // 职位类型 0个人 1企业
-		PositionId   int64  `header:"positionId"`
+		PositionId   int64  `header:"positionId"`//职位id
 		AccountId    int64  `header:"accountId,optional"` //账户id
 		MgoUserId    string `header:"mgoUserId,optional"` //原userId
-		AppId        string `header:"appId,optional"`
-		UserId       string `header:"userId,optional"`
-		NewUserId    int64  `header:"newUserId,optional"`
+		AppId        string `header:"appId,optional"`//剑鱼10000
+		UserId       string `header:"userId,optional"`//用户id
+		NewUserId    int64  `header:"newUserId,optional"`//base_user_id
 	}
 	// 列表数据参标信息请求参数
 	participateShowReq {
@@ -130,26 +130,26 @@ type (
 	//用户参标、终止参标及划转接口开发
 	participateActionReq {
 		baseParam
-		BidId       string `json:"bidId,optional"`       //招标信息id ,已加密。多个,号隔开
-		ToEntUserId string `json:"toEntUserId,optional"` //划转对象的企业用户id
-		IsRetain    bool   `json:"isRetain,optional"`    //是否保留原跟踪人
-		ActionType  string `path:"actionType"`           //in:参标;out:终止参标;transfer:划转
+		BidId       string `json:"bidId,optional"`                     //招标信息id ,已加密。多个,号隔开
+		ToEntUserId string `json:"toEntUserId,optional"`               //划转对象的企业用户id
+		IsRetain    bool   `json:"isRetain,optional"`                  //是否保留原跟踪人
+		ActionType  string `path:"actionType,options=in|out|transfer"` //in:参标;out:终止参标;transfer:划转
 	}
 	//我的参标项目列表|企业参标项目列表
 	participateListReq {
 		baseParam
-		Area          string `json:"area,optional"`          //省份
-		City          string `json:"city,optional"`          //城市
-		BidTime       string `json:"bidTime,optional"`       //招标日期:开始时间-结束时间
-		BidEndTime    string `json:"bidEndTime,optional"`    //投标截止日期:格式同上
-		BidOpenTime   string `json:"bidOpenTime,optional"`   //开标时间:格式同上
-		BidEndStatus  int    `json:"bidEndStatus,optional"`  //投标截止状态:1:未截止;2:已截止;3:终止参标
-		BidOpenStatus int    `json:"bidOpenStatus,optional"` //开标状态:1:已开标;2:未开标
-		Keywords      string `json:"keywords,optional"`      //查询项目名称 关键词;多个空格隔开
-		EntUserIds    string `json:"entUserIds,optional"`    //企业参标人企业用户id集合,多个,号隔开
-		PageSize      int    `json:"pageSize,default=10"`    //每页数据量
-		PageNum       int    `json:"pageNum,default=0"`      //当前页码
-		Identity      string `path:"identity"`               //我的:mine;企业:ent
+		Area          string `json:"area,optional"`             //省份
+		City          string `json:"city,optional"`             //城市
+		BidTime       string `json:"bidTime,optional"`          //招标日期:开始时间-结束时间
+		BidEndTime    string `json:"bidEndTime,optional"`       //投标截止日期:格式同上
+		BidOpenTime   string `json:"bidOpenTime,optional"`      //开标时间:格式同上
+		BidEndStatus  int64  `json:"bidEndStatus,optional"`     //投标截止状态:1:未截止;2:已截止;3:终止参标
+		BidOpenStatus int64  `json:"bidOpenStatus,optional"`    //开标状态:1:已开标;2:未开标
+		Keywords      string `json:"keywords,optional"`         //查询项目名称 关键词;多个空格隔开
+		EntUserIds    string `json:"entUserIds,optional"`       //企业参标人企业用户id集合,多个,号隔开
+		PageSize      int64  `json:"pageSize,default=10"`       //每页数据量
+		PageNum       int64  `json:"pageNum,default=0"`         //当前页码
+		Identity      string `path:"identity,options=mine|ent"` //我的:mine;企业:ent
 	}
 )
 service bxcore-api {
@@ -172,7 +172,7 @@ service bxcore-api {
 	@handler participateSetUpInfo // 参标设置信息
 	post /jybx/core/participate/setUpInfo(participateSetUpInfoReq) returns (commonResp)
 	@handler participateAction //参标|终止参标|划转项目
-	post /jybx/core/participate/:actionType(participateActionReq) returns (commonResp)
+	post /jybx/core/participate/:actionType/info(participateActionReq) returns (commonResp)
 	@handler participateList //我的参标项目列表|企业参标项目列表
 	post /jybx/core/participate/:identity/list(participateListReq) returns (commonResp)
 }

+ 1 - 1
jyBXCore/api/internal/handler/participateListHandler.go

@@ -11,7 +11,7 @@ import (
 
 func participateListHandler(svcCtx *svc.ServiceContext) http.HandlerFunc {
 	return func(w http.ResponseWriter, r *http.Request) {
-		var req types.ParticipateActionReq
+		var req types.ParticipateListReq
 		if err := httpx.Parse(r, &req); err != nil {
 			httpx.Error(w, err)
 			return

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

@@ -59,7 +59,7 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
 			},
 			{
 				Method:  http.MethodPost,
-				Path:    "/jybx/core/participate/:actionType",
+				Path:    "/jybx/core/participate/:actionType/info",
 				Handler: participateActionHandler(serverCtx),
 			},
 			{

+ 0 - 2
jyBXCore/api/internal/logic/participateActionLogic.go

@@ -55,6 +55,4 @@ func (l *ParticipateActionLogic) ParticipateAction(req *types.ParticipateActionR
 		Err_msg:  res.ErrMsg,
 		Data:     res.Data,
 	}, nil
-
-	return
 }

+ 37 - 4
jyBXCore/api/internal/logic/participateListLogic.go

@@ -2,6 +2,7 @@ package logic
 
 import (
 	"context"
+	"jyBXCore/rpc/type/bxcore"
 	"net/http"
 
 	"jyBXCore/api/internal/svc"
@@ -26,8 +27,40 @@ func NewParticipateListLogic(ctx context.Context, svcCtx *svc.ServiceContext, r
 	}
 }
 
-func (l *ParticipateListLogic) ParticipateList(req *types.ParticipateActionReq) (resp *types.CommonResp, err error) {
-	// todo: add your logic here and delete this line
-
-	return
+func (l *ParticipateListLogic) ParticipateList(req *types.ParticipateListReq) (resp *types.CommonResp, err error) {
+	res, err := l.svcCtx.BxCore.ParticipateList(l.ctx, &bxcore.ParticipateListReq{
+		Identity:      req.Identity,
+		EntId:         req.EntId,
+		EntUserId:     req.EntUserId,
+		PositionId:    req.PositionId,
+		PositionType:  req.PositionType,
+		AppId:         req.AppId,
+		MgoUserId:     req.MgoUserId,
+		AccountId:     req.AccountId,
+		UserId:        req.UserId,
+		NewUserId:     req.NewUserId,
+		Area:          req.Area,
+		City:          req.City,
+		BidTime:       req.BidTime,
+		BidEndTime:    req.BidEndTime,
+		BidOpenTime:   req.BidOpenTime,
+		BidEndStatus:  req.BidEndStatus,
+		BidOpenStatus: req.BidOpenStatus,
+		Keywords:      req.Keywords,
+		EntUserIds:    req.EntUserIds,
+		PageSize:      req.PageSize,
+		PageNum:       req.PageNum,
+	})
+	if err != nil {
+		return &types.CommonResp{
+			Err_code: res.ErrCode,
+			Err_msg:  res.ErrMsg,
+			Data:     false,
+		}, nil
+	}
+	return &types.CommonResp{
+		Err_code: res.ErrCode,
+		Err_msg:  res.ErrMsg,
+		Data:     res.Data,
+	}, nil
 }

+ 16 - 16
jyBXCore/api/internal/types/types.go

@@ -122,24 +122,24 @@ type ParticipateSetUpInfoReq struct {
 
 type ParticipateActionReq struct {
 	BaseParam
-	BidId       string `json:"bidId,optional"`       //招标信息id ,已加密。多个,号隔开
-	ToEntUserId string `json:"toEntUserId,optional"` //划转对象的企业用户id
-	IsRetain    bool   `json:"isRetain,optional"`    //是否保留原跟踪人
-	ActionType  string `path:"actionType"`           //in:参标;out:终止参标;transfer:划转
+	BidId       string `json:"bidId,optional"`                     //招标信息id ,已加密。多个,号隔开
+	ToEntUserId string `json:"toEntUserId,optional"`               //划转对象的企业用户id
+	IsRetain    bool   `json:"isRetain,optional"`                  //是否保留原跟踪人
+	ActionType  string `path:"actionType,options=in|out|transfer"` //in:参标;out:终止参标;transfer:划转
 }
 
 type ParticipateListReq struct {
 	BaseParam
-	Area          string `json:"area,optional"`          //省份
-	City          string `json:"city,optional"`          //城市
-	BidTime       string `json:"bidTime,optional"`       //招标日期:开始时间-结束时间
-	BidEndTime    string `json:"bidEndTime,optional"`    //投标截止日期:格式同上
-	BidOpenTime   string `json:"bidOpenTime,optional"`   //开标时间:格式同上
-	BidEndStatus  int    `json:"bidEndStatus,optional"`  //投标截止状态:1:未截止;2:已截止;3:终止参标
-	BidOpenStatus int    `json:"bidOpenStatus,optional"` //开标状态:1:已开标;2:未开标
-	Keywords      string `json:"keywords,optional"`      //查询项目名称 关键词;多个空格隔开
-	EntUserIds    string `json:"entUserIds,optional"`    //企业参标人企业用户id集合,多个,号隔开
-	PageSize      int    `json:"pageSize,default=10"`    //每页数据量
-	PageNum       int    `json:"pageNum,default=0"`      //当前页码
-	Identity      string `path:"identity"`               //我的:mine;企业:ent
+	Area          string `json:"area,optional"`             //省份
+	City          string `json:"city,optional"`             //城市
+	BidTime       string `json:"bidTime,optional"`          //招标日期:开始时间-结束时间
+	BidEndTime    string `json:"bidEndTime,optional"`       //投标截止日期:格式同上
+	BidOpenTime   string `json:"bidOpenTime,optional"`      //开标时间:格式同上
+	BidEndStatus  int64  `json:"bidEndStatus,optional"`     //投标截止状态:1:未截止;2:已截止;3:终止参标
+	BidOpenStatus int64  `json:"bidOpenStatus,optional"`    //开标状态:1:已开标;2:未开标
+	Keywords      string `json:"keywords,optional"`         //查询项目名称 关键词;多个空格隔开
+	EntUserIds    string `json:"entUserIds,optional"`       //企业参标人企业用户id集合,多个,号隔开
+	PageSize      int64  `json:"pageSize,default=10"`       //每页数据量
+	PageNum       int64  `json:"pageNum,default=0"`         //当前页码
+	Identity      string `path:"identity,options=mine|ent"` //我的:mine;企业:ent
 }

+ 5 - 0
jyBXCore/rpc/bxcore.proto

@@ -372,6 +372,11 @@ message ParticipateListReq{
   string entUserIds = 14;//企业参标人企业用户id集合,多个,号隔开
   int64 pageSize = 15;//每页数据量
   int64 pageNum =16;//当前页码
+  string mgoUserId = 17;  //原userId
+  string appId = 18;//剑鱼默认10000
+  string  userId = 19;//用户id
+  int64  newUserId = 20;//base_user_id 新用户id
+  int64 accountId = 21; //账户id
 }
 //参标列表
 message  ParticipateList{

+ 1 - 2
jyBXCore/rpc/internal/logic/participateinfologic.go

@@ -74,8 +74,7 @@ func (l *ParticipateInfoLogic) ParticipateInfo(in *bxcore.ParticipateInfoReq) (*
 		existList := participateService.PersonalExistProject(projectIds)
 		formatList = participateService.DetailPersonalFormat(existList, isVaild)
 	case service.PositionTypeEnt:
-		partUser := util.NewPartUserInfo(in.EntId, in.EntUserId, in.PositionId, in.PositionType)
-		isAllow := partUser.IsALLow()
+		isAllow := util.IsALLow(in.EntId)
 		existList := participateService.EntExistProject(projectIds)                  // 查询出已经存在的
 		formatList = participateService.DetailEntFormat(existList, isVaild, isAllow) // 格式化数据
 	}

+ 2 - 3
jyBXCore/rpc/internal/logic/participatelistlogic.go

@@ -2,6 +2,7 @@ package logic
 
 import (
 	"context"
+	"jyBXCore/rpc/service"
 
 	"jyBXCore/rpc/internal/svc"
 	"jyBXCore/rpc/type/bxcore"
@@ -25,7 +26,5 @@ func NewParticipateListLogic(ctx context.Context, svcCtx *svc.ServiceContext) *P
 
 //  我的参标项目列表|企业参标项目列表
 func (l *ParticipateListLogic) ParticipateList(in *bxcore.ParticipateListReq) (*bxcore.ParticipateListRes, error) {
-	// todo: add your logic here and delete this line
-
-	return &bxcore.ParticipateListRes{}, nil
+	return service.ParticipateList(in)
 }

+ 1 - 2
jyBXCore/rpc/internal/logic/participateshowlogic.go

@@ -65,8 +65,7 @@ func (l *ParticipateShowLogic) ParticipateShow(in *bxcore.ParticipateShowReq) (*
 		existList := participateService.PersonalExistProject(projectIds)
 		formatList = participateService.ListPersonalFormat(existList, infoM)
 	case service.PositionTypeEnt:
-		partUser := util.NewPartUserInfo(in.EntId, in.EntUserId, in.PositionId, in.PositionType)
-		isAllow := partUser.IsALLow()
+		isAllow := util.IsALLow(in.EntId)
 		existList := participateService.EntExistProject(projectIds)              // 查询出已经存在的
 		formatList = participateService.ListEntFormat(existList, infoM, isAllow) // 格式化数据
 	}

+ 3 - 1
jyBXCore/rpc/model/es/es.go

@@ -28,7 +28,9 @@ const (
 	BidSearchFieldOfVip     = BidSearchFieldBase + `,"buyertel","buyerperson","agency","agencytel","agencyperson","s_winner","winnertel","winnerperson","signendtime","bidendtime","projectinfo","entidlist"`            //付费列表字段
 	BidSearchFieldFile      = `,"isValidFile"`                                                                                                                                                                           //根据配置开关 选择是否显示 是否有附件提示,IC.C.FileSignBool
 	BidSearchDomainField    = BidSearchFieldOfVip + `,"purchasing"`                                                                                                                                                      //领域数据字段基本字段
-	//DefaultFields       = `"title"`                                                                                                                                                                                                      //最新招标信息
+	//DefaultFields       = `"title"`
+	IndexProjectSet = "projectset" // 项目信息es index
+	TypeProjectSet  = "projectset" // 项目信息es type                                                                                                                                                                                                  //最新招标信息
 )
 
 var (

+ 21 - 0
jyBXCore/rpc/model/es/project.go

@@ -0,0 +1,21 @@
+package es
+
+import elastic "app.yhyue.com/moapp/jybase/esv1"
+
+//项目信息 项目id
+func GetProjectInfo(id string) map[string]interface{} {
+	projectInfos := elastic.GetById(IndexProjectSet, TypeProjectSet, id)
+	if projectInfos != nil && len(*projectInfos) > 0 {
+		return (*projectInfos)[0]
+	}
+	return nil
+}
+
+//招标信息 招标信息id
+func GetBiddingInfo(id string) map[string]interface{} {
+	biddingInfos := elastic.GetById(INDEX, TYPE, id)
+	if biddingInfos != nil && len(*biddingInfos) > 0 {
+		return (*biddingInfos)[0]
+	}
+	return nil
+}

+ 45 - 3
jyBXCore/rpc/model/tidb/tidb.go

@@ -48,14 +48,14 @@ func TransferParticipateInfo(in *bxcore.ParticipateActionReq) error {
 		//查询划转人信息
 		entUserId, _ := strconv.ParseInt(in.ToEntUserId, 10, 64)
 		userInfo := IC.Middleground.UserCenter.IdentityByEntUserId(entUserId)
-		in.PositionId = userInfo.PositionId
+		positionId := userInfo.PositionId
 		content = fmt.Sprintf(content, strings.Join(fromUserNames, ","), userInfo.EntUserName)
 		//
 		//保存参标--participate_user
 		b3 = IC.BaseMysql.InsertByTx(tx, "participate_bid_records", map[string]interface{}{
 			"ent_id":         in.EntId,
-			"ent_user_id":    in.EntUserId,
-			"position_id":    in.PositionId,
+			"ent_user_id":    entUserId,
+			"position_id":    positionId,
 			"project_id":     in.BidId,
 			"record_content": content,
 			"create_date":    date.FormatDate(&now, date.Date_Full_Layout),
@@ -279,3 +279,45 @@ func GetParticipateSetInfo(in *bxcore.ParticipateSetUpInfoReq) (*bxcore.Particip
 	}
 	return nil, nil
 }
+
+//保存或更新tidb 项目信息
+func UpdateProjectInfo(id string, pInfo map[string]interface{}, bInfo map[string]interface{}) {
+	//id 项目id
+	//name 项目名称
+	//area  省份
+	//city 城市
+	//buyer 采购单位
+	//budget 预算
+	//bid_open_time  开标时间
+	//bid_time 招标时间  bidding表
+	//bid_end_time 开标结束时间  bidding表
+	//pici 批次 轮询更新数据
+	//
+	openTime := pInfo["bidopentime"]
+	pici := pInfo["pici"]
+	bidTime := bInfo["bid_time"]
+	bidEndTime := bInfo["bid_time"]
+	projectInfo := map[string]interface{}{
+		"id":            id,
+		"name":          MC.ObjToString(pInfo["projectname"]),
+		"area":          MC.ObjToString(pInfo["area"]),
+		"city":          MC.ObjToString(pInfo["city"]),
+		"buyer":         MC.ObjToString(pInfo["buyer"]),
+		"budget":        MC.Int64All(pInfo["budget"]),
+		"bid_open_time": date.FormatDateWithObj(&openTime, date.Date_Full_Layout),
+		"bid_time":      date.FormatDateWithObj(&bidTime, date.Date_Full_Layout),
+		"bid_end_time":  date.FormatDateWithObj(&bidEndTime, date.Date_Full_Layout),
+		"pici":          date.FormatDateWithObj(&pici, date.Date_Full_Layout),
+	}
+	if c := IC.BaseMysql.CountBySql(`SELECT COUNT(id) FROM project WHERE id = ?`, id); c > 0 {
+		if ok := IC.BaseMysql.Update("project", map[string]interface{}{
+			"id": id,
+		}, projectInfo); ok {
+			fmt.Errorf("项目信息更新异常", id)
+		}
+	} else {
+		if i := IC.BaseMysql.Insert("project", projectInfo); i <= 0 {
+			fmt.Errorf("项目信息插入异常", id)
+		}
+	}
+}

+ 19 - 4
jyBXCore/rpc/service/participate.go

@@ -5,12 +5,25 @@ import (
 	"app.yhyue.com/moapp/jybase/encrypt"
 	"fmt"
 	IC "jyBXCore/rpc/init"
+	"jyBXCore/rpc/model/es"
 	"jyBXCore/rpc/model/tidb"
 	"jyBXCore/rpc/type/bxcore"
 	"jyBXCore/rpc/util"
 )
 
-//更新数据 加锁。。。。。
+//我的参标项目|企业参标项目 列表
+func ParticipateList(in *bxcore.ParticipateListReq) (*bxcore.ParticipateListRes, error) {
+	//管理员
+	if in.PositionType > 0 {
+		userInfo := IC.Middleground.PowerCheckCenter.Check(in.AppId, in.UserId, in.NewUserId, in.AccountId, in.EntId, in.PositionType, in.PositionId)
+		if userInfo.Ent.EntRoleId == 0 {
+			in.EntUserIds = ""
+		}
+	}
+	//查询tidb  base_service.project
+	return nil, nil
+}
+
 /*
 已过投标截止日期项目
 (1)	不显示终止投标倒计时
@@ -28,6 +41,7 @@ func ParticipateDo(in *bxcore.ParticipateActionReq) (*bxcore.ParticipateActionRe
 	if in.BidId == "" {
 		return nil, fmt.Errorf("当前招标信息有误")
 	}
+	bidId := in.BidId
 	//当前项目是否符合参标条件
 	participateBid := NewParticipateBid(in.EntId, in.EntUserId, in.PositionType, in.PositionId)
 	projectInfos := participateBid.GetProjectByInfoId([]string{in.BidId})
@@ -48,13 +62,15 @@ func ParticipateDo(in *bxcore.ParticipateActionReq) (*bxcore.ParticipateActionRe
 	} else {
 		return nil, fmt.Errorf("当前项目信息有误")
 	}
+	//保存或更新项目信息
+	go tidb.UpdateProjectInfo(in.BidId, es.GetProjectInfo(in.BidId), es.GetBiddingInfo(bidId))
 	//企业版 判断是否是管理员
 	//判断用户身份
 	userInfo := IC.Middleground.PowerCheckCenter.Check(in.AppId, in.UserId, in.NewUserId, in.AccountId, in.EntId, in.PositionType, in.PositionId)
 	switch in.ActionType {
 	case "in":
 		//是否允许多人参标
-		if isAllow := util.NewPartUserInfo(in.EntId, in.EntUserId, in.PositionId, in.PositionType).IsALLow(); !isAllow {
+		if isAllow := util.IsALLow(in.EntId); !isAllow {
 			if ok := tidb.IsParticipatedByBidId(in); ok {
 				return nil, fmt.Errorf("当前项目不允许多人参标")
 			}
@@ -77,8 +93,7 @@ func ParticipateDo(in *bxcore.ParticipateActionReq) (*bxcore.ParticipateActionRe
 			return nil, fmt.Errorf("当前企业身份无权限")
 		}
 		//是否保留原跟踪人?
-		partUser := util.NewPartUserInfo(in.EntId, in.EntUserId, in.PositionId, in.PositionType)
-		isAllow := partUser.IsALLow()
+		isAllow := util.IsALLow(in.EntId)
 		if in.IsRetain && !isAllow {
 			//不允许多人参标,但是前端参数又是保留原参标人 互相矛盾
 			return nil, fmt.Errorf("当前项目只允许一人参标")

+ 132 - 83
jyBXCore/rpc/type/bxcore/bxcore.pb.go

@@ -1,7 +1,7 @@
 // Code generated by protoc-gen-go. DO NOT EDIT.
 // versions:
 // 	protoc-gen-go v1.28.0
-// 	protoc        v3.19.4
+// 	protoc        v3.15.5
 // source: bxcore.proto
 
 package bxcore
@@ -3278,6 +3278,11 @@ type ParticipateListReq struct {
 	EntUserIds    string `protobuf:"bytes,14,opt,name=entUserIds,proto3" json:"entUserIds,omitempty"`        //企业参标人企业用户id集合,多个,号隔开
 	PageSize      int64  `protobuf:"varint,15,opt,name=pageSize,proto3" json:"pageSize,omitempty"`           //每页数据量
 	PageNum       int64  `protobuf:"varint,16,opt,name=pageNum,proto3" json:"pageNum,omitempty"`             //当前页码
+	MgoUserId     string `protobuf:"bytes,17,opt,name=mgoUserId,proto3" json:"mgoUserId,omitempty"`          //原userId
+	AppId         string `protobuf:"bytes,18,opt,name=appId,proto3" json:"appId,omitempty"`                  //剑鱼默认10000
+	UserId        string `protobuf:"bytes,19,opt,name=userId,proto3" json:"userId,omitempty"`                //用户id
+	NewUserId     int64  `protobuf:"varint,20,opt,name=newUserId,proto3" json:"newUserId,omitempty"`         //base_user_id 新用户id
+	AccountId     int64  `protobuf:"varint,21,opt,name=accountId,proto3" json:"accountId,omitempty"`         //账户id
 }
 
 func (x *ParticipateListReq) Reset() {
@@ -3424,6 +3429,41 @@ func (x *ParticipateListReq) GetPageNum() int64 {
 	return 0
 }
 
+func (x *ParticipateListReq) GetMgoUserId() string {
+	if x != nil {
+		return x.MgoUserId
+	}
+	return ""
+}
+
+func (x *ParticipateListReq) GetAppId() string {
+	if x != nil {
+		return x.AppId
+	}
+	return ""
+}
+
+func (x *ParticipateListReq) GetUserId() string {
+	if x != nil {
+		return x.UserId
+	}
+	return ""
+}
+
+func (x *ParticipateListReq) GetNewUserId() int64 {
+	if x != nil {
+		return x.NewUserId
+	}
+	return 0
+}
+
+func (x *ParticipateListReq) GetAccountId() int64 {
+	if x != nil {
+		return x.AccountId
+	}
+	return 0
+}
+
 //参标列表
 type ParticipateList struct {
 	state         protoimpl.MessageState
@@ -4206,7 +4246,7 @@ var file_bxcore_proto_rawDesc = []byte{
 	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, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20,
-	0x01, 0x28, 0x08, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xe8, 0x03, 0x0a, 0x12, 0x50, 0x61,
+	0x01, 0x28, 0x08, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xf0, 0x04, 0x0a, 0x12, 0x50, 0x61,
 	0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71,
 	0x12, 0x14, 0x0a, 0x05, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
 	0x05, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65,
@@ -4237,90 +4277,99 @@ var file_bxcore_proto_rawDesc = []byte{
 	0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03,
 	0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61,
 	0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x70, 0x61, 0x67,
-	0x65, 0x4e, 0x75, 0x6d, 0x22, 0xfb, 0x01, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69,
-	0x70, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
-	0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6a,
-	0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70,
-	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x75,
-	0x79, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x75, 0x79, 0x65, 0x72,
-	0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x06, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x74,
-	0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
-	0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07,
-	0x62, 0x69, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62,
-	0x69, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x69, 0x64, 0x45, 0x6e, 0x64,
-	0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x69, 0x64, 0x45,
-	0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
-	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x10, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x69,
-	0x6d, 0x65, 0x22, 0x54, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74,
-	0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01,
-	0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x04, 0x6c,
-	0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x62, 0x78, 0x63, 0x6f,
-	0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x4c, 0x69,
-	0x73, 0x74, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x75, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74,
-	0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 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, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
-	0x32, 0x17, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63,
-	0x69, 0x70, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x32,
-	0xd3, 0x06, 0x0a, 0x06, 0x42, 0x78, 0x43, 0x6f, 0x72, 0x65, 0x12, 0x36, 0x0a, 0x0d, 0x47, 0x65,
-	0x74, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x11, 0x2e, 0x62, 0x78,
-	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x12,
-	0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65,
-	0x73, 0x70, 0x12, 0x3e, 0x0a, 0x0b, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4c, 0x69, 0x6d, 0x69,
-	0x74, 0x12, 0x16, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63,
-	0x68, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x62, 0x78, 0x63, 0x6f,
+	0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x67, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49,
+	0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x67, 0x6f, 0x55, 0x73, 0x65, 0x72,
+	0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x49, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x05, 0x61, 0x70, 0x70, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72,
+	0x49, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
+	0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x14, 0x20,
+	0x01, 0x28, 0x03, 0x52, 0x09, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1c,
+	0x0a, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28,
+	0x03, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xfb, 0x01, 0x0a,
+	0x0f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74,
+	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
+	0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18,
+	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61,
+	0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x75, 0x79, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x05, 0x62, 0x75, 0x79, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x64, 0x67,
+	0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74,
+	0x12, 0x22, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73,
+	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
+	0x61, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x69, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18,
+	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x69, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e,
+	0x0a, 0x0a, 0x62, 0x69, 0x64, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01,
+	0x28, 0x09, 0x52, 0x0a, 0x62, 0x69, 0x64, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a,
+	0x0a, 0x10, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x69,
+	0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
+	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x54, 0x0a, 0x0f, 0x50, 0x61,
+	0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a,
+	0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f,
+	0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28,
+	0x0b, 0x32, 0x17, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69,
+	0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74,
+	0x22, 0x75, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x4c,
+	0x69, 0x73, 0x74, 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, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61,
+	0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72,
+	0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74,
+	0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x32, 0xd3, 0x06, 0x0a, 0x06, 0x42, 0x78, 0x43, 0x6f,
+	0x72, 0x65, 0x12, 0x36, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4c,
+	0x69, 0x73, 0x74, 0x12, 0x11, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61,
+	0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e,
+	0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3e, 0x0a, 0x0b, 0x53, 0x65,
+	0x61, 0x72, 0x63, 0x68, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x2e, 0x62, 0x78, 0x63, 0x6f,
 	0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x65,
-	0x73, 0x70, 0x12, 0x49, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74,
-	0x65, 0x53, 0x68, 0x6f, 0x77, 0x12, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50,
-	0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65,
-	0x71, 0x1a, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69,
-	0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x12, 0x49, 0x0a,
-	0x0f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f,
-	0x12, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63,
-	0x69, 0x70, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x62,
-	0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74,
-	0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x12, 0x49, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61,
-	0x74, 0x65, 0x42, 0x69, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x2e, 0x62, 0x78,
-	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x69, 0x64, 0x53, 0x74,
-	0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65,
-	0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x69, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
-	0x52, 0x65, 0x73, 0x12, 0x52, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61,
-	0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x2e, 0x62, 0x78, 0x63, 0x6f,
-	0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x43, 0x6f,
-	0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72,
-	0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e,
-	0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x12, 0x52, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, 0x69,
-	0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x1d, 0x2e,
+	0x71, 0x1a, 0x17, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63,
+	0x68, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x49, 0x0a, 0x0f, 0x50, 0x61,
+	0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x12, 0x1a, 0x2e,
 	0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61,
-	0x74, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x62,
-	0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74,
-	0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x12, 0x52, 0x0a, 0x12, 0x50,
-	0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,
-	0x73, 0x12, 0x1d, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69,
-	0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71,
+	0x74, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f,
+	0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x53, 0x68,
+	0x6f, 0x77, 0x52, 0x65, 0x73, 0x12, 0x49, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69,
+	0x70, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72,
+	0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x66,
+	0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61,
+	0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73,
+	0x12, 0x49, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x69, 0x64, 0x53, 0x74, 0x61,
+	0x74, 0x75, 0x73, 0x12, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x55, 0x70, 0x64,
+	0x61, 0x74, 0x65, 0x42, 0x69, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a,
+	0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42,
+	0x69, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x12, 0x52, 0x0a, 0x12, 0x50,
+	0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
+	0x74, 0x12, 0x1d, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69,
+	0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71,
 	0x1a, 0x1d, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63,
-	0x69, 0x70, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x12,
-	0x58, 0x0a, 0x14, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x53, 0x65,
-	0x74, 0x55, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65,
-	0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x53, 0x65, 0x74, 0x55,
-	0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72,
-	0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x53, 0x65, 0x74,
-	0x55, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x12, 0x4f, 0x0a, 0x11, 0x50, 0x61, 0x72,
-	0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c,
-	0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
-	0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x62,
-	0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74,
-	0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x49, 0x0a, 0x0f, 0x50, 0x61,
-	0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1a, 0x2e,
-	0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61,
-	0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f,
-	0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x4c, 0x69,
-	0x73, 0x74, 0x52, 0x65, 0x73, 0x42, 0x0a, 0x5a, 0x08, 0x2e, 0x2f, 0x62, 0x78, 0x63, 0x6f, 0x72,
-	0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+	0x69, 0x70, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x12,
+	0x52, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x52, 0x65,
+	0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x1d, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50,
+	0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
+	0x73, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61,
+	0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73,
+	0x52, 0x65, 0x73, 0x12, 0x52, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61,
+	0x74, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x2e, 0x62, 0x78, 0x63, 0x6f,
+	0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x50, 0x65,
+	0x72, 0x73, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72,
+	0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72,
+	0x73, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x12, 0x58, 0x0a, 0x14, 0x50, 0x61, 0x72, 0x74, 0x69,
+	0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x53, 0x65, 0x74, 0x55, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12,
+	0x1f, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69,
+	0x70, 0x61, 0x74, 0x65, 0x53, 0x65, 0x74, 0x55, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71,
+	0x1a, 0x1f, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63,
+	0x69, 0x70, 0x61, 0x74, 0x65, 0x53, 0x65, 0x74, 0x55, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65,
+	0x73, 0x12, 0x4f, 0x0a, 0x11, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65,
+	0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e,
+	0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f,
+	0x6e, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61,
+	0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+	0x65, 0x73, 0x12, 0x49, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74,
+	0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50,
+	0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
+	0x71, 0x1a, 0x1a, 0x2e, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69,
+	0x63, 0x69, 0x70, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x42, 0x0a, 0x5a,
+	0x08, 0x2e, 0x2f, 0x62, 0x78, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+	0x33,
 }
 
 var (

+ 1 - 1
jyBXCore/rpc/type/bxcore/bxcore_grpc.pb.go

@@ -1,7 +1,7 @@
 // Code generated by protoc-gen-go-grpc. DO NOT EDIT.
 // versions:
 // - protoc-gen-go-grpc v1.2.0
-// - protoc             v3.19.4
+// - protoc             v3.15.5
 // source: bxcore.proto
 
 package bxcore

+ 4 - 24
jyBXCore/rpc/util/participate.go

@@ -2,29 +2,9 @@ package util
 
 import "jyBXCore/rpc/model/tidb"
 
-type PartUserInf struct {
-	EntId        int64
-	EntUserId    int64
-	PositionId   int64
-	PositionType int64
-}
-
-func NewPartUserInfo(entId, entUserId, positionId, positionType int64) *PartUserInf {
-	return &PartUserInf{
-		EntId:        entId,
-		EntUserId:    entUserId,
-		PositionId:   positionId,
-		PositionType: positionType,
-	}
-}
-
 //是否允许多人参标
-func (p *PartUserInf) IsALLow() bool {
-	query := map[string]interface{}{
-		"i_positionid": p.PositionId,
-	}
-	if p.PositionType > 0 {
-		query["i_entid"] = p.EntId
-	}
-	return tidb.GetParticipateIsAllow(query)
+func IsALLow(entId int64) bool {
+	return tidb.GetParticipateIsAllow(map[string]interface{}{
+		"i_entid": entId,
+	})
 }