enterprise.go 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package service
  2. import (
  3. "context"
  4. "github.com/issue9/conv"
  5. "math/rand"
  6. "time"
  7. "youngee_b_api/db"
  8. "youngee_b_api/model/gorm_model"
  9. "youngee_b_api/model/http_model"
  10. log "github.com/sirupsen/logrus"
  11. )
  12. var Enterprise *enterprise
  13. type enterprise struct {
  14. }
  15. func (*enterprise) CreateEnterpriseUser(ctx context.Context, newEnterprise http_model.RegisterRequest) (*http_model.RegisterData, error) {
  16. user := gorm_model.YounggeeUser{
  17. Phone: newEnterprise.Phone,
  18. User: "1001",
  19. Username: newEnterprise.BusinessName,
  20. Password: "1001",
  21. RealName: newEnterprise.RealName,
  22. Role: "3",
  23. Email: newEnterprise.Email,
  24. LastLoginTime: time.Now().UTC().Local(),
  25. }
  26. userId, err := db.CreateUser(ctx, user)
  27. if err != nil {
  28. log.Infof("[CreateEnterpriseUser] fail,err:%+v", err)
  29. return nil, err
  30. } else {
  31. rand.Seed(time.Now().UnixNano())
  32. th := conv.MustString(time.Now().Hour())
  33. tm := conv.MustString(time.Now().Minute())
  34. if len(tm) < 2 {
  35. tm = "0" + tm
  36. }
  37. if len(tm) < 2 {
  38. th = "0" + th
  39. }
  40. ShowEnterpriseID := "1" + th + tm + conv.MustString(rand.Intn(10000-1000)+1000)
  41. enterprise := &gorm_model.Enterprise{
  42. EnterpriseID: ShowEnterpriseID,
  43. Industry: newEnterprise.Industry,
  44. BusinessName: newEnterprise.BusinessName,
  45. UserID: *userId,
  46. Balance: 0,
  47. FrozenBalance: 0,
  48. AvailableBalance: 0,
  49. }
  50. enterpriseId, err := db.CreateEnterprise(ctx, *enterprise)
  51. if err != nil {
  52. log.Infof("[CreateEnterpriseUser] fail,err:%+v", err)
  53. return nil, err
  54. }
  55. res := &http_model.RegisterData{
  56. EnterpriseId: *enterpriseId,
  57. UserID: *userId,
  58. }
  59. return res, nil
  60. }
  61. }