Esempio n. 1
0
 /**
  *
  *Crear un nuevo lote
  *
  * @param id_almacen int A que almacen pertenecera este lote.
  * @param observaciones string Alguna observacin o detalle relevante que se deba documentar
  * @return id_lote int El identificador del lote recien generado.
  **/
 static function NuevoLote($id_almacen, $folio = null)
 {
     if (!($almacen = AlmacenDAO::getByPK($id_almacen))) {
         Logger::error("No se tiene registro del almacen {$id_almacen}");
         throw new BusinessLogicException("No se tiene registro del almacen {$id_almacen}");
     }
     $sesion = SesionController::Actual();
     $l = new Lote(array("id_almacen" => $almacen->getIdAlmacen(), "id_usuario" => $sesion['id_usuario'], "folio" => is_null($folio) ? "" : $folio));
     try {
         LoteDAO::save($l);
     } catch (Exception $e) {
         Logger::error("Error al crear nuevo lote {$e->getMessage()}");
         throw new InvalidDatabaseOperationException("Error al crear el nuevo lote");
     }
     return array("id_lote" => $l->getIdLote());
 }