Пример #1
0
 protected function saveItemExpire($item_expire_date, $receiving_id, $item_id, $employee_id, $quantity, $trans_date, $remarks)
 {
     if (!empty($item_expire_date)) {
         $item_expire = ItemExpire::model()->find('item_id=:item_id and expire_date=:expire_date', array(':item_id' => (int) $item_id, ':expire_date' => $item_expire_date));
         if (!$item_expire) {
             $item_expire = new ItemExpire();
             $qty_in_stock = 0;
         } else {
             $qty_in_stock = $item_expire->quantity;
         }
         $stock_quantity = $this->stockQuantiy($qty_in_stock, $quantity);
         //Update Item expiry date & quantity
         $item_expire->item_id = $item_id;
         $item_expire->expire_date = $item_expire_date;
         $item_expire->quantity = $stock_quantity[0];
         $item_expire->save();
         $item_expire_dt = new ItemExpireDt();
         $item_expire_dt->item_expire_id = $item_expire->id;
         $item_expire_dt->trans_id = $receiving_id;
         $item_expire_dt->trans_qty = $stock_quantity[0];
         $item_expire_dt->trans_comment = $remarks;
         $item_expire_dt->modified_date = $trans_date;
         $item_expire_dt->employee_id = $employee_id;
         $item_expire_dt->save();
     }
 }
Пример #2
0
 public function updateStockExpire($item_id, $quantity, $sale_id)
 {
     $sql = "SELECT `id`,`item_id`,`expire_date`,`quantity`\n                FROM `item_expire`\n                WHERE item_id=:item_id\n                AND quantity>0\n                ORDER BY expire_date";
     $result = Yii::app()->db->createCommand($sql)->queryAll(true, array(':item_id' => $item_id));
     if ($result) {
         foreach ($result as $record) {
             $item_expire = ItemExpire::model()->find('id=:id', array(':id' => $record["id"]));
             if ($quantity <= $record["quantity"]) {
                 $item_expire->quantity = $item_expire->quantity - $quantity;
                 $item_expire->save();
                 $item_expire_dt = new ItemExpireDt();
                 $item_expire_dt->item_expire_id = $item_expire->id;
                 $item_expire_dt->trans_id = $sale_id;
                 $item_expire_dt->trans_qty = -$quantity;
                 $item_expire_dt->trans_comment = 'POS ' . $sale_id;
                 $item_expire_dt->modified_date = date('Y-m-d H:s:i');
                 $item_expire_dt->save();
                 break;
             } else {
                 $deducted_qty = $item_expire->quantity;
                 $item_expire->quantity = $item_expire->quantity - $deducted_qty;
                 $item_expire->save();
                 $item_expire_dt = new ItemExpireDt();
                 $item_expire_dt->item_expire_id = $item_expire->id;
                 $item_expire_dt->trans_id = $sale_id;
                 $item_expire_dt->trans_qty = -$quantity;
                 $item_expire_dt->trans_comment = 'POS ' . $sale_id;
                 $item_expire_dt->modified_date = date('Y-m-d H:s:i');
                 $item_expire_dt->save();
                 $quantity = $quantity - $deducted_qty;
             }
         }
     }
 }