package levelMonitor import ( "fmt" "github.com/gin-gonic/gin" "go.uber.org/zap" "log-server/global" "log-server/model/common/response" "log-server/model/levelMonitor" "log-server/model/levelMonitor/request" "log-server/utils" "strconv" ) type ImageRecordApi struct { } //创建图片记录 func (a *ImageRecordApi) CreateImageRecord(c *gin.Context) { var record levelMonitor.ImageRecord _ = c.ShouldBindJSON(&record) if err := utils.Verify(record, utils.ImageRecordVerify); err != nil { response.FailWithMessage(err.Error(), c) return } if err := imageRecordService.CreateImageRecord(record); err != nil { global.GVA_LOG.Error("创建失败!"+err.Error(), zap.Error(err)) response.FailWithMessage("创建失败"+err.Error(), c) } else { response.OkWithMessage("创建成功", c) } } func (a *ImageRecordApi) UpLevel(c *gin.Context) { var record request.CreateLevelRequest _ = c.ShouldBindJSON(&record) if err := utils.Verify(record, utils.ImageRecordVerify); err != nil { response.FailWithMessage(err.Error(), c) return } if err := imageRecordService.CreateLevel(record); err != nil { response.FailWithMessage("创建失败"+err.Error(), c) } else { response.OkWithMessage("创建成功", c) } } func (a *ImageRecordApi) UploadOrNot(c *gin.Context) { var record levelMonitor.ImageRecord _ = c.ShouldBindJSON(&record) if record.TaskId == 0 { response.FailWithMessage("任务id不能为空", c) } global.GVA_LOG.Info("gameId = " + strconv.Itoa(record.TaskId) + "account = " + record.Account) if err := imageRecordService.UploadOrNot(record); err != nil { response.FailWithMessage("不用上传", c) } else { response.OkWithMessage("可以上传", c) } } //删除三天前的图片记录 //func (a *ImageRecordApi) DeleteExpireImageRecord (c *gin.Context) {} //查询图片记录列表 func (a *ImageRecordApi) GetImageRecordList(c *gin.Context) { var paramsInfo request.SearchImageRecordParams _ = c.ShouldBindJSON(¶msInfo) if err := utils.Verify(paramsInfo.PageInfo, utils.PageInfoVerify); err != nil { response.FailWithMessage(err.Error(), c) return } list, total, err := imageRecordService.GetImageRecordList(paramsInfo.ImageRecordRequest, paramsInfo.PageInfo, paramsInfo.OrderKey, paramsInfo.Desc) if err != nil { global.GVA_LOG.Error("获取失败!", zap.Error(err)) response.FailWithMessage("获取失败", c) } else { response.OkWithDetailed(response.PageResult{ List: list, Total: total, Page: paramsInfo.Page, PageSize: paramsInfo.PageSize, }, "获取成功", c) } } //获取7日数据 func (a *ImageRecordApi) GetWeekImageRecordStatistics(c *gin.Context) { var weekDataRequest request.WeekImageRecordStatisticsRequest _ = c.ShouldBindJSON(&weekDataRequest) if weekDataRequest.TaskId == 0 { response.FailWithMessage("请传入task_id", c) return } if weekDataRequest.CreateDate == "" { response.FailWithMessage("请传入create_date", c) return } list, err := imageRecordService.GetWeekImageRecordStatistics(weekDataRequest.TaskId, weekDataRequest.CreateDate) if err != nil { global.GVA_LOG.Error("获取失败!", zap.Error(err)) response.FailWithMessage("获取失败", c) } else { response.OkWithDetailed(list, "获取成功", c) } } //获取等级统计数据列表 func (a *ImageRecordApi) GetImageRecordStatisticsList(c *gin.Context) { var paramsInfo request.SearchImageRecordStatisticsParams _ = c.ShouldBindJSON(¶msInfo) if err := utils.Verify(paramsInfo.PageInfo, utils.PageInfoVerify); err != nil { response.FailWithMessage(err.Error(), c) return } list, total, err := imageRecordService.GetImageRecordStatisticsList(paramsInfo.ImageRecordStatisticsRequest, paramsInfo.PageInfo, paramsInfo.OrderKey, paramsInfo.Desc) if err != nil { global.GVA_LOG.Error("获取失败!", zap.Error(err)) response.FailWithMessage("获取失败", c) } else { response.OkWithDetailed(response.PageResult{ List: list, Total: total, Page: paramsInfo.Page, PageSize: paramsInfo.PageSize, }, "获取成功", c) } } //导出等级统计数据列表 func (a *ImageRecordApi) ImageRecordStatisticsExport(c *gin.Context) { var excelInfo request.ExcelImageRecordStatistics _ = c.ShouldBindJSON(&excelInfo) fmt.Println(excelInfo) paramsInfo := excelInfo.InfoList paramsInfo.PageSize = 300 paramsInfo.Page = 1 if err := utils.Verify(paramsInfo.PageInfo, utils.PageInfoVerify); err != nil { response.FailWithMessage(err.Error(), c) return } list, _, err := imageRecordService.GetImageRecordStatisticsList(paramsInfo.ImageRecordStatisticsRequest, paramsInfo.PageInfo, paramsInfo.OrderKey, paramsInfo.Desc) if err != nil { global.GVA_LOG.Error("获取失败!", zap.Error(err)) response.FailWithMessage("获取失败 "+err.Error(), c) } //var nowTime string = time.Now().Format("2006-01-02_15:04") //excelInfo.FileName = nowTime + "-ip.xlsx" //fmt.Println(excelInfo.FileName) filePath := global.GVA_CONFIG.Excel.Dir + excelInfo.FileName err = imageRecordService.ImageRecordStatisticsListExcel(list, filePath) if err != nil { global.GVA_LOG.Error("转换Excel失败!", zap.Error(err)) response.FailWithMessage("转换Excel失败", c) return } c.Writer.Header().Add("success", "true") c.File(filePath) }