Browse Source

Add payment entry validation

pull/6/head
Nafies Luthfi 8 years ago
parent
commit
f608588239
  1. 10
      app/Http/Requests/Payments/CreateRequest.php
  2. 2
      resources/lang/en/payment.php
  3. 35
      tests/Feature/Payments/ManagePaymentsTest.php

10
app/Http/Requests/Payments/CreateRequest.php

@ -23,7 +23,7 @@ class CreateRequest extends Request
*/ */
public function rules() public function rules()
{ {
return [
$rules = [
'date' => 'required|date|date_format:Y-m-d', 'date' => 'required|date|date_format:Y-m-d',
'in_out' => 'required|numeric', 'in_out' => 'required|numeric',
'amount' => 'required', 'amount' => 'required',
@ -32,5 +32,13 @@ class CreateRequest extends Request
'partner_id' => 'required|numeric', 'partner_id' => 'required|numeric',
'description' => 'required|max:255', 'description' => 'required|max:255',
]; ];
if ($this->get('in_out') == 0) {
$rules['partner_id'] = 'required|numeric|exists:vendors,id';
} else {
$rules['partner_id'] = 'required|numeric|exists:customers,id';
}
return $rules;
} }
} }

2
resources/lang/en/payment.php

@ -38,7 +38,7 @@ return [
'out' => 'Cash out', 'out' => 'Cash out',
'type' => 'Payment Type', 'type' => 'Payment Type',
'project' => 'Project', 'project' => 'Project',
'customer' => 'Customer',
'customer' => 'From/To',
'amount' => 'Amount', 'amount' => 'Amount',
'cash_in' => 'Cash In', 'cash_in' => 'Cash In',
'cash_out' => 'Cash Out', 'cash_out' => 'Cash Out',

35
tests/Feature/Payments/ManagePaymentsTest.php

@ -83,6 +83,41 @@ class ManagePaymentsTest extends TestCase
} }
/** @test */ /** @test */
public function payment_entry_validation_check()
{
$user = $this->adminUserSigningIn();
$project = factory(Project::class)->create();
// Submit Form
$this->post(route('payments.store'), [
'date' => '2015-05-01',
'in_out' => 0,
'type_id' => 3,
'amount' => 1000000,
'project_id' => $project->id,
'partner_id' => $project->customer_id,
'description' => 'Pembayaran DP',
]);
$this->assertSessionHasErrors('partner_id');
factory(Vendor::class)->create();
$vendor = factory(Vendor::class)->create();
// Submit Form
$this->post(route('payments.store'), [
'date' => '2015-05-01',
'in_out' => 1,
'type_id' => 3,
'amount' => 1000000,
'project_id' => $project->id,
'partner_id' => $vendor->id,
'description' => 'Pembayaran DP',
]);
$this->assertSessionHasErrors('partner_id');
}
/** @test */
public function admin_can_edit_payment_data() public function admin_can_edit_payment_data()
{ {
$user = $this->adminUserSigningIn(); $user = $this->adminUserSigningIn();

Loading…
Cancel
Save