quiz count
This commit is contained in:
		@@ -24,12 +24,14 @@ type QuizController interface {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type quizController struct {
 | 
			
		||||
	service services.QuizService
 | 
			
		||||
	service          services.QuizService
 | 
			
		||||
	quizPaperService services.QuizPaperService
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func NewQuizController(service services.QuizService) QuizController {
 | 
			
		||||
func NewQuizController(service services.QuizService, quizPaperService services.QuizPaperService) QuizController {
 | 
			
		||||
	return &quizController{
 | 
			
		||||
		service: service,
 | 
			
		||||
		service:          service,
 | 
			
		||||
		quizPaperService: quizPaperService,
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -174,6 +176,24 @@ func (controller *quizController) Create(c *gin.Context) {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	count, err := controller.service.QuizCount(request.QuizPaperID)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	quizpaper, err := controller.quizPaperService.Find(request.QuizPaperID)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	quizpaper.QuizCount = int(count)
 | 
			
		||||
	_, err = controller.quizPaperService.Update(quizpaper)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	c.JSON(http.StatusOK, result)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -264,7 +284,7 @@ func (controller *quizController) Delete(c *gin.Context) {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	_, err = controller.service.Find(id)
 | 
			
		||||
	quiz, err := controller.service.Find(id)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
 | 
			
		||||
		return
 | 
			
		||||
@@ -276,5 +296,23 @@ func (controller *quizController) Delete(c *gin.Context) {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	count, err := controller.service.QuizCount(quiz.QuizPaperID)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	quizpaper, err := controller.quizPaperService.Find(quiz.QuizPaperID)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	quizpaper.QuizCount = int(count)
 | 
			
		||||
	_, err = controller.quizPaperService.Update(quizpaper)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	c.JSON(http.StatusOK, gin.H{"message": "success"})
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -285,6 +285,7 @@ func (controller *quizPaperController) Copy(c *gin.Context) {
 | 
			
		||||
		Content:   template.Content,
 | 
			
		||||
		Category:  template.Category,
 | 
			
		||||
		Tag:       template.Tag,
 | 
			
		||||
		QuizCount: 0,
 | 
			
		||||
		Status:    template.Status,
 | 
			
		||||
		CreatedAt: time.Now(),
 | 
			
		||||
		UpdatedAt: time.Now(),
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user