forked from zzdboy/GoCMS
/
copyfrom.go
123 lines (101 loc) · 2.9 KB
/
copyfrom.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
// +----------------------------------------------------------------------
// | GoCMS 0.1
// +----------------------------------------------------------------------
// | Copyright (c) 2013-2014 http://www.6574.com.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: zzdboy <zzdboy1616@163.com>
// +----------------------------------------------------------------------
package models
//来源管理
import "time"
import "admin/utils"
import "html/template"
import "github.com/revel/revel"
type Copyfrom struct {
Id int64 `xorm:"pk autoincr"`
Sitename string `xorm:"varchar:(30)"`
Siteurl string `xorm:"varchar(100)"`
Thumb string `xorm:"varchar(100)"`
Createtime string `xorm:"DateTime"`
}
//获取来源列表
func (c *Copyfrom) GetByAll(Page int64, Perpage int64) ([]*Copyfrom, template.HTML) {
copyfrom_list := []*Copyfrom{}
//查询总数
copyfrom := new(Copyfrom)
Total, err := DB_Read.Count(copyfrom)
if err != nil {
revel.WARN.Printf("错误: %v", err)
}
//分页
Pager := new(utils.Page)
Pager.SubPage_link = "/Copyfrom/"
Pager.Nums = Total
Pager.Perpage = Perpage
Pager.Current_page = Page
Pager.SubPage_type = 2
pages := Pager.Show()
//查询数据
DB_Read.Limit(int(Perpage), int((Page-1)*Pager.Perpage)).Find(©from_list)
return copyfrom_list, pages
}
//获取来源列表
func (c *Copyfrom) GetRoleList() []*Copyfrom {
copyfrom_list := []*Copyfrom{}
DB_Read.Find(©from_list)
return copyfrom_list
}
//根据Id获取来源信息
func (c *Copyfrom) GetById(Id int64) *Copyfrom {
copyfrom := new(Copyfrom)
has, err := DB_Read.Id(Id).Get(copyfrom)
if err != nil {
revel.WARN.Println(has)
revel.WARN.Printf("错误: %v", err)
}
return copyfrom
}
//添加来源
func (c *Copyfrom) Save() bool {
copyfrom := new(Copyfrom)
copyfrom.Sitename = c.Sitename
copyfrom.Siteurl = c.Siteurl
copyfrom.Thumb = c.Thumb
copyfrom.Createtime = time.Now().Format("2006-01-02 15:04:04")
has, err := DB_Write.Insert(copyfrom)
if err != nil {
revel.WARN.Println(has)
revel.WARN.Printf("错误: %v", err)
return false
}
return true
}
//编辑来源
func (c *Copyfrom) Edit(Id int64) bool {
copyfrom := new(Copyfrom)
if len(c.Sitename) > 0 {
copyfrom.Sitename = c.Sitename
}
if len(c.Siteurl) > 0 {
copyfrom.Siteurl = c.Siteurl
}
if len(c.Thumb) > 0 {
copyfrom.Thumb = c.Thumb
has, err := DB_Write.Id(Id).Cols("sitename", "siteurl", "thumb").Update(copyfrom)
if err != nil {
revel.WARN.Println(has)
revel.WARN.Printf("错误: %v", err)
return false
}
} else {
has, err := DB_Write.Id(Id).Cols("sitename", "siteurl").Update(copyfrom)
if err != nil {
revel.WARN.Println(has)
revel.WARN.Printf("错误: %v", err)
return false
}
}
return true
}