Browse Source

12月12日代码编写,对客户端主页查询接口进行修改完善(函数名,提交次数),完成作业题目查询

client_ljk
lijikun 5 months ago
parent
commit
55fb5a16ef
  1. 25
      link_homework/api/v1/ClientPage/ClientPage.go
  2. 1
      link_homework/api/v1/hello.go
  3. 1
      link_homework/internal/cmd/cmd.go
  4. 24
      link_homework/internal/controller/clientPage/clientPage.go
  5. 17
      link_homework/internal/logic/homework/homeworkList.go
  6. 3
      link_homework/internal/service/homework.go

25
link_homework/api/v1/ClientPage/ClientPage.go

@ -1,10 +1,27 @@
package ClientPage
import "github.com/gogf/gf/v2/os/gtime"
import (
"github.com/gogf/gf/v2/os/gtime"
)
type GetHomewordListRse struct {
type GetHomeworkListRse struct {
Id int `json:"id" orm:"table:activity_interactive_group;column:id" dc:"id" `
Name string `json:"content" orm:"table:activity_interactive_group;column:name" dc:"作业题目"`
Name string `json:"name" orm:"table:activity_interactive_group;column:name" dc:"作业题目"`
EndDate *gtime.Time `json:"endData" orm:"table:activity_interactive_group;column:end_date;time_format:yy-MM-dd" dc:"作业截止时间"`
Status int
Submit int `json:"submit"`
}
type GetHomeworkQuestionReq struct {
Id int `json:"id" dc:"作业id"`
}
type GetHomeworkQuestionRes struct {
Id int `json:"id" orm:"table:activity_interactive_form;column:id" dc:"题目id"`
Name string `json:"name" orm:"table:activity_interactive_form;column:name" dc:"作业名称"`
Description string `json:"description" orm:"table:activity_interactive_form;column:description" dc:"作业题目名字"`
Content string `json:"content" orm:"table:activity_interactive_form;column:content" dc:"题目内容"`
Status int `json:"status"`
Type int `json:"type" orm:"table:activity_interactive_form;column:type" dc:"题目类型"`
}
//需要id(group_id)(form表),查id,form.name是作业的题目,form.description是作业题目的名字,content, status,type

1
link_homework/api/v1/hello.go

@ -1 +0,0 @@
package v1

1
link_homework/internal/cmd/cmd.go

@ -46,6 +46,7 @@ var (
//gfToken.Middleware(ctx, group)
//直接写接口,不用再分组
group.POST("/gethomeworklist", clientPage.NewClientPage().GetHomeworkList)
group.POST("/gethomeworkquestion", clientPage.NewClientPage().GetHomeworkQuestion)
})
s.Run()

24
link_homework/internal/controller/clientPage/clientPage.go

@ -2,6 +2,7 @@ package clientPage
import (
"github.com/gogf/gf/v2/net/ghttp"
CPage "link_homework/api/v1/ClientPage"
"link_homework/internal/model/dto"
"link_homework/internal/service"
)
@ -27,3 +28,26 @@ func (c *ClientPage) GetHomeworkList(r *ghttp.Request) {
Data: result,
})
}
func (c *ClientPage) GetHomeworkQuestion(r *ghttp.Request) {
var req CPage.GetHomeworkQuestionReq
if err := r.Parse(&req); err != nil {
r.Response.WriteJsonExit(dto.Result{
Code: 400,
Message: err.Error(),
})
}
groupId := req.Id
result, err := service.Homework().GetHomeworkQuestion(r.Context(), groupId)
if err != nil {
r.Response.WriteJsonExit(dto.Result{
Code: 400,
Message: err.Error(),
})
}
r.Response.WriteJsonExit(dto.Result{
Code: 200,
Message: "success",
Data: result,
})
}

17
link_homework/internal/logic/homework/homeworkList.go

@ -15,7 +15,7 @@ func init() {
service.RegisterHomework(&sHomework{})
}
func (s *sHomework) GetHomeworkList(ctx context.Context) (homeworkList []ClientPage.GetHomewordListRse, err error) {
func (s *sHomework) GetHomeworkList(ctx context.Context) (homeworkList []ClientPage.GetHomeworkListRse, err error) {
var jwcode = 90038794 //需要从token中获取当前的数据
err = dao.ActivityInteractiveGroup.Ctx(ctx).Fields("id", "name", "DATE_FORMAT(end_date, '%Y-%m-%d') as end_date").
Where("end_date>?", gtime.Now()).OrderDesc("end_date").Scan(&homeworkList)
@ -25,12 +25,23 @@ func (s *sHomework) GetHomeworkList(ctx context.Context) (homeworkList []ClientP
}
for i, item := range homeworkList {
var count int
count, err = dao.ActivityInteractiveRecord.Ctx(ctx).Where("group_id=?", item.Id).Where("jwcode", jwcode).Count()
count, err = dao.ActivityInteractiveRecord.Ctx(ctx).Where("group_id=?", item.Id).Where("jwcode", jwcode).Count() //只有精网号和作业id查出来的结果是所需要的结果的题目数倍数
if err != nil {
fmt.Println("提交记录数查询失败:", err)
return
}
homeworkList[i].Status = count
num, err := dao.ActivityInteractiveForm.Ctx(ctx).Where("group", item.Id).Count()
if err != nil {
fmt.Println("题目数查询失败:", err)
return
}
homeworkList[i].Submit = count / num
}
return
}
func (s *sHomework) GetHomeworkQuestion(ctx context.Context, groupId int) (questions []ClientPage.GetHomeworkQuestionRes, err error) {
err = dao.ActivityInteractiveForm.Ctx(ctx).Fields("id", "name", "content", "status", "type").
Where("group_id", groupId).Scan(&questions)
return
}

3
link_homework/internal/service/homework.go

@ -12,7 +12,8 @@ import (
type (
IHomework interface {
GetHomeworkList(ctx context.Context) (homeworkList []ClientPage.GetHomewordListRse, err error)
GetHomeworkList(ctx context.Context) (homeworkList []ClientPage.GetHomeworkListRse, err error)
GetHomeworkQuestion(ctx context.Context, groupId int) (questions []ClientPage.GetHomeworkQuestionRes, err error)
}
)

Loading…
Cancel
Save