53 lines
2.5 KiB
Go
53 lines
2.5 KiB
Go
package assemble
|
|
|
|
import (
|
|
"mongo.games.com/game/gamesrv/slotspkg/internal/module/shared"
|
|
)
|
|
|
|
func SpinRes2Dto(spinRes shared.GameEndDto) (spinResDto GameEnd) {
|
|
////////////////////////////////////
|
|
//数据组装
|
|
spinResDto.Results = make([]Result, len(spinRes.Results))
|
|
for i, result := range spinRes.Results {
|
|
spinResDto.Results[i].WinStatus = result.WinStatus
|
|
spinResDto.Results[i].FreeStatus = result.FreeStatus
|
|
spinResDto.Results[i].FreeNum = result.FreeNum
|
|
spinResDto.Results[i].FreeNumMax = result.FreeNumMax
|
|
spinResDto.Results[i].FreeNumTrigger = result.FreeNumTrigger
|
|
spinResDto.Results[i].ScatterWin = result.ScatterWin / CoinRate
|
|
spinResDto.Results[i].TotalReward = result.TotalReward / CoinRate
|
|
spinResDto.Results[i].TotalRewardBase = result.TotalRewardBase / CoinRate
|
|
spinResDto.Results[i].BetMode = result.BetMode
|
|
spinResDto.Results[i].ArrSpins = make([]ArrSpins, len(result.ArrSpins))
|
|
for i2, spin := range result.ArrSpins {
|
|
spinResDto.Results[i].ArrSpins[i2].GearID = spin.GearID
|
|
spinResDto.Results[i].ArrSpins[i2].Items = spin.Items
|
|
spinResDto.Results[i].ArrSpins[i2].FinalSymbols = spin.FinalSymbols
|
|
spinResDto.Results[i].ArrSpins[i2].Index = spin.Index
|
|
spinResDto.Results[i].ArrSpins[i2].Reward = spin.Reward / CoinRate
|
|
spinResDto.Results[i].ArrSpins[i2].LineReward = spin.LineReward / CoinRate
|
|
spinResDto.Results[i].ArrSpins[i2].Special = spin.Special
|
|
spinResDto.Results[i].ArrSpins[i2].RewardInfo = make([]RewardInfo, len(spin.RewardInfo))
|
|
for i3, info := range spin.RewardInfo {
|
|
spinResDto.Results[i].ArrSpins[i2].RewardInfo[i3].Type = info.Type
|
|
spinResDto.Results[i].ArrSpins[i2].RewardInfo[i3].Index = info.Index
|
|
spinResDto.Results[i].ArrSpins[i2].RewardInfo[i3].Item = info.Item
|
|
spinResDto.Results[i].ArrSpins[i2].RewardInfo[i3].Reward = info.Reward / CoinRate
|
|
spinResDto.Results[i].ArrSpins[i2].RewardInfo[i3].Pos = info.Pos
|
|
}
|
|
}
|
|
}
|
|
spinResDto.RoundReward = float64(spinRes.RoundReward) / CoinRate
|
|
spinResDto.BetSizeIndex = spinRes.BetSizeIndex
|
|
spinResDto.BetLevelIndex = spinRes.BetLevelIndex
|
|
spinResDto.LinesIndex = spinRes.LinesIndex
|
|
spinResDto.TotalBet = float64(spinRes.TotalBet) / CoinRate
|
|
spinResDto.BetBeforeCoin = float64(spinRes.BetBeforeCoin) / CoinRate
|
|
spinResDto.BetAfterCoin = float64(spinRes.BetAfterCoin) / CoinRate
|
|
spinResDto.FinalCoin = float64(spinRes.FinalCoin) / CoinRate
|
|
spinResDto.ActualBet = float64(spinRes.ActualBet) / CoinRate
|
|
spinResDto.ActualWin = float64(spinRes.ActualWin) / CoinRate
|
|
////////////////////////////////////
|
|
return
|
|
}
|