package controllers import ( "encoding/json" "fmt" "hongze/hongze_cygx/models" "hongze/hongze_cygx/services" "hongze/hongze_cygx/utils" "io/ioutil" "net/http" "strings" ) type BaseYidongController struct { BaseCommonController } // @Title 取得TOKEN API // @Description 取得TOKEN API // @Success 200 {object} models.ConfigResp // @router /get_token [get] func (this *BaseYidongController) GetToken() { br := new(models.BaseResponse).Init() defer func() { this.Data["json"] = br this.ServeJSON() }() type Ydtoklen struct { Success string `json:"success"` ExpiresIn int `json:"expires_in"` AccessToken string `json:"access_token"` } var ydtoklen Ydtoklen //url := utils.YiDongZhengTongYunUrl + "oauth/token?grant_type=client_credentials&response_type=token&client_id=" + utils.YiDongZhengTongYunAppid + "&client_secret=" + utils.YiDongZhengTongYunSecret //method := "GET" // //client := &http.Client{} //req, err := http.NewRequest(method, url, nil) // //if err != nil { // fmt.Println(err) // return //} //res, err := client.Do(req) //if err != nil { // fmt.Println(err) // return //} //defer res.Body.Close() // // //body, err := ioutil.ReadAll(res.Body) //if err != nil { // fmt.Println(err) // return //} ////fmt.Println(body) //err = json.Unmarshal(body, &ydtoklen) //if err != nil { // fmt.Println("Getres.PublicGetDate Err:", err.Error()) //} //services.GetYiDongActivity() //cacheKey := utils.YD_TOKEN //utils.Rc.Put(cacheKey, ydtoklen.AccessToken, time.Second*7000) //utils.FileLog.Info(string(body)) ////fmt.Println(body) //fmt.Println(string(body)) ydtoklen.AccessToken, _ = services.GetYiDongToken() br.Msg = "获取成功!" br.Ret = 200 br.Success = true br.Data = ydtoklen } // @Title 获取路演列表数据 // @Description 获取路演列表数据 // @Success 200 {object} models.ConfigResp // @router /get/activity/list [get] func (this *BaseYidongController) Ativitylist() { br := new(models.BaseResponse).Init() defer func() { this.Data["json"] = br this.ServeJSON() }() Ydtoklen, _ := services.GetYiDongToken() url := "https://services-dev.valueonline.cn/interact/activityManageApi/getRoadshowList?access_token=" + Ydtoklen method := "POST" //payload := strings.NewReader(`{"meetingStatus":"0,1","conveneStartStr":"2022-05-06","conveneEndStr":"2022-05-14", //"lastUpdateTime":"2022-05-08 12:00:00"}`) payload := strings.NewReader(`{ "meetingStatus": "0,1,2" }`) client := &http.Client{} req, err := http.NewRequest(method, url, payload) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } req.Header.Add("User-Agent", "apifox/1.0.0 (https://www.apifox.cn)") req.Header.Add("Content-Type", "application/json") res, err := client.Do(req) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } defer res.Body.Close() var ApifoxModal *models.ApifoxModal body, err := ioutil.ReadAll(res.Body) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } utils.FileLog.Info(string(body)) //fmt.Println(body) err = json.Unmarshal(body, &ApifoxModal) if err != nil { fmt.Println("Getres.PublicGetDate Err:", err.Error()) utils.FileLog.Info(err.Error()) return } //fmt.Println(body) br.Msg = "获取成功!" br.Ret = 200 br.Success = true br.Data = ApifoxModal } // @Title 获取路演详细信息 // @Description 获取路演详细信息 // @Success 200 {object} models.ConfigResp // @router /get/activity/detail [get] func (this *BaseYidongController) Detail() { br := new(models.BaseResponse).Init() defer func() { this.Data["json"] = br this.ServeJSON() }() cacheKey := utils.YD_TOKEN Ydtoklen, _ := utils.Rc.RedisString(cacheKey) url := "https://services-dev.valueonline.cn/interact/activityManageApi/getRoadshowDetail?access_token=" + Ydtoklen method := "POST" payload := strings.NewReader(`{"activityId":"9395325920258067463"}`) client := &http.Client{} req, err := http.NewRequest(method, url, payload) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } req.Header.Add("Content-Type", "application/json") res, err := client.Do(req) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } defer res.Body.Close() var ApifoxModal *models.ApifoxModaldetail body, err := ioutil.ReadAll(res.Body) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } utils.FileLog.Info(string(body)) fmt.Println(string(body)) err = json.Unmarshal(body, &ApifoxModal) if err != nil { fmt.Println("Getres.PublicGetDate Err:", err.Error()) utils.FileLog.Info(err.Error()) return } //fmt.Println(body) br.Msg = "获取成功!" br.Ret = 200 br.Success = true br.Data = ApifoxModal } // @Title 获取参会人员信息 // @Description 获取参会人员信息 // @Success 200 {object} models.ConfigResp // @router /get/activity/userList [get] func (this *BaseYidongController) UserList() { br := new(models.BaseResponse).Init() defer func() { this.Data["json"] = br this.ServeJSON() }() activityId := this.GetString("ActivityId") cacheKey := utils.YD_TOKEN Ydtoklen, _ := utils.Rc.RedisString(cacheKey) url := "https://services-dev.valueonline.cn/interact/activityManageApi/getAttendPersonList?access_token=" + Ydtoklen method := "POST" payload := strings.NewReader(`{"activityId":"` + activityId + `"}`) client := &http.Client{} req, err := http.NewRequest(method, url, payload) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } req.Header.Add("Content-Type", "application/json") res, err := client.Do(req) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } defer res.Body.Close() var ApifoxModal *models.ApifoxModaluser body, err := ioutil.ReadAll(res.Body) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } utils.FileLog.Info(string(body)) fmt.Println(string(body)) err = json.Unmarshal(body, &ApifoxModal) if err != nil { fmt.Println("Getres.PublicGetDate Err:", err.Error()) utils.FileLog.Info(err.Error()) return } //fmt.Println(body) br.Msg = "获取成功!" br.Ret = 200 br.Success = true br.Data = ApifoxModal } // @Title 生成用户相关信息接口 // @Description 生成用户相关信息接口 // @Success 200 {object} models.ConfigResp // @router /get/activity/createUserInfo [get] func (this *BaseYidongController) CreateUserInfo() { br := new(models.BaseResponse).Init() defer func() { this.Data["json"] = br this.ServeJSON() }() url := "https://achievement-test.valueonline.cn/app/hz/createUserInfo" method := "POST" payload := strings.NewReader(`{ "phone": "15557270714", "mobileCountryCode": "+86", "sourceFrom": "01" }`) client := &http.Client{} req, err := http.NewRequest(method, url, payload) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } req.Header.Add("Content-Type", "application/json") res, err := client.Do(req) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } defer res.Body.Close() var ApifoxModal *models.ApifoxModalUserTgc body, err := ioutil.ReadAll(res.Body) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } utils.FileLog.Info(string(body)) fmt.Println(string(body)) err = json.Unmarshal(body, &ApifoxModal) if err != nil { fmt.Println("Getres.PublicGetDate Err:", err.Error()) utils.FileLog.Info(err.Error()) return } //fmt.Println(body) br.Msg = "获取成功!" br.Ret = 200 br.Success = true br.Data = ApifoxModal } // @Title 生成用户相关信息接口 // @Description 生成用户相关信息接口 // @Success 200 {object} models.ConfigResp // @router /get/activity/userSingnUp [get] func (this *BaseYidongController) UserSingnUp() { br := new(models.BaseResponse).Init() defer func() { this.Data["json"] = br this.ServeJSON() }() url := "https://achievement-test.valueonline.cn/app/hz/signAppointmentsForThird" method := "POST" payload := strings.NewReader(`{ "activityId": "9395325920258067463", "personTelephone": "15557270714", "personName": "沈大爷", "companyName": "弘则研究", "mobileCountryCode": "+86", "thirdPartySource": "01" }`) client := &http.Client{} req, err := http.NewRequest(method, url, payload) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } req.Header.Add("Content-Type", "application/json") res, err := client.Do(req) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } defer res.Body.Close() var ApifoxModal *models.ApifoxModalSingUpClass body, err := ioutil.ReadAll(res.Body) if err != nil { fmt.Println(err) utils.FileLog.Info(err.Error()) return } utils.FileLog.Info(string(body)) fmt.Println(string(body)) err = json.Unmarshal(body, &ApifoxModal) if err != nil { fmt.Println("Getres.PublicGetDate Err:", err.Error()) utils.FileLog.Info(err.Error()) return } //fmt.Println(body) br.Msg = "获取成功!" br.Ret = 200 br.Success = true br.Data = ApifoxModal }