123456789101112131415161718192021222324252627282930313233343536373839
  1. package controllers
  2. import (
  3. "wechat-conf/models"
  4. "wechat-conf/utils"
  5. )
  6. /**
  7. * Context 说明
  8. * - 所有 stuct 类型均不是指针
  9. * - 包含内容如下
  10. * user SysUser 用户基本信息
  11. * customer TaCustomer 会员基本信息
  12. * userMap TaUserMapping 用户/会员 映射第三方账户
  13. * cases []SysUserCase 用户所有案场信息
  14. * currentCase SysUserCase 当前案场
  15. * org SysOrg 用户当前组织
  16. **/
  17. // initContext 初始化 Context
  18. func (c *BaseController) initContext() {
  19. c.Context = utils.NewContext(models.DBEngine, nil)
  20. c.Context.Ready()
  21. }
  22. // initContext 销毁 Context
  23. func (c *BaseController) destroyContext(ok ...bool) {
  24. if len(ok) == 0 || ok[0] {
  25. c.Context.DB.Commit()
  26. } else {
  27. c.Context.DB.Rollback()
  28. }
  29. c.Context.Destroy()
  30. }
  31. func (c *BaseController) DestroyContext() {
  32. c.destroyContext()
  33. }