|
@@ -39,105 +39,134 @@ type VmpRobotMeeting struct {
|
|
|
ParsingID int `json:"parsing_id"`
|
|
|
SerialNumber string `json:"serial_number"`
|
|
|
ChannelID int `json:"channel_id"`
|
|
|
- IsActive bool `json:"is_active"`
|
|
|
+ IsActive int `json:"is_active"`
|
|
|
+}
|
|
|
+
|
|
|
+type VmpRobotMeetingResult struct {
|
|
|
+ ModeID int `json:"mode_id"`
|
|
|
+ PhoneNumber string `json:"phone_number"`
|
|
|
+ MeetingPassword string `json:"meeting_password"`
|
|
|
+ MeetingStartTime time.Time `json:"meeting_start_time"`
|
|
|
+ MeetingTitle string `json:"meeting_title"`
|
|
|
+ MeetingTypeID int `json:"meeting_type_id"`
|
|
|
+ ParsingMethodID int `json:"parsing_method_id"`
|
|
|
+ IndustryID int `json:"industry_id"`
|
|
|
+ FieldID int `json:"field_id"`
|
|
|
+ Stock string `json:"stock"`
|
|
|
+ Remark string `json:"remark"`
|
|
|
+ ProjectID int `json:"project_id"`
|
|
|
+ AuthorPhoneNumber int64 `json:"author_phone_number"`
|
|
|
+ ExecutionStatusID int `json:"execution_status_id"`
|
|
|
+ ParsingID int `json:"parsing_id"`
|
|
|
+ SerialNumber string `json:"serial_number"`
|
|
|
+ ChannelID int `json:"channel_id"`
|
|
|
+ IsActive int `json:"is_active"`
|
|
|
+ VmpRobotMeetinId int `json:"id"`
|
|
|
}
|
|
|
|
|
|
// 研选活动会前15分钟推送给上海那边的机器人
|
|
|
// func PushVmpRobotMeeting(cont context.Context) (err error) {
|
|
|
-//func PushVmpRobotMeeting() (err error) {
|
|
|
-// defer func() {
|
|
|
-// if err != nil {
|
|
|
-// go utils.SendAlarmMsg("15分钟会议消息提醒失败", 2)
|
|
|
-// fmt.Println("发送失败,Err:", err.Error())
|
|
|
-// }
|
|
|
-// }()
|
|
|
-// var condition string
|
|
|
-// var pars []interface{}
|
|
|
-// endDate := time.Now().Add(+time.Minute * 15).Format(utils.FormatDateTime)
|
|
|
-// condition = ` AND activity_time <= ? AND activity_time >= NOW() AND publish_status = 1 AND chart_permission_id = ? AND vmp_robot_meeting_id = 0 AND active_state = 1 AND mainland_tell != '' OR activity_id = 4644 `
|
|
|
-// pars = append(pars, endDate, utils.CHART_PERMISSION_ID_YANXUAN)
|
|
|
-// listActivity, e := models.GetCygxActivityList(condition, pars, 0, 100)
|
|
|
-// if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
-// err = errors.New("GetCygxActivityList, Err: " + e.Error())
|
|
|
-// return
|
|
|
-// }
|
|
|
-// if len(listActivity) == 0 {
|
|
|
-// return
|
|
|
-// }
|
|
|
-// for _, v := range listActivity {
|
|
|
-// type VmpRobotMeeting struct {
|
|
|
-// ModeID int `json:"mode_id"`
|
|
|
-// PhoneNumber string `json:"phone_number"`
|
|
|
-// MeetingPassword string `json:"meeting_password"`
|
|
|
-// MeetingStartTime string `json:"meeting_start_time"`
|
|
|
-// MeetingTitle string `json:"meeting_title"`
|
|
|
-// MeetingTypeID int `json:"meeting_type_id"`
|
|
|
-// ParsingMethodID int `json:"parsing_method_id"`
|
|
|
-// IndustryID int `json:"industry_id"`
|
|
|
-// FieldID int `json:"field_id"`
|
|
|
-// Stock string `json:"stock"`
|
|
|
-// Remark string `json:"remark"`
|
|
|
-// ProjectID int `json:"project_id"`
|
|
|
-// AuthorPhoneNumber int64 `json:"author_phone_number"`
|
|
|
-// ExecutionStatusID int `json:"execution_status_id"`
|
|
|
-// ParsingID int `json:"parsing_id"`
|
|
|
-// SerialNumber string `json:"serial_number"`
|
|
|
-// ChannelID int `json:"channel_id"`
|
|
|
-// IsActive int `json:"is_active"`
|
|
|
-// }
|
|
|
-// item := new(VmpRobotMeeting)
|
|
|
-// item.ModeID = 2
|
|
|
-// item.PhoneNumber = v.MainlandTell
|
|
|
-// item.MeetingPassword = v.ParticipationCode
|
|
|
-// item.MeetingStartTime = v.ActivityTime
|
|
|
-// item.MeetingTitle = v.ActivityName
|
|
|
-// item.MeetingTypeID = 1
|
|
|
-// item.ParsingMethodID = 0
|
|
|
-// item.IndustryID = 13
|
|
|
-// item.FieldID = 0
|
|
|
-// item.Stock = ""
|
|
|
-// item.Remark = v.Remarks // 处理HTML格式样式
|
|
|
-// item.ProjectID = 1
|
|
|
-// item.AuthorPhoneNumber = 15000123056 // 高亦文 手机号
|
|
|
-// item.ExecutionStatusID = 0
|
|
|
-// item.ParsingID = 0
|
|
|
-// item.SerialNumber = ""
|
|
|
-// item.ChannelID = -1
|
|
|
-// item.IsActive = 1
|
|
|
-// jsonBody, err := json.Marshal(item)
|
|
|
-// if err != nil {
|
|
|
-// fmt.Println("json.Marshal Err:" + err.Error())
|
|
|
-// return
|
|
|
-// }
|
|
|
-// tr := &http.Transport{
|
|
|
-// TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
|
|
|
-// }
|
|
|
-// client := &http.Client{Transport: tr}
|
|
|
-// req, err := http.NewRequest("POST", postUrl, strings.NewReader(string(jsonBody)))
|
|
|
-// if err != nil {
|
|
|
-// fmt.Println("err:" + err.Error())
|
|
|
-// return
|
|
|
-// }
|
|
|
-// req.Header.Set("Content-Type", "application/json")
|
|
|
-// req.Header.Set("Authorization", "APPCODE "+AlAppCode)
|
|
|
-// resp, err := client.Do(req)
|
|
|
-// if err != nil {
|
|
|
-// fmt.Println("client.Do Err:" + err.Error())
|
|
|
-// return
|
|
|
-// }
|
|
|
-// fmt.Println("resp")
|
|
|
-// fmt.Println(resp)
|
|
|
-// defer resp.Body.Close()
|
|
|
-// body, err := ioutil.ReadAll(resp.Body)
|
|
|
-// if err != nil {
|
|
|
-// fmt.Println("err:" + err.Error())
|
|
|
-// return
|
|
|
-// }
|
|
|
-// fmt.Println("body:", string(body))
|
|
|
-// utils.FileLog.Info(fmt.Sprintf("aliyun card;imgUrl:%s; Body:%s", imgUrl, string(body)))
|
|
|
-// err = json.Unmarshal(body, &result)
|
|
|
-// fmt.Println(v.ActivityId)
|
|
|
-// }
|
|
|
-//
|
|
|
-// return
|
|
|
-//}
|
|
|
+func PushVmpRobotMeeting() (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ go utils.SendAlarmMsg("15分钟会议消息提醒失败", 2)
|
|
|
+ fmt.Println("发送失败,Err:", err.Error())
|
|
|
+ }
|
|
|
+ }()
|
|
|
+
|
|
|
+ postUrl := "https://vmp.hzinsights.com/v2api/meeting"
|
|
|
+ authorization := "bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxNTAwMDEyMzA1NiIsInBob25lX251bWJlciI6IjE1MDAwMTIzMDU2IiwibmFtZSI6IumrmOS6puaWhyIsImVudHJhbmNlIjoicGFzc3d3b3JkIiwiaWF0IjoxNzAzODM1OTc4LCJleHAiOjE3MDM4Mzk1Nzh9.qX6EFkVPn2R0SqIQXJ4tyub--iiqKqrJnz9lbdcVetw"
|
|
|
+ var condition string
|
|
|
+ var pars []interface{}
|
|
|
+ endDate := time.Now().Add(+time.Minute * 15).Format(utils.FormatDateTime)
|
|
|
+ condition = ` AND activity_time <= ? AND activity_time >= NOW() AND publish_status = 1 AND chart_permission_id = ? AND vmp_robot_meeting_id = 0 AND active_state = 1 AND mainland_tell != '' OR activity_id = 4644 `
|
|
|
+ pars = append(pars, endDate, utils.CHART_PERMISSION_ID_YANXUAN)
|
|
|
+ listActivity, e := models.GetCygxActivityList(condition, pars, 0, 100)
|
|
|
+ if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+ err = errors.New("GetCygxActivityList, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if len(listActivity) == 0 {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ for _, v := range listActivity {
|
|
|
+ type VmpRobotMeeting struct {
|
|
|
+ ModeID int `json:"mode_id"`
|
|
|
+ PhoneNumber string `json:"phone_number"`
|
|
|
+ MeetingPassword string `json:"meeting_password"`
|
|
|
+ MeetingStartTime string `json:"meeting_start_time"`
|
|
|
+ MeetingTitle string `json:"meeting_title"`
|
|
|
+ MeetingTypeID int `json:"meeting_type_id"`
|
|
|
+ ParsingMethodID int `json:"parsing_method_id"`
|
|
|
+ IndustryID int `json:"industry_id"`
|
|
|
+ FieldID int `json:"field_id"`
|
|
|
+ Stock string `json:"stock"`
|
|
|
+ Remark string `json:"remark"`
|
|
|
+ ProjectID int `json:"project_id"`
|
|
|
+ AuthorPhoneNumber int64 `json:"author_phone_number"`
|
|
|
+ ExecutionStatusID int `json:"execution_status_id"`
|
|
|
+ ParsingID int `json:"parsing_id"`
|
|
|
+ SerialNumber string `json:"serial_number"`
|
|
|
+ ChannelID int `json:"channel_id"`
|
|
|
+ IsActive int `json:"is_active"`
|
|
|
+ }
|
|
|
+ item := new(VmpRobotMeeting)
|
|
|
+ item.ModeID = 2
|
|
|
+ item.PhoneNumber = v.MainlandTell
|
|
|
+ item.MeetingPassword = v.ParticipationCode
|
|
|
+ item.MeetingStartTime = v.ActivityTime
|
|
|
+ item.MeetingTitle = v.ActivityName
|
|
|
+ item.MeetingTypeID = 1
|
|
|
+ item.ParsingMethodID = 0
|
|
|
+ item.IndustryID = 13
|
|
|
+ item.FieldID = 0
|
|
|
+ item.Stock = ""
|
|
|
+ item.Remark = v.Remarks // 处理HTML格式样式
|
|
|
+ item.ProjectID = 1
|
|
|
+ item.AuthorPhoneNumber = 15000123056 // 高亦文 手机号
|
|
|
+ item.ExecutionStatusID = 0
|
|
|
+ item.ParsingID = 0
|
|
|
+ item.SerialNumber = ""
|
|
|
+ item.ChannelID = -1
|
|
|
+ item.IsActive = 1
|
|
|
+ jsonBody, err := json.Marshal(item)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("json.Marshal Err:" + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ tr := &http.Transport{
|
|
|
+ TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
|
|
|
+ }
|
|
|
+ client := &http.Client{Transport: tr}
|
|
|
+ req, err := http.NewRequest("POST", postUrl, strings.NewReader(string(jsonBody)))
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("err:" + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ req.Header.Set("Content-Type", "application/json")
|
|
|
+ req.Header.Set("Authorization", authorization)
|
|
|
+ resp, err := client.Do(req)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("client.Do Err:" + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ fmt.Println("resp")
|
|
|
+ fmt.Println(resp)
|
|
|
+ defer resp.Body.Close()
|
|
|
+ body, err := ioutil.ReadAll(resp.Body)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("err:" + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ fmt.Println("body:", string(body))
|
|
|
+ result := new(VmpRobotMeetingResult)
|
|
|
+ err = json.Unmarshal(body, &result)
|
|
|
+
|
|
|
+ vmpRobotMeetinId := result.VmpRobotMeetinId
|
|
|
+ fmt.Println("vmpRobotMeetinId", vmpRobotMeetinId)
|
|
|
+ fmt.Println(result)
|
|
|
+ fmt.Println(v.ActivityId)
|
|
|
+ }
|
|
|
+
|
|
|
+ return
|
|
|
+}
|