| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218 |
- package teacher
- import (
- "encoding/json"
- "runtime/debug"
- "bet24.com/servers/coreservice/dbengine"
- "bet24.com/database"
- "bet24.com/log"
- )
- // 绑码奖励
- func sysBindAward() []*bindAward {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var list []*bindAward
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserTeacher_SysBindAward")
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- rowLen := len(retRows)
- if rowLen <= 0 {
- return list
- }
- for i := 0; i < rowLen; i++ {
- ret := retRows[i]
- var out bindAward
- out.AwardID = int((ret[0]).(int64))
- out.Students = int((ret[1]).(int64))
- out.Profit = int((ret[2]).(int64))
- list = append(list, &out)
- }
- return list
- }
- // 注册
- func register(userId int) int {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserTeacher_Register")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- sqlString := statement.GenSql()
- retRow := dbengine.CenterDB.ExecSql(sqlString)
- if len(retRow) <= 0 {
- return 0
- }
- return int((retRow[0][0]).(int64))
- }
- // 师父信息
- func info(teacherId int) *teacher {
- var list []*teacher
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserTeacher_GetInfo")
- statement.AddParamter("@TeacherID", database.AdParamInput, database.AdInteger, 4, teacherId)
- sqlString := statement.GenSql()
- jsonData := dbengine.CenterDB.ExecSqlJson(sqlString)
- if err := json.Unmarshal([]byte(jsonData), &list); err != nil {
- log.Error("teacher.info.transaction json unmarshal err %v", err)
- }
- if len(list) <= 0 {
- return nil
- }
- return list[0]
- }
- // 绑定
- func bind(studentId, teacherId int) (int, int) {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserTeacher_Bind")
- statement.AddParamter("@StudentID", database.AdParamInput, database.AdInteger, 4, studentId)
- statement.AddParamter("@TeacherID", database.AdParamInput, database.AdInteger, 4, teacherId)
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- if len(retRows) <= 0 {
- return 0, 0
- }
- retCode := int((retRows[0][0]).(int64))
- amount := int((retRows[0][1]).(int64))
- return retCode, amount
- }
- // 徒弟列表
- func students(teacherId int) []*student {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var list []*student
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserTeacher_GetStudentList")
- statement.AddParamter("@TeacherID", database.AdParamInput, database.AdInteger, 4, teacherId)
- sqlstring := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- rowLen := len(retRows)
- if rowLen <= 0 {
- return list
- }
- for i := 0; i < rowLen; i++ {
- ret := retRows[i]
- var out student
- out.StudentID = int((ret[0]).(int64))
- out.Profit = int((ret[1]).(int64))
- out.Crdate = (ret[2]).(string)
- list = append(list, &out)
- }
- return list
- }
- // 收益列表
- func profitList(teacherId, days, pageIndex, pageSize int) (int, []*profit) {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var recordCount int
- var list []*profit
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserTeacher_GetProfitList")
- statement.AddParamter("@TeacherID", database.AdParamInput, database.AdInteger, 4, teacherId)
- statement.AddParamter("@Days", database.AdParamInput, database.AdInteger, 4, days)
- statement.AddParamter("@PageIndex", database.AdParamInput, database.AdInteger, 4, pageIndex)
- statement.AddParamter("@PageSize", database.AdParamInput, database.AdInteger, 4, pageSize)
- statement.AddParamter("@RecordCount", database.AdParamOutput, database.AdInteger, 4, recordCount)
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- rowLen := len(retRows)
- if rowLen <= 0 {
- return recordCount, list
- }
- if rowLen > 1 {
- for i := 0; i < rowLen-1; i++ {
- ret := retRows[i]
- var out profit
- out.Rid = int((ret[0]).(int64))
- out.StudentID = int((ret[1]).(int64))
- out.Profit = int((ret[2]).(int64))
- out.Price = int((ret[3]).(int64))
- list = append(list, &out)
- }
- }
- recordCount = int((retRows[rowLen-1][0]).(int64))
- return recordCount, list
- }
- // 扣减收益
- func reduceProfit(userId, profit, profitType int) int {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserTeacher_ReduceProfit")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@Profit", database.AdParamInput, database.AdInteger, 4, profit)
- statement.AddParamter("@ProfitType", database.AdParamInput, database.AdInteger, 4, profitType)
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- if len(retRows) <= 0 {
- return 0
- }
- return int((retRows[0][0]).(int64))
- }
|