parttimeuseraddlogic.go 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package logic
  2. import (
  3. "context"
  4. "git.i2edu.net/i2/go-zero/core/stores/sqlx"
  5. "git.i2edu.net/i2/i2-bill-api/internal/utils"
  6. "git.i2edu.net/i2/i2-bill-api/model"
  7. "time"
  8. "git.i2edu.net/i2/i2-bill-api/internal/svc"
  9. "git.i2edu.net/i2/i2-bill-api/internal/types"
  10. "git.i2edu.net/i2/go-zero/core/logx"
  11. )
  12. type PartTimeUserAddLogic struct {
  13. logx.Logger
  14. ctx context.Context
  15. svcCtx *svc.ServiceContext
  16. }
  17. func NewPartTimeUserAddLogic(ctx context.Context, svcCtx *svc.ServiceContext) PartTimeUserAddLogic {
  18. return PartTimeUserAddLogic{
  19. Logger: logx.WithContext(ctx),
  20. ctx: ctx,
  21. svcCtx: svcCtx,
  22. }
  23. }
  24. func (l *PartTimeUserAddLogic) PartTimeUserAdd(req types.PartTimeUserAddRequest) (*types.Response, error) {
  25. // todo: add your logic here and delete this line
  26. userId := utils.GetUserIdByJwt(l.ctx)
  27. var bean = new(model.I2billMktPartTimeUser)
  28. err := l.svcCtx.SqlConn.QueryRow(bean, "select * from i2bill_mkt_part_time_user where user_id = ? and del_flag = 0", userId)
  29. if err != nil && err != sqlx.ErrNotFound {
  30. return &types.Response{Code: 500, Msg: err.Error(), Data: nil}, nil
  31. }
  32. if bean.Id != 0 {
  33. if bean.CheckState == 54 {
  34. return &types.Response{Code: 500, Msg: "你的申请兼职人员的个人信息已提交,请等待审核!", Data: nil}, nil
  35. }
  36. if bean.CheckState == 58 {
  37. return &types.Response{Code: 500, Msg: "你的申请兼职人员的个人信息不通过原因:" + bean.CheckDesc, Data: nil}, nil
  38. }
  39. if bean.CheckState == 57 {
  40. return &types.Response{Code: 500, Msg: "你已经是兼职人员:", Data: nil}, nil
  41. }
  42. }
  43. bean = &model.I2billMktPartTimeUser{
  44. CreateTime: time.Now(),
  45. LastUpdateTime: time.Now(),
  46. DelFlag: 0,
  47. MkId: req.MkId,
  48. CreateBy: 1,
  49. CheckState: 54,
  50. CheckDesc: "",
  51. CityId: req.CityId,
  52. IponeNumber: "",
  53. Sex: req.Sex,
  54. Target: 0,
  55. UserId: userId,
  56. LastUpdateBy: 0,
  57. Name: req.Name,
  58. }
  59. res, err := model.NewI2billMktPartTimeUserModel(l.svcCtx.SqlConn).Insert(*bean)
  60. if err != nil {
  61. return &types.Response{Code: 500, Msg: err.Error(), Data: nil}, nil
  62. }
  63. id, _ := res.LastInsertId()
  64. return &types.Response{Code: 200, Msg: "", Data: id}, nil
  65. }