'Sewer',
'description' => 'Sewer settings'
];
}
public function onModalSetSewer()
{
$data = post();
$sewerProd = SewerModel::where("id", $data["sewerId"])->with("employee", "pivot_sewer")->first();
$shifts = Shift::get();
$sewerMachines = SewerMachine::get();
$html_data = '
';
return [
'#modal-form' => $html_data,
];
}
public function onUpdateSewerItem()
{
$currentDate = Carbon::now();
$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") && ($data["produced_bag_qty"] > 0)) {
$sewer = SewerModel::where("id", $data["sewer_id"])->first();
$pivotSewer = PivotSewer::where("sewer_production_id", $data["sewer_id"])->first();
if ($sewer->is_sewed == 1) {
// $spentCalc = (float)((float) $pivotSewer->amount - (float) $data["left_amount"]);
$spentCalc = (float)((float) $data["produced_bag_qty"] * (float) $pivotSewer->bag_gram) / 1000;
$spentCalcDefective = (float)((float) $data["defective_bag_qty"] * (float) $pivotSewer->bag_gram) / 1000;
$spentCalcDefectiveRepair = (float)((float) $data["defective_repair_qty"] * (float) $pivotSewer->bag_gram) / 1000;
$spentCalcDefectiveAll = (float)($spentCalcDefective + $spentCalcDefectiveRepair);
$allSpent = (float)($spentCalc + $spentCalcDefectiveAll);
$leftCalc = (float)((float)$pivotSewer->amount - $spentCalc);
$sewer->shift_id = $data["shift_id"];
$sewer->sewer_machine_id = $data["sewer_machine_id"];
$sewer->defective_repair_qty = (float) $data["defective_repair_qty"];
$sewer->pipe_weight = (float) $data["pipe_weight"];
$sewer->produced_bag_qty = (float) $data["produced_bag_qty"];
$sewer->defective_bag_qty = (float) $data["defective_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) ((float)$leftCalc - (float)$spentCalcDefectiveAll);
$pivotSewer->spent_amount = (float) ((float)$spentCalc + (float)$spentCalcDefectiveAll);
$pivotSewer->spent_defective_amount = (float) $spentCalcDefectiveAll;
$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 = (float) $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{
$spentCalc = 0;
$spentCalcDefective = 0;
$spentCalcDefectiveRepair = 0;
$spentCalcDefectiveAll = (float)($spentCalcDefective + $spentCalcDefectiveRepair);
$allSpent = (float)($spentCalc + $spentCalcDefectiveAll);
$leftCalc = (float)((float)$pivotSewer->amount - $spentCalc);
$sewer->shift_id = $data["shift_id"];
$sewer->sewer_machine_id = $data["sewer_machine_id"];
$sewer->defective_repair_qty = (float) $data["defective_repair_qty"];
$sewer->pipe_weight = (float) $data["pipe_weight"];
$sewer->produced_bag_qty = (float) $data["produced_bag_qty"];
$sewer->defective_bag_qty = (float) $data["defective_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) ((float)$leftCalc - (float)$spentCalcDefectiveAll);
$pivotSewer->spent_amount = (float) ((float)$spentCalc + (float)$spentCalcDefectiveAll);
$pivotSewer->spent_defective_amount = (float) $spentCalcDefectiveAll;
$pivotSewer->status = $data["status"];
$pivotSewer->save();
$createResultBag = new BagAction();
$createResultBag->product_id = $sewer->id;
$createResultBag->type = 'inbox';
$createResultBag->status_accountant = "new";
$createResultBag->status_director = "new";
$createResultBag->note = "Sürülmedikler täzeden sürüldi";
$createResultBag->amount = $sewer->produced_bag_qty;
$createResultBag->stock_id = $stockBag->id;
$createResultBag->user_id = $user->id;
$createResultBag->save();
if ($sewer && $pivotSewer && $createResultBag) {
Flash::success("Maglumatlar Ustunlikli Üýtgedildi");
return Redirect::refresh();
} else {
Flash::error("Yalnyshlyk bar!!");
return Redirect::refresh();
}
}
} else {
Flash::error("Statusy Tamlaň ya-da halta sany girizilmedik");
return Redirect::refresh();
}
}
}
public function onRender()
{
$user = \Auth::user();
$html_data = '';
$crudSewerProductionq = $this->page["crudSewerProduction"];
$sewerDatas = SewerModel::with(["employee", "shift", "sewer_machine"])->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 = '';
$rulonDynamic = '';
if ($sewerDatas[$x]->is_sewed == 1) {
$rulonDynamic = '#Rulon' . ($sewerDatas[$x]->pivot_sewer[0]->rulon_action->product_id ?? 0) . '- ' . ($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 ?? "");
} else {
$rulonDynamic = 'Sürülmedik täzeden sürüldi';
}
if ($sewerDatas[$x]->user_id != $user->id) {
$editBtn = '';
} else {
$editBtn = $crudSewerProductionq ? '' : '';
}
$html_data .= '
| ' . ($x + 1) . ' |
' . $dateTitle . ' |
#Dikiş' . $sewerDatas[$x]->id . ' |
' . $rulonDynamic . '
|
' . number_format($sewerDatas[$x]->pivot_sewer[0]->amount, 2) . ' kg
|
ini: ' . ($sewerDatas[$x]->width ?? "") . '- boyy:' . ($sewerDatas[$x]->height ?? "") . '
|
' . ($sewerDatas[$x]->sewer_machine->name ?? "") . ' |
' . (number_format($sewerDatas[$x]->pivot_sewer[0]->bag_gram ?? 0, 2)) . ' gr |
' . ($sewerDatas[$x]->produced_bag_qty ?? 0) . ' |
' . ($sewerDatas[$x]->defective_bag_qty ?? 0) . ' |
' . ($sewerDatas[$x]->defective_repair_qty ?? 0) . ' |
' . 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 . ' turba: ' . $sewerDatas[$x]->pipe_weight . ' |
' . $editBtn . '
|
';
}
return $html_data;
}
public function onReportSewer()
{
$currentDate = Carbon::now();
$currentDateFormat = $currentDate->format('Y-m-d');
$data = post();
$sewerProductions = SewerModel::with(["employee", "rulon_action.product.bag_size", "rulon_action.product.bag_type", "rulon_action.product.color", "pivot_sewer"])->orderBy('id', 'DESC');
$start = Carbon::parse($data["start"])->format('Y-m-d');
$end = Carbon::parse($data["end"])->format('Y-m-d');;
$status = $data["status"];
$width = $data["width"];
$height = $data["height"];
$color_id = $data["color_id"];
$bag_gram = $data["bag_gram"];
$shift_id = $data["shift_id"];
$sewer_machine_id = $data["sewer_machine_id"];
if ($shift_id) {
$sewerProductions->where("shift_id", $shift_id);
}
if ($sewer_machine_id) {
$sewerProductions->where("sewer_machine_id", $sewer_machine_id);
}
if ($shift_id) {
$sewerProductions->where("shift_id", $shift_id);
}
if ($height) {
$sewerProductions->where("height", $height);
}
if ($width) {
$sewerProductions->where("width", $width);
}
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("rulon_action.product")->whereHas('rulon_action.product', function ($query) use ($color_id) {
$query->where('color_id', $color_id);
});
}
if ($start != $currentDateFormat) {
$sewerProductions->whereBetween('date', [$start, $end]);
}
$sewerDatas = $sewerProductions->get();
$sewerIds = $sewerProductions->get()->pluck("id")->toArray();
$sewerProductionsSumBagQty = $sewerProductions->sum("produced_bag_qty");
$sewerProductionsSumDefectiveBagQty = $sewerProductions->sum("defective_bag_qty");
$sewerProductionsSumDefectiveBagQtyRepair = $sewerProductions->sum("defective_repair_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) . ' |
' . $dateTitle . ' |
#Dikiş' . $sewerDatas[$x]->id . ' |
#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 ?? "") . '
|
' . number_format($sewerDatas[$x]->pivot_sewer[0]->amount, 2) . ' kg
|
ini: ' . ($sewerDatas[$x]->width ?? "") . '- boyy:' . ($sewerDatas[$x]->height ?? "") . '
|
' . ($sewerDatas[$x]->sewer_machine->name ?? "") . ' |
' . (number_format($sewerDatas[$x]->pivot_sewer[0]->bag_gram ?? 0, 2)) . ' gr |
' . ($sewerDatas[$x]->produced_bag_qty ?? 0) . ' |
' . ($sewerDatas[$x]->defective_bag_qty ?? 0) . ' |
' . ($sewerDatas[$x]->defective_repair_qty ?? 0) . ' |
' . 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 . ' turba: ' . $sewerDatas[$x]->pipe_weight . ' |
';
}
if ($sewerDatas) {
return [
'#sewer_report_datas' => $html_data,
'#all_amount' => '
Dikilen Halta: ' . number_format($sewerProductionsSumBagQty) . ' sany
BRAK Halta: ' . number_format($sewerProductionsSumDefectiveBagQty) . ' sany
Sürülmedik Halta: ' . number_format($sewerProductionsSumDefectiveBagQtyRepair) . ' sany
Sarp Edilen Çig mal: ' . number_format($sewerProductionsamount, 2) . ' kg
',
];
} else {
Flash::error("Yalnyshlyk bar!!");
}
}
public function onCreateSewerProduction()
{
$user = \Auth::user();
$currentDate = Carbon::now();
$currentDateFormat = $currentDate->format('Y-m-d');
$data = post();
if ($data["is_sewed"] == 1) {
$currentRulonAction = RulonAction::where("id", $data["rulon_action_id"])->first();
$rulonAmountSum = $currentRulonAction->amount;
$stock = Stock::where("type", 'rulon')->first();
}
// dd($leftAmount);
$createSewer = new SewerModel();
$createSewer->shift_id = $data["shift_id"];
$createSewer->sewer_machine_id = $data["sewer_machine_id"];
$createSewer->produced_bag_qty = 0;
$createSewer->defective_bag_qty = 0;
$createSewer->user_id = $user->id;
$createSewer->note = $data["note"] ?? '';
$createSewer->rulon_action_id = $data["is_sewed"] ? $data["rulon_action_id"] : 0;
$createSewer->width = (float) $data["width"];
$createSewer->height = (float) $data["height"];
$createSewer->is_sewed = $data["is_sewed"];
$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 ?? 0;
$createPivotSewer->save();
if ($createSewer->is_sewed == 1) {
$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) {
Flash::success("Maglumatlar Ustunlikli Goshuldy");
return Redirect::refresh();
} else {
Flash::error("Yalnyshlyk bar!!");
return Redirect::refresh();
}
}
public function onDeleteSewerItem()
{
$data = post();
$user = \Auth::user();
$sewer = SewerModel::where("id", $data["sewerId"])->with(['pivot_sewer', 'rulon_action.product'])->first();
if ($sewer) {
if ($sewer->produced_bag_qty > 0) {
$stock = Stock::where("type", 'rulon')->first();
$createResult = new RulonAction();
$createResult->product_id = $sewer->rulon_action->product_id;
$createResult->type = 'inbox';
$createResult->amount = (float)$sewer->pivot_sewer[0]->spent_amount;
$createResult->stock_id = $stock->id;
$createResult->user_id = $user->id;
$createResult->note = "#Dikiş" . $sewer->id . " maglumat girizidi, soňundan pozulan";
$createResult->save();
$stockBag = Stock::where("type", 'bag')->first();
$createResultBag = new BagAction();
$createResultBag->product_id = $sewer->id;
$createResultBag->type = 'outbox';
$createResultBag->status_accountant = "new";
$createResultBag->status_director = "new";
$createResultBag->note = "#Dikiş" . $sewer->id . " maglumat girizidi, soňundan pozulan";
$createResultBag->amount = -$sewer->produced_bag_qty;
$createResultBag->stock_id = $stockBag->id;
$createResultBag->user_id = $user->id;
$createResultBag->save();
} elseif ($sewer->produced_bag_qty == 0) {
$stock = Stock::where("type", 'rulon')->first();
$createResult = new RulonAction();
$createResult->product_id = $sewer->rulon_action->product_id;
$createResult->type = 'inbox';
$createResult->amount = (float)$sewer->pivot_sewer[0]->amount;
$createResult->stock_id = $stock->id;
$createResult->user_id = $user->id;
$createResult->note = "#Dikiş" . $sewer->id . " maglumat girizidi, soňundan pozulan";
$createResult->save();
}
}
$sewer->delete();
if ($sewer) {
Flash::success("Dikish Ustunlikli Pozuldy");
return Redirect::refresh();
} else {
Flash::error("Yalnyshlyk bar!!");
return Redirect::refresh();
}
}
}