コード例 #1
0
 /**
  	 *
  	 *Crear un nuevo impuesto. Falta revisar bien lo de contabilidad, para saber como se van a ligar los impuestos con las cuentas, pero omitiendo las ligas con las cuentas seria esto.
  	 *
  	 * @param activo bool Determina si el impuesto est� activo, (0) No, (1) Si, Default 1
  	 * @param aplica string Determina el alcance del impuesto, "compra", "venta", "ambos".
  	 * @param codigo string Determina el c�digo asociado al impuesto
  	 * @param importe float Determina el monto(importe) asociado a este impuesto.
 Antes: monto_porcentaje;
 Para impuestos de tipo porcentaje, introduzca valor % entre 0-1
  	 * @param incluido_precio bool Determina si el impuesto se incluye en el precio, (0) No, (1) Si
  	 * @param nombre string Nombre del impuesto
  	 * @param tipo int El metodo de calculo del importe del impuesto. Porcentaje (0), Importe fijo (1), ninguno (2), saldo pendiente (3)
  	 * @return id_impuesto int Id del impuesto insertado.
  	 **/
 public static function Nuevo($activo, $aplica, $codigo, $importe, $incluido_precio, $nombre, $descripcion = null, $tipo = "")
 {
     $ni = new Impuesto();
     $ni->setImporte($importe);
     $ni->setNombre($nombre);
     $ni->setCodigo($codigo);
     $ni->setIncluidoPrecio($incluido_precio);
     $ni->setAplica($aplica);
     $ni->setTipo($tipo);
     $ni->setNombre($nombre);
     $ni->setActivo($activo);
     $ni->setDescripcion($descripcion);
     try {
         ImpuestoDAO::save($ni);
     } catch (Exception $e) {
         throw new InvalidDatabaseOperationException($e);
     }
     Logger::log("Nuevo impuesto..." . $ni->getIdImpuesto() . " creado");
     return array("id_impuesto" => $ni->getIdImpuesto());
 }
コード例 #2
0
 /**
  *
  *Crear un nuevo impuesto.
  *
  * @param monto_porcentaje float monto o porcentaje que representa este impuesto
  * @param nombre string Nombre del impuesto
  * @param es_monto bool Si es verdadero, el campo de monto_porcentaje sera tomado como un monto fijo, si es falso, sera tomado como un porcentaje
  * @param descripcion string Descripcion del impuesto
  * @return id_impuesto int Id del impuesto insertado.
  **/
 public static function NuevoImpuesto($es_monto, $monto_porcentaje, $nombre, $descripcion = null)
 {
     Logger::log("Creando un nuevo impuesto");
     //Se validan los parametros recibidos
     $e = self::validarEsMonto($es_monto);
     if (is_string($e)) {
         Logger::error($e);
         throw new Exception($e);
     }
     $e = self::validarMontoPorcentaje($monto_porcentaje);
     if (is_string($e)) {
         Logger::error($e);
         throw new Exception($e);
     }
     $e = self::validarNombre($nombre);
     if (is_string($e)) {
         Logger::error($e);
         throw new Exception($e);
     }
     if (!is_null($descripcion)) {
         $e = self::validarDescripcion($descripcion);
         if (is_string($e)) {
             Logger::error($e);
             throw new Exception($e);
         }
     }
     $impuesto = new Impuesto(array("es_monto" => $es_monto, "monto_porcentaje" => $monto_porcentaje, "nombre" => $nombre, "descripcion" => $descripcion));
     DAO::transBegin();
     try {
         ImpuestoDAO::save($impuesto);
     } catch (Exception $e) {
         DAO::transRollback();
         Logger::error("No se ha podido crear el nuevo impuesto: " . $e);
         throw new Exception("No se ha podido crear al nuevo impuesto, consulte a su administrador de sistema");
     }
     DAO::transEnd();
     Logger::log("Impuesto creado exitosamente");
     return array("id_impuesto" => $impuesto->getIdImpuesto());
 }