add distribute from admin to supervisor
This commit is contained in:
parent
1f44cf484c
commit
e25f97ee9c
|
@ -39,14 +39,4 @@ export class TransactionJournal extends BaseModel {
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
coa: COA;
|
coa: COA;
|
||||||
|
|
||||||
@ManyToOne(
|
|
||||||
() => {
|
|
||||||
return TransactionType;
|
|
||||||
},
|
|
||||||
(transType) => {
|
|
||||||
return transType.id;
|
|
||||||
},
|
|
||||||
)
|
|
||||||
transactionType: TransactionType;
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,6 +27,18 @@ export class TransactionController {
|
||||||
return this.transactionService.distributeDeposit(createTransactionDto);
|
return this.transactionService.distributeDeposit(createTransactionDto);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Post('distribute-admin')
|
||||||
|
distributeAdmin(
|
||||||
|
@Body() createTransactionDto: DistributeTransactionDto,
|
||||||
|
@Request() req
|
||||||
|
) {
|
||||||
|
return {
|
||||||
|
data: this.transactionService.distributeFromAdmin(createTransactionDto,req.user),
|
||||||
|
statusCode: HttpStatus.CREATED,
|
||||||
|
message: 'success',
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
@Post('add-saldo-supplier')
|
@Post('add-saldo-supplier')
|
||||||
async addSaldoSupplier(
|
async addSaldoSupplier(
|
||||||
@Body() addSaldoSupplier: AddSaldoSupplier,
|
@Body() addSaldoSupplier: AddSaldoSupplier,
|
||||||
|
|
|
@ -68,7 +68,7 @@ export class TransactionService {
|
||||||
transactionData.amount = addSaldoSupplier.amount,
|
transactionData.amount = addSaldoSupplier.amount,
|
||||||
transactionData.user = userData.id,
|
transactionData.user = userData.id,
|
||||||
transactionData.status = statusTransaction.SUCCESS,
|
transactionData.status = statusTransaction.SUCCESS,
|
||||||
transactionData.type = typeTransaction.DISTRIBUTION,
|
transactionData.type = typeTransaction.DEPOSIT_IRS,
|
||||||
|
|
||||||
await manager.insert(Transactions, transactionData);
|
await manager.insert(Transactions, transactionData);
|
||||||
|
|
||||||
|
@ -91,6 +91,50 @@ export class TransactionService {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async distributeFromAdmin(distributeTransactionDto: DistributeTransactionDto,currentUser:any) {
|
||||||
|
// GET COA
|
||||||
|
const coaAR = await this.coaService.findByUser(
|
||||||
|
distributeTransactionDto.destination,
|
||||||
|
coaType.ACCOUNT_RECEIVABLE,
|
||||||
|
);
|
||||||
|
const coaWallet = await this.coaService.findByUser(
|
||||||
|
distributeTransactionDto.destination,
|
||||||
|
coaType.WALLET,
|
||||||
|
);
|
||||||
|
|
||||||
|
//GET USER
|
||||||
|
const userData = await this.userService.findByUsername(currentUser.username);
|
||||||
|
|
||||||
|
await this.connection.transaction(async (manager) => {
|
||||||
|
//INSERT TRANSACTION
|
||||||
|
let transactionData = new Transactions();
|
||||||
|
transactionData.id = uuid.v4();
|
||||||
|
transactionData.amount = distributeTransactionDto.amount,
|
||||||
|
transactionData.user = userData.id,
|
||||||
|
transactionData.status = statusTransaction.SUCCESS,
|
||||||
|
transactionData.type = typeTransaction.DISTRIBUTION,
|
||||||
|
|
||||||
|
await manager.insert(Transactions, transactionData);
|
||||||
|
|
||||||
|
await this.accountingTransaction({
|
||||||
|
createTransaction: false,
|
||||||
|
transactionalEntityManager:manager,
|
||||||
|
transaction: transactionData,
|
||||||
|
amount: transactionData.amount,
|
||||||
|
journals: [{
|
||||||
|
coa_id: coaAR.id,
|
||||||
|
debit: transactionData.amount
|
||||||
|
}, {
|
||||||
|
coa_id: coaWallet.id,
|
||||||
|
credit: transactionData.amount
|
||||||
|
}]
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
async distributeDeposit(distributeTransactionDto: DistributeTransactionDto) {
|
async distributeDeposit(distributeTransactionDto: DistributeTransactionDto) {
|
||||||
// GET COA
|
// GET COA
|
||||||
const coaSender = await this.coaService.findByUser(
|
const coaSender = await this.coaService.findByUser(
|
||||||
|
|
Loading…
Reference in New Issue
Block a user