2
0
mirror of https://github.com/frappe/books.git synced 2024-09-20 03:29:00 +00:00

refactor: validateStockAvailability

This commit is contained in:
akshayitzme 2023-02-17 16:04:46 +05:30
parent 4fc6c3cf1b
commit 09591703e4

View File

@ -88,7 +88,6 @@ export class StockManager {
this.#validateQuantity(details); this.#validateQuantity(details);
this.#validateLocation(details); this.#validateLocation(details);
await this.#validateStockAvailability(details); await this.#validateStockAvailability(details);
await this.#validateBatchWiseStockAvailability(details);
} }
#validateQuantity(details: SMIDetails) { #validateQuantity(details: SMIDetails) {
@ -127,26 +126,25 @@ export class StockManager {
throw new ValidationError(t`Both From and To Location cannot be undefined`); throw new ValidationError(t`Both From and To Location cannot be undefined`);
} }
async #validateBatchWiseStockAvailability(details: SMIDetails) { async #validateStockAvailability(details: SMIDetails) {
if (!details.fromLocation) { if (!details.fromLocation) {
return; return;
} }
const date = details.date.toISOString();
const isItemHasBatchNumber = await this.fyo.getValue( const isItemHasBatchNumber = await this.fyo.getValue(
'Item', 'Item',
details.item, details.item,
'hasBatchNumber' 'hasBatchNumber'
); );
if (!isItemHasBatchNumber) return; if (isItemHasBatchNumber) {
if (!details.batchNumber) { if (!details.batchNumber) {
throw new ValidationError( throw new ValidationError(
t`Please enter Batch Number for ${details.item}` t`Please enter Batch Number for ${details.item}`
); );
} }
const date = details.date.toISOString();
const itemsInBatch = const itemsInBatch =
(await this.fyo.db.getStockQuantity( (await this.fyo.db.getStockQuantity(
details.item, details.item,
@ -173,12 +171,6 @@ export class StockManager {
); );
} }
async #validateStockAvailability(details: SMIDetails) {
if (!details.fromLocation) {
return;
}
const date = details.date.toISOString();
let quantityBefore = let quantityBefore =
(await this.fyo.db.getStockQuantity( (await this.fyo.db.getStockQuantity(
details.item, details.item,