package wechatcontent import ( "strconv" "time" "wechat-conf/models" "wechat-conf/models/model" "wechat-conf/utils" "github.com/go-xorm/xorm" ) // WechatContentDAO 当前数据库操作对象 type WechatContentDAO struct { ctx *utils.Context db *xorm.Session } // NewWechatContentDAO New Inst func NewWechatContentDAO(ctx *utils.Context) *WechatContentDAO { return &WechatContentDAO{ ctx: ctx, db: ctx.DB, } } func (m *WechatContentDAO) GetWechatContentList(orgId string, page, pagesize int) ([]model.TaWechatContent, error) { var content []model.TaWechatContent sql := `SELECT * FROM ta_wechat_content where status > ` + strconv.Itoa(models.STATUS_DEL) + ` and org_id = '` + orgId + `'` sql += ` order by create_date desc limit ` + strconv.Itoa((page-1)*pagesize) + `, ` + strconv.Itoa(pagesize) err := m.db.Sql(sql).Find(&content) return content, err } func (m *WechatContentDAO) GetWechatContentListCount(orgId string) (int, error) { var content []model.TaWechatContent sql := `SELECT * FROM ta_wechat_content where status > ` + strconv.Itoa(models.STATUS_DEL) + ` and org_id = '` + orgId + `'` err := m.db.Sql(sql).Find(&content) return len(content), err } func (m *WechatContentDAO) GetWechatContentByMediaId(mediaId string) (*model.TaWechatContent, error) { var content []model.TaWechatContent sql := `SELECT * FROM ta_wechat_content where media_id = '` + mediaId + `'` err := m.db.Sql(sql).Find(&content) if len(content) > 0 { return &content[0], err } return nil, err } func (m *WechatContentDAO) AddWechatContent(content model.TaWechatContent) error { content.CreateDate = time.Now() content.Status = models.STATUS_NORMAL _, err := m.db.Insert(content) return err } func (m *WechatContentDAO) DeleteWechatContent(mediaId string) error { var content = model.TaWechatContent{ MediaId: mediaId, Status: models.STATUS_DEL, } var cols = []string{ "status", } _, err := m.db.Cols(cols...).Where("media_id = ?", content.MediaId).Update(content) return err }