initdb.go 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package resource
  2. import (
  3. businessModel "dy-admin/internal/pcmserver/bus/model"
  4. "dy-admin/internal/pcmserver/global"
  5. "dy-admin/internal/pcmserver/pkg/code"
  6. "dy-admin/internal/pcmserver/resource/bus"
  7. "dy-admin/internal/pcmserver/resource/sys"
  8. systemModel "dy-admin/internal/pcmserver/sys/model"
  9. systemService "dy-admin/internal/pcmserver/sys/service"
  10. "dy-admin/pkg/rescode"
  11. "github.com/gin-gonic/gin"
  12. )
  13. func InitData(c *gin.Context) {
  14. if err := sys.InitSystemData(); err != nil {
  15. rescode.WriteErrResponse(c, rescode.RegisterErrorWithCause(err, code.ErrCodeMap[code.ErrDatabaseCode]))
  16. return
  17. }
  18. if err := bus.InitBusinessData(); err != nil {
  19. rescode.WriteErrResponse(c, rescode.RegisterErrorWithCause(err, code.ErrCodeMap[code.ErrDatabaseCode]))
  20. return
  21. }
  22. rescode.WriteSuccessResponse(c, nil)
  23. return
  24. }
  25. func UpdateData(c *gin.Context) {
  26. if err := sys.UpdateSystemData(); err != nil {
  27. rescode.WriteErrResponse(c, rescode.RegisterErrorWithCause(err, code.ErrCodeMap[code.ErrDatabaseCode]))
  28. return
  29. }
  30. rescode.WriteSuccessResponse(c, nil)
  31. return
  32. }
  33. func InitDB() {
  34. // 系统表
  35. sysModel := []interface{}{&systemModel.Api{}, &systemModel.Dept{}, &systemModel.Menu{}, &systemModel.Role{},
  36. &systemModel.User{}, &systemModel.OperationRecord{}, &systemModel.LoginLog{}}
  37. // 业务表
  38. busModel := []interface{}{&businessModel.Cabinet{}, &businessModel.Grid{}, &businessModel.Staff{}, &businessModel.CabinetTime{},
  39. &businessModel.WorkTime{}, &businessModel.SpecialTime{}, &businessModel.LeaveLog{}, &businessModel.GridOpenLog{},
  40. &businessModel.GridStoreLog{}, &businessModel.GridWarnLog{}, &businessModel.DeviceLog{}, &businessModel.CronLog{}, &businessModel.ConnectLog{}, &businessModel.BusConfig{}}
  41. dst := make([]interface{}, 0)
  42. dst = append(dst, sysModel...)
  43. dst = append(dst, busModel...)
  44. // 建表
  45. err := global.DB.AutoMigrate(dst...)
  46. if err != nil {
  47. panic(err)
  48. }
  49. // casbin
  50. systemService.CasbinServiceInstance.Casbin()
  51. }
  52. // curl localhost:9099/base/initData