public function doAdd(Request $request) { $project_input = $request->get('project'); $project = new Project(); $project->fill($project_input); $project->faculty()->associate(Faculty::find($project_input['faculty']['id'])); if ($project_input['status']['id'] != "") { $project->status()->associate(ProjectStatus::find($project_input['status']['id'])); } else { $project->status()->associate(ProjectStatus::where('key', '=', 'draft')->first()); } $project->save(); if ($user = Auth::user()) { $project->createBy()->associate($user); } return redirect('/backend/admin/project'); }
public function create(Request $request) { $name = trim($request->input('name')); $userId = auth()->id(); if (strlen($name) == 0 || Project::checkProjectName($name, $userId)->exists()) { $message = strlen($name) == 0 ? '' : '你似乎已经创建了一个同名项目'; return response()->json(['status' => false, 'message' => $message, 'field' => 'name']); } $project = new Project(); $project->name = $name; $project->user_id = $userId; $project->description = $request->input('description'); $project->privacy = $request->input('privacy'); if ($project->save()) { $projectMember = new ProjectMember(); $projectMember->user_id = $userId; $projectMember->user_name = auth()->user()->realname; $projectMember->project_id = $project->id; if ($projectMember->save()) { return response()->json(['status' => true, 'location' => url('project/' . $project->id)]); } } return response()->json(['status' => false, 'message' => '项目创建失败,请稍后重试', 'field' => 'name']); }