static function checkDuplicatePo($key) { $purchase = new Purchase($key); //Search Duplicate $records = fRecordSet::build('Purchase', array('po_number=' => $purchase->getPoNumber())); if ($records->count() > 1) { //Generate New PO echo 'Duplicate PO'; $exploded = explode('/', $purchase->getPoNumber()); echo (int) $exploded[2] + 1; $exploded[2] = sprintf("%03d", (int) $exploded[2] + 1); $newPONumber = implode('/', $exploded); $purchase->setPoNumber($newPONumber); $purchase->store(); } }
$key = $_POST["key"]; $purchase = new Purchase($key); $purchase->populate(); $json_form = fRequest::get('jsonForm'); $jsonForm = fJSON::decode($json_form); $total = 0; if ($_POST['approver_1'] != null && $_POST['approver_1_date'] != null) { $currentDocType = $purchase->getDocType(); switch ($currentDocType) { case "1": //$purchase->setDocType('PO1'); $user = new User($purchase->getRequester()); $branch = $user->getBranchId(); $newRunningNumber = sprintf("%03d", Purchase::findPOByBranch($branch, '1')->count() + 1); $newPONumber = "PO1/" . $branch . "/" . $newRunningNumber . "/" . date("m/Y"); $purchase->setPoNumber($newPONumber); break; case "2": //$purchase->setDocType('PO2'); $user = new User($purchase->getRequester()); $branch = $user->getBranchId(); $newRunningNumber = sprintf("%03d", Purchase::findPOByBranch($branch, '2')->count() + 1); $newPONumber = "PO2/" . $branch . "/" . $newRunningNumber . "/" . date("m/Y"); $purchase->setPoNumber($newPONumber); break; case "3": //$purchase->setDocType('PO3'); $user = new User($purchase->getRequester()); $branch = $user->getBranchId(); $newRunningNumber = sprintf("%03d", Purchase::findPOByBranch($branch, '3')->count() + 1); $newPONumber = "PO3/" . $branch . "/" . $newRunningNumber . "/" . date("m/Y");