yidong.go 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355
  1. package controllers
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. "hongze/hongze_cygx/models"
  6. "hongze/hongze_cygx/services"
  7. "hongze/hongze_cygx/utils"
  8. "io/ioutil"
  9. "net/http"
  10. "strings"
  11. )
  12. type BaseYidongController struct {
  13. BaseCommonController
  14. }
  15. // @Title 取得TOKEN API
  16. // @Description 取得TOKEN API
  17. // @Success 200 {object} models.ConfigResp
  18. // @router /get_token [get]
  19. func (this *BaseYidongController) GetToken() {
  20. br := new(models.BaseResponse).Init()
  21. defer func() {
  22. this.Data["json"] = br
  23. this.ServeJSON()
  24. }()
  25. type Ydtoklen struct {
  26. Success string `json:"success"`
  27. ExpiresIn int `json:"expires_in"`
  28. AccessToken string `json:"access_token"`
  29. }
  30. var ydtoklen Ydtoklen
  31. //url := utils.YiDongZhengTongYunUrl + "oauth/token?grant_type=client_credentials&response_type=token&client_id=" + utils.YiDongZhengTongYunAppid + "&client_secret=" + utils.YiDongZhengTongYunSecret
  32. //method := "GET"
  33. //
  34. //client := &http.Client{}
  35. //req, err := http.NewRequest(method, url, nil)
  36. //
  37. //if err != nil {
  38. // fmt.Println(err)
  39. // return
  40. //}
  41. //res, err := client.Do(req)
  42. //if err != nil {
  43. // fmt.Println(err)
  44. // return
  45. //}
  46. //defer res.Body.Close()
  47. //
  48. //
  49. //body, err := ioutil.ReadAll(res.Body)
  50. //if err != nil {
  51. // fmt.Println(err)
  52. // return
  53. //}
  54. ////fmt.Println(body)
  55. //err = json.Unmarshal(body, &ydtoklen)
  56. //if err != nil {
  57. // fmt.Println("Getres.PublicGetDate Err:", err.Error())
  58. //}
  59. //services.GetYiDongActivity()
  60. //cacheKey := utils.YD_TOKEN
  61. //utils.Rc.Put(cacheKey, ydtoklen.AccessToken, time.Second*7000)
  62. //utils.FileLog.Info(string(body))
  63. ////fmt.Println(body)
  64. //fmt.Println(string(body))
  65. ydtoklen.AccessToken, _ = services.GetYiDongToken()
  66. br.Msg = "获取成功!"
  67. br.Ret = 200
  68. br.Success = true
  69. br.Data = ydtoklen
  70. }
  71. // @Title 获取路演列表数据
  72. // @Description 获取路演列表数据
  73. // @Success 200 {object} models.ConfigResp
  74. // @router /get/activity/list [get]
  75. func (this *BaseYidongController) Ativitylist() {
  76. br := new(models.BaseResponse).Init()
  77. defer func() {
  78. this.Data["json"] = br
  79. this.ServeJSON()
  80. }()
  81. Ydtoklen, _ := services.GetYiDongToken()
  82. url := "https://services-dev.valueonline.cn/interact/activityManageApi/getRoadshowList?access_token=" + Ydtoklen
  83. method := "POST"
  84. //payload := strings.NewReader(`{"meetingStatus":"0,1","conveneStartStr":"2022-05-06","conveneEndStr":"2022-05-14",
  85. //"lastUpdateTime":"2022-05-08 12:00:00"}`)
  86. payload := strings.NewReader(`{
  87. "meetingStatus": "0,1,2"
  88. }`)
  89. client := &http.Client{}
  90. req, err := http.NewRequest(method, url, payload)
  91. if err != nil {
  92. fmt.Println(err)
  93. utils.FileLog.Info(err.Error())
  94. return
  95. }
  96. req.Header.Add("User-Agent", "apifox/1.0.0 (https://www.apifox.cn)")
  97. req.Header.Add("Content-Type", "application/json")
  98. res, err := client.Do(req)
  99. if err != nil {
  100. fmt.Println(err)
  101. utils.FileLog.Info(err.Error())
  102. return
  103. }
  104. defer res.Body.Close()
  105. var ApifoxModal *models.ApifoxModal
  106. body, err := ioutil.ReadAll(res.Body)
  107. if err != nil {
  108. fmt.Println(err)
  109. utils.FileLog.Info(err.Error())
  110. return
  111. }
  112. utils.FileLog.Info(string(body))
  113. //fmt.Println(body)
  114. err = json.Unmarshal(body, &ApifoxModal)
  115. if err != nil {
  116. fmt.Println("Getres.PublicGetDate Err:", err.Error())
  117. utils.FileLog.Info(err.Error())
  118. return
  119. }
  120. //fmt.Println(body)
  121. br.Msg = "获取成功!"
  122. br.Ret = 200
  123. br.Success = true
  124. br.Data = ApifoxModal
  125. }
  126. // @Title 获取路演详细信息
  127. // @Description 获取路演详细信息
  128. // @Success 200 {object} models.ConfigResp
  129. // @router /get/activity/detail [get]
  130. func (this *BaseYidongController) Detail() {
  131. br := new(models.BaseResponse).Init()
  132. defer func() {
  133. this.Data["json"] = br
  134. this.ServeJSON()
  135. }()
  136. cacheKey := utils.YD_TOKEN
  137. Ydtoklen, _ := utils.Rc.RedisString(cacheKey)
  138. url := "https://services-dev.valueonline.cn/interact/activityManageApi/getRoadshowDetail?access_token=" + Ydtoklen
  139. method := "POST"
  140. payload := strings.NewReader(`{"activityId":"9395325920258067463"}`)
  141. client := &http.Client{}
  142. req, err := http.NewRequest(method, url, payload)
  143. if err != nil {
  144. fmt.Println(err)
  145. utils.FileLog.Info(err.Error())
  146. return
  147. }
  148. req.Header.Add("Content-Type", "application/json")
  149. res, err := client.Do(req)
  150. if err != nil {
  151. fmt.Println(err)
  152. utils.FileLog.Info(err.Error())
  153. return
  154. }
  155. defer res.Body.Close()
  156. var ApifoxModal *models.ApifoxModaldetail
  157. body, err := ioutil.ReadAll(res.Body)
  158. if err != nil {
  159. fmt.Println(err)
  160. utils.FileLog.Info(err.Error())
  161. return
  162. }
  163. utils.FileLog.Info(string(body))
  164. fmt.Println(string(body))
  165. err = json.Unmarshal(body, &ApifoxModal)
  166. if err != nil {
  167. fmt.Println("Getres.PublicGetDate Err:", err.Error())
  168. utils.FileLog.Info(err.Error())
  169. return
  170. }
  171. //fmt.Println(body)
  172. br.Msg = "获取成功!"
  173. br.Ret = 200
  174. br.Success = true
  175. br.Data = ApifoxModal
  176. }
  177. // @Title 获取参会人员信息
  178. // @Description 获取参会人员信息
  179. // @Success 200 {object} models.ConfigResp
  180. // @router /get/activity/userList [get]
  181. func (this *BaseYidongController) UserList() {
  182. br := new(models.BaseResponse).Init()
  183. defer func() {
  184. this.Data["json"] = br
  185. this.ServeJSON()
  186. }()
  187. activityId := this.GetString("ActivityId")
  188. cacheKey := utils.YD_TOKEN
  189. Ydtoklen, _ := utils.Rc.RedisString(cacheKey)
  190. url := "https://services-dev.valueonline.cn/interact/activityManageApi/getAttendPersonList?access_token=" + Ydtoklen
  191. method := "POST"
  192. payload := strings.NewReader(`{"activityId":"` + activityId + `"}`)
  193. client := &http.Client{}
  194. req, err := http.NewRequest(method, url, payload)
  195. if err != nil {
  196. fmt.Println(err)
  197. utils.FileLog.Info(err.Error())
  198. return
  199. }
  200. req.Header.Add("Content-Type", "application/json")
  201. res, err := client.Do(req)
  202. if err != nil {
  203. fmt.Println(err)
  204. utils.FileLog.Info(err.Error())
  205. return
  206. }
  207. defer res.Body.Close()
  208. var ApifoxModal *models.ApifoxModaluser
  209. body, err := ioutil.ReadAll(res.Body)
  210. if err != nil {
  211. fmt.Println(err)
  212. utils.FileLog.Info(err.Error())
  213. return
  214. }
  215. utils.FileLog.Info(string(body))
  216. fmt.Println(string(body))
  217. err = json.Unmarshal(body, &ApifoxModal)
  218. if err != nil {
  219. fmt.Println("Getres.PublicGetDate Err:", err.Error())
  220. utils.FileLog.Info(err.Error())
  221. return
  222. }
  223. //fmt.Println(body)
  224. br.Msg = "获取成功!"
  225. br.Ret = 200
  226. br.Success = true
  227. br.Data = ApifoxModal
  228. }
  229. // @Title 生成用户相关信息接口
  230. // @Description 生成用户相关信息接口
  231. // @Success 200 {object} models.ConfigResp
  232. // @router /get/activity/createUserInfo [get]
  233. func (this *BaseYidongController) CreateUserInfo() {
  234. br := new(models.BaseResponse).Init()
  235. defer func() {
  236. this.Data["json"] = br
  237. this.ServeJSON()
  238. }()
  239. url := "https://achievement-test.valueonline.cn/app/hz/createUserInfo"
  240. method := "POST"
  241. payload := strings.NewReader(`{
  242. "phone": "15557270714",
  243. "mobileCountryCode": "+86",
  244. "sourceFrom": "01"
  245. }`)
  246. client := &http.Client{}
  247. req, err := http.NewRequest(method, url, payload)
  248. if err != nil {
  249. fmt.Println(err)
  250. utils.FileLog.Info(err.Error())
  251. return
  252. }
  253. req.Header.Add("Content-Type", "application/json")
  254. res, err := client.Do(req)
  255. if err != nil {
  256. fmt.Println(err)
  257. utils.FileLog.Info(err.Error())
  258. return
  259. }
  260. defer res.Body.Close()
  261. var ApifoxModal *models.ApifoxModalUserTgc
  262. body, err := ioutil.ReadAll(res.Body)
  263. if err != nil {
  264. fmt.Println(err)
  265. utils.FileLog.Info(err.Error())
  266. return
  267. }
  268. utils.FileLog.Info(string(body))
  269. fmt.Println(string(body))
  270. err = json.Unmarshal(body, &ApifoxModal)
  271. if err != nil {
  272. fmt.Println("Getres.PublicGetDate Err:", err.Error())
  273. utils.FileLog.Info(err.Error())
  274. return
  275. }
  276. //fmt.Println(body)
  277. br.Msg = "获取成功!"
  278. br.Ret = 200
  279. br.Success = true
  280. br.Data = ApifoxModal
  281. }
  282. // @Title 生成用户相关信息接口
  283. // @Description 生成用户相关信息接口
  284. // @Success 200 {object} models.ConfigResp
  285. // @router /get/activity/userSingnUp [get]
  286. func (this *BaseYidongController) UserSingnUp() {
  287. br := new(models.BaseResponse).Init()
  288. defer func() {
  289. this.Data["json"] = br
  290. this.ServeJSON()
  291. }()
  292. url := "https://achievement-test.valueonline.cn/app/hz/signAppointmentsForThird"
  293. method := "POST"
  294. payload := strings.NewReader(`{
  295. "activityId": "9395325920258067463",
  296. "personTelephone": "15557270714",
  297. "personName": "沈大爷",
  298. "companyName": "弘则研究",
  299. "mobileCountryCode": "+86",
  300. "thirdPartySource": "01"
  301. }`)
  302. client := &http.Client{}
  303. req, err := http.NewRequest(method, url, payload)
  304. if err != nil {
  305. fmt.Println(err)
  306. utils.FileLog.Info(err.Error())
  307. return
  308. }
  309. req.Header.Add("Content-Type", "application/json")
  310. res, err := client.Do(req)
  311. if err != nil {
  312. fmt.Println(err)
  313. utils.FileLog.Info(err.Error())
  314. return
  315. }
  316. defer res.Body.Close()
  317. var ApifoxModal *models.ApifoxModalSingUpClass
  318. body, err := ioutil.ReadAll(res.Body)
  319. if err != nil {
  320. fmt.Println(err)
  321. utils.FileLog.Info(err.Error())
  322. return
  323. }
  324. utils.FileLog.Info(string(body))
  325. fmt.Println(string(body))
  326. err = json.Unmarshal(body, &ApifoxModal)
  327. if err != nil {
  328. fmt.Println("Getres.PublicGetDate Err:", err.Error())
  329. utils.FileLog.Info(err.Error())
  330. return
  331. }
  332. //fmt.Println(body)
  333. br.Msg = "获取成功!"
  334. br.Ret = 200
  335. br.Success = true
  336. br.Data = ApifoxModal
  337. }