public Order CreateOrder(int userid, OrderType orderType, decimal money, PayType payType, int fromuserId = 0, decimal?rawprice = 0, QuestionStrategy strategy = null, int questionId = 0) { var order = new Order() { UserId = userid, OrderType = orderType, Amount = money, PayType = payType, RawPrice = rawprice != null ? rawprice.Value : money, FromUserId = fromuserId, QuestionId = questionId }; if (orderType == OrderType.Reward) { order.FromUserId = fromuserId; } if (orderType == OrderType.QuestionStrategy) { if (strategy == null) { return(null); } order.RelationId = strategy.Id; order.QuestionId = questionId; } InsertOrder(order); return(GetOrderByOrderNumber(order.OrderNumber)); }
public void InsertStrategy(QuestionStrategy strategy) { if (strategy == null) { throw new ArgumentNullException("strategy"); } _strageRepository.Insert(strategy); }
public void Init() { onlymodel = new Question() { Title = "strategyTest", Answer = "1234", Reward = 10, RewardType = RewardType.Only, }; averageModel = new Question() { Title = "strategyTest", Answer = "1234", Reward = 10, RewardType = RewardType.Average, RewardPeopleNum = 10 }; declineModel = new Question() { Title = "strategyTest", Answer = "1234", Reward = 10, RewardType = RewardType.Decline, RewardPeopleNum = 10 }; KeyWordStrategy = new QuestionStrategy() { SystemName = SystemQuestionStrategyName.KeyWord, MinRate = (decimal)0.1, MaxRate = (decimal)0.5, StartRate = (decimal)0.1 }; WordNumStrategy = new QuestionStrategy() { SystemName = SystemQuestionStrategyName.WordNum, MinRate = (decimal)0.2, MaxRate = (decimal)0.2, StartRate = (decimal)0.2 }; AnswerStrategy = new QuestionStrategy() { SystemName = SystemQuestionStrategyName.Answer, MaxRate = 1, MinRate = 1, StartRate = 1 }; }
public Order CreateStrategyOrder(int userid, QuestionStrategy strategy, int questionId, PayType payType = PayType.Wallet) { return(CreateOrder(userid, OrderType.QuestionStrategy, strategy.Price, payType, 0, null, strategy, questionId)); }