bxcore.api 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. syntax = "v1"
  2. info(
  3. title: "剑鱼核心模块" // TODO: add title
  4. desc: "标讯搜索、标讯详情、参标逻辑等"// TODO: add description
  5. author: "wangshan"
  6. email: "wangshan@topnet.net.cn"
  7. )
  8. type (
  9. searchReq {
  10. UserType string `path:"userType,optional"`
  11. AppId string `header:"appId"`
  12. UserId string `header:"userId,optional"`
  13. Phone string `header:"phone,optional"`
  14. NewUserId string `header:"newUserId,optional"`
  15. EntId int64 `header:"entId,optional"`
  16. EntUserId int64 `header:"entUserId,optional"`
  17. PageNum int64 `json:"pageNum,optional"`
  18. PageSize int64 `json:"pageSize,optional"`
  19. Province string `json:"province,optional"`
  20. City string `json:"city,optional"`
  21. Subtype string `json:"subtype,optional"`
  22. TopType string `json:"toptype,optional"`
  23. PublishTime string `json:"publishTime,optional"`
  24. SelectType string `json:"selectType,optional"`
  25. Price string `json:"price,optional"`
  26. Industry string `json:"industry,optional"`
  27. BuyerClass string `json:"buyerClass,optional"`
  28. BuyerTel string `json:"buyerTel,optional"`
  29. WinnerTel string `json:"winnerTel,optional"`
  30. FileExists string `json:"fileExists,optional"`
  31. SearchGroup int64 `json:"searchGroup,optional"`
  32. SearchMode int64 `json:"searchMode,optional"`
  33. WordsMode int64 `json:"wordsMode,optional"`
  34. KeyWords string `json:"keyWords,optional"`
  35. AdditionalWords string `json:"additionalWords,optional"`
  36. ExclusionWords string `json:"exclusionWords,optional"`
  37. BidField string `json:"bidField,optional"` //医疗领域化信息
  38. AccountId string `header:"accountId,optional"` //账户id
  39. EntAccountId int64 `header:"entAccountId,optional"` //企业账户id
  40. PositionType string `header:"positionType,optional"` //职位类型 0个人 1企业
  41. PositionId string `header:"positionId,optional"` //职位id
  42. MgoUserId string `header:"mgoUserId,optional"` //原userId
  43. District string `json:"district,optional"` //
  44. Buyer string `json:"buyer,optional"` //采购单位
  45. Winner string `json:"winner,optional"` //中标企业
  46. Agency string `json:"agency,optional"` //代理机构
  47. PropertyForm string `json:"propertyForm,optional"` //物业版本参数接收 start--//物业业态
  48. ExpireTime string `json:"expireTime,optional"` //到期时间
  49. SubInformation string `json:"subInformation,optional"` //业务类型
  50. Period string `json:"period,optional"` //合同周期
  51. ChangeHand int `json:"changeHand,optional"` // 换手率
  52. Scale string `json:"scale,optional"` //物业版本参数接收 end--//价格区间
  53. MobileTag []string `json:"mobileTag,optional"` //融创 //P513中国移动定制招标采购搜索
  54. }
  55. //
  56. commonResp {
  57. Err_code int64 `json:"error_code"`
  58. Err_msg string `json:"error_msg"`
  59. Data interface{} `json:"data"`
  60. }
  61. commonPushResp {
  62. Err_code int64 `json:"error_code"`
  63. Err_msg string `json:"error_msg"`
  64. Data interface{} `json:"data"`
  65. SourceItem interface{} `json:"sourceItem"`
  66. }
  67. //
  68. searchLimitReq {
  69. AppId string `header:"appId,optional"` //appid
  70. TimeOut int64 `json:"timeOut,optional"` //过滤过期时间
  71. Count int64 `json:"count,optional"` //并发量
  72. Flag int64 `json:"flag,optional"` //开关 1:打开;-1:关闭;-2:重置
  73. Percentage int64 `json:"percentage,optional"` //免费用户占比
  74. SearchType string `path:"searchType"` //get|update|
  75. NoLogin int64 `json:"noLogin,optional"` //未登录占比
  76. ForPayer int64 `json:"forPayer,optional"` //为付费用户保留通道数
  77. LimitItems string `json:"limitItems,optional"` //需要过滤的字段 多个,号分割
  78. }
  79. //参标项目
  80. baseParam {
  81. EntId int64 `header:"entId,optional"` // 企业id
  82. EntUserId int64 `header:"entUserId,optional"` // 企业下用户id
  83. PositionType int64 `header:"positionType,optional"` // 职位类型 0个人 1企业
  84. PositionId int64 `header:"positionId,optional"` //职位id
  85. AccountId int64 `header:"accountId,optional"` //账户id
  86. MgoUserId string `header:"mgoUserId,optional"` //原userId
  87. AppId string `header:"appId,optional"` //剑鱼10000
  88. UserId string `header:"userId,optional"` //用户id
  89. NewUserId int64 `header:"newUserId,optional"` //base_user_id
  90. EntAccountId int64 `header:"entAccountId,optional"` //企业账户id
  91. Phone string `header:"phone,optional"`
  92. }
  93. // 列表数据参标信息请求参数
  94. participateShowReq {
  95. Ids string `json:"ids"` // 标讯id 逗号分割
  96. baseParam
  97. }
  98. // 详情页参标信息请求参数
  99. participateInfoReq {
  100. Sid string `json:"sid"` // 标讯id
  101. baseParam
  102. }
  103. // 投标状态更新请求参数
  104. updateBidStatusReq {
  105. BidType int64 `json:"bidType"` // 投标类型 1-直接投标 2-渠道投标
  106. BidStage []string `json:"bidStage,optional"` // 投标项目阶段 ["未报名","已报名"...]
  107. IsWin int64 `json:"isWin,optional"` // 是否中标 0-未选择 1-是 2-否
  108. ChannelName string `json:"channelName,optional"` // 渠道名称
  109. ChannelPerson string `json:"channelPerson,optional"` // 联系人
  110. ChannelPhone string `json:"channelPhone,optional"` //联系电话
  111. Winner string `json:"winner,optional"` // 中标单位
  112. Sid string `json:"sid"` // 标讯id
  113. baseParam
  114. }
  115. // 获取投标状态信息
  116. participateContentReq {
  117. Sid string `json:"sid"` // 标讯id
  118. baseParam
  119. }
  120. // 参标操作记录请求参数
  121. participateRecordsReq {
  122. Sid string `json:"sid"` // 标讯id
  123. PageNum int64 `json:"pageNum,default=1"` // 页码
  124. PageSize int64 `json:"pageSize,default=100"` // 每页条数
  125. baseParam
  126. }
  127. // 当前部门/企业下参标人员信息
  128. participatePersonsReq {
  129. baseParam
  130. ProjectId string `json:"projectId,optional"` //项目id
  131. }
  132. //投标状态更新:投标类型-投标项目阶段
  133. BidTypeReq {
  134. Name string `json:"name,optional"`
  135. Content []string `json:"content,optional"`
  136. }
  137. //消息提醒设置:
  138. RemindRuleReq {
  139. BidState string `json:"bidState,optional"` //投标规则类型;直接投标;渠道投标;
  140. Remainder int64 `json:"remainder,optional"` //距离投标截止日期需要多久开始提醒 单位h
  141. Node string `json:"node,optional"` //那个节点进行消息提醒;和投标项目阶段绑定
  142. }
  143. //参标设置信息接口
  144. participateSetUpInfoReq {
  145. baseParam
  146. SetAction string `json:"setAction,optional"` //默认空;U:更新
  147. IsAllow string `json:"isAllow,optional"` //是否允许多人同时参标 默认0;允许1
  148. BidType []*BidTypeReq `json:"bidType,optional"` //投标类型自定义内容
  149. RemindRule []*RemindRuleReq `json:"remindRule,optional"` //消息提醒
  150. }
  151. //用户参标、终止参标及划转接口开发
  152. participateActionReq {
  153. baseParam
  154. BidIds string `json:"bidIds,optional"` //招标信息id ,已加密。多个,号隔开
  155. ProjectIds string `json:"projectIds,optional"` //项目信息id,已加密。多个,号隔开
  156. ToEntUserId string `json:"toEntUserId,optional"` //划转对象的企业用户id
  157. IsRetain bool `json:"isRetain,optional"` //是否保留原跟踪人
  158. ActionType string `path:"actionType,options=in|out|transfer"` //in:参标;out:终止参标;transfer:划转
  159. }
  160. //我的参标项目列表|企业参标项目列表
  161. participateListReq {
  162. baseParam
  163. Area string `json:"area,optional"` //省份
  164. City string `json:"city,optional"` //城市
  165. BidTime string `json:"bidTime,optional"` //招标日期:开始时间-结束时间
  166. BidEndTime string `json:"bidEndTime,optional"` //投标截止日期:格式同上
  167. BidOpenTime string `json:"bidOpenTime,optional"` //开标时间:格式同上
  168. BidEndStatus int64 `json:"bidEndStatus,optional"` //投标截止状态:1:未截止;2:已截止;3:终止参标
  169. BidOpenStatus int64 `json:"bidOpenStatus,optional"` //开标状态:1:未开标;2:已开标
  170. Keywords string `json:"keywords,optional"` //查询项目名称 关键词;多个空格隔开
  171. EntUserIds string `json:"entUserIds,optional"` //企业参标人企业用户id集合,多个,号隔开
  172. PageSize int64 `json:"pageSize,default=10"` //每页数据量
  173. PageNum int64 `json:"pageNum,default=1"` //当前页码
  174. Identity string `path:"identity,options=mine|ent"` //我的:mine;企业:ent
  175. OrderNum int64 `json:"orderNum,default=0"` //排序:0:投标截止日期正序、1:开标时间正序、2:更新状态时间倒叙
  176. }
  177. ptatisticsListReq {
  178. PositionId int64 `header:"positionId,optional"` //职位id
  179. EntId int64 `header:"entId,optional"`
  180. EntUserId int64 `header:"entUserId,optional"`
  181. DeptId int64 `header:"deptId,optional"`
  182. EntUserIdArr []string `json:"entUserIdArr,optional"`
  183. StartTime int64 `json:"startTime,optional"`
  184. EndTime int64 `json:"endTime,optional"`
  185. Source []int64 `json:"source,optional"` // 标讯项目来源 -1:全部 1:个人订阅 2:企业自动分发 3:企业手动分发
  186. BidWay int64 `json:"bidWay,optional"` // 投标类型 -1:全部 1:直接投标 2:渠道投标
  187. IsMobile bool `json:"isMobile,optional"` // 是否是移动端 因为移动端和pc要求展示的不一致
  188. }
  189. polymerizeSearchReq {
  190. SearchCode string `json:"searchCode"`
  191. EntId int64 `header:"entId,optional"` // 企业id
  192. PositionType int64 `header:"positionType,optional"` // 职位类型 0个人 1企业
  193. PositionId int64 `header:"positionId,optional"` //职位id
  194. AccountId int64 `header:"accountId,optional"` //账户id
  195. AppId string `header:"appId,optional"` //剑鱼10000
  196. UserId string `header:"userId,optional"` //用户id
  197. NewUserId int64 `header:"newUserId,optional"` //base_user_id
  198. EntAccountId int64 `header:"entAccountId,optional"` //企业账户id
  199. EntUserId int64 `header:"newUserId,optional"`
  200. }
  201. ProjectDetailReq {
  202. PositionId int64 `header:"positionId,optional"` //职位id
  203. PositionType int64 `header:"positionType,optional"` //职位类型 0个人 1企业
  204. EntId int64 `header:"entId,optional"`
  205. EntUserId int64 `header:"entUserId,optional"`
  206. DeptId int64 `header:"deptId,optional"`
  207. EntUserIdArr []string `json:"entUserIdArr,optional"`
  208. StartTime int64 `json:"startTime,optional"`
  209. EndTime int64 `json:"endTime,optional"`
  210. Source []int64 `json:"source,optional"` // 标讯项目来源 -1:全部 1:个人订阅 2:企业自动分发 3:企业手动分发
  211. BidWay int64 `json:"bidWay,optional"` // 投标类型 -1:全部 1:直接投标 2:渠道投标
  212. Isparticipate int64 `json:"isparticipate,optional"` // 参标状态;-1:全部 0:未参标 1:是
  213. UpdateStartTime int64 `json:"updateStartTime,optional"` //
  214. UpdateEndTime int64 `json:"updateEndTime,optional"` //
  215. PageSize int64 `json:"pageSize,optional"` //
  216. PageNum int64 `json:"pageNum,optional"` //
  217. }
  218. mobileHotWordReq {
  219. AppId string `header:"appId"`
  220. UserId string `header:"userId,optional"`
  221. Refresh int64 `json:"refresh,optional"`
  222. Word string `json:"word,optional"`
  223. }
  224. )
  225. service bxcore-api {
  226. @handler searchList
  227. post /jybx/core/:userType/searchList (searchReq) returns (commonResp)
  228. @handler limitSearchContent
  229. post /jybx/core/:searchType/searchLimit (searchLimitReq) returns (commonResp)
  230. @handler participateShow // 列表数据参标信息接口
  231. post /jybx/core/participate/show (participateShowReq) returns (commonResp)
  232. @handler ParticipateInfo // 详情页参标信息接口
  233. post /jybx/core/participate/info (participateInfoReq) returns (commonResp)
  234. @handler updateBidStatus // 投标状态更新
  235. post /jybx/core/participate/updateBidStatus (updateBidStatusReq) returns (commonResp)
  236. @handler ParticipateContent // 获取投标状态信息
  237. post /jybx/core/participate/content (participateContentReq) returns (commonResp)
  238. @handler ParticipateRecords // 参标操作记录
  239. post /jybx/core/participate/records (participateRecordsReq) returns (commonResp)
  240. @handler ParticipatePersons // 当前部门/企业下参标人员信息
  241. post /jybx/core/participate/persons (participatePersonsReq) returns (commonResp)
  242. @handler participateSetUpInfo // 参标设置信息
  243. post /jybx/core/participate/setUpInfo (participateSetUpInfoReq) returns (commonResp)
  244. @handler participateAction //参标|终止参标|划转项目
  245. post /jybx/core/participate/:actionType/info (participateActionReq) returns (commonResp)
  246. @handler participateList //我的参标项目列表|企业参标项目列表
  247. post /jybx/core/participate/:identity/list (participateListReq) returns (commonResp)
  248. @handler pushStatistics // 订阅推送统计
  249. post /jybx/core/statistics/pushStatistics (ptatisticsListReq) returns (commonPushResp)
  250. @handler projectStatistics//参标项目统计
  251. post /jybx/core/statistics/projectStatistics (ptatisticsListReq) returns (commonResp)
  252. @handler polymerizeSearch//参标项目统计
  253. post /jybx/core/polymerizeSearch (polymerizeSearchReq) returns (commonResp)
  254. @handler statisticsProjectDetails//参标项目明细
  255. post /jybx/core/statistics/projectDetails (ProjectDetailReq) returns (commonResp)
  256. @handler searchCriteria //物业搜索条件返回
  257. post /jybx/core/property/searchCriteria () returns (commonResp)
  258. @handler mobileHotWord
  259. post /jybx/core/mobileHotWord (mobileHotWordReq) returns (commonResp)
  260. }