Expand views to allow editing of currency decimals #506

This commit is contained in:
James Cole
2016-12-28 21:48:37 +01:00
parent bdbf434006
commit 9ae74b4278
9 changed files with 64 additions and 45 deletions

View File

@@ -36,9 +36,10 @@ class CurrencyFormRequest extends Request
public function getCurrencyData()
{
return [
'name' => $this->get('name'),
'code' => $this->get('code'),
'symbol' => $this->get('symbol'),
'name' => $this->get('name'),
'code' => $this->get('code'),
'symbol' => $this->get('symbol'),
'decimal_places' => intval($this->get('decimal_places')),
];
}
@@ -49,15 +50,17 @@ class CurrencyFormRequest extends Request
{
$rules = [
'code' => 'required|min:3|max:3|unique:transaction_currencies,code',
'name' => 'required|max:48|min:1|unique:transaction_currencies,name',
'symbol' => 'required|min:1|max:8|unique:transaction_currencies,symbol',
'name' => 'required|max:48|min:1|unique:transaction_currencies,name',
'code' => 'required|min:3|max:3|unique:transaction_currencies,code',
'symbol' => 'required|min:1|max:8|unique:transaction_currencies,symbol',
'decimal_places' => 'required|min:0|max:12|numeric',
];
if (intval($this->get('id')) > 0) {
$rules = [
'code' => 'required|min:3|max:3',
'name' => 'required|max:48|min:1',
'symbol' => 'required|min:1|max:8',
'name' => 'required|max:48|min:1',
'code' => 'required|min:3|max:3',
'symbol' => 'required|min:1|max:8',
'decimal_places' => 'required|min:0|max:12|numeric',
];
}

View File

@@ -27,20 +27,28 @@ class TransactionCurrency extends Model
{
use SoftDeletes, ValidatingTrait;
protected $dates = ['created_at', 'updated_at', 'deleted_at','date'];
protected $fillable = ['name', 'code', 'symbol'];
protected $rules = ['name' => 'required|between:1,200', 'code' => 'required|between:3,3', 'symbol' => 'required|between:1,12'];
/**
* The attributes that should be casted to native types.
*
* @var array
*/
protected $casts
= [
'created_at' => 'date',
'updated_at' => 'date',
'deleted_at' => 'date',
= [
'created_at' => 'date',
'updated_at' => 'date',
'deleted_at' => 'date',
'decimal_places' => 'int',
];
protected $dates = ['created_at', 'updated_at', 'deleted_at', 'date'];
protected $fillable = ['name', 'code', 'symbol', 'decimal_places'];
protected $rules
= [
'name' => 'required|between:1,48',
'code' => 'required|between:3,3',
'symbol' => 'required|between:1,8',
'decimal_places' => 'required|min:0|max:12|numeric',
];
/**
* @param TransactionCurrency $currency
*

View File

@@ -197,9 +197,10 @@ class CurrencyRepository implements CurrencyRepositoryInterface
{
$currency = TransactionCurrency::create(
[
'name' => $data['name'],
'code' => $data['code'],
'symbol' => $data['symbol'],
'name' => $data['name'],
'code' => $data['code'],
'symbol' => $data['symbol'],
'decimal_places' => $data['decimal_places'],
]
);
@@ -214,9 +215,10 @@ class CurrencyRepository implements CurrencyRepositoryInterface
*/
public function update(TransactionCurrency $currency, array $data): TransactionCurrency
{
$currency->code = $data['code'];
$currency->symbol = $data['symbol'];
$currency->name = $data['name'];
$currency->code = $data['code'];
$currency->symbol = $data['symbol'];
$currency->name = $data['name'];
$currency->decimal_places = $data['decimal_places'];
$currency->save();
return $currency;