Browse Source

12月18日调整logic层与service层名字,功能未变动,删除不属于这个分支的文件

details_ljk
lijikun 5 months ago
parent
commit
5b963fdb5d
  1. 27
      link_homework/api/v1/ClientPage/ClientPage.go
  2. 3
      link_homework/internal/cmd/cmd.go
  3. 53
      link_homework/internal/controller/clientPage/clientPage.go
  4. 16
      link_homework/internal/controller/record/manageRecord.go
  5. 47
      link_homework/internal/logic/homework/homeworkList.go
  6. 1
      link_homework/internal/logic/logic.go
  7. 14
      link_homework/internal/logic/record/record.go
  8. 33
      link_homework/internal/service/homework.go

27
link_homework/api/v1/ClientPage/ClientPage.go

@ -1,27 +0,0 @@
package ClientPage
import (
"github.com/gogf/gf/v2/os/gtime"
)
type GetHomeworkListRse struct {
Id int `json:"id" orm:"table:activity_interactive_group;column:id" dc:"id" `
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:"作业截止时间"`
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

3
link_homework/internal/cmd/cmd.go

@ -5,7 +5,6 @@ import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/net/ghttp"
"github.com/gogf/gf/v2/os/gcmd"
"link_homework/internal/controller/clientPage"
"link_homework/internal/controller/record"
"link_homework/internal/logic/middleware"
)
@ -51,8 +50,6 @@ var (
//group.Middleware(middleware.MiddlewareIsLogin)
//gfToken.Middleware(ctx, group)
//直接写接口,不用再分组
group.POST("/gethomeworklist", clientPage.NewClientPage().GetHomeworkList)
group.POST("/gethomeworkquestion", clientPage.NewClientPage().GetHomeworkQuestion)
})
s.Run()

53
link_homework/internal/controller/clientPage/clientPage.go

@ -1,53 +0,0 @@
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"
)
type ClientPage struct{}
func NewClientPage() *ClientPage {
return &ClientPage{}
}
func (c *ClientPage) GetHomeworkList(r *ghttp.Request) {
//请求中不需要携带任何参数
result, err := service.Homework().GetHomeworkList(r.Context())
if err != nil {
r.Response.WriteJsonExit(dto.Result{
Code: 400,
Message: err.Error(),
})
}
r.Response.WriteJsonExit(dto.Result{
Code: 200,
Message: "success",
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,
})
}

16
link_homework/internal/controller/record/manageRecord.go

@ -22,10 +22,7 @@ func (m *ManageRecord) GetRecordList(r *ghttp.Request) {
Message: err.Error(),
})
}
groupId := req.Id
pageNo := req.PageNo
pageSize := req.PageSize
result, err := service.Record().GetRecordList(r.Context(), groupId, pageNo, pageSize)
result, err := service.Record().GetRecordList(r.Context(), req.Id, req.PageNo, req.PageSize)
if err != nil {
r.Response.WriteJsonExit(dto.Result{
Code: 400,
@ -48,13 +45,7 @@ func (m *ManageRecord) GetRecordByCondition(r *ghttp.Request) {
Message: err.Error(),
})
}
groupId := req.Id
jwcode := req.Jwcode
deptId := req.DeptId
shopId := req.ShopId
pageNo := req.PageNo
pageSize := req.PageSize
result, err := service.Record().GetRecordByCondition(r.Context(), groupId, jwcode, deptId, shopId, pageNo, pageSize)
result, err := service.Record().GetRecordByCondition(r.Context(), req.Id, req.Jwcode, req.DeptId, req.ShopId, req.PageNo, req.PageSize)
if err != nil {
r.Response.WriteJsonExit(dto.Result{
Code: 400,
@ -93,8 +84,7 @@ func (m *ManageRecord) GetShopInfo(r *ghttp.Request) {
Message: err.Error(),
})
}
deptId := req.DeptId
result, err := service.Record().GetShopInfoByDeptId(r.Context(), deptId)
result, err := service.Record().GetShopInfoByDeptId(r.Context(), req.DeptId)
if err != nil {
r.Response.WriteJsonExit(dto.Result{
Code: 400,

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

@ -1,47 +0,0 @@
package homework
import (
"context"
"fmt"
"github.com/gogf/gf/v2/os/gtime"
"link_homework/api/v1/ClientPage"
"link_homework/internal/dao"
"link_homework/internal/service"
)
type sHomework struct{}
func init() {
service.RegisterHomework(&sHomework{})
}
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)
if err != nil {
fmt.Println("作业列表查询失败:", err)
return
}
for i, item := range homeworkList {
var count int
count, err = dao.ActivityInteractiveRecord.Ctx(ctx).Where("group_id=?", item.Id).Where("jwcode", jwcode).Count() //只有精网号和作业id查出来的结果是所需要的结果的题目数倍数
if err != nil {
fmt.Println("提交记录数查询失败:", err)
return
}
num, err1 := dao.ActivityInteractiveForm.Ctx(ctx).Where("group", item.Id).Count()
if err1 != nil {
fmt.Println("题目数查询失败:", err1, num)
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
}

1
link_homework/internal/logic/logic.go

@ -1,6 +1,5 @@
package logic
import (
_ "link_homework/internal/logic/homework"
_ "link_homework/internal/logic/record"
)

14
link_homework/internal/logic/record/record.go

@ -27,7 +27,7 @@ func (s *sRecord) GetRecordList(ctx context.Context, groupId, pageNo, pageSize i
err = dao.ActivityInteractiveRecord.Ctx(ctx).Fields("jwcode").Where("group_id", groupId).Group("jwcode").
Page(pageNo, pageSize).Scan(&record)
if err != nil {
panic("无条件查jwcode失败")
return nil, errors.New("无条件查jwcode失败")
}
fmt.Println(record)
@ -36,7 +36,7 @@ func (s *sRecord) GetRecordList(ctx context.Context, groupId, pageNo, pageSize i
err = g.DB("cms").Model("member_info").Fields("jwcode", "name", "deptId", "deptName", "shopId", "shopName").
Where("jwcode", info.Jwcode).Scan(&record[i])
if err != nil {
panic("无条件根据jwcode查member_info表失败")
return nil, errors.New("无条件根据jwcode查member_info表失败")
}
total, err1 := dao.ActivityInteractiveRecord.Ctx(ctx).Fields("jwcode").Where("group_id", groupId).Group("jwcode").Count()
if err1 != nil {
@ -47,8 +47,14 @@ func (s *sRecord) GetRecordList(ctx context.Context, groupId, pageNo, pageSize i
var recordInfo []dto.RecordInfo
err = dao.ActivityInteractiveRecord.Ctx(ctx).Fields("content", "content_title", "updated_at", "form_id").
Where("jwcode", info.Jwcode).Where("group_id", groupId).Group("form_id").Order("updated_at desc").Scan(&recordInfo) //不是最新的,需要再改
if err != nil {
return nil, err
}
for i, title := range recordInfo {
err = dao.ActivityInteractiveForm.Ctx(ctx).Fields("description", "type").Where("id", title.FormId).Scan(&recordInfo[i])
if err != nil {
return nil, err
}
}
record[i].Reply = recordInfo
fmt.Println(record)
@ -61,12 +67,12 @@ func (s *sRecord) GetRecordByCondition(ctx context.Context, groupId, jwcode int,
//全查
recordList, err := s.GetRecordList(ctx, groupId, pageNo, pageSize)
if err != nil {
return nil, err
return recordList, err
}
//判断传来的jwcode, deptId, shopId是否为空,根据情况进行不同的筛选
if jwcode == 0 { //没有传jwcode
if deptId == "" && shopId == "" { //000
return recordList, nil
return recordList, err
} else if deptId != "" && shopId == "" { //010
for _, info := range recordList {
if info.DeptId == deptId {

33
link_homework/internal/service/homework.go

@ -1,33 +0,0 @@
// ================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// You can delete these comments if you wish manually maintain this interface file.
// ================================================================================
package service
import (
"context"
"link_homework/api/v1/ClientPage"
)
type (
IHomework interface {
GetHomeworkList(ctx context.Context) (homeworkList []ClientPage.GetHomeworkListRse, err error)
GetHomeworkQuestion(ctx context.Context, groupId int) (questions []ClientPage.GetHomeworkQuestionRes, err error)
}
)
var (
localHomework IHomework
)
func Homework() IHomework {
if localHomework == nil {
panic("implement not found for interface IHomework, forgot register?")
}
return localHomework
}
func RegisterHomework(i IHomework) {
localHomework = i
}
Loading…
Cancel
Save