示例#1
0
 public function beforeInsert($baseTable, $baseData, $customTable, $customData)
 {
     if (!isset($baseData['po_no']) || !$baseData['req_no']) {
         require_once _CALEM_DIR_ . 'server/modules/purchase/CalemPoBo.php';
         $reqBo = new CalemPoBo();
         $baseData['po_no'] = $reqBo->getNextPoNo();
     }
     //Status & state
     if (!isset($baseData['status_id'])) {
         $baseData['status_id'] = $this->conf['po_init_status'];
     }
     if (!isset($baseData['state_id'])) {
         $baseData['state_id'] = $this->conf['po_init_state'];
     }
     //Vendor fill-in
     if (isset($baseData['vendor_id'])) {
         $baseData = $this->fillInVendor($baseData['vendor_id'], $baseData);
     }
     //Buyer fill-in
     if (isset($baseData['buyer_id'])) {
         $baseData = $this->fillInBuyer($baseData['buyer_id'], $baseData);
     }
     //Shipping and billing address if any
     if (!isset($baseData['shipping_addr_id'])) {
         $baseData = $this->fillInShippingAddr($baseData);
     }
     if (!isset($baseData['billing_addr_id'])) {
         $baseData = $this->fillInBillingAddr($baseData);
     }
     return $baseData;
 }
示例#2
0
 public function onDataUpdated($baseTable, $baseCurrent, $baseUpdate, $customTable, $customCurrent, $customUpdate)
 {
     $nCost = isset($baseUpdate['line_cost']) ? $baseUpdate['line_cost'] : $baseCurrent['line_cost'];
     $diff = $nCost - $baseCurrent['line_cost'];
     if ($diff != 0) {
         $poBo = new CalemPoBo();
         $poBo->updatePoCostById($baseCurrent['po_id'], $diff);
     }
 }