12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- package svc
- import (
- "git.i2edu.net/i2/i2-bill-erp/internal/config"
- "git.i2edu.net/i2/i2-bill-erp/model"
- "github.com/xormplus/xorm"
- "git.i2edu.net/i2/go-zero/core/stores/sqlx"
- )
- type ServiceContext struct {
- Config config.Config
- SqlConn sqlx.SqlConn
- ErpUtil *ErpUtil
- StudentModel model.StudentModel
- MktResourceModel model.MktResourceModel
- SysUserModel model.SysUserModel
- MktPartTimeUser model.MktPartTimeUserModel
- ExcelExportLog model.ExcelExportLogModel
- MktStudentMarketActivityModel model.MktStudentMarketActivityModel
- DB *xorm.Engine
- }
- func NewServiceContext(c config.Config) *ServiceContext {
- db, err := xorm.NewEngine("mysql", c.DataSource)
- if err != nil {
- panic(err)
- }
- db.RegisterSqlMap(xorm.Xml("sqlconfig", ".xml"))
- db.RegisterSqlTemplate(xorm.Pongo2("sqlconfig", ".stpl"))
- db.RegisterSqlTemplate(xorm.Jet("sqlconfig", ".jet"))
- db.RegisterSqlTemplate(xorm.Default("sqlconfig", ".tpl"))
- db.ShowSQL(true)
- sc := ServiceContext{
- Config: c,
- SqlConn: sqlx.NewMysql(c.DataSource),
- ErpUtil: &ErpUtil{},
- DB: db,
- }
- sc.StudentModel = model.NewStudentModel(sc.SqlConn, c.Cache)
- sc.SysUserModel = model.NewSysUserModel(sc.SqlConn, c.Cache)
- sc.MktPartTimeUser = model.NewMktPartTimeUserModel(sc.SqlConn, c.Cache)
- sc.ExcelExportLog = model.NewExcelExportLogModel(sc.SqlConn, c.Cache)
- sc.MktResourceModel = model.NewMktResourceModel(sc.SqlConn, c.Cache)
- sc.MktStudentMarketActivityModel = model.NewMktStudentMarketActivityModel(sc.SqlConn, c.Cache)
- sc.ErpUtil.SqlConn = sc.SqlConn
- sc.ErpUtil.Config = sc.Config
- return &sc
- }
|