mirror of
https://github.com/frappe/books.git
synced 2024-11-14 17:34:04 +00:00
62 lines
1.6 KiB
TypeScript
62 lines
1.6 KiB
TypeScript
import { ClosingAmounts } from './ClosingAmounts';
|
|
import { ClosingCash } from './ClosingCash';
|
|
import { Doc } from 'fyo/model/doc';
|
|
import { OpeningAmounts } from './OpeningAmounts';
|
|
import { OpeningCash } from './OpeningCash';
|
|
|
|
export class POSShift extends Doc {
|
|
closingAmounts?: ClosingAmounts[];
|
|
closingCash?: ClosingCash[];
|
|
closingDate?: Date;
|
|
isShiftOpen?: boolean;
|
|
openingAmounts?: OpeningAmounts[];
|
|
openingCash?: OpeningCash[];
|
|
openingDate?: Date;
|
|
|
|
get openingCashAmount() {
|
|
if (!this.openingCash) {
|
|
return this.fyo.pesa(0);
|
|
}
|
|
|
|
let openingAmount = this.fyo.pesa(0);
|
|
|
|
this.openingCash.map((row: OpeningCash) => {
|
|
const denomination = row.denomination ?? this.fyo.pesa(0);
|
|
const count = row.count ?? 0;
|
|
|
|
const amount = denomination.mul(count);
|
|
openingAmount = openingAmount.add(amount);
|
|
});
|
|
return openingAmount;
|
|
}
|
|
|
|
get closingCashAmount() {
|
|
if (!this.closingCash) {
|
|
return this.fyo.pesa(0);
|
|
}
|
|
|
|
let closingAmount = this.fyo.pesa(0);
|
|
|
|
this.closingCash.map((row: ClosingCash) => {
|
|
const denomination = row.denomination ?? this.fyo.pesa(0);
|
|
const count = row.count ?? 0;
|
|
|
|
const amount = denomination.mul(count);
|
|
closingAmount = closingAmount.add(amount);
|
|
});
|
|
return closingAmount;
|
|
}
|
|
|
|
get openingTransferAmount() {
|
|
if (!this.openingAmounts) {
|
|
return this.fyo.pesa(0);
|
|
}
|
|
|
|
const transferAmountRow = this.openingAmounts.filter(
|
|
(row) => row.paymentMethod === 'Transfer'
|
|
)[0];
|
|
|
|
return transferAmountRow.amount ?? this.fyo.pesa(0);
|
|
}
|
|
}
|