change ref_class to ref_model

This commit is contained in:
Nabeel Shahzad
2018-04-01 14:32:01 -05:00
parent 0bed38c78b
commit 793b3e7134
31 changed files with 211 additions and 211 deletions

View File

@@ -200,19 +200,19 @@ class PirepFinanceService extends Service
Log::info('Finance: PIREP: '.$pirep->id.', expense:', $expense->toArray());
# Get the transaction group name from the ref_class name
# Get the transaction group name from the ref_model name
# This way it can be more dynamic and don't have to add special
# tables or specific expense calls to accomodate all of these
$klass = 'Expense';
if ($expense->ref_class) {
$ref = explode('\\', $expense->ref_class);
if ($expense->ref_model) {
$ref = explode('\\', $expense->ref_model);
$klass = end($ref);
}
# Form the memo, with some specific ones depending on the group
if ($klass === 'Airport') {
$memo = "Airport Expense: {$expense->name} ({$expense->ref_class_id})";
$transaction_group = "Airport: {$expense->ref_class_id}";
$memo = "Airport Expense: {$expense->name} ({$expense->ref_model_id})";
$transaction_group = "Airport: {$expense->ref_model_id}";
} elseif ($klass === 'Subfleet') {
$memo = "Subfleet Expense: {$expense->name} ({$pirep->aircraft->subfleet->name})";
$transaction_group = "Subfleet: {$expense->name} ({$pirep->aircraft->subfleet->name})";

View File

@@ -57,15 +57,15 @@ class RecurringFinanceService extends Service
protected function getMemoAndGroup(Expense $expense): array
{
$klass = 'Expense';
if ($expense->ref_class) {
$ref = explode('\\', $expense->ref_class);
if ($expense->ref_model) {
$ref = explode('\\', $expense->ref_model);
$klass = end($ref);
$obj = $expense->getReference();
}
if ($klass === 'Airport') {
$memo = "Airport Expense: {$expense->name} ({$expense->ref_class_id})";
$transaction_group = "Airport: {$expense->ref_class_id}";
$memo = "Airport Expense: {$expense->name} ({$expense->ref_model_id})";
$transaction_group = "Airport: {$expense->ref_model_id}";
} elseif ($klass === 'Subfleet') {
$memo = "Subfleet Expense: {$expense->name}";
$transaction_group = "Subfleet: {$expense->name}";
@@ -111,8 +111,8 @@ class RecurringFinanceService extends Service
# against this specific journal, on today
$w = [
'journal_id' => $journal->id,
'ref_class' => Expense::class,
'ref_class_id' => $expense->id,
'ref_model' => Expense::class,
'ref_model_id' => $expense->id,
];
$found = JournalTransaction::where($w)

View File

@@ -48,26 +48,26 @@ class ExpenseExporter extends ImportExport
// For the different expense types, instead of exporting
// the ID, export a specific column
if ($expense->ref_class === Expense::class) {
$ret['ref_class'] = '';
$ret['ref_class_id'] = '';
if ($expense->ref_model === Expense::class) {
$ret['ref_model'] = '';
$ret['ref_model_id'] = '';
} else {
$obj = $expense->getReference();
if(!$obj) { // bail out
return $ret;
}
if ($expense->ref_class === Aircraft::class) {
$ret['ref_class_id'] = $obj->registration;
} elseif ($expense->ref_class === Airport::class) {
$ret['ref_class_id'] = $obj->icao;
} elseif ($expense->ref_class === Subfleet::class) {
$ret['ref_class_id'] = $obj->type;
if ($expense->ref_model === Aircraft::class) {
$ret['ref_model_id'] = $obj->registration;
} elseif ($expense->ref_model === Airport::class) {
$ret['ref_model_id'] = $obj->icao;
} elseif ($expense->ref_model === Subfleet::class) {
$ret['ref_model_id'] = $obj->type;
}
}
// And convert the ref_class into the shorter name
$ret['ref_class'] = str_replace('App\Models\\', '', $ret['ref_class']);
// And convert the ref_model into the shorter name
$ret['ref_model'] = str_replace('App\Models\\', '', $ret['ref_model']);
return $ret;
}

View File

@@ -30,8 +30,8 @@ class ExpenseImporter extends ImportExport
'charge_to_user' => 'nullable|boolean',
'multiplier' => 'nullable|numeric',
'active' => 'nullable|boolean',
'ref_class' => 'nullable',
'ref_class_id' => 'nullable',
'ref_model' => 'nullable',
'ref_model_id' => 'nullable',
];
/**
@@ -70,27 +70,27 @@ class ExpenseImporter extends ImportExport
}
/**
* See if this expense refers to a ref_class
* See if this expense refers to a ref_model
* @param array $row
* @return array
*/
protected function getRefClassInfo(array $row)
{
$row['ref_class'] = trim($row['ref_class']);
$row['ref_model'] = trim($row['ref_model']);
// class from import is being saved as the name of the model only
// prepend the full class path so we can search it out
if (\strlen($row['ref_class']) > 0) {
if (substr_count($row['ref_class'], 'App\Models\\') === 0) {
$row['ref_class'] = 'App\Models\\'.$row['ref_class'];
if (\strlen($row['ref_model']) > 0) {
if (substr_count($row['ref_model'], 'App\Models\\') === 0) {
$row['ref_model'] = 'App\Models\\'.$row['ref_model'];
}
} else {
$row['ref_class'] = Expense::class;
$row['ref_model'] = Expense::class;
return $row;
}
$class = $row['ref_class'];
$id = $row['ref_class_id'];
$class = $row['ref_model'];
$id = $row['ref_model_id'];
$obj = null;
if ($class === Aircraft::class) {
@@ -110,7 +110,7 @@ class ExpenseImporter extends ImportExport
return $row;
}
$row['ref_class_id'] = $obj->id;
$row['ref_model_id'] = $obj->id;
return $row;
}
}