diff --git a/link_homework/internal/controller/clientPage/clientPage.go b/link_homework/internal/controller/clientPage/clientPage.go index 7bb2154..9329225 100644 --- a/link_homework/internal/controller/clientPage/clientPage.go +++ b/link_homework/internal/controller/clientPage/clientPage.go @@ -16,7 +16,7 @@ func NewClientPage() *ClientPage { // 查询作业列表 func (c *ClientPage) GetHomeworkList(r *ghttp.Request) { //请求中不需要携带任何参数 - result, err := service.Homework().GetHomeworkList(r.Context()) + result, err := service.Client().ClientGetHomeworkList(r.Context()) if err != nil { r.Response.WriteJsonExit(dto.Result{ Code: 400, @@ -39,8 +39,7 @@ func (c *ClientPage) GetHomeworkQuestion(r *ghttp.Request) { Message: err.Error(), }) } - groupId := req.Id - result, err := service.Homework().GetHomeworkQuestion(r.Context(), groupId) + result, err := service.Client().GetHomeworkQuestion(r.Context(), req.Id) if err != nil { r.Response.WriteJsonExit(dto.Result{ Code: 400, @@ -64,7 +63,7 @@ func (c *ClientPage) CommitHomework(r *ghttp.Request) { }) } - err := service.Homework().CommitHomework(r.Context(), req, jwcode) + err := service.Client().CommitHomework(r.Context(), req, jwcode) if err != nil { r.Response.WriteJsonExit(dto.Result{ Code: 400, @@ -73,21 +72,6 @@ func (c *ClientPage) CommitHomework(r *ghttp.Request) { } r.Response.WriteJsonExit(dto.Result{ Code: 200, - Message: "success", + Message: "提交作业成功", }) - - // - //parts := strings.SplitN(answer, ",", 2) - //// 使用正则表达式提取汉字部分 - //re := regexp.MustCompile(`[\p{Han}]+`) - //matches := re.FindAllString(parts[0], -1) - //// 将 matches 转换为数组 - // - //contentTitle := matches[0] - //fmt.Println(contentTitle) - //re = regexp.MustCompile(`"insert":"(.*?)"`) - //matches = re.FindStringSubmatch(parts[1]) - //content := matches[1] - //fmt.Println(content) - } diff --git a/link_homework/internal/logic/homework/homeworkList.go b/link_homework/internal/logic/client/client.go similarity index 72% rename from link_homework/internal/logic/homework/homeworkList.go rename to link_homework/internal/logic/client/client.go index d54760c..378d3a0 100644 --- a/link_homework/internal/logic/homework/homeworkList.go +++ b/link_homework/internal/logic/client/client.go @@ -1,4 +1,4 @@ -package homework +package client import ( "context" @@ -10,13 +10,13 @@ import ( "link_homework/internal/service" ) -type sHomework struct{} +type sClient struct{} func init() { - service.RegisterHomework(&sHomework{}) + service.RegisterClient(&sClient{}) } -func (s *sHomework) GetHomeworkList(ctx context.Context) (homeworkList []ClientPage.GetHomeworkListRse, err error) { +func (s *sClient) ClientGetHomeworkList(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) @@ -41,40 +41,46 @@ func (s *sHomework) GetHomeworkList(ctx context.Context) (homeworkList []ClientP return } -func (s *sHomework) GetHomeworkQuestion(ctx context.Context, groupId int) (questions []ClientPage.GetHomeworkQuestionRes, err error) { +func (s *sClient) 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 } -func (s *sHomework) CommitHomework(ctx context.Context, req ClientPage.CommitHomeworkReq, jwcode int) (err error) { +func (s *sClient) CommitHomework(ctx context.Context, req ClientPage.CommitHomeworkReq, jwcode int) (err error) { //req中需要有:作业id,提交的每一个题的答案,每一个提的类型 for _, answer := range req.CommitedAnswer { if answer.Type == 1 { //单选或者多选 - num, err := dao.ActivityInteractiveRecord.Ctx(ctx).Data(g.Map{ + _, err := dao.ActivityInteractiveRecord.Ctx(ctx).Data(g.Map{ "jwcode": jwcode, "form_id": answer.Id, "group_id": req.GroupId, "content": answer.Answer[0], }).Insert() - fmt.Println(num, err) + if err != nil { + return err + } } else if answer.Type == 2 { //多选 - num, err := dao.ActivityInteractiveRecord.Ctx(ctx).Data(g.Map{ + _, err := dao.ActivityInteractiveRecord.Ctx(ctx).Data(g.Map{ "jwcode": jwcode, "form_id": answer.Id, "group_id": req.GroupId, "content": answer.Answer, }).Insert() - fmt.Println(num, err) + if err != nil { + return err + } } else if answer.Type == 3 { //简答 - num, err := dao.ActivityInteractiveRecord.Ctx(ctx).Data(g.Map{ + _, err := dao.ActivityInteractiveRecord.Ctx(ctx).Data(g.Map{ "jwcode": jwcode, "form_id": answer.Id, "group_id": req.GroupId, "content_title": answer.Answer[0], "content": answer.Answer[1], }).Insert() - fmt.Println(num, err) + if err != nil { + return err + } } } return diff --git a/link_homework/internal/logic/homework/.gitkeep b/link_homework/internal/logic/homework/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/link_homework/internal/logic/logic.go b/link_homework/internal/logic/logic.go index bd7d6cb..6f83015 100644 --- a/link_homework/internal/logic/logic.go +++ b/link_homework/internal/logic/logic.go @@ -1,6 +1,7 @@ package logic import ( - _ "link_homework/internal/logic/homework" + _ "link_homework/internal/logic/client" + //_ "link_homework/internal/logic/homework" _ "link_homework/internal/logic/record" ) diff --git a/link_homework/internal/service/homework.go b/link_homework/internal/service/client.go similarity index 64% rename from link_homework/internal/service/homework.go rename to link_homework/internal/service/client.go index 1b71bfb..57314c2 100644 --- a/link_homework/internal/service/homework.go +++ b/link_homework/internal/service/client.go @@ -11,24 +11,24 @@ import ( ) type ( - IHomework interface { - GetHomeworkList(ctx context.Context) (homeworkList []ClientPage.GetHomeworkListRse, err error) + IClient interface { + ClientGetHomeworkList(ctx context.Context) (homeworkList []ClientPage.GetHomeworkListRse, err error) GetHomeworkQuestion(ctx context.Context, groupId int) (questions []ClientPage.GetHomeworkQuestionRes, err error) CommitHomework(ctx context.Context, req ClientPage.CommitHomeworkReq, jwcode int) (err error) } ) var ( - localHomework IHomework + localClient IClient ) -func Homework() IHomework { - if localHomework == nil { - panic("implement not found for interface IHomework, forgot register?") +func Client() IClient { + if localClient == nil { + panic("implement not found for interface IClient, forgot register?") } - return localHomework + return localClient } -func RegisterHomework(i IHomework) { - localHomework = i +func RegisterClient(i IClient) { + localClient = i } diff --git a/link_homework/manifest/config/config.yaml b/link_homework/manifest/config/config.yaml index adb2639..3cc374a 100644 --- a/link_homework/manifest/config/config.yaml +++ b/link_homework/manifest/config/config.yaml @@ -18,7 +18,7 @@ database: link: "mysql:cms:AF42R3ib6YkFaemm@tcp(39.101.133.168:3306)/cms?charset=utf8mb4&parseTime=True&loc=Local" debug: true -# redis暂不配置,记得加 +# redis配置 redis: default: addr: "127.0.0.1:6379"