transaction.go 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package warning
  2. import (
  3. "runtime/debug"
  4. "time"
  5. "bet24.com/database"
  6. "bet24.com/log"
  7. "bet24.com/servers/adminserver/dao"
  8. "bet24.com/servers/common"
  9. )
  10. // 预警检查
  11. func warningCheck(moneySearchTime, lotterySearchTime, regTime, transferTime time.Time) *warningItem {
  12. defer func() {
  13. if err := recover(); err != nil {
  14. log.Error("transaction recover err %v", err)
  15. log.Error("%s", debug.Stack())
  16. }
  17. }()
  18. statement := database.NewStatement()
  19. statement.SetNeedReturnValue(false)
  20. statement.SetOpenRecordSet(true)
  21. statement.SetProcName("Manage_Warning_Search")
  22. statement.AddParamter("@MoneySearchTime", database.AdParamInput, database.AdVarChar, 32, moneySearchTime.Format(common.Layout))
  23. statement.AddParamter("@LotterySearchTime", database.AdParamInput, database.AdVarChar, 32, lotterySearchTime.Format(common.Layout))
  24. statement.AddParamter("@RegTime", database.AdParamInput, database.AdVarChar, 32, regTime.Format(common.Layout))
  25. statement.AddParamter("@TransferTime", database.AdParamInput, database.AdVarChar, 32, transferTime.Format(common.Layout))
  26. sqlString := statement.GenSql()
  27. // log.Debug(sqlString)
  28. retRows := dao.CenterDB.ExecSql(sqlString)
  29. rowLen := len(retRows)
  30. if rowLen <= 0 {
  31. return nil
  32. }
  33. ret := retRows[0]
  34. var info warningItem
  35. info.moneyStock = int((*ret[0].(*interface{})).(int64))
  36. info.lotteryStock = int((*ret[1].(*interface{})).(int64))
  37. info.regCount = int((*ret[2].(*interface{})).(int64))
  38. info.transferTimes = int((*ret[3].(*interface{})).(int64))
  39. return &info
  40. }