wechatmenu.go 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package wechatmenu
  2. import (
  3. "strconv"
  4. "time"
  5. "wechat-conf/models"
  6. "wechat-conf/models/model"
  7. "wechat-conf/utils"
  8. "github.com/go-xorm/xorm"
  9. )
  10. // WechatMenuDAO 当前数据库操作对象
  11. type WechatMenuDAO struct {
  12. ctx *utils.Context
  13. db *xorm.Session
  14. }
  15. // NewWechatMenuDAO New Inst
  16. func NewWechatMenuDAO(ctx *utils.Context) *WechatMenuDAO {
  17. return &WechatMenuDAO{
  18. ctx: ctx,
  19. db: ctx.DB,
  20. }
  21. }
  22. func (m *WechatMenuDAO) GetWechatMenuByOrgId(orgId string) (*model.TaWechatMenu, error) {
  23. var menu []model.TaWechatMenu
  24. sql := `SELECT * FROM ta_wechat_menu where status > ` + strconv.Itoa(models.STATUS_DEL) + `
  25. and org_id = '` + orgId + `'`
  26. err := m.db.Sql(sql).Find(&menu)
  27. if len(menu) > 0 {
  28. return &menu[0], err
  29. }
  30. return nil, err
  31. }
  32. func (m *WechatMenuDAO) AddWechatMenu(menu model.TaWechatMenu) (*model.TaWechatMenu, error) {
  33. menu.WechatConfigId = utils.GetGUID()
  34. menu.Status = models.STATUS_NORMAL
  35. menu.CreateDate = time.Now()
  36. _, err := m.db.Insert(menu)
  37. return &menu, err
  38. }
  39. func (m *WechatMenuDAO) UpdateWechatMenu(menu model.TaWechatMenu) error {
  40. var cols = []string{
  41. "wechat_config_json",
  42. }
  43. _, err := m.db.Cols(cols...).Where("wechat_config_id = ?", menu.WechatConfigId).Update(menu)
  44. return err
  45. }
  46. func (m *WechatMenuDAO) DeleteWechatMenu(wechatConfigId string) error {
  47. var menu = model.TaWechatMenu{
  48. WechatConfigId: wechatConfigId,
  49. Status: models.STATUS_DEL,
  50. }
  51. var cols = []string{
  52. "status",
  53. }
  54. _, err := m.db.Cols(cols...).Where("wechat_config_id = ?", menu.WechatConfigId).Update(menu)
  55. return err
  56. }