1.优化色子奖励权重表备注没有更新上去
This commit is contained in:
@@ -392,11 +392,13 @@ class DiceRewardLogic
|
|||||||
$oldStart = null;
|
$oldStart = null;
|
||||||
$oldEnd = null;
|
$oldEnd = null;
|
||||||
$oldTier = null;
|
$oldTier = null;
|
||||||
|
$oldRemark = null;
|
||||||
$oldWeight = null;
|
$oldWeight = null;
|
||||||
if (isset($existing[$key])) {
|
if (isset($existing[$key])) {
|
||||||
$oldStart = isset($existing[$key]['start_index']) ? (int) $existing[$key]['start_index'] : null;
|
$oldStart = isset($existing[$key]['start_index']) ? (int) $existing[$key]['start_index'] : null;
|
||||||
$oldEnd = isset($existing[$key]['end_index']) ? (int) $existing[$key]['end_index'] : null;
|
$oldEnd = isset($existing[$key]['end_index']) ? (int) $existing[$key]['end_index'] : null;
|
||||||
$oldTier = isset($existing[$key]['tier']) ? (string) $existing[$key]['tier'] : null;
|
$oldTier = isset($existing[$key]['tier']) ? (string) $existing[$key]['tier'] : null;
|
||||||
|
$oldRemark = isset($existing[$key]['remark']) ? (string) $existing[$key]['remark'] : null;
|
||||||
$oldWeight = isset($existing[$key]['weight']) ? (int) $existing[$key]['weight'] : null;
|
$oldWeight = isset($existing[$key]['weight']) ? (int) $existing[$key]['weight'] : null;
|
||||||
}
|
}
|
||||||
// 映射未变化时:通常复用旧权重;但若旧权重为 1 且非特殊点数,则按新默认建议展示为 100(方便管理员快速落配置)
|
// 映射未变化时:通常复用旧权重;但若旧权重为 1 且非特殊点数,则按新默认建议展示为 100(方便管理员快速落配置)
|
||||||
@@ -426,6 +428,10 @@ class DiceRewardLogic
|
|||||||
$diffChanged = true;
|
$diffChanged = true;
|
||||||
$diffFields[] = 'tier';
|
$diffFields[] = 'tier';
|
||||||
}
|
}
|
||||||
|
if (trim((string) $oldRemark) !== trim((string) ($row['remark'] ?? ''))) {
|
||||||
|
$diffChanged = true;
|
||||||
|
$diffFields[] = 'remark';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$previewRows[] = array_merge($row, [
|
$previewRows[] = array_merge($row, [
|
||||||
@@ -433,6 +439,7 @@ class DiceRewardLogic
|
|||||||
'old_start_index' => $oldStart,
|
'old_start_index' => $oldStart,
|
||||||
'old_end_index' => $oldEnd,
|
'old_end_index' => $oldEnd,
|
||||||
'old_tier' => $oldTier,
|
'old_tier' => $oldTier,
|
||||||
|
'old_remark' => $oldRemark,
|
||||||
'old_weight' => $oldWeight,
|
'old_weight' => $oldWeight,
|
||||||
'diff_changed' => $diffChanged,
|
'diff_changed' => $diffChanged,
|
||||||
'diff_fields' => $diffFields,
|
'diff_fields' => $diffFields,
|
||||||
@@ -652,11 +659,24 @@ class DiceRewardLogic
|
|||||||
'end_index' => isset($landingConfig['id']) ? (int) $landingConfig['id'] : 0,
|
'end_index' => isset($landingConfig['id']) ? (int) $landingConfig['id'] : 0,
|
||||||
'ui_text' => $landingConfig['ui_text'] ?? '',
|
'ui_text' => $landingConfig['ui_text'] ?? '',
|
||||||
'real_ev' => $landingConfig['real_ev'] ?? null,
|
'real_ev' => $landingConfig['real_ev'] ?? null,
|
||||||
'remark' => $this->defaultRemarkForTier($tier),
|
'remark' => $this->resolveRemarkForReferenceRow($tier, $landingConfig),
|
||||||
'type' => isset($landingConfig['type']) ? (int) $landingConfig['type'] : 0,
|
'type' => isset($landingConfig['type']) ? (int) $landingConfig['type'] : 0,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 对照表备注:优先落点格 dice_reward_config.remark,空时再按档位默认(与 createRewardReference 文档一致)
|
||||||
|
*/
|
||||||
|
private function resolveRemarkForReferenceRow(string $tier, array $landingConfig): string
|
||||||
|
{
|
||||||
|
$fromLanding = trim((string) ($landingConfig['remark'] ?? ''));
|
||||||
|
if ($fromLanding !== '') {
|
||||||
|
return $fromLanding;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this->defaultRemarkForTier($tier);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 按结算金额推断档位(与前端 generateIndexByRules 一致)
|
* 按结算金额推断档位(与前端 generateIndexByRules 一致)
|
||||||
*/
|
*/
|
||||||
@@ -735,7 +755,8 @@ class DiceRewardLogic
|
|||||||
$same =
|
$same =
|
||||||
((int) ($ex['start_index'] ?? 0) === (int) ($row['start_index'] ?? 0)) &&
|
((int) ($ex['start_index'] ?? 0) === (int) ($row['start_index'] ?? 0)) &&
|
||||||
((int) ($ex['end_index'] ?? 0) === (int) ($row['end_index'] ?? 0)) &&
|
((int) ($ex['end_index'] ?? 0) === (int) ($row['end_index'] ?? 0)) &&
|
||||||
(trim((string) ($ex['tier'] ?? '')) === trim((string) ($row['tier'] ?? '')));
|
(trim((string) ($ex['tier'] ?? '')) === trim((string) ($row['tier'] ?? ''))) &&
|
||||||
|
(trim((string) ($ex['remark'] ?? '')) === trim((string) ($row['remark'] ?? '')));
|
||||||
if (!$same) {
|
if (!$same) {
|
||||||
return ['unchanged' => false];
|
return ['unchanged' => false];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
$options = getopt('', ['agent_id:', 'secret:', 'time::']);
|
$options = getopt('', ['agent_id:', 'secret:', 'time::']);
|
||||||
|
|
||||||
$agentId = $options['agent_id'] ?? '202cb962ac59075b964b07152d234b70';
|
$agentId = $options['agent_id'] ?? '76dc611d6ebaafc66cc0879c71b5db5c';
|
||||||
$secret = $options['secret'] ?? 'xF75oK91TQj13s0UmNIr1NBWMWGfflNO';
|
$secret = $options['secret'] ?? 'xF75oK91TQj13s0UmNIr1NBWMWGfflNO';
|
||||||
$time = $options['time'] ?? (string) time();
|
$time = $options['time'] ?? (string) time();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user