Example #1
0
        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);
 }
Example #3
0
 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
     };
 }
Example #4
0
 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));
 }