update for two-step approval

This commit is contained in:
Gloomy 2025-08-19 00:41:39 +00:00
parent ff89d596b7
commit ac49a0229e

View file

@ -233,14 +233,6 @@ class SellController extends AbstractController
$doc->setCode($provider->getAccountingCode($acc['bid'], 'accounting')); $doc->setCode($provider->getAccountingCode($acc['bid'], 'accounting'));
// Set approval fields based on business settings // Set approval fields based on business settings
$business = $acc['bid'];
if ($business->isRequireTwoStepApproval()) {
$doc->setIsPreview(true);
$doc->setIsApproved(false);
} else {
$doc->setIsPreview(false);
$doc->setIsApproved(true);
}
} }
if ($params['transferCost'] != 0) { if ($params['transferCost'] != 0) {
$hesabdariRow = new HesabdariRow(); $hesabdariRow = new HesabdariRow();
@ -1303,8 +1295,17 @@ class SellController extends AbstractController
$paymentDoc->setDate($params['invoiceDate']); $paymentDoc->setDate($params['invoiceDate']);
$paymentDoc->setDes($payment['description'] ?? 'دریافت وجه فاکتور فروش شماره ' . $doc->getCode()); $paymentDoc->setDes($payment['description'] ?? 'دریافت وجه فاکتور فروش شماره ' . $doc->getCode());
$paymentDoc->setAmount($payment['amount']); $paymentDoc->setAmount($payment['amount']);
$paymentDoc->setIsPreview(true);
$paymentDoc->setIsApproved(false); $business = $entityManager->getRepository(Business::class)->find($acc['bid']);
$businessRequire = $business && method_exists($business, 'isRequireTwoStepApproval') ? (bool)$business->isRequireTwoStepApproval() : false;
if ($businessRequire) {
$paymentDoc->setIsPreview(true);
$paymentDoc->setIsApproved(false);
$paymentDoc->setApprovedBy(null);
} else {
$paymentDoc->setIsPreview(false);
$paymentDoc->setIsApproved(true);
}
// ایجاد ارتباط با فاکتور اصلی // ایجاد ارتباط با فاکتور اصلی
$doc->addRelatedDoc($paymentDoc); $doc->addRelatedDoc($paymentDoc);
@ -1364,14 +1365,6 @@ class SellController extends AbstractController
$receiveRow->setPerson($person); $receiveRow->setPerson($person);
$entityManager->persist($receiveRow); $entityManager->persist($receiveRow);
// Two-step approval برای دریافت/پرداخت
// $business = $entityManager->getRepository(\App\Entity\Business::class)->find($acc['bid']);
// $businessRequire = $business && method_exists($business, 'isRequireTwoStepApproval') ? (bool)$business->isRequireTwoStepApproval() : false;
// if ($businessRequire) {
// $paymentDoc->setStatus('pending_approval');
// } else {
// $paymentDoc->setStatus('approved');
// }
$entityManager->persist($paymentDoc); $entityManager->persist($paymentDoc);
} }
$entityManager->flush(); $entityManager->flush();