|
@@ -5,8 +5,13 @@ import (
|
|
|
"hongze/hongze_yb/global"
|
|
|
chartEdbMappingModel "hongze/hongze_yb/models/tables/chart_edb_mapping"
|
|
|
chartInfoModel "hongze/hongze_yb/models/tables/chart_info"
|
|
|
+ company2 "hongze/hongze_yb/models/tables/company"
|
|
|
edbDataModel "hongze/hongze_yb/models/tables/edb_data"
|
|
|
edbInfoModel "hongze/hongze_yb/models/tables/edb_info"
|
|
|
+ "hongze/hongze_yb/models/tables/my_chart_classify"
|
|
|
+ "hongze/hongze_yb/models/tables/yb_chart_daily_visit_log"
|
|
|
+ "hongze/hongze_yb/models/tables/yb_chart_visit_log"
|
|
|
+ "hongze/hongze_yb/services/user"
|
|
|
"hongze/hongze_yb/utils"
|
|
|
"sort"
|
|
|
"strconv"
|
|
@@ -580,5 +585,59 @@ func GetEdbInfoCalculateMap(edbInfoId, source int) (list []*edbInfoModel.EdbInfo
|
|
|
WHERE a.edb_info_id=? ORDER BY sort ASC `
|
|
|
err = global.MYSQL["data"].Exec(sql, edbInfoId).Error
|
|
|
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+// SaveChartVisitLog 保存图表访问记录
|
|
|
+func SaveChartVisitLog(userInfo user.UserInfo, chartInfo *chartInfoModel.ChartInfoView, myChartClassifyId int) (err error) {
|
|
|
+ userId := int(userInfo.UserID)
|
|
|
+ companyId := int(userInfo.CompanyID)
|
|
|
+ chartInfoId := chartInfo.ChartInfoId
|
|
|
+ // 访问记录
|
|
|
+ visitLog := new(yb_chart_visit_log.YbChartVisitLog)
|
|
|
+ visitLog.CompanyId = companyId
|
|
|
+ companyInfo, err := company2.GetByCompanyId(userInfo.CompanyID)
|
|
|
+ if err == nil {
|
|
|
+ visitLog.CompanyName = companyInfo.CompanyName
|
|
|
+ }
|
|
|
+ visitLog.UserId = userId
|
|
|
+ visitLog.Mobile = userInfo.Mobile
|
|
|
+ visitLog.Email = userInfo.Email
|
|
|
+ visitLog.ChartInfoId = chartInfoId
|
|
|
+ visitLog.ChartName = chartInfo.ChartName
|
|
|
+ visitLog.CreateTime = time.Now().Local()
|
|
|
+ visitLog.Create()
|
|
|
+
|
|
|
+ // 每日访问记录,用户/天/图仅记录一次
|
|
|
+ if myChartClassifyId > 0 {
|
|
|
+ // 今日是否已访问
|
|
|
+ nowTime := time.Now().Local()
|
|
|
+ startTime := time.Date(nowTime.Year(), nowTime.Month(), nowTime.Day(), 0, 0, 0, 0, time.Local)
|
|
|
+ endTime := time.Date(nowTime.Year(), nowTime.Month(), nowTime.Day(), 23, 59, 59, 0, time.Local)
|
|
|
+ _, tmpErr := yb_chart_daily_visit_log.GetTodayVisitLog(userId, chartInfoId, myChartClassifyId, startTime, endTime)
|
|
|
+ if tmpErr == nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ myChartClassify, tmpErr := my_chart_classify.GetClassifyById(myChartClassifyId)
|
|
|
+ if tmpErr != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ dailyLog := new(yb_chart_daily_visit_log.YbChartDailyVisitLog)
|
|
|
+ dailyLog.CompanyId = companyId
|
|
|
+ if companyInfo != nil {
|
|
|
+ dailyLog.CompanyName = companyInfo.CompanyName
|
|
|
+ }
|
|
|
+ dailyLog.UserId = userId
|
|
|
+ dailyLog.Mobile = userInfo.Mobile
|
|
|
+ dailyLog.Email = userInfo.Email
|
|
|
+ dailyLog.ChartInfoId = chartInfoId
|
|
|
+ dailyLog.ChartName = chartInfo.ChartName
|
|
|
+ dailyLog.MyChartClassifyId = myChartClassifyId
|
|
|
+ dailyLog.MyChartClassifyName = myChartClassify.MyChartClassifyName
|
|
|
+ dailyLog.CreateTime = time.Now().Local()
|
|
|
+ dailyLog.Create()
|
|
|
+ }
|
|
|
+
|
|
|
return
|
|
|
}
|