胡轶钦 пре 6 година
родитељ
комит
cc0dc2cc7b
4 измењених фајлова са 77 додато и 8 уклоњено
  1. 12
    1
      models/book/book.go
  2. 2
    2
      models/booktype/booktype.go
  3. 49
    0
      service/book/book.go
  4. 14
    5
      service/booktype/booktype.go

+ 12
- 1
models/book/book.go Прегледај датотеку

@@ -36,6 +36,18 @@ func (m *BookDAO) GetBookList(bookType, caseid string, page, pageSize int) ([]mo
36 36
 	err := m.db.Sql(sql).Find(&book)
37 37
 	return book, err
38 38
 
39
+}
40
+func (m *BookDAO) GetBookListCount(bookType, caseid string) (int, error) {
41
+	var book []model.TaBook
42
+	sql := `select * from ta_book where status = '` + strconv.Itoa(models.STATUS_NORMAL) + `'
43
+	and a.case_id in('` + strings.Replace(caseid, ",", "','", -1) + `')`
44
+	if bookType != "" {
45
+		sql += ` and book_type_id = '` + bookType + `'`
46
+	}
47
+	sql += ` order by create_date desc`
48
+	err := m.db.Sql(sql).Find(&book)
49
+	return len(book), err
50
+
39 51
 }
40 52
 
41 53
 func (m *BookDAO) GetBookById(bookId string) (*model.TaBook, error) {
@@ -137,5 +149,4 @@ func (m *BookDAO) GetBookRecommendList(caseid string, page, pageSize int) ([]mod
137 149
 	sql += ` order by create_date desc limit ` + strconv.Itoa((page-1)*pageSize) + `, ` + strconv.Itoa(pageSize)
138 150
 	err := m.db.Sql(sql).Find(&book)
139 151
 	return book, err
140
-
141 152
 }

+ 2
- 2
models/booktype/booktype.go Прегледај датотеку

@@ -57,12 +57,12 @@ func (m *BooktypeDAO) AddBookType(booktype model.TaBookType) (*model.TaBookType,
57 57
 	_, err := m.db.Insert(booktype)
58 58
 	return &booktype, err
59 59
 }
60
-func (m *BooktypeDAO) EditBookType(booktype model.TaBookType) error {
60
+func (m *BooktypeDAO) EditBookType(booktype model.TaBookType) (*model.TaBookType, error) {
61 61
 	var cols = []string{
62 62
 		"book_type_name",
63 63
 		"book_type_img",
64 64
 	}
65 65
 	_, err := m.db.Cols(cols...).Where("book_type_id =?", booktype.BookTypeId).Update(booktype)
66
-	return err
66
+	return &booktype, err
67 67
 
68 68
 }

+ 49
- 0
service/book/book.go Прегледај датотеку

@@ -1,7 +1,10 @@
1 1
 package book
2 2
 
3 3
 import (
4
+	"errors"
4 5
 	"spaceofcheng/services/models/book"
6
+	"spaceofcheng/services/models/model"
7
+	"spaceofcheng/services/service"
5 8
 	"spaceofcheng/services/utils"
6 9
 )
7 10
 
@@ -18,3 +21,49 @@ func NewBookServ(ctx *utils.Context) *BookServ {
18 21
 		dao: book.NewBookDAO(ctx),
19 22
 	}
20 23
 }
24
+func (s *BookServ) GetBooKList(bookType, caseid string, page, pageSize int) (map[string]interface{}, error) {
25
+	if pageSize == 0 {
26
+		pageSize = service.PAGENUM
27
+	}
28
+	list, err := s.dao.GetBookList(bookType, caseid, page, pageSize)
29
+	if err != nil {
30
+		utils.LogError("获取图书列表失败: " + err.Error())
31
+		return nil, errors.New("获取图书列表失败")
32
+	}
33
+	total, err := s.dao.GetBookListCount(bookType, caseid)
34
+	if err != nil {
35
+		utils.LogError("获取图书列表失败: " + err.Error())
36
+		return nil, errors.New("获取图书列表失败")
37
+	}
38
+	return map[string]interface{}{
39
+		"list":     list,
40
+		"pageSize": pageSize,
41
+		"pagenum":  total,
42
+		"page":     page,
43
+	}, nil
44
+}
45
+func (s *BookServ) GetBookById(bookId string) (*model.TaBook, error) {
46
+	book, err := s.dao.GetBookById(bookId)
47
+	if err != nil {
48
+		utils.LogError("获取图书详情失败: " + err.Error())
49
+		return nil, errors.New("获取图书详情失败")
50
+	}
51
+	return book, nil
52
+}
53
+func (s *BookServ) AddBook(book model.TaBook) (*model.TaBook, error) {
54
+	newBook, err := s.dao.AddBook(book)
55
+	if err != nil {
56
+		utils.LogError("新增图书失败: " + err.Error())
57
+		return nil, errors.New("新增图书失败")
58
+	}
59
+	return newBook, err
60
+
61
+}
62
+func (s *BookServ) EditBook(book model.TaBook) error {
63
+	err := s.dao.EditBook(book)
64
+	if err != nil {
65
+		utils.LogError("修改图书失败: " + err.Error())
66
+		return errors.New("修改图书失败")
67
+	}
68
+	return nil
69
+}

+ 14
- 5
service/booktype/booktype.go Прегледај датотеку

@@ -53,11 +53,20 @@ func (s *BooktypeServ) GetBookTypeById(bookTypeId string) (*model.TaBookType, er
53 53
 	return bookType, nil
54 54
 }
55 55
 
56
-func (s *BooktypeServ) AddBookType(booktype model.TaBookType) (*model.TaBookType, error) {
57
-	bookType, err := s.dao.AddBookType(booktype)
58
-	if err != nil {
59
-		utils.LogError("新增图书分类失败: " + err.Error())
60
-		return nil, errors.New("新增图书分类失败")
56
+func (s *BooktypeServ) SaveBookType(booktype model.TaBookType) (*model.TaBookType, error) {
57
+	if booktype.BookTypeId == "" {
58
+		bookType, err := s.dao.AddBookType(booktype)
59
+		if err != nil {
60
+			utils.LogError("新增图书分类失败: " + err.Error())
61
+			return nil, errors.New("新增图书分类失败")
62
+		} else {
63
+			bookType, err := s.dao.EditBookType(booktype)
64
+			if err != nil {
65
+				utils.LogError("修改图书分类失败: " + err.Error())
66
+				return nil, errors.New("修改图书分类失败")
67
+			}
68
+		}
61 69
 	}
70
+
62 71
 	return bookType, nil
63 72
 }