private static function saveTransaction(BigCategoryCreateToTblBigCategory $convert) { $db = $convert->getDataSource(); $ctlModel = $convert->getCtlModel(); $ormModel = $convert->getOrmModel(); $saveData = $convert->getSaveData(); try { $db->begin(); // アカウント情報 OrmModelUtil::transactionSave($ormModel, $saveData); $db->commit(); } catch (ErrorException $e) { $db->rollback(); $ctlModel->validationErrors[] = $e->getMessage(); return false; } return true; }
/** * 更新のデータ内容を確認 * 更新のロックデータ内容を確認 */ public function testAppTblAdminSaveUpdateData() { $test = $this; $admin = $test->TblAdmin; $adminLock = $test->TblAdminLock; $db = $admin->getDataSource(); $data = $test->updateData; $db->begin(); OrmModelUtil::transactionSave($admin, $data); $db->commit(); $id = $admin->getID(); $afterData = self::findFirstTblAdmin($admin, $id); $afterLockData = self::findFirsTblAdminLock($adminLock, $id); $checkId = $id; $checkName = Hash::get($data, 'TblAdmin.admin_name'); $checkLockId = $id; $dataId = Hash::get($afterData, 'TblAdmin.id'); $dataName = Hash::get($afterData, 'TblAdmin.admin_name'); $dataLockId = Hash::get($afterLockData, 'TblAdminLock.id'); $test->assertEqual($checkId, $dataId); $test->assertEqual($checkName, $dataName); $test->assertEqual($checkLockId, $dataLockId); }