'Sewer', 'description' => 'Sewer settings' ]; } public function onModalSetSewer() { $data = post(); $sewerProd = SewerModel::where("id", $data["sewerId"])->with("employee", "pivot_sewer")->first(); $html_data = ' '; return [ '#modal-form' => $html_data, ]; } public function onUpdateSewerItem() { $currentDate = Carbon::now()->timezone('UTC +05:00'); $user = \Auth::user(); $currentDateFormat = $currentDate->format('Y-m-d'); $stock = Stock::where("type", 'rulon')->first(); $stockBag = Stock::where("type", 'bag')->first(); $data = post(); if ($data["produced_bag_qty"] == 0) { Flash::error("Tikilen halta sanyny girizin"); return Redirect::refresh(); } else { if ($data["status"] == "complated") { $sewer = SewerModel::where("id", $data["sewer_id"])->first(); $pivotSewer = PivotSewer::where("sewer_production_id", $data["sewer_id"])->first(); // $spentCalc = (float)((float) $pivotSewer->amount - (float) $data["left_amount"]); $spentCalc = (float)((float) $data["produced_bag_qty"] * (float) $pivotSewer->bag_gram) / 1000; $leftCalc = (float)((float)$pivotSewer->amount - $spentCalc); $sewer->produced_bag_qty = (float) $data["produced_bag_qty"]; $sewer->width = (float) $data["width"]; $sewer->height = (float) $data["height"]; $sewer->date = Carbon::parse($data["date"])->format('Y-m-d'); $sewer->note = $data["note"]; $sewer->save(); $pivotSewer->left_amount = (float) $leftCalc; $pivotSewer->spent_amount = (float) $spentCalc; $pivotSewer->status = $data["status"]; $pivotSewer->save(); $currentRulonAction = RulonAction::where("id", $pivotSewer->rulon_action_id)->first(); $createResult = new RulonAction(); $createResult->product_id = $currentRulonAction->product_id; $createResult->type = 'inbox'; $createResult->status_accountant = "new"; $createResult->status_director = "new"; $createResult->note = "#Dikiş" . $sewer->id . " galyndy"; $createResult->amount = $pivotSewer->left_amount; $createResult->stock_id = $stock->id; $createResult->user_id = $user->id; $createResult->save(); $createResultBag = new BagAction(); $createResultBag->product_id = $sewer->id; $createResultBag->type = 'inbox'; $createResultBag->status_accountant = "new"; $createResultBag->status_director = "new"; $createResultBag->note = "#Dikiş" . $sewer->id . " #Rulon".$currentRulonAction->product_id; $createResultBag->amount = $sewer->produced_bag_qty; $createResultBag->stock_id = $stockBag->id; $createResultBag->user_id = $user->id; $createResultBag->save(); if ($sewer && $pivotSewer && $createResult && $createResultBag) { Flash::success("Maglumatlar Ustunlikli Üýtgedildi"); return Redirect::refresh(); } else { Flash::error("Yalnyshlyk bar!!"); return Redirect::refresh(); } }else{ Flash::error("Statusy Tamlaň"); return Redirect::refresh(); } } } public function onRender() { $user = \Auth::user(); $html_data = ''; $sewerDatas = SewerModel::with(["employee"])->with(["pivot_sewer" => function ($q) { $q->with(["rulon_action.product.bag_type", "rulon_action.product.bag_size", "rulon_action.product.color"]); }])->orderBy('id', 'DESC')->get(); // dd($sewerDatas); for ($x = 0; $x < count($sewerDatas); $x++) { $dateTitle = ($sewerDatas[$x]->date == null ? "" : Carbon::parse($sewerDatas[$x]->date)->format('d.m.Y')); $statusTitle = ''; if ($sewerDatas[$x]->pivot_sewer[0]->status == "working") { $statusTitle = "Işlenilýär"; } else { $statusTitle = "Tamamlandy"; } $editBtn = ''; if ($sewerDatas[$x]->user_id != $user->id) { $editBtn = '
Size degişli däl
'; } else { $editBtn = '
Täzele
Poz
'; } $html_data .= ' ' . ($x + 1) . ' #Dikiş' . $sewerDatas[$x]->id . ' ini: ' . ($sewerDatas[$x]->width ?? "") . '- boyy:' . ($sewerDatas[$x]->height ?? "") . ' #Rulon' . $sewerDatas[$x]->pivot_sewer[0]->rulon_action->product_id . '- ' . ($sewerDatas[$x]->pivot_sewer[0]->rulon_action->product->bag_size->width ?? "") . 'x' . ($sewerDatas[$x]->pivot_sewer[0]->rulon_action->product->bag_size->height ?? "") . 'm2, ' . ($sewerDatas[$x]->pivot_sewer[0]->rulon_action->product->bag_type->name ?? "") . ', ' . ($sewerDatas[$x]->pivot_sewer[0]->rulon_action->product->color->name ?? "") . ' ' . $sewerDatas[$x]->employee->name . ' ' . $dateTitle . ' ' . (number_format($sewerDatas[$x]->pivot_sewer[0]->bag_gram ?? 0, 2)) . ' gr ' . number_format($sewerDatas[$x]->pivot_sewer[0]->amount, 2) . ' kg ' . $sewerDatas[$x]->produced_bag_qty . ' ' . number_format($sewerDatas[$x]->pivot_sewer[0]->spent_amount, 2) . ' kg ' . number_format($sewerDatas[$x]->pivot_sewer[0]->left_amount, 2) . ' kg ' . $statusTitle . ' ' . $sewerDatas[$x]->note . ' ' . $editBtn . ' '; } return $html_data; } public function onReportSewer() { $currentDate = Carbon::now()->timezone('UTC +05:00'); $currentDateFormat = $currentDate->format('Y-m-d'); $data = post(); $sewerProductions = SewerModel::with(["employee", "machin_production.bag_size", "machin_production.bag_type", "machin_production.color", "pivot_sewer"])->orderBy('id', 'DESC'); $start = Carbon::parse($data["start"])->format('Y-m-d'); $end = Carbon::parse($data["end"])->format('Y-m-d');; $employee = $data["employee_id"]; $min = $data["min"]; $max = $data["max"]; $status = $data["status"]; $width = $data["width"]; $height = $data["height"]; $color_id = $data["color_id"]; $bag_gram = $data["bag_gram"]; if ($height) { $sewerProductions->where("height", $height); } if ($width) { $sewerProductions->where("width", $width); } if ($employee) { $sewerProductions->where("employee_id", $employee); } if ($status) { $sewerProductions->with("pivot_sewer")->whereHas('pivot_sewer', function ($query) use ($status) { $query->where('status', $status); }); } if ($bag_gram) { $sewerProductions->with("pivot_sewer")->whereHas('pivot_sewer', function ($query) use ($bag_gram) { $query->where('bag_gram', $bag_gram); }); } if ($color_id) { $sewerProductions->with("machin_production")->whereHas('machin_production', function ($query) use ($color_id) { $query->where('color_id', $color_id); }); } if ($min) { $sewerProductions->whereRaw('produced_bag_qty >' . ($min - 1)); } if ($max) { $sewerProductions->whereRaw('produced_bag_qty <' . ($max + 1)); } if ($start != $currentDateFormat) { $sewerProductions->whereBetween('date', [$start, $end]); } $sewerDatas = $sewerProductions->get(); $sewerIds = $sewerProductions->get()->pluck("id")->toArray(); $sewerProductionsSumBagQty = $sewerProductions->sum("produced_bag_qty"); $sewerProductionsamount = PivotSewer::whereIn("sewer_production_id", $sewerIds)->sum("spent_amount"); // dd($sewerProductionsamount->spentAmount); $html_data = ''; for ($x = 0; $x < count($sewerDatas); $x++) { $statusTitle = ''; if ($sewerDatas[$x]->pivot_sewer[0]->status == "working") { $statusTitle = "Işlenilýär"; } else { $statusTitle = "Tamamlandy"; } $dateTitle = ($sewerDatas[$x]->date == null ? "" : Carbon::parse($sewerDatas[$x]->date)->format('d.m.Y')); $html_data .= ' ' . ($x + 1) . ' #Dikiş' . $sewerDatas[$x]->id . ' ini: ' . ($sewerDatas[$x]->width ?? "") . '- boyy:' . ($sewerDatas[$x]->height ?? "") . ' #Rulon' . $sewerDatas[$x]->machin_production->id . '- ' . ($sewerDatas[$x]->machin_production->bag_size->width ?? "") . 'x' . ($sewerDatas[$x]->machin_production->bag_size->height ?? "") . 'm2, ' . ($sewerDatas[$x]->machin_production->bag_type->name ?? "") . ', ' . ($sewerDatas[$x]->machin_production->color->name ?? "") . ' ' . $sewerDatas[$x]->employee->name . ' ' . $dateTitle . ' ' . (number_format($sewerDatas[$x]->pivot_sewer[0]->bag_gram ?? 0, 2)) . ' gr ' . number_format($sewerDatas[$x]->pivot_sewer[0]->amount, 2) . ' kg ' . $sewerDatas[$x]->produced_bag_qty . ' ' . number_format($sewerDatas[$x]->pivot_sewer[0]->spent_amount, 2) . ' kg ' . number_format($sewerDatas[$x]->pivot_sewer[0]->left_amount, 2) . ' kg ' . $statusTitle . ' ' . $sewerDatas[$x]->note . ' '; } if ($sewerDatas) { return [ '#sewer_report_datas' => $html_data, '#all_amount' => '

Tikinçiler Boýunça Umumy

Hasabat

Jemi Dikilen Halta: ' . number_format($sewerProductionsSumBagQty) . ' sany
Jemi Sarp Edilen Çig mal: ' . number_format($sewerProductionsamount, 2) . ' kg
', ]; } else { Flash::error("Yalnyshlyk bar!!"); } } public function onCreateSewerProduction() { $user = \Auth::user(); $currentDate = Carbon::now()->timezone('UTC +05:00'); $currentDateFormat = $currentDate->format('Y-m-d'); $data = post(); $currentRulonAction = RulonAction::where("id", $data["rulon_action_id"])->first(); $rulonAmountSum = $currentRulonAction->amount; $stock = Stock::where("type", 'rulon')->first(); // dd($leftAmount); $createSewer = new SewerModel(); $createSewer->employee_id = $data["employee_id"]; $createSewer->produced_bag_qty = 0; $createSewer->user_id = $user->id; $createSewer->note = $data["note"] ?? ''; $createSewer->rulon_action_id = $data["rulon_action_id"]; $createSewer->width = (float) $data["width"]; $createSewer->height = (float) $data["height"]; $createSewer->date = Carbon::parse($data["date"])->format('Y-m-d'); $createSewer->save(); $createPivotSewer = new PivotSewer(); $createPivotSewer->rulon_action_id = $createSewer->rulon_action_id; $createPivotSewer->sewer_production_id = $createSewer->id; $createPivotSewer->left_amount = 0; $createPivotSewer->bag_gram = (float) $data["bag_gram"]; $createPivotSewer->amount = $rulonAmountSum; $createPivotSewer->save(); $createResult = new RulonAction(); $createResult->product_id = $currentRulonAction->product_id; $createResult->type = 'outbox'; $createResult->amount = -$rulonAmountSum; $createResult->stock_id = $stock->id; $createResult->user_id = $user->id; $createResult->note = "#Dikiş".$createSewer->id." üçin çykaryldy"; $createResult->save(); if ($createSewer && $createPivotSewer && $createResult) { Flash::success("Maglumatlar Ustunlikli Goshuldy"); return Redirect::refresh(); } else { Flash::error("Yalnyshlyk bar!!"); return Redirect::refresh(); } } }