feat: enhance job and user models with additional fields
- Added VideoID, UserID, and TimeLimit fields to the job model. - Removed unused referral fields from the user model. - Updated job creation and update logic to handle new fields. - Refactored job service to work with updated job model. - Replaced cache interface with Redis adapter in service layer. - Introduced a Dead Letter Queue (DLQ) for failed jobs in Redis. - Updated gRPC server to accommodate changes in job handling. - Removed obsolete cache package and related files.
This commit is contained in:
@@ -45,6 +45,9 @@ func newJob(db *gorm.DB, opts ...gen.DOOption) job {
|
||||
_job.CreatedAt = field.NewTime(tableName, "created_at")
|
||||
_job.UpdatedAt = field.NewTime(tableName, "updated_at")
|
||||
_job.Version = field.NewInt64(tableName, "version")
|
||||
_job.VideoID = field.NewString(tableName, "video_id")
|
||||
_job.UserID = field.NewString(tableName, "user_id")
|
||||
_job.TimeLimit = field.NewInt64(tableName, "time_limit")
|
||||
|
||||
_job.fillFieldMap()
|
||||
|
||||
@@ -72,6 +75,9 @@ type job struct {
|
||||
CreatedAt field.Time
|
||||
UpdatedAt field.Time
|
||||
Version field.Int64
|
||||
VideoID field.String
|
||||
UserID field.String
|
||||
TimeLimit field.Int64
|
||||
|
||||
fieldMap map[string]field.Expr
|
||||
}
|
||||
@@ -105,6 +111,9 @@ func (j *job) updateTableName(table string) *job {
|
||||
j.CreatedAt = field.NewTime(table, "created_at")
|
||||
j.UpdatedAt = field.NewTime(table, "updated_at")
|
||||
j.Version = field.NewInt64(table, "version")
|
||||
j.VideoID = field.NewString(table, "video_id")
|
||||
j.UserID = field.NewString(table, "user_id")
|
||||
j.TimeLimit = field.NewInt64(table, "time_limit")
|
||||
|
||||
j.fillFieldMap()
|
||||
|
||||
@@ -129,7 +138,7 @@ func (j *job) GetFieldByName(fieldName string) (field.OrderExpr, bool) {
|
||||
}
|
||||
|
||||
func (j *job) fillFieldMap() {
|
||||
j.fieldMap = make(map[string]field.Expr, 17)
|
||||
j.fieldMap = make(map[string]field.Expr, 20)
|
||||
j.fieldMap["id"] = j.ID
|
||||
j.fieldMap["status"] = j.Status
|
||||
j.fieldMap["priority"] = j.Priority
|
||||
@@ -147,6 +156,9 @@ func (j *job) fillFieldMap() {
|
||||
j.fieldMap["created_at"] = j.CreatedAt
|
||||
j.fieldMap["updated_at"] = j.UpdatedAt
|
||||
j.fieldMap["version"] = j.Version
|
||||
j.fieldMap["video_id"] = j.VideoID
|
||||
j.fieldMap["user_id"] = j.UserID
|
||||
j.fieldMap["time_limit"] = j.TimeLimit
|
||||
}
|
||||
|
||||
func (j job) clone(db *gorm.DB) job {
|
||||
|
||||
@@ -37,12 +37,6 @@ func newUser(db *gorm.DB, opts ...gen.DOOption) user {
|
||||
_user.GoogleID = field.NewString(tableName, "google_id")
|
||||
_user.StorageUsed = field.NewInt64(tableName, "storage_used")
|
||||
_user.PlanID = field.NewString(tableName, "plan_id")
|
||||
_user.ReferredByUserID = field.NewString(tableName, "referred_by_user_id")
|
||||
_user.ReferralEligible = field.NewBool(tableName, "referral_eligible")
|
||||
_user.ReferralRewardBps = field.NewInt32(tableName, "referral_reward_bps")
|
||||
_user.ReferralRewardGrantedAt = field.NewTime(tableName, "referral_reward_granted_at")
|
||||
_user.ReferralRewardPaymentID = field.NewString(tableName, "referral_reward_payment_id")
|
||||
_user.ReferralRewardAmount = field.NewFloat64(tableName, "referral_reward_amount")
|
||||
_user.CreatedAt = field.NewTime(tableName, "created_at")
|
||||
_user.UpdatedAt = field.NewTime(tableName, "updated_at")
|
||||
_user.Version = field.NewInt64(tableName, "version")
|
||||
@@ -64,18 +58,12 @@ type user struct {
|
||||
Avatar field.String
|
||||
Role field.String
|
||||
GoogleID field.String
|
||||
StorageUsed field.Int64
|
||||
PlanID field.String
|
||||
ReferredByUserID field.String
|
||||
ReferralEligible field.Bool
|
||||
ReferralRewardBps field.Int32
|
||||
ReferralRewardGrantedAt field.Time
|
||||
ReferralRewardPaymentID field.String
|
||||
ReferralRewardAmount field.Float64
|
||||
CreatedAt field.Time
|
||||
UpdatedAt field.Time
|
||||
Version field.Int64
|
||||
TelegramID field.String
|
||||
StorageUsed field.Int64
|
||||
PlanID field.String
|
||||
CreatedAt field.Time
|
||||
UpdatedAt field.Time
|
||||
Version field.Int64
|
||||
TelegramID field.String
|
||||
|
||||
fieldMap map[string]field.Expr
|
||||
}
|
||||
@@ -101,12 +89,6 @@ func (u *user) updateTableName(table string) *user {
|
||||
u.GoogleID = field.NewString(table, "google_id")
|
||||
u.StorageUsed = field.NewInt64(table, "storage_used")
|
||||
u.PlanID = field.NewString(table, "plan_id")
|
||||
u.ReferredByUserID = field.NewString(table, "referred_by_user_id")
|
||||
u.ReferralEligible = field.NewBool(table, "referral_eligible")
|
||||
u.ReferralRewardBps = field.NewInt32(table, "referral_reward_bps")
|
||||
u.ReferralRewardGrantedAt = field.NewTime(table, "referral_reward_granted_at")
|
||||
u.ReferralRewardPaymentID = field.NewString(table, "referral_reward_payment_id")
|
||||
u.ReferralRewardAmount = field.NewFloat64(table, "referral_reward_amount")
|
||||
u.CreatedAt = field.NewTime(table, "created_at")
|
||||
u.UpdatedAt = field.NewTime(table, "updated_at")
|
||||
u.Version = field.NewInt64(table, "version")
|
||||
@@ -135,7 +117,7 @@ func (u *user) GetFieldByName(fieldName string) (field.OrderExpr, bool) {
|
||||
}
|
||||
|
||||
func (u *user) fillFieldMap() {
|
||||
u.fieldMap = make(map[string]field.Expr, 19)
|
||||
u.fieldMap = make(map[string]field.Expr, 13)
|
||||
u.fieldMap["id"] = u.ID
|
||||
u.fieldMap["email"] = u.Email
|
||||
u.fieldMap["password"] = u.Password
|
||||
@@ -145,12 +127,6 @@ func (u *user) fillFieldMap() {
|
||||
u.fieldMap["google_id"] = u.GoogleID
|
||||
u.fieldMap["storage_used"] = u.StorageUsed
|
||||
u.fieldMap["plan_id"] = u.PlanID
|
||||
u.fieldMap["referred_by_user_id"] = u.ReferredByUserID
|
||||
u.fieldMap["referral_eligible"] = u.ReferralEligible
|
||||
u.fieldMap["referral_reward_bps"] = u.ReferralRewardBps
|
||||
u.fieldMap["referral_reward_granted_at"] = u.ReferralRewardGrantedAt
|
||||
u.fieldMap["referral_reward_payment_id"] = u.ReferralRewardPaymentID
|
||||
u.fieldMap["referral_reward_amount"] = u.ReferralRewardAmount
|
||||
u.fieldMap["created_at"] = u.CreatedAt
|
||||
u.fieldMap["updated_at"] = u.UpdatedAt
|
||||
u.fieldMap["version"] = u.Version
|
||||
|
||||
Reference in New Issue
Block a user