Skip to content

Commit 8f91260

Browse files
authored
Merge pull request #59 from joshsoftware/fix/show_sender_name
Fix/show_sender_name
2 parents 26aa8f8 + d3d9187 commit 8f91260

File tree

3 files changed

+11
-20
lines changed

3 files changed

+11
-20
lines changed

internal/app/appreciation/helper.go

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
package appreciation
22

33
import (
4-
"strconv"
5-
"strings"
64
"github.com/joshsoftware/peerly-backend/internal/pkg/dto"
75
"github.com/joshsoftware/peerly-backend/internal/repository"
86
)
@@ -53,11 +51,8 @@ func mapRepoGetAppreciationInfoToDTOGetAppreciationInfo(info repository.Apprecia
5351
UpdatedAt: info.UpdatedAt,
5452
}
5553

56-
grade := strings.ToUpper(info.SenderGradeName)
57-
if strings.HasPrefix(grade, "J") {
58-
if n, err := strconv.Atoi(strings.TrimPrefix(grade, "J")); err == nil && n >= 3 && n <= 6 {
59-
dtoApprResp.ByManagement = true
60-
}
54+
if info.SenderGradeID != 0 && info.SenderGradeID <= 6 {
55+
dtoApprResp.ByManagement = true
6156
}
6257

6358
return dtoApprResp

internal/repository/appreciation.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ type AppreciationResponse struct {
4646
SenderImageURL sql.NullString `db:"sender_image_url"`
4747
SenderDesignation string `db:"sender_designation"`
4848
SenderEmployeeID string `db:"sender_employee_id"`
49-
SenderGradeName string `db:"sender_grade_name"`
49+
SenderGradeID int64 `db:"sender_grade_id"` // New field for grade ID
5050
ReceiverID int64 `db:"receiver_id"`
5151
ReceiverFirstName string `db:"receiver_first_name"`
5252
ReceiverLastName string `db:"receiver_last_name"`

internal/repository/postgresdb/appreciation.go

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -78,8 +78,6 @@ func (appr *appreciationsStore) GetAppreciationById(ctx context.Context, tx repo
7878
return repository.AppreciationResponse{}, apperrors.InternalServer
7979
}
8080

81-
82-
// Build the SQL query
8381
query, args, err := repository.Sq.Select(
8482
"a.id",
8583
"cv.name AS core_value_name",
@@ -93,7 +91,7 @@ func (appr *appreciationsStore) GetAppreciationById(ctx context.Context, tx repo
9391
"u_sender.last_name AS sender_last_name",
9492
"u_sender.profile_image_url AS sender_image_url",
9593
"u_sender.designation AS sender_designation",
96-
"g_sender.name AS sender_grade_name",
94+
"u_sender.grade_id AS sender_grade_id",
9795
"u_receiver.id AS receiver_id",
9896
"u_receiver.first_name AS receiver_first_name",
9997
"u_receiver.last_name AS receiver_last_name",
@@ -104,21 +102,20 @@ func (appr *appreciationsStore) GetAppreciationById(ctx context.Context, tx repo
104102
"COUNT(r.id) AS total_rewards",
105103
fmt.Sprintf(
106104
`COALESCE((
107-
SELECT SUM(r2.point)
108-
FROM rewards r2
109-
WHERE r2.appreciation_id = a.id AND r2.sender = %d
110-
), 0) AS given_reward_point`, userID),
105+
SELECT SUM(r2.point)
106+
FROM rewards r2
107+
WHERE r2.appreciation_id = a.id AND r2.sender = %d
108+
), 0) AS given_reward_point`, userID),
111109
).From(appr.AppreciationsTable+" a").
112110
LeftJoin(appr.UsersTable+" u_sender ON a.sender = u_sender.id").
113-
LeftJoin("grades g_sender ON u_sender.grade_id = g_sender.id").
114111
LeftJoin(appr.UsersTable+" u_receiver ON a.receiver = u_receiver.id").
115112
LeftJoin(appr.CoreValuesTable+" cv ON a.core_value_id = cv.id").
116113
LeftJoin(appr.RewardsTable+" r ON a.id = r.appreciation_id").
117114
Where(squirrel.And{
118115
squirrel.Eq{"a.id": apprId},
119116
squirrel.Eq{"a.is_valid": true},
120117
}).
121-
GroupBy("a.id", "cv.name", "cv.description", "u_sender.id", "g_sender.name", "u_receiver.id").
118+
GroupBy("a.id", "cv.name", "cv.description", "u_sender.id", "u_receiver.id"). // Removed g_sender.name from GroupBy
122119
ToSql()
123120

124121
if err != nil {
@@ -217,7 +214,7 @@ func (appr *appreciationsStore) ListAppreciations(ctx context.Context, tx reposi
217214
"u_sender.profile_image_url AS sender_image_url",
218215
"u_sender.designation AS sender_designation",
219216
"u_sender.employee_id AS sender_employee_id",
220-
"g_sender.name AS sender_grade_name",
217+
"u_sender.grade_id AS sender_grade_id", // Select grade_id directly
221218
"u_receiver.id AS receiver_id",
222219
"u_receiver.first_name AS receiver_first_name",
223220
"u_receiver.last_name AS receiver_last_name",
@@ -234,9 +231,8 @@ func (appr *appreciationsStore) ListAppreciations(ctx context.Context, tx reposi
234231
WHERE r2.appreciation_id = a.id AND r2.sender = %d
235232
), 0) AS given_reward_point`, userID),
236233
).
237-
LeftJoin("grades g_sender ON u_sender.grade_id = g_sender.id").
238234
LeftJoin("rewards r ON a.id = r.appreciation_id").
239-
GroupBy("a.id", "cv.name", "cv.description", "u_sender.id", "g_sender.name", "u_receiver.id")
235+
GroupBy("a.id", "cv.name", "cv.description", "u_sender.id", "u_receiver.id")
240236

241237
if filter.SortOrder != "" {
242238
queryBuilder = queryBuilder.OrderBy(fmt.Sprintf("a.created_at %s", filter.SortOrder))

0 commit comments

Comments
 (0)