public function index() { if (!$this->hasPermission($this->menuPermissionName)) { return view($this->viewPermissiondeniedName); } $models = FinaceCompany::orderBy('name', 'asc')->get(['id', 'name']); $finacecompanyselectlist = array(); array_push($finacecompanyselectlist, ':เลือกไฟแนนซ์'); foreach ($models as $model) { array_push($finacecompanyselectlist, $model->id . ':' . $model->name); } $models = InterestRateType::has('commissionFinaces')->orderBy('name', 'asc')->get(['id', 'name']); $interestratetypeselectlist = array(); array_push($interestratetypeselectlist, ':เลือกประเภทอัตราดอกเบี้ย'); foreach ($models as $model) { array_push($interestratetypeselectlist, $model->id . ':' . $model->name); } $carmodels = CarModel::whereHas("carbrand", function ($q) { $q->where('ismain', true); })->orderBy('name', 'asc')->get(['id', 'name']); $carmodelselectlist = array(); array_push($carmodelselectlist, ':เลือกแบบ'); foreach ($carmodels as $item) { array_push($carmodelselectlist, $item->id . ':' . $item->name); } $carsubmodels = CarSubModel::has('commissionFinaceCars')->orderBy('name', 'asc')->get(['id', 'name']); $carsubmodelselectlist = array(); array_push($carsubmodelselectlist, '0:ทุกรุ่น'); foreach ($carsubmodels as $item) { array_push($carsubmodelselectlist, $item->id . ':' . $item->name); } return view('settings.commissionfinace', ['finacecompanyselectlist' => implode(";", $finacecompanyselectlist), 'interestratetypeselectlist' => implode(";", $interestratetypeselectlist), 'carmodelselectlist' => implode(";", $carmodelselectlist), 'carsubmodelselectlist' => implode(";", $carsubmodelselectlist)]); }
public function readSelectlist($carmodelid) { if (!$this->hasPermission($this->menuPermissionName)) { return view($this->viewPermissiondeniedName); } $carsubmodels = CarSubModel::where('carmodelid', $carmodelid)->orderBy('name', 'asc')->get(['id', 'name']); return $carsubmodels; }
public function readSelectlistForDisplayInGrid() { if (!$this->hasPermission($this->menuPermissionName)) { return view($this->viewPermissiondeniedName); } $carsubmodels = CarSubModel::has('commissionFinaceCars')->orderBy('name', 'asc')->get(['id', 'name']); $carsubmodelselectlist = array(); array_push($carsubmodelselectlist, '0:ทุกรุ่น'); foreach ($carsubmodels as $item) { array_push($carsubmodelselectlist, $item->id . ':' . $item->name); } return ['carsubmodelselectlist' => implode(";", $carsubmodelselectlist)]; }
public function readSelectlistForDisplayInGrid() { if (!$this->hasPermission($this->menuPermissionName)) { return view($this->viewPermissiondeniedName); } $models = InterestRateType::has('commissionSpecials')->orderBy('name', 'asc')->get(['id', 'name']); $interestratetypeselectlist = array(); array_push($interestratetypeselectlist, ':เลือกประเภทอัตราดอกเบี้ย'); foreach ($models as $item) { array_push($interestratetypeselectlist, $item->id . ':' . $item->name); } $carsubmodels = CarSubModel::has('commissionSpecials')->orderBy('name', 'asc')->get(['id', 'name']); $carsubmodelselectlist = array(); array_push($carsubmodelselectlist, '0:ทุกรุ่น'); foreach ($carsubmodels as $item) { array_push($carsubmodelselectlist, $item->id . ':' . $item->name); } return ['interestratetypeselectlist' => implode(";", $interestratetypeselectlist), 'carsubmodelselectlist' => implode(";", $carsubmodelselectlist)]; }
public function readSelectlist($carmodelid) { $carsubmodels = CarSubModel::where('carmodelid', $carmodelid)->orderBy('name', 'asc')->get(['id', 'name']); return $carsubmodels; }
public function view($id) { if (!$this->hasPermission($this->menuPermissionName)) { return view($this->viewPermissiondeniedName); } $model = CancelCarPreemption::find($id); $carpreemption = CarPreemption::find($model->carpreemptionid); $carpreemptionselectlist = array(); $carpreemptionselectlist[$carpreemption->id] = $carpreemption->bookno . '/' . $carpreemption->no; $model->bookno = $carpreemption->bookno; $model->no = $carpreemption->no; $customer = Customer::find($carpreemption->buyercustomerid); $model->customer = $customer->title . ' ' . $customer->firstname . ' ' . $customer->lastname; $carmodel = CarModel::find($carpreemption->carmodelid); $carsubmodel = CarSubModel::find($carpreemption->carsubmodelid); $model->carmodel = $carmodel->name . '/' . $carsubmodel->name; $model->carpreemptiondate = date('d-m-Y', strtotime($carpreemption->date)); $model->cashpledge = $carpreemption->cashpledge; if ($model->refunddate != null && $model->refunddate != '') { $model->refunddate = date('d-m-Y', strtotime($model->refunddate)); } if ($model->confiscatedate != null && $model->confiscatedate != '') { $model->confiscatedate = date('d-m-Y', strtotime($model->confiscatedate)); } $salesmanemployee = Employee::find($carpreemption->salesmanemployeeid); $model->salesmanemployee = $salesmanemployee->title . ' ' . $salesmanemployee->firstname . ' ' . $salesmanemployee->lastname; $toemployeeselectlist = array(); $item = Employee::find($model->toemployeeid); $toemployeeselectlist[$item->id] = $item->title . ' ' . $item->firstname . ' ' . $item->lastname; $item = Employee::find($model->approversemployeeid); $toemployeeselectlist[$item->id] = $item->title . ' ' . $item->firstname . ' ' . $item->lastname; $accountandfinanceemployeeselectlist = array(); $item = Employee::find($model->accountemployeeid); $accountandfinanceemployeeselectlist[$item->id] = $item->title . ' ' . $item->firstname . ' ' . $item->lastname; $item = Employee::find($model->financeemployeeid); $accountandfinanceemployeeselectlist[$item->id] = $item->title . ' ' . $item->firstname . ' ' . $item->lastname; if ($model->salesmanemployeedate != null && $model->salesmanemployeedate != '') { $model->salesmanemployeedate = date('d-m-Y', strtotime($model->salesmanemployeedate)); } if ($model->accountemployeedate != null && $model->accountemployeedate != '') { $model->accountemployeedate = date('d-m-Y', strtotime($model->accountemployeedate)); } if ($model->financeemployeedate != null && $model->financeemployeedate != '') { $model->financeemployeedate = date('d-m-Y', strtotime($model->financeemployeedate)); } if ($model->approversemployeedate != null && $model->approversemployeedate != '') { $model->approversemployeedate = date('d-m-Y', strtotime($model->approversemployeedate)); } return view('cancelcarpreemptionform', ['oper' => 'view', 'pathPrefix' => '../../', 'cancelcarpreemption' => $model, 'carpreemptionselectlist' => $carpreemptionselectlist, 'toemployeeselectlist' => $toemployeeselectlist, 'accountandfinanceemployeeselectlist' => $accountandfinanceemployeeselectlist]); }
public function getforaccountingdetailbyid($id, $donumberformat) { if (!$this->hasPermission($this->menuPermissionName)) { return view($this->viewPermissiondeniedName); } $accountingdetail = new AccountingDetail(); $accountingdetail->carpaymentid = $id; $carpayment = CarPayment::find($id); $branch = Branch::find($carpayment->branchid); $accountingdetail->branchname = $branch->name; $carpreemption = CarPreemption::find($carpayment->carpreemptionid); $customer = Customer::find($carpreemption->buyercustomerid); $accountingdetail->customername = $customer->title . $customer->firstname . ' ' . $customer->lastname; if ($carpayment->deliverycardate != null && $carpayment->deliverycardate != '') { $accountingdetail->date = date('d-m-Y', strtotime($carpayment->deliverycardate)); $accountingdetail->deliverycardate = date('d-m-Y', strtotime($carpayment->deliverycardate)); } else { $accountingdetail->date = null; $accountingdetail->deliverycardate = "-"; } $pricelist = Pricelist::find($carpreemption->pricelistid); $accountingdetail->carpriceinpricelist = $pricelist->sellingpricewithaccessories; $accountingdetail->colorprice = $carpreemption->colorprice; $carwithcolorprice = $pricelist->sellingpricewithaccessories + $carpreemption->colorprice; $accountingdetail->carwithcolorprice = $carwithcolorprice; $accountingdetail->purchasetype = $carpreemption->purchasetype; if ($carpreemption->purchasetype == 0) { $openbill = $accountingdetail->carwithcolorprice - $carpreemption->discount; } else { $openbill = $accountingdetail->carwithcolorprice - $carpreemption->discount + $carpreemption->accessories + $carpayment->accessoriesfeeincludeinyodjud; } $accountingdetail->openbill = $openbill; $accountingdetail->accessoriesfeeincludeinyodjud = $carpayment->accessoriesfeeincludeinyodjud; $accountingdetail->fakeaccessories = $carpreemption->accessories; $accountingdetail->discount = $carpreemption->discount; $accountingdetail->subdown = $carpreemption->subdown; $realsalesprice = $carwithcolorprice + $carpayment->accessoriesfeeincludeinyodjud - $carpreemption->discount - $carpreemption->subdown; $accountingdetail->realsalesprice = $realsalesprice; $accountingdetail->accessoriesfeeactuallypaid = $carpayment->accessoriesfeeactuallypaid; $registrationfee = $carpreemption->registrationfeefree ? 0 : $carpreemption->registrationfee; $accountingdetail->registrationfee = $registrationfee; $accountingdetail->actualinsurancefee = $carpreemption->insurancefee; if ($carpreemption->purchasetype == 0) { $compulsorymotorinsurancefeecash = $carpreemption->compulsorymotorinsurancefeefree ? 0 : $carpreemption->compulsorymotorinsurancefee; $conditioncompulsorymotorinsurancefeecustomerpaid = $compulsorymotorinsurancefeecash; $accountingdetail->compulsorymotorinsurancefeecash = $compulsorymotorinsurancefeecash; $insurancefeecash = $carpreemption->insurancefeefree ? 0 : $carpreemption->insurancefee; $accountingdetail->insurancefeecash = $insurancefeecash; $accountingdetail->compulsorymotorinsurancefeefn = 0; $compulsorymotorinsurancefeefn = 0; $accountingdetail->insurancefeefn = 0; $insurancefeefn = 0; $accountingdetail->firstinstallmentpayamount = 0; $firstinstallmentpayamount = 0; $accountingdetail->installmentsinadvance = 0; $accountingdetail->amountperinstallment = 0; $accountingdetail->payinadvanceamount = 0; $payinadvanceamount = 0; $accountingdetail->insurancepremium = 0; $accountingdetail->totalinadvancefees = 0; $totalinadvancefees = 0; $accountingdetail->conditioninsurancefee = $carpreemption->insurancefee; $accountingdetail->conditioninsurancefeecustomerpaid = $insurancefeecash; $conditioninsurancefeecompanypaid = $carpreemption->insurancefee - $insurancefeecash; $accountingdetail->conditioninsurancefeecompanypaid = $conditioninsurancefeecompanypaid; $accountingdetail->conditioncompulsorymotorinsurancefeecustomerpaid = $compulsorymotorinsurancefeecash; } else { $compulsorymotorinsurancefeecash = 0; $insurancefeecash = 0; $compulsorymotorinsurancefeefn = $carpreemption->compulsorymotorinsurancefeefree ? 0 : $carpreemption->compulsorymotorinsurancefee; $conditioncompulsorymotorinsurancefeecustomerpaid = $compulsorymotorinsurancefeefn; $accountingdetail->compulsorymotorinsurancefeefn = $compulsorymotorinsurancefeefn; $insurancefeefn = $carpreemption->insurancefeefree ? 0 : $carpreemption->insurancefee; $accountingdetail->insurancefeefn = $insurancefeefn; $firstinstallmentpayamount = $carpayment->firstinstallmentpay ? $carpayment->amountperinstallment : 0; $accountingdetail->firstinstallmentpayamount = $firstinstallmentpayamount; $accountingdetail->installmentsinadvance = $carpayment->installmentsinadvance; $accountingdetail->amountperinstallment = $carpayment->amountperinstallment; $payinadvanceamount = $carpayment->installmentsinadvance * $carpayment->amountperinstallment; $accountingdetail->payinadvanceamount = $payinadvanceamount; $accountingdetail->insurancepremium = $carpayment->insurancepremium; $totalinadvancefees = $insurancefeefn + $compulsorymotorinsurancefeefn + $firstinstallmentpayamount + $payinadvanceamount + $carpayment->insurancepremium; $accountingdetail->totalinadvancefees = $totalinadvancefees; $accountingdetail->compulsorymotorinsurancefeecash = 0; $accountingdetail->insurancefeecash = 0; $accountingdetail->conditioninsurancefee = $carpreemption->insurancefee; $accountingdetail->conditioninsurancefeecustomerpaid = $insurancefeefn; $conditioninsurancefeecompanypaid = $carpreemption->insurancefee - $insurancefeefn; $accountingdetail->conditioninsurancefeecompanypaid = $conditioninsurancefeecompanypaid; $accountingdetail->conditioncompulsorymotorinsurancefeecustomerpaid = $compulsorymotorinsurancefeefn; } $implementfee = $carpreemption->implementfeefree ? 0 : $carpreemption->implementfee; $accountingdetail->implementfee = $implementfee; $subsidise = $carpreemption->subsidisefree ? 0 : $carpreemption->subsidise; $accountingdetail->subsidise = $subsidise; $accountingdetail->giveawaywithholdingtax = $carpreemption->giveawaywithholdingtax; $accountingdetail->otherfee = $carpreemption->otherfee; $accountingdetail->otherfeedetail = $carpreemption->otherfeedetail; $accountingdetail->otherfee2 = $carpreemption->otherfee2; $accountingdetail->otherfeedetail2 = $carpreemption->otherfeedetail2; $accountingdetail->otherfee3 = $carpreemption->otherfee3; $accountingdetail->otherfeedetail3 = $carpreemption->otherfeedetail3; $totalotherfee = $subsidise + $carpreemption->giveawaywithholdingtax + $carpreemption->otherfee + $carpreemption->otherfee2 + $carpreemption->otherfee3; $accountingdetail->totalotherfee = $totalotherfee; $totalotherfees = $carpayment->accessoriesfeeactuallypaid + $registrationfee + $compulsorymotorinsurancefeecash + $insurancefeecash + $implementfee + $totalotherfee; $accountingdetail->totalotherfees = $totalotherfees; $carmodel = CarModel::find($carpreemption->carmodelid); $carsubmodel = CarSubModel::find($carpreemption->carsubmodelid); $accountingdetail->submodel = $carmodel->name . '/' . $carsubmodel->name; $car = Car::find($carpayment->carid); $accountingdetail->carno = $car->no; $accountingdetail->engineno = $car->engineno; $accountingdetail->chassisno = $car->chassisno; $color = Color::find($car->colorid); $accountingdetail->color = $color->code; $accountingdetail->purchasetypetext = $carpreemption->purchasetype == 0 ? "C" : "F"; $accountingdetail->down = $carpreemption->down; $insurancecompany = InsuranceCompany::find($carpayment->insurancecompanyid); if ($insurancecompany != null) { $accountingdetail->insurancecompany = $insurancecompany->name; } $accountingdetail->capitalinsurance = $carpayment->capitalinsurance; $compulsorymotorinsurancecompany = InsuranceCompany::find($carpayment->compulsorymotorinsurancecompanyid); if ($compulsorymotorinsurancecompany != null) { $accountingdetail->compulsorymotorinsurancecompany = $compulsorymotorinsurancecompany->name; } $cartype = CarType::find($carmodel->cartypeid); $accountingdetail->conditioncompulsorymotorinsurancefee = $cartype->actpaidincludevat; $accountingdetail->hascompulsorymotorinsurancefee = $cartype->actpaidincludevat == 0 ? 0 : 1; $conditioncompulsorymotorinsurancefeecompanypaid = $cartype->actpaidincludevat - $conditioncompulsorymotorinsurancefeecustomerpaid; $accountingdetail->conditioncompulsorymotorinsurancefeecompanypaid = $conditioncompulsorymotorinsurancefeecompanypaid; $note1insurancefee = $carpreemption->insurancefee * 100 / 107.0; $accountingdetail->note1insurancefee = $note1insurancefee; $accountingdetail->note1insurancefeeincludevat = $carpreemption->insurancefee; $note1insurancefeevat = $carpreemption->insurancefee - $note1insurancefee; $accountingdetail->note1insurancefeevat = $note1insurancefeevat; $accountingdetail->note1compulsorymotorinsurancefee = $cartype->actpaid; $accountingdetail->note1compulsorymotorinsurancefeevat = $cartype->actpaidincludevat - $cartype->actpaid; $accountingdetail->note1compulsorymotorinsurancefeeincludevat = $cartype->actpaidincludevat; $note1totalfee = $note1insurancefee + $cartype->actpaid; $accountingdetail->note1totalfee = $note1totalfee; $note1totalfeevat = $note1insurancefeevat + ($cartype->actpaidincludevat - $cartype->actpaid); $accountingdetail->note1totalfeevat = $note1totalfeevat; $note1totalfeeincludevat = $carpreemption->insurancefee + $cartype->actpaidincludevat; $accountingdetail->note1totalfeeincludevat = $note1totalfeeincludevat; $cashpledgeredlabel = $carpreemption->cashpledgeredlabel; $accountingdetail->cashpledgeredlabel = $cashpledgeredlabel; if ($cashpledgeredlabel == null || $cashpledgeredlabel == 0) { $accountingdetail->hascashpledgeredlabel = 0; } else { $accountingdetail->hascashpledgeredlabel = 1; } $redlabelhistory = Redlabelhistory::where('carpreemptionid', $carpreemption->id)->orderBy('id', 'desc')->first(); if ($redlabelhistory != null) { if ($redlabelhistory->returndate != null) { $accountingdetail->redlabelreturncashpledgedate = date('d-m-Y', strtotime($redlabelhistory->returncashpledgedate)); } else { $accountingdetail->redlabelreturncashpledgedate = "-"; } } else { $accountingdetail->redlabelreturncashpledgedate = "ไม่เอาป้าย"; } $cashpledge = $carpreemption->cashpledge; $accountingdetail->cashpledge = $cashpledge; $totalcashpledge = $cashpledgeredlabel - $cashpledge; $accountingdetail->totalcashpledge = $totalcashpledge; $totalcash = $realsalesprice + $totalotherfees + $totalinadvancefees + $totalcashpledge; $accountingdetail->totalcash = $totalcash; $finacecompany = FinaceCompany::find($carpreemption->finacecompanyid); if ($finacecompany != null) { $accountingdetail->finacecompany = $finacecompany->name; } $accountingdetail->incasefinace = $carpreemption->purchasetype; if ($carpreemption->purchasetype == 1) { $accountingdetail->interest = $carpreemption->interest; $accountingdetail->installments = $carpreemption->installments; $pricelist = Pricelist::find($carpreemption->pricelistid); $carprice = $pricelist->sellingpricewithaccessories + $carpreemption->colorprice; $yodjud = $carprice - $carpreemption->discount - $carpreemption->down + $carpreemption->accessories + $carpayment->accessoriesfeeincludeinyodjud; $yodjudwithinsurancepremium = $yodjud + $carpayment->insurancepremium; $accountingdetail->yodjud = $yodjudwithinsurancepremium; $yodjudwithinterest = $yodjudwithinsurancepremium * ($carpreemption->interest + 100) / 100.0; $accountingdetail->yodjudwithinterest = $yodjudwithinterest; $finaceprofit = $yodjudwithinterest - $yodjudwithinsurancepremium; $commissionfinace = CommissionFinace::where('finacecompanyid', $carpreemption->finacecompanyid)->where('interestratetypeid', $carpreemption->interestratetypeid)->where('finaceminimumprofit', '<=', $finaceprofit)->where('effectivefrom', '<=', $carpreemption->date)->where('effectiveto', '>=', $carpreemption->date)->whereHas('commissionFinaceCars', function ($query) use($carpreemption) { $query->where('carmodelid', $carpreemption->carmodelid)->Where(function ($query) use($carpreemption) { $query->where('carsubmodelid', $carpreemption->carsubmodelid)->orWhere('carsubmodelid', 0); }); })->first(); $percentdown = $carpreemption->down * 100.0 / ($carprice - $carpreemption->discount + $carpreemption->accessories); $accountingdetail->comfinpercent = null; $comfinpercent = 0; $accountingdetail->comfinyear = null; $comfinyear = 0; if ($commissionfinace != null) { $commissionfinaceinterest = CommissionFinaceInterest::where('commissionfinaceid', $commissionfinace->id)->where('downfrom', '<=', $percentdown)->where('downto', '>=', $percentdown)->first(); if ($commissionfinaceinterest != null) { $commissionstandardinterest = 0; switch ($carpreemption->installments) { case 24: $commissionstandardinterest = $commissionfinaceinterest->installment24; break; case 36: $commissionstandardinterest = $commissionfinaceinterest->installment36; break; case 48: $commissionstandardinterest = $commissionfinaceinterest->installment48; break; case 60: $commissionstandardinterest = $commissionfinaceinterest->installment60; break; case 72: $commissionstandardinterest = $commissionfinaceinterest->installment72; break; case 84: $commissionstandardinterest = $commissionfinaceinterest->installment84; break; } $commissionfinaceinterests = CommissionFinaceCom::where('commissionfinaceid', $commissionfinace->id)->orderBy('com', 'asc')->get(); $previousstepcom = null; foreach ($commissionfinaceinterests as $item) { if ($carpreemption->interestratemode == 0) { $currentstepinterest = $commissionstandardinterest + $item->interestcalculationbeginning; } else { $currentstepinterest = $commissionstandardinterest + $item->interestcalculationending; } if ($carpreemption->interest == $currentstepinterest) { $accountingdetail->comfinpercent = $item->com; $accountingdetail->comfinyear = $commissionfinace->years; $comfinpercent = $item->com; $comfinyear = $commissionfinace->years; break; } else { if ($carpreemption->interest < $currentstepinterest) { if ($previousstepcom != null) { $accountingdetail->comfinpercent = $previousstepcom; $accountingdetail->comfinyear = $commissionfinace->years; $comfinpercent = $previousstepcom; $comfinyear = $commissionfinace->years; } else { $accountingdetail->comfinpercent = null; $accountingdetail->comfinyear = null; $comfinpercent = 0; $comfinyear = 0; } break; } else { if ($carpreemption->interest > $currentstepinterest) { $previousstepcom = $item->com; } } } } if ($accountingdetail->comfinpercent == null) { if ($previousstepcom != null) { $accountingdetail->comfinpercent = $previousstepcom; $accountingdetail->comfinyear = $commissionfinace->years; $comfinpercent = $previousstepcom; $comfinyear = $commissionfinace->years; } } } } $employee = Employee::find($carpreemption->salesmanemployeeid); $accountingdetail->salename = $employee->title . $employee->firstname . ' ' . $employee->lastname; $accountingdetail->incasefinaceinsurancefee = $carpreemption->insurancefee; $accountingdetail->note2insurancefeewhtax = $note1insurancefee / 100.0; $accountingdetail->note2insurancefee = $insurancefeefn; $note2insurancefeeexpense = $conditioninsurancefeecompanypaid > 0 ? $conditioninsurancefeecompanypaid : 0; $accountingdetail->note2insurancefeeexpense = $note2insurancefeeexpense; $note2insurancefeeincome = $conditioninsurancefeecompanypaid < 0 ? $conditioninsurancefeecompanypaid * -1 : 0; $accountingdetail->note2insurancefeeincome = $note2insurancefeeincome; $accountingdetail->incasefinacecompulsorymotorinsurancefee = $cartype->actpaidincludevat; $accountingdetail->note2compulsorymotorinsurancefeewhtax = $cartype->actpaid / 100.0; $accountingdetail->note2compulsorymotorinsurancefee = $compulsorymotorinsurancefeefn; $note2compulsorymotorinsurancefeeexpense = $conditioncompulsorymotorinsurancefeecompanypaid > 0 ? $conditioncompulsorymotorinsurancefeecompanypaid : 0; $accountingdetail->note2compulsorymotorinsurancefeeexpense = $note2compulsorymotorinsurancefeeexpense; $note2compulsorymotorinsurancefeeincome = $conditioncompulsorymotorinsurancefeecompanypaid < 0 ? $conditioncompulsorymotorinsurancefeecompanypaid * -1 : 0; $accountingdetail->note2compulsorymotorinsurancefeeincome = $note2compulsorymotorinsurancefeeincome; $accountingdetail->incasefinacefirstinstallmentpayamount = $firstinstallmentpayamount; $accountingdetail->note2firstinstallmentpayamount = $firstinstallmentpayamount; $accountingdetail->incasefinacepayinadvanceamount = $payinadvanceamount; $accountingdetail->note2payinadvanceamount = $payinadvanceamount; $accountingdetail->incasefinaceinsurancepremium = $carpayment->insurancepremium; $accountingdetail->note2insurancepremium = $carpayment->insurancepremium; $totalincasefinace = $carpreemption->insurancefee + $cartype->actpaidincludevat + $firstinstallmentpayamount + $payinadvanceamount + $carpayment->insurancepremium; $accountingdetail->totalincasefinace = $totalincasefinace; $accountingdetail->incasefinacereceivedcash = $yodjudwithinsurancepremium - $totalincasefinace; $note2total1 = $insurancefeefn + $compulsorymotorinsurancefeefn + $firstinstallmentpayamount + $payinadvanceamount + $carpayment->insurancepremium; $accountingdetail->note2total1 = $note2total1; $note2total2 = $note2insurancefeeexpense + $note2compulsorymotorinsurancefeeexpense; $accountingdetail->note2total2 = $note2total2; $note2total3 = $note2insurancefeeincome + $note2compulsorymotorinsurancefeeincome; $accountingdetail->note2total3 = $note2total3; $accountingdetail->incasefinacesubsidise = $carpreemption->subsidise; $incasefinacesubsidisewithvat = $carpreemption->subsidise + $carpreemption->subsidise * 0.07000000000000001; $accountingdetail->incasefinacesubsidisewithvat = $incasefinacesubsidisewithvat; $accountingdetail->note2subsidisewhtax = $carpreemption->subsidise * 0.03; $note2subsidisetotal = $carpreemption->subsidise + $carpreemption->subsidise * 0.07000000000000001 - $carpreemption->subsidise * 0.03; $accountingdetail->note2subsidisetotal = $note2subsidisetotal; $incasefinacehassubsidisereceivedcash = $yodjudwithinsurancepremium - $totalincasefinace - $incasefinacesubsidisewithvat; $accountingdetail->incasefinacehassubsidisereceivedcash = $incasefinacehassubsidisereceivedcash; $note2totalwhtax = $note1insurancefee / 100.0 + $cartype->actpaid / 100.0 + $carpreemption->subsidise * 0.03; $accountingdetail->note2totalwhtax = $note2totalwhtax; //NLTH,AYCAL,KL if ($carpreemption->finacecompanyid == 1 || $carpreemption->finacecompanyid == 2 || $carpreemption->finacecompanyid == 4) { $incasefinacecomfinamountwithvat = $yodjud * ($carpreemption->interest / 100.0) * $comfinyear * ($comfinpercent / 100.0); $incasefinacecomfinamount = $incasefinacecomfinamountwithvat / 1.07; $incasefinacecomfinvat = $incasefinacecomfinamountwithvat - $incasefinacecomfinamount; } else { if ($carpreemption->finacecompanyid == 3 || $carpreemption->finacecompanyid == 5) { $incasefinacecomfinamount = floor($yodjud / 1.07 * ($carpreemption->interest / 100.0) * $comfinyear * ($comfinpercent / 100.0)); $incasefinacecomfinvat = $incasefinacecomfinamount * 0.07000000000000001; $incasefinacecomfinamountwithvat = $incasefinacecomfinamount + $incasefinacecomfinvat; } else { if ($carpreemption->finacecompanyid == 6) { $incasefinacecomfinamount = round($yodjud / 1.07 * ($carpreemption->interest / 100.0) * $comfinyear * ($comfinpercent / 100.0), 2); $incasefinacecomfinvat = $incasefinacecomfinamount * 0.07000000000000001; $incasefinacecomfinamountwithvat = $incasefinacecomfinamount + $incasefinacecomfinvat; } else { if ($carpreemption->finacecompanyid == 7) { $incasefinacecomfinamount = ($carpayment->amountperinstallment / 1.07 * $carpreemption->installments - $yodjud / 1.07) * ($comfinpercent / 100.0) * 48 / $carpreemption->installments; $incasefinacecomfinvat = $incasefinacecomfinamount * 0.07000000000000001; $incasefinacecomfinamountwithvat = $incasefinacecomfinamount + $incasefinacecomfinvat; } } } } $accountingdetail->incasefinacecomfinamount = $incasefinacecomfinamount; $accountingdetail->incasefinacecomfinvat = $incasefinacecomfinvat; $accountingdetail->incasefinacecomfinamountwithvat = $incasefinacecomfinamountwithvat; $accountingdetail->incasefinacecomfinwhtax = $incasefinacecomfinamount * 0.03; $incasefinacecomfintotal = $incasefinacecomfinamountwithvat - $incasefinacecomfinamount * 0.03; $accountingdetail->incasefinacecomfintotal = $incasefinacecomfintotal; $commissionextra = CommissionExtra::where('finacecompanyid', $carpreemption->finacecompanyid)->where('effectivefrom', '<=', $carpreemption->date)->where('effectiveto', '>=', $carpreemption->date)->whereHas('commissionExtraCars', function ($query) use($carpreemption) { $query->where('carmodelid', $carpreemption->carmodelid)->Where(function ($query) use($carpreemption) { $query->where('carsubmodelid', $carpreemption->carsubmodelid)->orWhere('carsubmodelid', 0); }); })->first(); if ($commissionfinace != null) { $accountingdetail->incasefinacecomextraamount = $commissionextra->amount; $incasefinacecomextraamount = $commissionextra->amount; $accountingdetail->incasefinacecomextravat = $commissionextra->amount * 0.07000000000000001; $incasefinacecomextravat = $commissionextra->amount * 0.07000000000000001; $incasefinacecomextraamountwithvat = $commissionextra->amount + $commissionextra->amount * 0.07000000000000001; $accountingdetail->incasefinacecomextraamountwithvat = $incasefinacecomextraamountwithvat; $accountingdetail->incasefinacecomextrawhtax = $commissionextra->amount * 0.03; $incasefinacecomextrawhtax = $commissionextra->amount * 0.03; $incasefinacecomextratotal = $incasefinacecomextraamountwithvat - $commissionextra->amount * 0.03; $accountingdetail->incasefinacecomextratotal = $incasefinacecomextratotal; } else { $accountingdetail->incasefinacecomextraamount = 0; $incasefinacecomextraamount = 0; $accountingdetail->incasefinacecomextravat = 0; $incasefinacecomextravat = 0; $accountingdetail->incasefinacecomextraamountwithvat = 0; $accountingdetail->incasefinacecomextrawhtax = 0; $incasefinacecomextrawhtax = 0; $accountingdetail->incasefinacecomextratotal = 0; $incasefinacecomextratotal = 0; } if ($carpayment->insurancepremium > 0) { $commissionpa = CommissionPA::where('finacecompanyid', $carpreemption->finacecompanyid)->where('effectivefrom', '<=', $carpreemption->date)->where('effectiveto', '>=', $carpreemption->date)->first(); if ($commissionpa != null) { $accountingdetail->incasefinacecompaamount = $commissionpa->amount; $incasefinacecompaamount = $commissionpa->amount; $accountingdetail->incasefinacecompavat = $commissionpa->amount * 0.07000000000000001; $incasefinacecompavat = $commissionpa->amount * 0.07000000000000001; $incasefinacecompaamountwithvat = $commissionpa->amount + $commissionpa->amount * 0.07000000000000001; $accountingdetail->incasefinacecompaamountwithvat = $incasefinacecompaamountwithvat; $accountingdetail->incasefinacecompawhtax = $commissionpa->amount * 0.03; $incasefinacecompawhtax = $commissionpa->amount * 0.03; $incasefinacecompatotal = $incasefinacecompaamountwithvat - $commissionpa->amount * 0.03; $accountingdetail->incasefinacecompatotal = $incasefinacecompatotal; } else { $accountingdetail->incasefinacecompaamount = 0; $incasefinacecompaamount = 0; $accountingdetail->incasefinacecompavat = 0; $incasefinacecompavat = 0; $accountingdetail->incasefinacecompaamountwithvat = 0; $accountingdetail->incasefinacecompawhtax = 0; $incasefinacecompawhtax = 0; $accountingdetail->incasefinacecompatotal = 0; $incasefinacecompatotal = 0; } } else { $accountingdetail->incasefinacecompaamount = 0; $incasefinacecompaamount = 0; $accountingdetail->incasefinacecompavat = 0; $incasefinacecompavat = 0; $accountingdetail->incasefinacecompaamountwithvat = 0; $accountingdetail->incasefinacecompawhtax = 0; $incasefinacecompawhtax = 0; $accountingdetail->incasefinacecompatotal = 0; $incasefinacecompatotal = 0; } $incasefinacetotalcomamount = $incasefinacecomfinamount + $incasefinacecomextraamount + $incasefinacecompaamount; $accountingdetail->incasefinacetotalcomamount = $incasefinacetotalcomamount; $incasefinacetotalcomvat = $incasefinacecomfinamount * 0.07000000000000001 + $incasefinacecomextravat + $incasefinacecompavat; $accountingdetail->incasefinacetotalcomvat = $incasefinacetotalcomvat; $incasefinacetotalcomamountwithvat = $incasefinacetotalcomamount + $incasefinacetotalcomvat; $accountingdetail->incasefinacetotalcomamountwithvat = $incasefinacetotalcomamountwithvat; $incasefinacetotalcomwhtax = $incasefinacecomfinamount * 0.03 + $incasefinacecomextrawhtax + $incasefinacecompawhtax; $accountingdetail->incasefinacetotalcomwhtax = $incasefinacetotalcomwhtax; $incasefinacetotalcomtotal = $incasefinacecomfintotal + $incasefinacecomextratotal + $incasefinacecompatotal; $accountingdetail->incasefinacetotalcomtotal = $incasefinacetotalcomtotal; $receivedcashfromfinace = round($incasefinacehassubsidisereceivedcash, 2) + round($note2totalwhtax, 2) + round($incasefinacetotalcomtotal, 2); $accountingdetail->receivedcashfromfinace = $receivedcashfromfinace; $accountingdetail->receivedcashfromfinacenet = $receivedcashfromfinace; $accountingdetail->receivedcashfromfinaceshort = $receivedcashfromfinace; $accountingdetail->receivedcashfromfinacenetshort = $receivedcashfromfinace; $accountingdetail->receivedcashfromfinaceover = 0; $accountingdetail->receivedcashfromfinacenetover = 0; } else { $yodjud = 0; $yodjudwithinsurancepremium = 0; $accountingdetail->incasefinacereceivedcash = 0; } $tradereceivableaccount2amount = $totalcash - $yodjudwithinsurancepremium; $accountingdetail->tradereceivableaccount2amount = $tradereceivableaccount2amount; $oldcarprice = $carpreemption->oldcarprice; $accountingdetail->oldcarprice = $oldcarprice; $overdue = $carpayment->overdue; $accountingdetail->overdue = $overdue; $tradereceivableaccount2remainingamount = $tradereceivableaccount2amount - $oldcarprice - $overdue; $accountingdetail->tradereceivableaccount2remainingamount = $tradereceivableaccount2remainingamount; $accountingdetail->ins = $accountingdetail->note1insurancefeeincludevat; //$carpreemption->insurancefee; $accountingdetail->prb = $accountingdetail->note1compulsorymotorinsurancefeeincludevat; //$carpreemption->compulsorymotorinsurancefee; $accountingdetail->dc = $carpreemption->accessories + $carpreemption->subdown; $accountingdetail->totalacc2 = $tradereceivableaccount2remainingamount; $accountingdetail->totalacc2short = $tradereceivableaccount2remainingamount; $accountingdetail->totalacc2over = 0; $accountingdetail->totalaccount2 = $tradereceivableaccount2remainingamount; $accountingdetail->totalaccount2short = $tradereceivableaccount2remainingamount; $accountingdetail->totalaccount2over = 0; $arrNotFormatted = array("id", "purchasetype", "carpaymentid", "hasinsurancefee", "hascompulsorymotorinsurancefee", "hascashpledgeredlabel", "systemcalincasefinacecomfinamount", "systemcalincasefinacecomfinvat", "systemcalincasefinacecomfinamountwithvat", "systemcalincasefinacecomfinwhtax", "systemcalincasefinacecomfintotal", "receivedcashfromfinacenet", "receivedcashfromfinacenetshort", "receivedcashfromfinacenetover", "totalaccount1", "totalaccount1short", "totalaccount1over", "totalaccount2", "totalaccount2short", "totalaccount2over", 'totalaccounts', 'totalaccountsshort', 'totalaccountsover', "invoiceno", "additionalopenbill", "deliverycardate", "cashpledgeredlabelreceiptbookno", "cashpledgeredlabelreceiptno", "cashpledgeredlabelreceiptdate", "redlabelreturncashpledgedate", "cashpledgereceiptbookno", "cashpledgereceiptno", "cashpledgereceiptdate", "incasefinacecomfinamount", "incasefinacecomfinvat", "incasefinacecomfinamountwithvat", "incasefinacecomfinwhtax", "incasefinacecomfintotal", "oldcarcomamount", 'oldcarcomdate', "adj", "insurancefeereceiptcondition", "compulsorymotorinsurancefeereceiptcondition", "payinadvanceamountreimbursementdate", "payinadvanceamountreimbursementdocno", 'insurancebilldifferent', "note1insurancefeereceiptcondition", "note1compulsorymotorinsurancefeereceiptcondition", 'insurancefeepayment', 'insurancefeepaidseparatelydate', 'insurancepremiumnet', 'insurancepremiumcom', 'insurancefeepaidseparatelytotal', 'compulsorymotorinsurancefeepayment', 'compulsorymotorinsurancefeepaidseparatelydate', 'compulsorymotorinsurancepremiumnet', 'compulsorymotorinsurancepremiumcom', 'compulsorymotorinsurancefeepaidseparatelytotal', "carno", "installmentsinadvance", "installments", "comfinyear", "createdby", "createddate", "modifiedby", "modifieddate", 'actualinsurancefee'); if ($donumberformat == 1) { foreach ($accountingdetail->toArray() as $key => $value) { if (!in_array($key, $arrNotFormatted)) { if (is_numeric($value) && (double) $value != 0.0) { $value = number_format($value, 2, '.', ','); } else { if ($value == null || $value == '' || is_numeric($value) && (double) $value == 0.0) { $value = '-'; } } $accountingdetail->{$key} = $value; } } } return $accountingdetail; }
public function readSelectlistForDisplayInGrid() { $carsubmodelids = Car::distinct()->lists('carsubmodelid'); $carsubmodels = CarSubModel::whereIn('id', $carsubmodelids)->orderBy('name', 'asc')->get(['id', 'name']); $carsubmodelselectlist = array(); array_push($carsubmodelselectlist, ':เลือกรุ่น'); foreach ($carsubmodels as $item) { array_push($carsubmodelselectlist, $item->id . ':' . $item->name); } $colorids = Car::distinct()->lists('colorid'); $colors = Color::whereIn('id', $colorids)->orderBy('code', 'asc')->get(['id', 'code', 'name']); $colorselectlist = array(); array_push($colorselectlist, ':เลือกสี'); foreach ($colors as $item) { array_push($colorselectlist, $item->id . ':' . $item->code . ' - ' . $item->name); } return ['carsubmodelselectlist' => implode(";", $carsubmodelselectlist), 'colorselectlist' => implode(";", $colorselectlist)]; }
public function import() { try { $file = Input::file('pricelist'); //$path = Input::file('pricelist')->getRealPath(); $temp = null; Excel::load($file, function ($reader) use($temp) { //$reader->dump(); $reader->skip(1); // Loop through all rows $reader->each(function ($row) { $carBrand = CarBrand::where('name', 'NISSAN')->first(); $carModel = CarModel::firstOrCreate(['name' => trim($row->d) . ' ' . trim($row->e), 'cartypeid' => $row->c, 'carbrandid' => $carBrand->id]); $carSubModel = CarSubModel::firstOrCreate(['code' => trim($row->g), 'name' => trim($row->f), 'carmodelid' => $carModel->id]); $pricelist = Pricelist::firstOrNew(['carmodelid' => $carModel->id, 'carsubmodelid' => $carSubModel->id, 'effectivefrom' => date('Y-m-d', strtotime(trim($row->a))), 'effectiveto' => date('Y-m-d', strtotime(trim($row->b))), 'sellingprice' => $row->i, 'accessoriesprice' => $row->j, 'sellingpricewithaccessories' => $row->h, 'margin' => $row->k, 'ws50' => $row->l, 'dms' => $row->m, 'wholesale' => $row->n, 'execusiveinternal' => $row->o, 'execusivecampaing' => $row->p, 'execusivetotalmargincampaing' => $row->q, 'internal' => $row->r, 'campaing' => $row->s, 'totalmargincampaing' => $row->t]); $pricelist->effectivefrom = trim($row->a); $pricelist->effectiveto = trim($row->b); $pricelist->save(); }); }); } catch (Exception $e) { return 'Message: ' . $e->getMessage(); } return redirect()->action('Settings\\PricelistController@index'); }
public function import() { try { $file = Input::file('file'); //$path = Input::file('pricelist')->getRealPath(); $temp = null; Excel::load($file, function ($reader) use($temp) { //$reader->dump(); $reader->skip(1); // Loop through all rows $reader->each(function ($row) { $carBrand = CarBrand::where('name', 'NISSAN')->first(); $color = Color::where('code', trim($row->p))->first(); $carModel = CarModel::firstOrCreate(['name' => trim($row->c) . ' ' . trim($row->d), 'cartypeid' => $row->b, 'carbrandid' => $carBrand->id]); $carSubModel = CarSubModel::firstOrCreate(['code' => trim($row->f), 'name' => trim($row->e), 'carmodelid' => $carModel->id]); $car = Car::firstOrNew(['engineno' => trim($row->m), 'chassisno' => trim($row->n)]); $car->datatype = 0; $car->provinceid = trim($row->a); $car->carmodelid = $carModel->id; $car->carsubmodelid = $carSubModel->id; $car->receivetype = trim($row->g); $car->dealername = trim($row->h); $car->no = trim($row->i); $car->dodate = trim($row->j); $car->dono = trim($row->k); if ($row->l != null && $row->l != '') { $car->receiveddate = trim($row->l); } if ($row->o != null && $row->o != '') { $car->keyno = trim($row->o); } $car->colorid = $color->id; $car->objective = trim($row->q); if ($row->r != null && $row->r != '') { $car->parklocation = trim($row->r); } if ($row->s != null && $row->s != '') { $car->notifysolddate = trim($row->s); } if ($row->u != null && $row->u != '' && $row->v != null && $row->v != '') { $customer = Customer::firstOrNew(['provinceid' => trim($row->a), 'title' => trim($row->u), 'firstname' => trim($row->v), 'lastname' => trim($row->w)]); $customer->isreal = true; if ($row->x != null && $row->x != '') { $customer->phone1 = trim($row->x); } if ($row->y != null && $row->y != '') { $customer->occupationid = trim($row->y); } if ($row->z != null && $row->z != '') { $customer->birthdate = trim($row->z); } if ($row->aa != null && $row->aa != '') { $customer->address = trim($row->aa); } $district = District::where('name', trim($row->ab))->first(); $amphur = Amphur::where('name', trim($row->ac))->first(); $province = Province::where('name', trim($row->ad))->first(); if ($district != null) { $customer->districtid = $district->id; } if ($amphur != null) { $customer->amphurid = $amphur->id; } if ($province != null) { $customer->addprovinceid = $province->id; } if ($row->ad != null && $row->ad != '') { $customer->zipcode = trim($row->ae); } $customer->save(); $car->issold = true; $car->buyercustomerid = $customer->id; if ($row->t != null && $row->t != '') { $car->isdelivered = true; } } $car->save(); }); }); } catch (Exception $e) { return 'Message: ' . $e->getMessage(); } return redirect()->action('CarController@index'); }
public function getbyidforcancelcarpreemption($id) { if (!$this->hasPermission($this->menuPermissionName)) { return view($this->viewPermissiondeniedName); } $model = CarPreemption::find($id); $customer = Customer::find($model->buyercustomerid); $model->customer = $customer->title . ' ' . $customer->firstname . ' ' . $customer->lastname; $carmodel = CarModel::find($model->carmodelid); $carsubmodel = CarSubModel::find($model->carsubmodelid); $model->carmodel = $carmodel->name . '/' . $carsubmodel->name; $salesmanemployee = Employee::find($model->salesmanemployeeid); $model->salesmanemployee = $salesmanemployee->title . ' ' . $salesmanemployee->firstname . ' ' . $salesmanemployee->lastname; $model->date = date('d-m-Y', strtotime($model->date)); return $model; }
public function getsubmodelandcolorbyid($id, $registrationtype, $registerprovinceid) { if (!$this->hasPermission($this->menuPermissionName)) { return view($this->viewPermissiondeniedName); } $carmodel = CarModel::find($id); $carmodelregister = CarModelRegister::where('carmodelid', $id)->where('provinceid', $registerprovinceid)->first(); if ($carmodelregister == null) { $registercost = 0; } else { if ($registrationtype == 0) { $registercost = $carmodelregister->individualregistercost; } else { if ($registrationtype == 1) { $registercost = $carmodelregister->companyregistercost; } else { if ($registrationtype == 2) { $registercost = $carmodelregister->governmentregistercost; } else { $registercost = null; } } } } $actcharged = $carmodel->cartype->actcharged; $carsubmodels = CarSubModel::where('carmodelid', $id)->orderBy('name', 'asc')->get(['id', 'name']); $colors = Color::with(['carModelColors' => function ($query) use($id) { $query->where('carmodelid', $id); }])->whereHas('carModelColors', function ($q) use($id) { $q->where('carmodelid', $id); })->orderBy('code', 'asc')->get(['id', 'code', 'name']); $provinces = Province::with(['carModelRegisters' => function ($query) use($id) { $query->where('carmodelid', $id); }])->whereHas('carModelRegisters', function ($q) use($id) { $q->where('carmodelid', $id); })->orderBy('name', 'asc')->get(['id', 'name']); return ['carsubmodels' => $carsubmodels, 'colors' => $colors, 'actcharged' => $actcharged, 'registercost' => $registercost, 'registerprovinces' => $provinces]; }