ajax()) { return view('admin/lading_bill/index'); } $builder = LadingBill::query()->with(['site', 'user']); if ($keyword = $request->input('keyword')) { $builder->where('title', 'like', '%' . $keyword . '%'); } $records = $builder->orderByDesc('id') ->paginate($request->input('pageSize') ?? TABLE_PAGE_SIZE); $items = $records->items(); array_walk($items, function ($item) { $item->relate_site = $item->site->cn_title ?? ''; $item->username = $item->user->username ?? ''; }); return response()->json([ 'rows' => $items, 'total' => $records->total() ]); } public function audit(Request $request) { $ids = $request->input('ids'); $auditStatus = $request->input('auditStatus'); LadingBill::query()->whereIn('id', $ids)->update(['audit' => $auditStatus]); return response()->json(['message' => '操作成功']); } /** * 添加 与 编辑 * @param LadingBillSaveRequest $request * @param $id * @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\JsonResponse|\Illuminate\View\View */ public function save(LadingBillSaveRequest $request, $id) { if (!$request->ajax()) { return view('admin/lading_bill/save', [ 'data' => $id > 0 ? LadingBill::query()->find($id) : null, 'sites' => Site::query()->select(['id', 'cn_title'])->get() ]); } $validated = $request->validated(); if ($id == 0) { //添加 $validated['user_id'] = Auth::id(); $validated['is_settle'] = 0; //未结算 } LadingBill::query()->updateOrCreate( ['id' => $id], $validated ); return response()->json(['message' => '操作成功']); } /** * 删除 * @param Request $request * @return \Illuminate\Http\JsonResponse */ public function delete(Request $request) { $ids = $request->input('ids'); LadingBill::destroy($ids); return response()->json(['message' => '操作成功']); } }