package productrpc import ( "strings" "git.tetele.net/tgo/helper" ) /** * commission_rule 规则,1按系统设置,2单独设置 * commission_value 单独佣金值 * commission_rate 系统佣金比例 */ func ProductCommission(commission_rule, commission_value, commission_rate string, product_price, cost_price string, quantity interface{}) float64 { var commission_rule_rate float64 //佣金按比例换算成的小数 var commission_type string switch commission_rule { case "1": //按系统设置 commission_rule_rate = helper.FloatQuo(commission_rate, 100) commission_type = "rate" case "2": //单独设置 if strings.Contains(commission_value, "%") { //百分比 commission_rule_rate = helper.FloatQuo(strings.ReplaceAll(commission_value, "%", ""), 100) commission_type = "rate" } else { commission_type = "fixed" } } var commission float64 switch commission_type { case "rate": commission = helper.FloatMul(helper.FloatMul(helper.FloatSub(product_price, cost_price), commission_rule_rate), quantity) //利润 case "fixed": commission = helper.FloatMul(commission_value, quantity) } return commission }