public function editParameter(Application $app, Request $request)
{
$builder = $app['form.factory']->createBuilder('tax_rule');
$event = new EventArgs(array('builder' => $builder), $request);
$app['eccube.event.dispatcher']->dispatch(EccubeEvents::ADMIN_SETTING_SHOP_TAX_RULE_EDIT_PARAMETER_INITIALIZE, $event);
$form = $builder->getForm();
if ('POST' === $request->getMethod()) {
$form->handleRequest($request);
// 軽減税率設定の項目のみ処理する
$optionForm = $form->get('option_product_tax_rule');
if ($optionForm->isValid()) {
/** @var $BaseInfo \Eccube\Entity\BaseInfo */
$BaseInfo = $app['eccube.repository.base_info']->get();
$BaseInfo->setOptionProductTaxRule($optionForm->getData());
$app['orm.em']->flush();
$event = new EventArgs(array('form' => $form, 'BaseInfo' => $BaseInfo), $request);
$app['eccube.event.dispatcher']->dispatch(EccubeEvents::ADMIN_SETTING_SHOP_TAX_RULE_EDIT_PARAMETER_COMPLETE, $event);
$app->addSuccess('admin.shop.tax.save.complete', 'admin');
}
}
return $app->redirect($app->url('admin_setting_shop_tax'));
}