test(silo): backend silo stuff
This commit is contained in:
@@ -0,0 +1,79 @@
|
||||
import { between, desc, gte, lte } from "drizzle-orm";
|
||||
import { db } from "../../../../../database/dbclient.js";
|
||||
import { siloAdjustments } from "../../../../../database/schema/siloAdjustments.js";
|
||||
import { tryCatch } from "../../../../globalUtils/tryCatch.js";
|
||||
|
||||
export const getSiloAdjustments = async (startDate: any, endDate: any) => {
|
||||
/**
|
||||
* Returns silo adjustments by date or all
|
||||
*/
|
||||
|
||||
if (startDate && endDate) {
|
||||
const { data: adjRange, error: adjRangeError } = await tryCatch(
|
||||
db
|
||||
.select()
|
||||
.from(siloAdjustments)
|
||||
.where(
|
||||
between(
|
||||
siloAdjustments.dateAdjusted,
|
||||
new Date(startDate),
|
||||
new Date(endDate)
|
||||
)
|
||||
)
|
||||
.orderBy(desc(siloAdjustments.dateAdjusted))
|
||||
);
|
||||
|
||||
if (adjRangeError) {
|
||||
return {
|
||||
success: false,
|
||||
message: "Error getting silo adjustments.",
|
||||
adjRangeError,
|
||||
};
|
||||
}
|
||||
|
||||
return {
|
||||
success: true,
|
||||
message: "Silo adjustment data.",
|
||||
data: adjRange,
|
||||
};
|
||||
}
|
||||
|
||||
if (startDate) {
|
||||
const { data: adjRange, error: adjRangeError } = await tryCatch(
|
||||
db
|
||||
.select()
|
||||
.from(siloAdjustments)
|
||||
.where(gte(siloAdjustments.dateAdjusted, new Date(startDate)))
|
||||
.orderBy(desc(siloAdjustments.dateAdjusted))
|
||||
);
|
||||
if (adjRangeError)
|
||||
return {
|
||||
success: false,
|
||||
message: "Error getting silo adjustments.",
|
||||
adjRangeError,
|
||||
};
|
||||
return {
|
||||
success: true,
|
||||
message: "Silo adjustment data.",
|
||||
data: adjRange,
|
||||
};
|
||||
}
|
||||
|
||||
const { data: adjRange, error: adjRangeError } = await tryCatch(
|
||||
db
|
||||
.select()
|
||||
.from(siloAdjustments)
|
||||
.orderBy(desc(siloAdjustments.dateAdjusted))
|
||||
);
|
||||
if (adjRangeError)
|
||||
return {
|
||||
success: false,
|
||||
message: "Error getting silo adjustments.",
|
||||
adjRangeError,
|
||||
};
|
||||
return {
|
||||
success: true,
|
||||
message: "Silo adjustment data.",
|
||||
data: adjRange,
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user