mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/exchange.git
synced 2026-08-19 04:14:04 +00:00
renamed booking supplier book_id to booking_id
updated bookingSupplier to supplierBooking updated get supplier api in supplier report added download button to download report
This commit is contained in:
+2
-2
@@ -32,8 +32,8 @@ class Booking extends Model
|
|||||||
return $this->belongsTo('app\User');
|
return $this->belongsTo('app\User');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function bookingSupplier(){
|
public function supplierBooking(){
|
||||||
return $this->belongsTo('app\BookingSupplier ');
|
return $this->hasOne(SupplierBooking::class);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function chinaBankSlip(){
|
public function chinaBankSlip(){
|
||||||
|
|||||||
@@ -29,13 +29,15 @@ class BookingSupplierController extends Controller
|
|||||||
|
|
||||||
public function show($id)
|
public function show($id)
|
||||||
{
|
{
|
||||||
$bookingsupplier = SupplierBooking::has('supplier-booking')->findOrFail($id);
|
$booking = Booking::where('id', $id)->first();
|
||||||
|
|
||||||
$response = [
|
if (!$booking){
|
||||||
'supplier-booking' => $bookingsupplier
|
return response()->json(['message' => 'Booking not found'], 404);
|
||||||
];
|
}
|
||||||
|
|
||||||
return response()->json($response, 200);
|
$supplier_booking = $booking->supplierBooking()->first();
|
||||||
|
|
||||||
|
return response()->json($supplier_booking ,200);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Only for single booking
|
// Only for single booking
|
||||||
@@ -62,7 +64,7 @@ class BookingSupplierController extends Controller
|
|||||||
$booking = Booking::find($booking_id);
|
$booking = Booking::find($booking_id);
|
||||||
|
|
||||||
// update existing booking supplier if exist
|
// update existing booking supplier if exist
|
||||||
$bookingsupplier = SupplierBooking::where('book_id', $booking_id)->first();
|
$bookingsupplier = SupplierBooking::where('booking_id', $booking_id)->first();
|
||||||
|
|
||||||
if (!$bookingsupplier){
|
if (!$bookingsupplier){
|
||||||
$bookingsupplier = new SupplierBooking();
|
$bookingsupplier = new SupplierBooking();
|
||||||
@@ -76,7 +78,7 @@ class BookingSupplierController extends Controller
|
|||||||
$bookingsupplier->rebate = $rebate;
|
$bookingsupplier->rebate = $rebate;
|
||||||
$bookingsupplier->amountInRMB = $amountInRMB;
|
$bookingsupplier->amountInRMB = $amountInRMB;
|
||||||
$bookingsupplier->rmbBankAmount = $rmbBankAmount;
|
$bookingsupplier->rmbBankAmount = $rmbBankAmount;
|
||||||
$bookingsupplier->book_id = $booking->id;
|
$bookingsupplier->booking_id = $booking->id;
|
||||||
$bookingsupplier->save();
|
$bookingsupplier->save();
|
||||||
|
|
||||||
// update booking status
|
// update booking status
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ class SupplierBooking extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function booking(){
|
public function booking(){
|
||||||
return $this->hasOne('App\Booking');
|
return $this->belongTo('App\Booking');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function supplierBookingTtem()
|
public function supplierBookingTtem()
|
||||||
|
|||||||
+34
@@ -0,0 +1,34 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
|
||||||
|
class RenameBookingForeignkeyFromSupplierbookingTable extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::table('supplier_bookings', function($table)
|
||||||
|
{
|
||||||
|
$table->dropForeign(['book_id']);
|
||||||
|
$table->dropColumn('book_id');
|
||||||
|
$table->integer('booking_id')->unsigned();
|
||||||
|
$table->foreign('booking_id')->references('id')->on('bookings');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -200,7 +200,9 @@
|
|||||||
</div>
|
</div>
|
||||||
<el-row :gutter="12" style="text-align:center">
|
<el-row :gutter="12" style="text-align:center">
|
||||||
<el-col :span="20" style="text-align:center">
|
<el-col :span="20" style="text-align:center">
|
||||||
<canvas id="myCanvas" v-insert-message="exampleContent"></canvas>
|
<canvas id="myCanvas" ref="myCanvas" v-insert-message="supplier_booking"></canvas>
|
||||||
|
<br>
|
||||||
|
<el-button @click="downloadReport()" type="text">Download Now</el-button>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-card>
|
</el-card>
|
||||||
@@ -236,6 +238,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import ProgressTrack from '~/components/AdminProgressTrack'
|
import ProgressTrack from '~/components/AdminProgressTrack'
|
||||||
import axios from 'axios'
|
import axios from 'axios'
|
||||||
|
import Canvas2Image from 'canvas2image'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
@@ -251,6 +254,8 @@
|
|||||||
bia: null,
|
bia: null,
|
||||||
user_bankslip_path: null,
|
user_bankslip_path: null,
|
||||||
},
|
},
|
||||||
|
supplier_booking:{
|
||||||
|
},
|
||||||
supplier: null,
|
supplier: null,
|
||||||
supplier_options: null,
|
supplier_options: null,
|
||||||
exampleContent: "This is TEXT"
|
exampleContent: "This is TEXT"
|
||||||
@@ -278,10 +283,32 @@
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
axios
|
||||||
|
.get('/api/supplier-booking/' + this.$route.params.id)
|
||||||
|
.then((response) => {
|
||||||
|
loading.close()
|
||||||
|
this.supplier_booking = response.data
|
||||||
|
}).catch((error) => {
|
||||||
|
console.log(error)
|
||||||
|
loading.close()
|
||||||
|
this.$router.push({
|
||||||
|
name: 'notfound'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
downloadReport(){
|
||||||
|
let canvas = document.getElementById('myCanvas')
|
||||||
|
var dataString = canvas.toDataURL("image/png");
|
||||||
|
console.log(dataString)
|
||||||
|
var link = document.createElement("a");
|
||||||
|
link.download = 'image';
|
||||||
|
link.href = dataString;
|
||||||
|
link.click();
|
||||||
|
},
|
||||||
completeReport() {
|
completeReport() {
|
||||||
// TODO : send request to change status
|
// TODO : send request to change status
|
||||||
this.loading_btn = true
|
this.loading_btn = true
|
||||||
@@ -356,10 +383,10 @@
|
|||||||
ctx.textAlign = "right";
|
ctx.textAlign = "right";
|
||||||
//// Row 1
|
//// Row 1
|
||||||
ctx.fillText("Payment Voucher :", column1X, rowHeight[1] - 5);
|
ctx.fillText("Payment Voucher :", column1X, rowHeight[1] - 5);
|
||||||
ctx.fillText("0323", column3X, rowHeight[1] - 5);
|
ctx.fillText(binding.value.id, column3X, rowHeight[1] - 5);
|
||||||
//// Row 2
|
//// Row 2
|
||||||
ctx.fillText("Date :", column1X, rowHeight[2] - 5);
|
ctx.fillText("Date :", column1X, rowHeight[2] - 5);
|
||||||
ctx.fillText("4 September 2017", column3X, rowHeight[2] - 5);
|
ctx.fillText(binding.value.created_at, column3X, rowHeight[2] - 5);
|
||||||
//// Row 3
|
//// Row 3
|
||||||
ctx.fillText("Marking :", column1X, rowHeight[3] - 5);
|
ctx.fillText("Marking :", column1X, rowHeight[3] - 5);
|
||||||
ctx.font = "bold 14px Arial";
|
ctx.font = "bold 14px Arial";
|
||||||
@@ -369,7 +396,7 @@
|
|||||||
ctx.font = "13px Arial";
|
ctx.font = "13px Arial";
|
||||||
//// Row 4
|
//// Row 4
|
||||||
ctx.fillText("Payment For(Order No.) :", column1X, rowHeight[4] - 5);
|
ctx.fillText("Payment For(Order No.) :", column1X, rowHeight[4] - 5);
|
||||||
ctx.fillText("010707", column3X, rowHeight[4] - 5);
|
ctx.fillText(binding.value.id, column3X, rowHeight[4] - 5);
|
||||||
//// Row 4
|
//// Row 4
|
||||||
ctx.fillText("Payment For :", column1X, rowHeight[5] - 5);
|
ctx.fillText("Payment For :", column1X, rowHeight[5] - 5);
|
||||||
ctx.fillText("Full Payment", column3X, rowHeight[5] - 5);
|
ctx.fillText("Full Payment", column3X, rowHeight[5] - 5);
|
||||||
|
|||||||
Reference in New Issue
Block a user