mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-04-02 01:52:10 +09:00
Wrap insertGroup() and updateGroup() in transactions to prevent inconsistent result when updating is_default
This commit is contained in:
parent
c42d446e23
commit
180be3df95
1 changed files with 25 additions and 0 deletions
|
|
@ -1346,6 +1346,9 @@ class MemberAdminController extends Member
|
|||
return $trigger_output;
|
||||
}
|
||||
|
||||
$oDB = DB::getInstance();
|
||||
$oDB->begin();
|
||||
|
||||
// Check the value of is_default.
|
||||
$args->is_default = $args->is_default ?? 'N';
|
||||
if($args->is_default === 'Y')
|
||||
|
|
@ -1355,7 +1358,17 @@ class MemberAdminController extends Member
|
|||
}
|
||||
$args->group_srl = !empty($args->group_srl) ? $args->group_srl : getNextSequence();
|
||||
$args->list_order = $args->list_order ?? $args->group_srl;
|
||||
|
||||
$output = executeQuery('member.insertGroup', $args);
|
||||
if ($output->toBool())
|
||||
{
|
||||
$oDB->commit();
|
||||
}
|
||||
else
|
||||
{
|
||||
$oDB->rollback();
|
||||
}
|
||||
|
||||
$this->_deleteMemberGroupCache();
|
||||
|
||||
// Call trigger (after)
|
||||
|
|
@ -1384,6 +1397,9 @@ class MemberAdminController extends Member
|
|||
return $trigger_output;
|
||||
}
|
||||
|
||||
$oDB = DB::getInstance();
|
||||
$oDB->begin();
|
||||
|
||||
// Check the value of is_default.
|
||||
$args->is_default = $args->is_default ?? 'N';
|
||||
if($args->is_default === 'Y')
|
||||
|
|
@ -1393,6 +1409,15 @@ class MemberAdminController extends Member
|
|||
}
|
||||
|
||||
$output = executeQuery('member.updateGroup', $args);
|
||||
if ($output->toBool())
|
||||
{
|
||||
$oDB->commit();
|
||||
}
|
||||
else
|
||||
{
|
||||
$oDB->rollback();
|
||||
}
|
||||
|
||||
$this->_deleteMemberGroupCache();
|
||||
|
||||
// Call trigger (after)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue