2
0
mirror of https://github.com/frappe/books.git synced 2024-11-14 09:24:04 +00:00
books/models/inventory/InventorySettings.ts

53 lines
1.4 KiB
TypeScript
Raw Normal View History

2022-11-18 08:44:29 +00:00
import { Doc } from 'fyo/model/doc';
import { FiltersMap, ReadOnlyMap } from 'fyo/model/types';
2022-11-18 08:44:29 +00:00
import { AccountTypeEnum } from 'models/baseModels/Account/types';
export class InventorySettings extends Doc {
2022-11-21 07:15:57 +00:00
defaultLocation?: string;
2022-11-18 08:44:29 +00:00
stockInHand?: string;
stockReceivedButNotBilled?: string;
costOfGoodsSold?: string;
2023-01-16 05:31:12 +00:00
enableBarcodes?: boolean;
enableBatches?: boolean;
2023-05-04 10:45:12 +00:00
enableSerialNumber?: boolean;
enableUomConversions?: boolean;
enableStockReturns?: boolean;
2023-08-22 06:48:51 +00:00
enablePointOfSale?: boolean;
2022-11-18 08:44:29 +00:00
static filters: FiltersMap = {
stockInHand: () => ({
isGroup: false,
accountType: AccountTypeEnum.Stock,
}),
stockReceivedButNotBilled: () => ({
isGroup: false,
accountType: AccountTypeEnum['Stock Received But Not Billed'],
}),
costOfGoodsSold: () => ({
isGroup: false,
accountType: AccountTypeEnum['Cost of Goods Sold'],
}),
2022-11-18 08:44:29 +00:00
};
readOnly: ReadOnlyMap = {
enableBarcodes: () => {
return !!this.enableBarcodes;
},
enableBatches: () => {
return !!this.enableBatches;
},
2023-05-04 10:45:12 +00:00
enableSerialNumber: () => {
return !!this.enableSerialNumber;
2023-04-25 07:07:29 +00:00
},
enableUomConversions: () => {
return !!this.enableUomConversions;
},
enableStockReturns: () => {
return !!this.enableStockReturns;
},
2023-08-22 06:48:51 +00:00
enablePointOfSale: () => {
2023-12-04 09:12:57 +00:00
return !!this.fyo.singles.POSShift?.isShiftOpen;
2023-08-22 06:48:51 +00:00
},
};
2022-11-18 08:44:29 +00:00
}