Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aa8cda89d6 | ||
|
|
5ba65cf2d1 |
@@ -1,15 +1,18 @@
|
||||
# phpVMS <sup>7</sup>
|
||||
# phpvms <sup>7</sup>
|
||||
|
||||
[](https://travis-ci.org/nabeelio/phpvms) [](https://www.codacy.com/app/nabeelio/phpvms?utm_source=github.com&utm_medium=referral&utm_content=nabeelio/phpvms&utm_campaign=Badge_Grade) [](https://packagist.org/packages/nabeel/phpvms)  [](https://packagist.org/packages/nabeel/phpvms)
|
||||
|
||||
The next phpvms version built on the laravel framework. work in progress. The latest documentation, with installation instructions is available [on the phpVMS documentation](https://docs.phpvms.net/) page.
|
||||
The next phpvms version built on the laravel framework. work in progress. The latest documentation, with installation instructions is available
|
||||
[on the phpVMS documentation](http://docs.phpvms.net/) page.
|
||||
|
||||
## Installation
|
||||
# installation
|
||||
|
||||
A full distribution, with all of the composer dependencies, is available at this
|
||||
[GitHub Releases](https://github.com/nabeelio/phpvms/releases) link.
|
||||
|
||||
### Requirements
|
||||
|
||||
|
||||
## Requirements
|
||||
|
||||
- PHP 7.3+, extensions:
|
||||
- cURL
|
||||
@@ -21,16 +24,16 @@ A full distribution, with all of the composer dependencies, is available at this
|
||||
- Database:
|
||||
- MySQL 5.5+ (or MySQL variant, including MariaDB and Percona)
|
||||
|
||||
[View more details on requirements](https://docs.phpvms.net/requirements)
|
||||
[View more details on requirements](http://docs.phpvms.net/setup/requirements)
|
||||
|
||||
### Installer
|
||||
## Installer
|
||||
|
||||
1. Upload to your server
|
||||
1. Visit the site, and follow the link to the installer
|
||||
|
||||
[View installation details](https://docs.phpvms.net/installation/installation)
|
||||
[View installation details](http://docs.phpvms.net/setup/installation)
|
||||
|
||||
## Development Environment
|
||||
# development environment
|
||||
|
||||
A full development environment can be brought up using Docker:
|
||||
|
||||
@@ -47,7 +50,7 @@ Then go to `http://localhost`. If you're using dnsmasq, the `app` container is l
|
||||
127.0.0.1 phpvms.test
|
||||
```
|
||||
|
||||
### Building JS/CSS assets
|
||||
## Building JS/CSS assets
|
||||
|
||||
Yarn is required, run:
|
||||
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
use App\Contracts\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class ModifyPirepFares extends Migration
|
||||
{
|
||||
/**
|
||||
* Modify the PIREP fares table so that we can save all of the fares for that particular PIREP
|
||||
* Basically copy all of those fields over, and then use this table directly, instead of the
|
||||
* relationship to the fares table
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
/*
|
||||
* Add the columns we need from the fares table so then this is now "fixed" in time
|
||||
*/
|
||||
Schema::table('pirep_fares', function (Blueprint $table) {
|
||||
$table->unsignedInteger('fare_id')->change()->nullable()->default(0);
|
||||
|
||||
$table->string('code', 50);
|
||||
$table->string('name', 50);
|
||||
|
||||
// count is already there
|
||||
|
||||
$table->unsignedDecimal('price')->nullable()->default(0.00);
|
||||
$table->unsignedDecimal('cost')->nullable()->default(0.00);
|
||||
$table->unsignedInteger('capacity')->nullable()->default(0);
|
||||
});
|
||||
|
||||
/**
|
||||
* Now iterate through the existing table and copy/update everything
|
||||
* Some fares might already have been removed deleted so just insert some null/errored
|
||||
* values for those
|
||||
*/
|
||||
$parent_fares = [];
|
||||
$fares = DB::table('pirep_fares')->get();
|
||||
foreach ($fares as $fare) {
|
||||
if (empty($parent_fares[$fare->fare_id])) {
|
||||
$parent_fares[$fare->fare_id] = DB::table('fares')->where('id', $fare->fare_id)->first();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function down()
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -18,7 +18,7 @@ class ValidationException extends AbstractHttpException
|
||||
|
||||
parent::__construct(
|
||||
400,
|
||||
'Validation Error'
|
||||
'Validation exception'
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -18,17 +18,17 @@ class Flight extends Resource
|
||||
private function setFields()
|
||||
{
|
||||
/** @var \Illuminate\Support\Collection $field_values */
|
||||
$return_values = new stdClass();
|
||||
$field_values = $this->field_values;
|
||||
if (empty($field_values) || $field_values->count() === 0) {
|
||||
return $return_values;
|
||||
return new stdClass();
|
||||
}
|
||||
|
||||
$fields = [];
|
||||
foreach ($field_values as $field) {
|
||||
$return_values->{$field->name} = $field->value;
|
||||
$fields[$field->name] = $field->value;
|
||||
}
|
||||
|
||||
return $return_values;
|
||||
return $fields;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -75,7 +75,6 @@ class Pirep extends Model
|
||||
'flight_number',
|
||||
'route_code',
|
||||
'route_leg',
|
||||
'flight_id',
|
||||
'dpt_airport_id',
|
||||
'arr_airport_id',
|
||||
'alt_airport_id',
|
||||
|
||||
+17
-10
@@ -4,6 +4,14 @@ namespace App\Models;
|
||||
|
||||
use App\Contracts\Model;
|
||||
|
||||
/**
|
||||
* @property int code
|
||||
* @property string name
|
||||
* @property float cost
|
||||
* @property float price
|
||||
* @property int capacity
|
||||
* @property int count
|
||||
*/
|
||||
class PirepFare extends Model
|
||||
{
|
||||
public $table = 'pirep_fares';
|
||||
@@ -11,26 +19,25 @@ class PirepFare extends Model
|
||||
|
||||
protected $fillable = [
|
||||
'pirep_id',
|
||||
'fare_id',
|
||||
'code',
|
||||
'name',
|
||||
'count',
|
||||
'price',
|
||||
'cost',
|
||||
'capacity',
|
||||
];
|
||||
|
||||
protected $casts = [
|
||||
'count' => 'integer',
|
||||
'count' => 'integer',
|
||||
'price' => 'float',
|
||||
'cost' => 'float',
|
||||
'capacity' => 'integer',
|
||||
];
|
||||
|
||||
public static $rules = [
|
||||
'count' => 'required',
|
||||
];
|
||||
|
||||
/**
|
||||
* Relationships
|
||||
*/
|
||||
public function fare()
|
||||
{
|
||||
return $this->belongsTo(Fare::class, 'fare_id');
|
||||
}
|
||||
|
||||
public function pirep()
|
||||
{
|
||||
return $this->belongsTo(Pirep::class, 'pirep_id');
|
||||
|
||||
Generated
+2092
-3878
File diff suppressed because it is too large
Load Diff
+3
-3
@@ -27,7 +27,7 @@
|
||||
"jquery": "^3.5.1",
|
||||
"jquery-pjax": "~2.0",
|
||||
"js-yaml": "^3.14.0",
|
||||
"laravel-mix": "^5.0.8",
|
||||
"laravel-mix": "^5.0.7",
|
||||
"leaflet": "^1.3.4",
|
||||
"leaflet-ajax": "2.1.0",
|
||||
"leaflet-providers": "1.0.*",
|
||||
@@ -46,8 +46,8 @@
|
||||
"select2": "^4.0.13",
|
||||
"ssri": "^5.3.0",
|
||||
"tar": ">=4.4.2",
|
||||
"webpack": "^5.1.1",
|
||||
"webpack-cli": "^4.0.0",
|
||||
"webpack": "^4.44.2",
|
||||
"webpack-cli": "^3.3.12",
|
||||
"x-editable": "1.5.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@@ -113,20 +113,12 @@ class FlightTest extends TestCase
|
||||
*/
|
||||
public function testSearchFlight()
|
||||
{
|
||||
/** @var \App\Models\User user */
|
||||
$this->user = factory(User::class)->create();
|
||||
$flight = $this->addFlight($this->user);
|
||||
|
||||
/** @var \App\Services\FlightService $flightSvc */
|
||||
$flightSvc = app(FlightService::class);
|
||||
$flightSvc->updateCustomFields($flight, [
|
||||
['name' => '0', 'value' => 'value'],
|
||||
]);
|
||||
|
||||
// search specifically for a flight ID
|
||||
$query = 'flight_id='.$flight->id;
|
||||
$req = $this->get('/api/flights/search?'.$query);
|
||||
$body = $req->json(['data']);
|
||||
$req->assertStatus(200);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user