/** * @When User mengisi Pagu Anggaran dengan :value */ public function userMengisiPaguAnggaranDengan($value) { $this->infoPaket->setPaguAnggaran($value); }
/** * @param Request $request * @return mixed */ public function skpdAction(Request $request) { $skpdForm = new SkpdForm(); $formBuilder = $this->app['form.factory']->create($skpdForm, $skpdForm); if ($request->getMethod() === 'GET') { return $this->app['twig']->render('skpd.twig', ['form' => $formBuilder->createView()]); } $formBuilder->handleRequest($request); if (!$formBuilder->isValid()) { return $this->app['twig']->render('skpd.twig', ['form' => $formBuilder->createView()]); } $infoPaket = new InfoPaket(); $infoPaket->setNamaPaket($skpdForm->getNamaPaket()); $infoPaket->setSumberDana($skpdForm->getSumberDana()); $infoPaket->setTahunAggaran($skpdForm->getTahunAnggaran()); $infoPaket->setPaguAnggaran($skpdForm->getPaguAnggraran()); $infoPaket->setKodeRekening($skpdForm->getKodeRekening()); $infoPaket->setKodeRup($skpdForm->getKodeRup()); $infoPaket->setJenisPembayaran($skpdForm->getJenisPembayaran()); /** * @var User */ $user = $this->app['user.repository']->findByUsername($this->app['session']->get('username')['value']); $files = new ArrayCollection(); $paket = Paket::create($user, $infoPaket, $files); $files->add(Dokumen::create('Surat Permintaan Lelang dan SKPD', $skpdForm->getDokumenSuratPermintaanLelang(), $paket)); $files->add(Dokumen::create('Hasil Perkiraan Sendiri', $skpdForm->getDokumenHasilPerkiraanSendiri(), $paket)); $files->add(Dokumen::create('Cetak RUP', $skpdForm->getDokumenCetakRup(), $paket)); $files->add(Dokumen::create('Kerangka Acuan Kerja', $skpdForm->getDokumenKerangkaAcuanKerja(), $paket)); $files->add(Dokumen::create('Daftar Kuantitas', $skpdForm->getDokumenDaftarKuantitas(), $paket)); $files->add(Dokumen::create('Spesifikasi Teknis', $skpdForm->getDokumenSpesifikasiTeknis(), $paket)); $files->add(Dokumen::create('Gambar', $skpdForm->getDokumenGambar(), $paket)); $files->add(Dokumen::create('Rancangan Kontrak', $skpdForm->getDokumenRancanganKontrak(), $paket)); $files->add(Dokumen::create('Syarat-Syarat Umum Kontrak', $skpdForm->getDokumenSyaratSyaratUmumKontrak(), $paket)); $files->add(Dokumen::create('Syarat-Sayarat Khusus Kontrak', $skpdForm->getDokumenSyaratSyaratKhususKontrak(), $paket)); $files->add(Dokumen::create('Dokumen Pendukung Lain', $skpdForm->getDokumenPendukungLain(), $paket)); $paket->setDokumen($files); $this->app['orm.em']->persist($paket); $this->app['orm.em']->flush(); /** * move uploaded file */ $dirName = $this->app['dokumen.path'] . '/' . $paket->getId(); mkdir($dirName, 0755); foreach ($files as $dokumen) { /** * @var Dokumen $dokumen */ $dokumen->getFile()->move($dirName, $dokumen->getFilename()); } $this->app['session']->getFlashBag()->add('message_success', 'Sukses Mengajukan Paket'); return $this->app['twig']->render('skpd.twig', ['form' => $formBuilder->createView()]); }