|
@@ -26,23 +26,35 @@ class FacilitatorController extends Controller
|
|
|
return view('maintenance.facilitator.index', compact('facilitators'));
|
|
return view('maintenance.facilitator.index', compact('facilitators'));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // 服务商对账单
|
|
|
|
|
|
|
+ // 装卸队对账单
|
|
|
public function statementIndex(Request $request, DischargeTaskFilters $filters)
|
|
public function statementIndex(Request $request, DischargeTaskFilters $filters)
|
|
|
{
|
|
{
|
|
|
if (!Gate::allows('装卸队-对账单-查询')) {
|
|
if (!Gate::allows('装卸队-对账单-查询')) {
|
|
|
return redirect(url('/'));
|
|
return redirect(url('/'));
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
$facilitatorStatements = DischargeTask::query()
|
|
$facilitatorStatements = DischargeTask::query()
|
|
|
|
|
+ ->selectRaw('sum( discharge_tasks.expenditure_total_cost ) total_cost,' . ' count( 1 ) sum , ' . ' facilitators.name facilitators_name,' . ' facilitators.id id,' . " DATE_FORMAT( discharge_tasks.created_at, '%Y-%m' ) months ")
|
|
|
|
|
+ ->leftJoin('facilitators', 'discharge_tasks.facilitator_id', '=', 'facilitators.id')
|
|
|
->filter($filters)
|
|
->filter($filters)
|
|
|
- ->with('facilitator')
|
|
|
|
|
- ->select(['id', 'facilitator_id', 'expenditure_amount', 'expenditure_unit', 'expenditure_unit_price', 'expenditure_total_cost', 'expenditure_remark', 'created_at'])
|
|
|
|
|
- ->whereNotNull('facilitator_id')
|
|
|
|
|
- ->where('facilitator_id','!=','0')
|
|
|
|
|
- ->orderByDesc('id')->paginate($request['paginate'] ?? 50);
|
|
|
|
|
|
|
+ ->groupBy('months', 'facilitator_id')
|
|
|
|
|
+ ->orderByDesc('months')
|
|
|
|
|
+ ->paginate($request['paginate'] ?? 50);
|
|
|
|
|
+
|
|
|
$facilitators = Facilitator::query()->get();
|
|
$facilitators = Facilitator::query()->get();
|
|
|
return view('personnel.discharge.facilitator.index', compact('facilitatorStatements', 'facilitators'));
|
|
return view('personnel.discharge.facilitator.index', compact('facilitatorStatements', 'facilitators'));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ public function gainStatementApi(Request $request,DischargeTaskFilters $filters)
|
|
|
|
|
+ {
|
|
|
|
|
+ $this->gate('装卸队-对账单-查询');
|
|
|
|
|
+ $facilitatorStatements = DischargeTask::query()
|
|
|
|
|
+ ->with('facilitator')
|
|
|
|
|
+ ->filter($filters)
|
|
|
|
|
+ ->get();
|
|
|
|
|
+ $this->success($facilitatorStatements);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
public function create()
|
|
public function create()
|
|
|
{
|
|
{
|
|
|
}
|
|
}
|
|
@@ -101,11 +113,14 @@ class FacilitatorController extends Controller
|
|
|
->with('facilitator')
|
|
->with('facilitator')
|
|
|
->select(['id', 'facilitator_id', 'expenditure_amount', 'expenditure_unit', 'expenditure_unit_price', 'expenditure_total_cost', 'expenditure_remark', 'created_at'])
|
|
->select(['id', 'facilitator_id', 'expenditure_amount', 'expenditure_unit', 'expenditure_unit_price', 'expenditure_total_cost', 'expenditure_remark', 'created_at'])
|
|
|
->whereNotNull('facilitator_id')
|
|
->whereNotNull('facilitator_id')
|
|
|
- ->where('facilitator_id','!=','0')
|
|
|
|
|
|
|
+ ->where('facilitator_id', '!=', '0')
|
|
|
->orderByDesc('id')->get();
|
|
->orderByDesc('id')->get();
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
$row = ['日期', '装卸队', '数量', '单位', '单价', '总金额合计'];
|
|
$row = ['日期', '装卸队', '数量', '单位', '单价', '总金额合计'];
|
|
|
$json = app('DischargeTaskService')->getFacilitatorStatementsJson($facilitatorStatements);
|
|
$json = app('DischargeTaskService')->getFacilitatorStatementsJson($facilitatorStatements);
|
|
|
return app(ExportService::class)->json($row, $json, "装卸队对账单报表");
|
|
return app(ExportService::class)->json($row, $json, "装卸队对账单报表");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
}
|
|
}
|