|
@@ -11,6 +11,8 @@ import (
|
|
|
"time"
|
|
|
)
|
|
|
|
|
|
+var defaultTime = time.Date(2006, time.January, 2, 15, 4, 5, 0, time.Local)
|
|
|
+
|
|
|
// 考试开始时间
|
|
|
func Begin(c *gin.Context) {
|
|
|
param := new(webServerEntity.ExamPao)
|
|
@@ -103,31 +105,49 @@ func End(c *gin.Context) {
|
|
|
}
|
|
|
|
|
|
// 分页查询
|
|
|
+// todo 如果日期为默认值,则返回空""
|
|
|
func Page(c *gin.Context) {
|
|
|
param := new(webServerEntity.ExamPagePao)
|
|
|
_ = c.ShouldBindJSON(¶m)
|
|
|
var resultPos []webServerEntity.ExamPo
|
|
|
- var selectSql string
|
|
|
+ var resultPosTotal []int
|
|
|
+ var pageSql string
|
|
|
+ var totalSql string
|
|
|
offset := (param.CurrentPage - 1) * param.PageSize
|
|
|
size := param.PageSize
|
|
|
if param.TeamName == "" && param.Topic == "" {
|
|
|
- selectSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-page.sql"])
|
|
|
- _ = c_db.MysqlDb.Select(&resultPos, selectSql, offset, size)
|
|
|
+ pageSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-page.sql"])
|
|
|
+ totalSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-total.sql"])
|
|
|
+ err := c_db.MysqlDb.Select(&resultPos, pageSql, offset, size)
|
|
|
+ if err != nil {
|
|
|
+ c_log.GlobalLogger.Error(err)
|
|
|
+ }
|
|
|
+ err = c_db.MysqlDb.Select(&resultPosTotal, totalSql)
|
|
|
+ if err != nil {
|
|
|
+ c_log.GlobalLogger.Error(err)
|
|
|
+ }
|
|
|
}
|
|
|
if param.TeamName != "" && param.Topic == "" {
|
|
|
- selectSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-page-by-team_name.sql"])
|
|
|
- _ = c_db.MysqlDb.Select(&resultPos, selectSql, "%"+param.TeamName+"%", offset, size)
|
|
|
+ pageSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-page-by-team_name.sql"])
|
|
|
+ totalSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-total-by-team_name.sql"])
|
|
|
+ _ = c_db.MysqlDb.Select(&resultPos, pageSql, "%"+param.TeamName+"%", offset, size)
|
|
|
+ _ = c_db.MysqlDb.Select(&resultPosTotal, totalSql, "%"+param.TeamName+"%")
|
|
|
}
|
|
|
if param.TeamName == "" && param.Topic != "" {
|
|
|
- selectSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-page-by-topic.sql"])
|
|
|
- _ = c_db.MysqlDb.Select(&resultPos, selectSql, "%"+param.Topic+"%", offset, size)
|
|
|
+ pageSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-page-by-topic.sql"])
|
|
|
+ totalSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-total-by-topic.sql"])
|
|
|
+ _ = c_db.MysqlDb.Select(&resultPos, pageSql, "%"+param.Topic+"%", offset, size)
|
|
|
+ _ = c_db.MysqlDb.Select(&resultPosTotal, totalSql, "%"+param.Topic+"%")
|
|
|
}
|
|
|
if param.TeamName != "" && param.Topic != "" {
|
|
|
- selectSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-page-by-team_name-and-topic.sql"])
|
|
|
- _ = c_db.MysqlDb.Select(&resultPos, selectSql, "%"+param.TeamName+"%", "%"+param.Topic+"%", offset, size)
|
|
|
+ pageSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-page-by-team_name-and-topic.sql"])
|
|
|
+ totalSql, _ = util.ReadFile(c_db.SqlFilesMap["exam-select-total-by-team_name-and-topic.sql"])
|
|
|
+ _ = c_db.MysqlDb.Select(&resultPos, pageSql, "%"+param.TeamName+"%", "%"+param.Topic+"%", offset, size)
|
|
|
+ _ = c_db.MysqlDb.Select(&resultPosTotal, totalSql, "%"+param.TeamName+"%", "%"+param.Topic+"%")
|
|
|
}
|
|
|
var resultVos []webServerEntity.ExamVo
|
|
|
for _, po := range resultPos {
|
|
|
+
|
|
|
resultVos = append(resultVos, webServerEntity.ExamVo{
|
|
|
Id: po.Id,
|
|
|
TeamName: po.TeamName,
|
|
@@ -143,8 +163,25 @@ func Page(c *gin.Context) {
|
|
|
}
|
|
|
|
|
|
c.JSON(http.StatusOK, commonEntity.Response{
|
|
|
- Code: 200,
|
|
|
- Msg: "分页查询成功!",
|
|
|
- Data: resultVos,
|
|
|
+ Code: 200,
|
|
|
+ Msg: "分页查询成功!",
|
|
|
+ Data: resultVos,
|
|
|
+ Total: resultPosTotal[0],
|
|
|
})
|
|
|
}
|
|
|
+
|
|
|
+//// 评分报告pdf下载
|
|
|
+//func Report(c *gin.Context) {
|
|
|
+// param := new(webServerEntity.ExamReportPao)
|
|
|
+// _ = c.ShouldBindJSON(¶m)
|
|
|
+// // 1 根据ID查询数据
|
|
|
+// // 2 根据数据生成pdf
|
|
|
+// // 3 返回pdf文件流
|
|
|
+//
|
|
|
+// c.JSON(http.StatusOK, commonEntity.Response{
|
|
|
+// Code: 200,
|
|
|
+// Msg: "分页查询成功!",
|
|
|
+// Data: resultVos,
|
|
|
+// Total: resultPosTotal[0],
|
|
|
+// })
|
|
|
+//}
|