/**
  * @param  Request $request
  * @return JsonResponse
  */
 private function step1Control(Request $request)
 {
     $user = $this->getUser();
     $em = $this->getDoctrine()->getManager();
     /** @var Journal $selectedJournal */
     $selectedJournal = $this->get("ojs.journal_service")->getSelectedJournal();
     $competingInterestFile = new File();
     $competingInterestFile->setName('Competing Interest File');
     $competingInterestFile->setSize($request->get('competing_interest_file_size'));
     $competingInterestFile->setMimeType($request->get('competing_interest_file_mime_type'));
     $competingInterestFile->setPath($request->get('competing_interest_file'));
     $competingInterestFile->setTranslatableLocale($request->getDefaultLocale());
     $em->persist($competingInterestFile);
     $em->flush();
     $article = new Article();
     $article->setJournal($selectedJournal);
     $article->setSubmitterId($user->getId());
     $article->setSetupStatus(0);
     $article->setTitle('');
     $article->setTranslatableLocale($request->getDefaultLocale());
     $article->setCompetingInterestFile($competingInterestFile);
     $em->persist($article);
     $em->flush();
     $articleSubmission = new ArticleSubmissionProgress();
     $articleSubmission->setArticle($article);
     $articleSubmission->setUser($user);
     $articleSubmission->setJournal($selectedJournal);
     $articleSubmission->setChecklist(json_encode($request->get('checklistItems')));
     $articleSubmission->setSubmitted(false);
     $articleSubmission->setCurrentStep(2);
     $em->persist($articleSubmission);
     $em->flush();
     return new JsonResponse(['success' => "1", 'resumeLink' => $this->generateUrl('article_submission_resume', ['submissionId' => $articleSubmission->getId()]) . '#2']);
 }