|
@@ -1247,18 +1247,22 @@ const getTotalProfitWithBetInfo = async (betInfo1, betInfo2, fixed=false, inner_
|
|
|
* 计算补单综合利润
|
|
* 计算补单综合利润
|
|
|
*/
|
|
*/
|
|
|
const getTotalReplacement = async (data) => {
|
|
const getTotalReplacement = async (data) => {
|
|
|
- // Logs.out('getTotalReplacement', data);
|
|
|
|
|
|
|
+ Logs.out('getTotalReplacement', data);
|
|
|
const { event_id, inner_ior, inner_odds, pre_bet_info } = data;
|
|
const { event_id, inner_ior, inner_odds, pre_bet_info } = data;
|
|
|
if (!event_id) {
|
|
if (!event_id) {
|
|
|
|
|
+ Logs.out('getTotalReplacement event_id 无效');
|
|
|
return Promise.reject(new Error('event_id 无效'));
|
|
return Promise.reject(new Error('event_id 无效'));
|
|
|
}
|
|
}
|
|
|
if (!inner_ior) {
|
|
if (!inner_ior) {
|
|
|
|
|
+ Logs.out('getTotalReplacement inner_ior 无效');
|
|
|
return Promise.reject(new Error('inner_ior 无效'));
|
|
return Promise.reject(new Error('inner_ior 无效'));
|
|
|
}
|
|
}
|
|
|
if (isNaN(+inner_odds)) {
|
|
if (isNaN(+inner_odds)) {
|
|
|
|
|
+ Logs.out('getTotalReplacement inner_odds 无效');
|
|
|
return Promise.reject(new Error('inner_odds 无效'));
|
|
return Promise.reject(new Error('inner_odds 无效'));
|
|
|
}
|
|
}
|
|
|
if (!pre_bet_info || typeof(pre_bet_info) !== 'object') {
|
|
if (!pre_bet_info || typeof(pre_bet_info) !== 'object') {
|
|
|
|
|
+ Logs.out('getTotalReplacement pre_bet_info 无效');
|
|
|
return Promise.reject(new Error('pre_bet_info 无效'));
|
|
return Promise.reject(new Error('pre_bet_info 无效'));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -1282,9 +1286,12 @@ const getTotalReplacement = async (data) => {
|
|
|
const solutions = eventsCombination(passableEvents, inner_base, inner_rebate);
|
|
const solutions = eventsCombination(passableEvents, inner_base, inner_rebate);
|
|
|
|
|
|
|
|
if (!solutions?.length) {
|
|
if (!solutions?.length) {
|
|
|
|
|
+ Logs.out('getTotalReplacement 没有可用的解决方案 relation %j, passableEvents %j, solutions %j', relation, passableEvents, solutions);
|
|
|
return Promise.reject(new Error('没有可用的解决方案'));
|
|
return Promise.reject(new Error('没有可用的解决方案'));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ Logs.out('getTotalReplacement solutions length %d', solutions.length);
|
|
|
|
|
+
|
|
|
// 过滤 .filter(solution => !solution.lower)
|
|
// 过滤 .filter(solution => !solution.lower)
|
|
|
return solutions.map(solution => {
|
|
return solutions.map(solution => {
|
|
|
const { sid, info, sol, ...solutionInfo } = solution;
|
|
const { sid, info, sol, ...solutionInfo } = solution;
|