|
@@ -7,11 +7,148 @@ import (
|
|
|
"hongze/hz_crm_api/services/alarm_msg"
|
|
|
"hongze/hz_crm_api/utils"
|
|
|
"strconv"
|
|
|
+ "strings"
|
|
|
"time"
|
|
|
)
|
|
|
|
|
|
//首页最新页面数据逻辑处理
|
|
|
|
|
|
+//activity
|
|
|
+//activityspecial
|
|
|
+//activityvideo
|
|
|
+//activityvoice
|
|
|
+//article
|
|
|
+//meetingreviewchapt
|
|
|
+//minutessummary
|
|
|
+//newchart
|
|
|
+//productinterior
|
|
|
+//reportselection
|
|
|
+//researchsummary
|
|
|
+//roadshow
|
|
|
+
|
|
|
+//func init() {
|
|
|
+// UpdateActivityResourceData(2117)
|
|
|
+//}
|
|
|
+
|
|
|
+// 更新活动
|
|
|
+func UpdateActivityResourceData(sourceId int) (err error) {
|
|
|
+ //time.Sleep(3*time.Second) // 有时候同时添加多个活动,延迟三秒
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("err:", err)
|
|
|
+ go alarm_msg.SendAlarmMsg("更新活动 失败,UpdateActivityResourceData Err:"+err.Error()+"资源ID"+strconv.Itoa(sourceId), 3)
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ var source = utils.CYGX_OBJ_ACTIVITY
|
|
|
+ var condition string
|
|
|
+ var pars []interface{}
|
|
|
+ condition = ` AND publish_status = 1 AND activity_id = ? `
|
|
|
+ pars = append(pars, sourceId)
|
|
|
+ total, e := cygx.GetActivityCount(condition, pars)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxReportSelection, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //如果取消发布了就做删除处理
|
|
|
+ if total == 0 {
|
|
|
+ e = cygx.DeleteResourceData(sourceId, source)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("DeleteResourceData, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //删除 cygx_resource_data 表关联的产业ID,标的ID
|
|
|
+ e = cygx.DeleteCygxResourceDataGroup(sourceId, source)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("DeleteCygxResourceDataGroup, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ //判断是否存在,如果不存在就新增,存在就更新
|
|
|
+ totalData, e := cygx.GetCygxReportSelectionBySourceAndId(sourceId, source)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxReportSelectionBySourceAndId, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ detail, e := cygx.GetAddActivityInfoById(sourceId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxReportSelectionInfoById, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var resourceDataId int
|
|
|
+ publishDate := time.Now().Format(utils.FormatDateTime)
|
|
|
+ if totalData == 0 {
|
|
|
+ item := new(cygx.CygxResourceData)
|
|
|
+ item.SourceId = sourceId
|
|
|
+ item.Source = source
|
|
|
+ //分析师电话会(C类)
|
|
|
+ item.SearchTag = strings.TrimRight(detail.ActivityTypeName, "(C类)")
|
|
|
+ item.PublishDate = publishDate
|
|
|
+ item.CreateTime = time.Now()
|
|
|
+ newId, e := cygx.AddCygxResourceData(item)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("AddCygxResourceData, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resourceDataId = int(newId)
|
|
|
+ } else {
|
|
|
+ e = cygx.UpdateResourceData(sourceId, source, publishDate)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("UpdateResourceData, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ sourceDetail, e := cygx.GetCygxResourceDataByIdAndSource(sourceId, source)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("UpdateResourceData, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resourceDataId = sourceDetail.Id
|
|
|
+ }
|
|
|
+
|
|
|
+ //建立首页资源表,与产业的关系
|
|
|
+ industrialList, e := cygx.GetIndustrialActivityGroupManagementList(sourceId, 1)
|
|
|
+ if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+ err = errors.New("GetIndustrialActivityGroupManagementList, Err: " + err.Error() + "activityId:" + strconv.Itoa(sourceId))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var industrialItems []*cygx.CygxResourceDataIndustrialGroupManagement
|
|
|
+ for _, v := range industrialList {
|
|
|
+ var industrialItem = new(cygx.CygxResourceDataIndustrialGroupManagement)
|
|
|
+ industrialItem.SourceId = sourceId
|
|
|
+ industrialItem.Source = source
|
|
|
+ industrialItem.IndustrialManagementId = v.IndustrialManagementId
|
|
|
+ industrialItem.ResourceDataId = resourceDataId
|
|
|
+ industrialItem.CreateTime = time.Now()
|
|
|
+ industrialItems = append(industrialItems, industrialItem)
|
|
|
+ }
|
|
|
+
|
|
|
+ //建立首页资源表,与标的 的关系
|
|
|
+ subjectList, e := cygx.GetSubjectActivityGroupManagementList(sourceId, 1)
|
|
|
+ if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+ err = errors.New("GetIndustrialActivityGroupManagementList, Err: " + err.Error() + "activityId:" + strconv.Itoa(sourceId))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var subjectItems []*cygx.CygxResourceDataIndustrialGroupSubject
|
|
|
+ for _, v := range subjectList {
|
|
|
+ var subjectItem = new(cygx.CygxResourceDataIndustrialGroupSubject)
|
|
|
+ subjectItem.SourceId = sourceId
|
|
|
+ subjectItem.Source = source
|
|
|
+ subjectItem.IndustrialSubjectId = v.IndustrialSubjectId
|
|
|
+ subjectItem.ResourceDataId = resourceDataId
|
|
|
+ subjectItem.CreateTime = time.Now()
|
|
|
+ subjectItems = append(subjectItems, subjectItem)
|
|
|
+ }
|
|
|
+
|
|
|
+ //插入关联信息
|
|
|
+ e = cygx.AddCygxResourceDataGroup(sourceId, source, industrialItems, subjectItems)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("AddCygxResourceDataGroup, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
// 更新报告精选(重点公司)
|
|
|
func UpdateReportSelectionResourceData(sourceId int) (err error) {
|
|
|
defer func() {
|
|
@@ -23,7 +160,8 @@ func UpdateReportSelectionResourceData(sourceId int) (err error) {
|
|
|
var source = utils.CYGX_OBJ_REPORTSELECTION
|
|
|
var condition string
|
|
|
var pars []interface{}
|
|
|
- condition = ` AND visible_range = 1 `
|
|
|
+ condition = ` AND visible_range = 1 AND article_id = ? `
|
|
|
+ pars = append(pars, sourceId)
|
|
|
total, e := cygx.GetCygxReportSelection(condition, pars)
|
|
|
if e != nil {
|
|
|
err = errors.New("GetCygxReportSelection, Err: " + err.Error())
|