crud: sparepart
This commit is contained in:
@@ -16,7 +16,7 @@ const {
|
||||
|
||||
const {
|
||||
getSparePartnsByErrorCodeIdDb,
|
||||
} = require('../db/brand_sparepart.db');
|
||||
} = require('../db/sparepart.db');
|
||||
|
||||
const {
|
||||
getAllNotificationErrorLogDb,
|
||||
|
||||
109
services/sparepart.service.js
Normal file
109
services/sparepart.service.js
Normal file
@@ -0,0 +1,109 @@
|
||||
const {
|
||||
getAllSparepartDb,
|
||||
getSparepartByIdDb,
|
||||
createSparepartDb,
|
||||
updateSparepartDb,
|
||||
deleteSparepartDb,
|
||||
checkSparepartNameExistsDb,
|
||||
} = require("../db/sparepart.db");
|
||||
|
||||
|
||||
const { ErrorHandler } = require("../helpers/error");
|
||||
|
||||
class SparepartService {
|
||||
static async getAllSparepart(param) {
|
||||
try {
|
||||
const results = await getAllSparepartDb(param);
|
||||
results.data.map((item) => {});
|
||||
return results;
|
||||
} catch (error) {
|
||||
throw new ErrorHandler(error.statusCode || 500, error.message);
|
||||
}
|
||||
}
|
||||
static async getSparepartById(id) {
|
||||
try {
|
||||
const Sparepart = await getSparepartByIdDb(id);
|
||||
if (!Sparepart) throw new ErrorHandler(404, "Sparepart not found");
|
||||
return Sparepart;
|
||||
} catch (error) {
|
||||
throw new ErrorHandler(error.statusCode || 500, error.message);
|
||||
}
|
||||
}
|
||||
|
||||
static async createSparepart(data) {
|
||||
try {
|
||||
if (!data || typeof data !== "object") data = {};
|
||||
if (data.sparepart_name) {
|
||||
const exists = await checkSparepartNameExistsDb(data.sparepart_name);
|
||||
if (exists)
|
||||
throw new ErrorHandler(400, "Sparepart name already exists");
|
||||
}
|
||||
const insertData = {
|
||||
sparepart_name: data.sparepart_name,
|
||||
sparepart_description: data.sparepart_description,
|
||||
sparepart_foto: data.sparepart_foto,
|
||||
sparepart_stok: data.sparepart_stok,
|
||||
sparepart_model: data.sparepart_model,
|
||||
sparepart_merk: data.sparepart_merk,
|
||||
sparepart_qty: data.sparepart_qty,
|
||||
sparepart_item_type: data.sparepart_item_type,
|
||||
sparepart_unit: data.sparepart_unit,
|
||||
created_by: data.created_by,
|
||||
};
|
||||
const created = await createSparepartDb(insertData);
|
||||
if (!created) throw new ErrorHandler(500, "Failed to create Sparepart");
|
||||
return created;
|
||||
} catch (error) {
|
||||
throw new ErrorHandler(error.statusCode || 500, error.message);
|
||||
}
|
||||
}
|
||||
|
||||
static async updateSparepart(id, data) {
|
||||
try {
|
||||
const existing = await getSparepartByIdDb(id);
|
||||
if (!existing) throw new ErrorHandler(404, "Sparepart not found");
|
||||
if (
|
||||
data.sparepart_name &&
|
||||
data.sparepart_name !== existing.sparepart_name
|
||||
) {
|
||||
const exists = await checkSparepartNameExistsDb(
|
||||
data.sparepart_name,
|
||||
id
|
||||
);
|
||||
if (exists)
|
||||
throw new ErrorHandler(400, "Sparepart name already exists");
|
||||
}
|
||||
const updateData = {
|
||||
sparepart_name: data.sparepart_name,
|
||||
sparepart_description: data.sparepart_description,
|
||||
sparepart_foto: data.sparepart_foto,
|
||||
sparepart_stok: data.sparepart_stok,
|
||||
sparepart_model: data.sparepart_model,
|
||||
sparepart_merk: data.sparepart_merk,
|
||||
sparepart_qty: data.sparepart_qty,
|
||||
sparepart_item_type: data.sparepart_item_type,
|
||||
sparepart_unit: data.sparepart_unit,
|
||||
updated_at: data.updated_at,
|
||||
updated_by: data.updated_by
|
||||
};
|
||||
const updated = await updateSparepartDb(id, updateData);
|
||||
if (!updated) throw new ErrorHandler(500, "Failed to update Sparepart");
|
||||
return await this.getSparepartById(id);
|
||||
} catch (error) {
|
||||
throw new ErrorHandler(error.statusCode || 500, error.message);
|
||||
}
|
||||
}
|
||||
|
||||
static async deleteSparepart(id, userId) {
|
||||
try {
|
||||
const existing = await getSparepartByIdDb(id);
|
||||
if (!existing) throw new ErrorHandler(404, "Sparepart not found");
|
||||
const deleted = await deleteSparepartDb(id, userId);
|
||||
if (!deleted) throw new ErrorHandler(500, "Failed to delete Sparepart");
|
||||
return deleted;
|
||||
} catch (error) {
|
||||
throw new ErrorHandler(error.statusCode || 500, error.message);
|
||||
}
|
||||
}
|
||||
}
|
||||
module.exports = SparepartService;
|
||||
Reference in New Issue
Block a user