package common import "math/rand" // CanDeductByProbability 扣量指标的未完成度和今日时间进度递增 能扣量的概率递增 [0,100] func CanDeductByProbability(probability float64) bool { if probability <= 0 { return false } if probability == 0 { return false } if probability >= 1 { return true //绝对扣量 } canDeduct := probability > rand.Float64() //根据 probability 概率决定是否扣量 return canDeduct } // ConDeductionRatio 格式:% func ConsumeDeductionRatio(optDividendRatio, dividendRatio float64) float64 { if optDividendRatio == 0 { return dividendRatio } return (1 - dividendRatio/optDividendRatio) }