|
|
@@ -1263,10 +1263,10 @@ const getTotalReplacement = async (event_id, inner_base, inner_rebate, inner_ior
|
|
|
if (!inner_ior) {
|
|
|
return Promise.reject(new Error('inner_ior 无效'));
|
|
|
}
|
|
|
- if (inner_odds?.length != 2) {
|
|
|
+ if (inner_odds?.length != 2 || inner_odds.some(item => typeof(item) !== 'number')) {
|
|
|
return Promise.reject(new Error('inner_odds 无效'));
|
|
|
}
|
|
|
- if (!outer_golds?.length) {
|
|
|
+ if (!outer_golds?.length || outer_golds.some(item => typeof(item?.gold) !== 'number' || typeof(item?.rebate) !== 'number')) {
|
|
|
return Promise.reject(new Error('outer_golds 无效'));
|
|
|
}
|
|
|
|
|
|
@@ -1275,8 +1275,8 @@ const getTotalReplacement = async (event_id, inner_base, inner_rebate, inner_ior
|
|
|
inner_rebate = typeof(inner_rebate) != 'undefined' ? +inner_rebate : fixFloat(innerRebateRatio / 100, 3);
|
|
|
|
|
|
const inner_odds_value = fixFloat(inner_odds[0] * inner_odds[1], 3);
|
|
|
- const outer_golds_rebate = outer_golds.map(item => (item.gold ?? 0) * (item.rebate ?? 0)).reduce((sum, rebate) => sum + rebate, 0);
|
|
|
- const outer_golds_loss = outer_golds.map(item => item.gold ?? 0).reduce((sum, gold) => sum + gold, 0) - outer_golds_rebate;
|
|
|
+ const outer_golds_rebate = outer_golds.map(item => item.gold * item.rebate).reduce((sum, rebate) => sum + rebate, 0);
|
|
|
+ const outer_golds_loss = outer_golds.map(item => item.gold).reduce((sum, gold) => sum + gold, 0) - outer_golds_rebate;
|
|
|
|
|
|
const relation = getGamesRelation({ ids: [event_id], listEvents: true, listPC: true }).map(item => {
|
|
|
const { rel, ...relationInfo } = item;
|