feat(project): menambahkan background_color untuk icon project

This commit is contained in:
Muhammad Zhafran Ilham
2026-06-25 21:03:34 +07:00
parent 66ba749a2e
commit d05505d596
5 changed files with 40 additions and 5 deletions
@@ -8,6 +8,7 @@ const {
ConflictError,
} = require("../../../helpers/error");
const { slugify } = require("../../../helpers/utils/slug");
const { getProjectBackgroundColor } = require("../../../helpers/utils/projectTheme");
class ProjectService {
async createProject(projectPayload, actor) {
@@ -79,6 +80,7 @@ class ProjectService {
id_admin: parseInt(actor.id),
slug: projectSlug,
project_icon: projectData.project_icon,
background_color: getProjectBackgroundColor(projectData.project_icon),
project_name: projectData.project_name,
description: projectData.description || "",
start_date: projectData.start_date,
@@ -116,6 +118,7 @@ class ProjectService {
id: project.id,
slug: project.slug,
project_icon: project.project_icon,
background_color: project.background_color,
project_name: project.project_name,
description: project.description,
start_date: project.start_date,
@@ -208,6 +211,10 @@ class ProjectService {
);
}
if (updateData.project_icon !== undefined) {
updateData.background_color = getProjectBackgroundColor(updateData.project_icon);
}
const updatedProject = await projectRepository.updateById(existingProject.id, updateData);
return data(this.mapProjectDetail(updatedProject));
@@ -300,6 +307,7 @@ class ProjectService {
id: project.id,
slug: project.slug,
project_icon: project.project_icon,
background_color: project.background_color,
project_name: project.project_name,
description: project.description,
certificate_template: project.certificate_template,
@@ -370,6 +378,7 @@ class ProjectService {
id: project.id,
slug: project.slug,
project_icon: project.project_icon,
background_color: project.background_color,
project_name: project.project_name,
description: project.description,
start_date: project.start_date,
@@ -452,6 +461,7 @@ class ProjectService {
id: project.id,
slug: project.slug,
project_icon: project.project_icon,
background_color: project.background_color,
project_name: project.project_name,
description: project.description,
start_date: project.start_date,