|
@@ -1130,6 +1130,7 @@ func init() {
|
|
//fixApproveRecord()
|
|
//fixApproveRecord()
|
|
//fixChapterPermission()
|
|
//fixChapterPermission()
|
|
//fixReportEs()
|
|
//fixReportEs()
|
|
|
|
+ //fixSmartReport()
|
|
}
|
|
}
|
|
|
|
|
|
// 修复研报审批数据
|
|
// 修复研报审批数据
|
|
@@ -1283,3 +1284,146 @@ func fixReportEs() {
|
|
|
|
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+// fixSmartReport
|
|
|
|
+// @Description: 修复智能研报的数据
|
|
|
|
+// @author: Roc
|
|
|
|
+// @datetime 2024-06-27 16:54:41
|
|
|
|
+func fixSmartReport() {
|
|
|
|
+ fmt.Println("修复智能研报开始")
|
|
|
|
+ // 先判断是否已经修复过数据,如果修复过,那么就不用修复了
|
|
|
|
+ {
|
|
|
|
+ condition := ` AND report_layout=2 and old_report_id>0 `
|
|
|
|
+ list, err := models.GetReportByCondition(condition, []interface{}{}, []string{}, " order by id asc ", false, 0, 0)
|
|
|
|
+ if err != nil {
|
|
|
|
+ fmt.Println("获取已修复的报告列表失败, Err:" + err.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ if len(list) > 0 {
|
|
|
|
+ fmt.Println("智能研报已经修复过数据,不需要再次修复")
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ var condition string
|
|
|
|
+ var pars []interface{}
|
|
|
|
+ reportOB := new(smart_report.SmartReport)
|
|
|
|
+ list, e := reportOB.GetItemsByCondition(condition, pars, []string{}, " smart_report_id asc ")
|
|
|
|
+ if e != nil {
|
|
|
|
+ fmt.Println("获取智能报告列表失败, Err:" + e.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ addList := make([]*models.Report, 0)
|
|
|
|
+ for _, v := range list {
|
|
|
|
+ fmt.Println(v)
|
|
|
|
+ addList = append(addList, &models.Report{
|
|
|
|
+ //Id: 0,
|
|
|
|
+ AddType: 1,
|
|
|
|
+ ClassifyIdFirst: v.ClassifyIdFirst,
|
|
|
|
+ ClassifyNameFirst: v.ClassifyNameFirst,
|
|
|
|
+ ClassifyIdSecond: v.ClassifyIdSecond,
|
|
|
|
+ ClassifyNameSecond: v.ClassifyNameSecond,
|
|
|
|
+ Title: v.Title,
|
|
|
|
+ Abstract: v.Abstract,
|
|
|
|
+ Author: v.Author,
|
|
|
|
+ Frequency: v.Frequency,
|
|
|
|
+ CreateTime: v.CreateTime.Format(utils.FormatDateTime),
|
|
|
|
+ ModifyTime: v.ModifyTime,
|
|
|
|
+ State: v.State,
|
|
|
|
+ PublishTime: v.PublishTime,
|
|
|
|
+ Stage: v.Stage,
|
|
|
|
+ MsgIsSend: v.MsgIsSend,
|
|
|
|
+ //ThsMsgIsSend: v.Tha,
|
|
|
|
+ Content: v.Content,
|
|
|
|
+ VideoUrl: v.VideoUrl,
|
|
|
|
+ VideoName: v.VideoName,
|
|
|
|
+ VideoPlaySeconds: fmt.Sprint(v.VideoPlaySeconds),
|
|
|
|
+ VideoSize: v.VideoSize,
|
|
|
|
+ ContentSub: v.ContentSub,
|
|
|
|
+ ReportCode: fmt.Sprint(v.SmartReportId),
|
|
|
|
+ ReportVersion: 1,
|
|
|
|
+ HasChapter: 0,
|
|
|
|
+ ChapterType: "",
|
|
|
|
+ OldReportId: v.SmartReportId,
|
|
|
|
+ MsgSendTime: v.MsgSendTime,
|
|
|
|
+ AdminId: v.AdminId,
|
|
|
|
+ AdminRealName: v.AdminRealName,
|
|
|
|
+ ApproveTime: v.ApproveTime,
|
|
|
|
+ ApproveId: v.ApproveId,
|
|
|
|
+ DetailImgUrl: v.DetailImgUrl,
|
|
|
|
+ DetailPdfUrl: v.DetailPdfUrl,
|
|
|
|
+ ContentStruct: v.ContentStruct,
|
|
|
|
+ LastModifyAdminId: v.LastModifyAdminId,
|
|
|
|
+ LastModifyAdminName: v.LastModifyAdminName,
|
|
|
|
+ ContentModifyTime: v.ContentModifyTime,
|
|
|
|
+ Pv: v.Pv,
|
|
|
|
+ Uv: v.Uv,
|
|
|
|
+ HeadImg: v.HeadImg,
|
|
|
|
+ EndImg: v.EndImg,
|
|
|
|
+ CanvasColor: v.CanvasColor,
|
|
|
|
+ NeedSplice: v.NeedSplice,
|
|
|
|
+ HeadResourceId: v.HeadResourceId,
|
|
|
|
+ EndResourceId: v.EndResourceId,
|
|
|
|
+ ClassifyIdThird: 0,
|
|
|
|
+ ClassifyNameThird: "",
|
|
|
|
+ CollaborateType: 1,
|
|
|
|
+ ReportLayout: 2,
|
|
|
|
+ IsPublicPublish: 1,
|
|
|
|
+ ReportCreateTime: v.CreateTime,
|
|
|
|
+ InheritReportId: 0,
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if len(addList) > 0 {
|
|
|
|
+ err := models.InsertMultiReport(addList)
|
|
|
|
+ if err != nil {
|
|
|
|
+ fmt.Println("新增智能研报失败")
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ reportMap := make(map[int]*models.Report)
|
|
|
|
+ // 找出已经修复过的新的研报
|
|
|
|
+ {
|
|
|
|
+ reportList, tmpErr := models.GetReportByCondition(` AND report_layout=2 and old_report_id>0 `, []interface{}{}, []string{}, " order by id asc ", false, 0, 0)
|
|
|
|
+ if tmpErr != nil {
|
|
|
|
+ fmt.Println("获取已修复的报告列表失败, Err:" + tmpErr.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ for _, v := range reportList {
|
|
|
|
+ v.ReportCode = utils.MD5(strconv.Itoa(v.Id))
|
|
|
|
+ v.Update([]string{"ReportCode"})
|
|
|
|
+ reportMap[v.OldReportId] = v
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 找出智能研报的审批单并处理
|
|
|
|
+ {
|
|
|
|
+
|
|
|
|
+ // 智能研报走审批单的
|
|
|
|
+ reportApproveObj := new(report_approve.ReportApprove)
|
|
|
|
+
|
|
|
|
+ approveList, tmpErr := reportApproveObj.GetItemsByCondition(` AND report_type=3 `, []interface{}{}, []string{}, " report_approve_id asc ")
|
|
|
|
+ if tmpErr != nil {
|
|
|
|
+ fmt.Println("获取已修复的报告列表失败, Err:" + tmpErr.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ for _, v := range approveList {
|
|
|
|
+ reportInfo, ok := reportMap[v.ReportId]
|
|
|
|
+ if ok {
|
|
|
|
+ v.ReportId = reportInfo.Id
|
|
|
|
+ v.ReportType = 1
|
|
|
|
+ err = v.Update([]string{"ReportType", "ReportId"})
|
|
|
|
+ if err != nil {
|
|
|
|
+ fmt.Println(v.ReportApproveId, "数据修复失败,其对应的报告ID是:", v.ReportId, ";新的报告ID是:", reportInfo.Id)
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ fmt.Println(v.ReportApproveId, "找不到对应的报告,其对应的报告ID是:", v.ReportId)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ fmt.Println("修复智能研报完成")
|
|
|
|
+}
|