コード例 #1
0
 public HttpResponseMessage GetSuperRetailTraderOrder([FromBody] CC_Order Order)
 {
     try
     {
         var db     = new RedisOperation(_RedisDB);
         var key    = RedisKeys.CCSuperRetailTraderOrder(Order.CustomerID);
         var result = db.SelectListQueue <CC_Order>(key);  //队列按照先进先出的原则,左边进右边出
         if (result.CustomerID.IsNullStr() || result.LogSession == null || result.OrderInfo == null)
         {
             return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
             {
                 Code = ResponseCode.DataNotFound,
                 Message = "success"
             }));
         }
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel <CC_Order>
         {
             Code = ResponseCode.Success,
             Message = "success",
             Result = result
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #2
0
ファイル: CCConnectionController.cs プロジェクト: radtek/crm
 public HttpResponseMessage GetConnection([FromBody] CC_Connection connection)
 {
     try
     {
         var db     = new RedisOperation(_RedisDB);
         var key    = RedisKeys.CCConnectionKey(connection.CustomerID);
         var result = db.SelectString <CC_Connection>(key);
         if (result.Customer_Name.IsNullStr() || result.ConnectionStr.IsNullStr())
         {
             return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
             {
                 Code = ResponseCode.DataNotFound,
                 Message = "success"
             }));
         }
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel <CC_Connection>
         {
             Code = ResponseCode.Success,
             Message = "success",
             Result = result
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #3
0
ファイル: CCOrderSendController.cs プロジェクト: radtek/crm
 public HttpResponseMessage GetOrderSend([FromBody] CC_OrderSend OrderSend)
 {
     try
     {
         var db     = new RedisOperation(_RedisDB);
         var key    = RedisKeys.CCOrderSend(OrderSend.CustomerID);
         var result = db.SelectListQueue <CC_OrderSend>(key);
         if (result.CustomerID.IsNullStr() || result.ConfigData == null || result.OrderSendData == null)
         {
             return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
             {
                 Code = ResponseCode.DataNotFound,
                 Message = "success"
             }));
         }
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel <CC_OrderSend>
         {
             Code = ResponseCode.Success,
             Message = "success",
             Result = result
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #4
0
        private void attachEntity(TEntity entity, RedisOperation operation)
        {
            string key  = RedisUtils.GetListKey(_type, operation);
            var    list = _typedClient.Lists[key];

            list.Add(entity);
        }
コード例 #5
0
 public HttpResponseMessage GetBasicSetting([FromBody] CC_BasicSetting basicSetting)
 {
     try
     {
         var db     = new RedisOperation(_RedisDB);
         var key    = RedisKeys.CCBasicSetting(basicSetting.CustomerId);
         var result = db.SelectString <CC_BasicSetting>(key);
         if (result.CustomerId.IsNullStr() || result.SettingList.Count <= 0)
         {
             return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
             {
                 Code = ResponseCode.DataNotFound,
                 Message = "success"
             }));
         }
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel <CC_BasicSetting>
         {
             Code = ResponseCode.Success,
             Message = "success",
             Result = result
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #6
0
 public HttpResponseMessage GetRole([FromBody] CC_Role role)
 {
     try
     {
         var db     = new RedisOperation(_RedisDB);
         var key    = RedisKeys.CCMenuRoleKey(role.CustomerID, role.RoleID);
         var result = db.SelectString <CC_Role>(key);
         if (result.RoleID.IsNullStr() || result.MenuList.Count <= 0)
         {
             return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
             {
                 Code = ResponseCode.DataNotFound,
                 Message = "success"
             }));
         }
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel <CC_Role>
         {
             Code = ResponseCode.Success,
             Message = "success",
             Result = result
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #7
0
 public HttpResponseMessage GetRechargeOrder([FromBody] CC_Order order)
 {
     try
     {
         var db     = new RedisOperation(_RedisDB);
         var key    = RedisKeys.CCRechargeOrder(order.CustomerID);
         var result = db.SelectListQueue <CC_Order>(key);
         if (result.CustomerID.IsNullStr())
         {
             return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
             {
                 Code = ResponseCode.DataNotFound,
                 Message = "success"
             }));
         }
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel <CC_Order>
         {
             Code = ResponseCode.Success,
             Message = "success",
             Result = result
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #8
0
        public HttpResponseMessage SetCouponList([FromBody] CC_Coupon couponData)
        {
            try
            {
                var db  = new RedisOperation(_RedisDB);
                var key = RedisKeys.CCCouponKey(couponData.CustomerId, couponData.CouponTypeId);
                //
                var coupons = new List <CC_Coupon>();
                for (var i = 0; i < couponData.CouponLenth; i++)
                {
                    coupons.Add(couponData.DeepClone());
                }
                //
                var total = couponData.CouponLenth;
                var limit = 100;
                var start = 0;

                //
                do
                {
                    //
                    var models = coupons.Skip(start).Take(limit).ToList();

                    //
                    db.InsertListQueueBatch <CC_Coupon>(key, models);

                    //
                    if (start < (total - limit))
                    {
                        start = start + limit;
                    }
                    else
                    {
                        start = total;
                    }
                }while (start < total);
                return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
                {
                    Code = ResponseCode.Success,
                    Message = "success"
                }));
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
                {
                    Code = ResponseCode.Fail,
                    Message = "fail:" + ex.Message
                }));
            }
        }
コード例 #9
0
ファイル: Test.cs プロジェクト: Kevin9567/SCMT
        static void Main(string[] args)
        {
            //string[] strtest = { "2018年03月", "2018年02" };
            //string ste = "2018年03月";
            //var re = Regex.Matches(ste, "2018");
            //foreach (Match match in Regex.Matches(ste, "^2018年3月"))
            //{
            //    Console.WriteLine("=====", match.Value);
            //}


            RedisOperation test = new RedisOperation();

            test.test5();
        }
コード例 #10
0
        public static string GetListKey(string type, RedisOperation op)
        {
            string operation = "";

            if (op == RedisOperation.Delete)
            {
                operation = "delete";
            }
            else
            {
                operation = "store";
            }
            string key = "urn:" + type + ":" + operation;

            return(key);
        }
コード例 #11
0
 public Task <Result <T> > UseNonConcurrentReplicatedHashAsync <T>(
     OperationContext context,
     TimeSpan?retryWindow,
     RedisOperation operation,
     Func <RedisBatch, string, Task <T> > addOperations,
     TimeSpan timeout,
     [CallerMemberName] string?caller = null)
 {
     // UseReplicatedHashCoreAsync runs sequentially on different redis instances.
     // To prevent the potential hangs, forcing the timeout for all of them.
     return(context.PerformOperationWithTimeoutAsync(
                Tracer,
                nestedContext => UseNonConcurrentReplicatedHashAsync(nestedContext, retryWindow, operation, addOperations, caller),
                timeout: timeout,
                traceErrorsOnly: true));
 }
コード例 #12
0
ファイル: Program.cs プロジェクト: ChainSong/WMS
        static void Main(string[] args)
        {
            try
            {
                for (int i = 0; i < 100000; i++)
                {
                    var s = RedisOperation.GetList <string>("BackRF:pear1");
                    //RedisOperation.Exists("pear1");
                    Console.WriteLine("---" + s + "--" + i);
                }
            }
            catch (Exception ex)
            {
            }

            Console.ReadLine();
        }
コード例 #13
0
ファイル: CCActivityController.cs プロジェクト: radtek/crm
 public HttpResponseMessage SetActivityVipId([FromBody] ActivityVipMapping data)
 {
     try {
         var db     = new RedisOperation(_RedisDB);
         var key    = RedisKeys.CCActivity(data.CustomerId, data.ActivityId);
         var result = db.InsertSet(key, data.VipId);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex) {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #14
0
 public HttpResponseMessage SetEntity([FromBody] KeyValueEntity item)
 {
     try
     {
         var  db     = new RedisOperation(_RedisDB);
         bool result = db.Insert(item.Key, item.Value);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = result ? ResponseCode.Success : ResponseCode.Fail,
             Message = result ? "success" : "fail"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #15
0
 public HttpResponseMessage Set(string key, string value, double time = 1440)
 {
     try
     {
         var  db     = new RedisOperation(_RedisDB, time);
         bool result = db.Insert(key, value);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = result ? ResponseCode.Success : ResponseCode.Fail,
             Message = result ? "success" : "fail"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #16
0
ファイル: BIStatisticController.cs プロジェクト: radtek/crm
 public HttpResponseMessage SetBIUserData([FromBody] BuryingPointEntity userData)
 {
     try
     {
         var db = new RedisOperation(RedisDBEnum.Default);
         db.InsertListQueue(RedisKeys.BIBuryingKey, userData);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #17
0
 public HttpResponseMessage DelBasicSetting([FromBody] CC_BasicSetting basicSetting)
 {
     try
     {
         var db  = new RedisOperation(_RedisDB);
         var key = RedisKeys.CCBasicSetting(basicSetting.CustomerId);
         db.DeleteString(key);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #18
0
ファイル: BIStatisticController.cs プロジェクト: radtek/crm
 public HttpResponseMessage GetBIUserDataLength()
 {
     try
     {
         var db     = new RedisOperation(RedisDBEnum.Default);
         var result = db.GetListLength(RedisKeys.BIBuryingKey);
         return(Request.CreateResponse(HttpStatusCode.OK, new
         {
             code = "0000",
             message = "success",
             result = result
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new
         {
             code = "0001",
             message = "fail:" + ex.Message
         }));
     }
 }
コード例 #19
0
ファイル: CCOrderSendController.cs プロジェクト: radtek/crm
 public HttpResponseMessage SetOrderSend([FromBody] CC_OrderSend OrderSend)
 {
     try
     {
         var db  = new RedisOperation(_RedisDB);
         var key = RedisKeys.CCOrderSend(OrderSend.CustomerID);
         db.InsertListQueue(key, OrderSend);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #20
0
 public HttpResponseMessage DeleteSalesCardOrderList([FromBody] CC_Order order)
 {
     try
     {
         var db  = new RedisOperation(_RedisDB);
         var key = RedisKeys.CCSalesCardOrder(order.CustomerID);
         db.Delete(key);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #21
0
 public HttpResponseMessage DeleteContactList([FromBody] CC_Contact Contact)
 {
     try
     {
         var db  = new RedisOperation(_RedisDB);
         var key = RedisKeys.CCContactKey(Contact.CustomerId);
         db.Delete(key);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #22
0
ファイル: CCOrderRewardController.cs プロジェクト: radtek/crm
 public HttpResponseMessage SetOrderReward([FromBody] CC_OrderReward OrderReward)  //调用的地方传过来的是json字符串,默认就转化过来了
 {
     try
     {
         var db  = new RedisOperation(_RedisDB);
         var key = RedisKeys.CCOrderReward(OrderReward.CustomerID); //获取相关的键
         db.InsertListQueue(key, OrderReward);                      //插入数据
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #23
0
ファイル: CCPrizeController.cs プロジェクト: radtek/crm
 public HttpResponseMessage SetPrize([FromBody] CC_Prize Prize)
 {
     try
     {
         var db  = new RedisOperation(_RedisDB);
         var key = RedisKeys.CCPrizeKey(Prize.CustomerId, Prize.EventId);
         db.InsertString(key, Prize);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #24
0
 public HttpResponseMessage SetVipMappingCoupon([FromBody] CC_VipMappingCoupon VipMappingCoupon)
 {
     try
     {
         var db  = new RedisOperation(_RedisDB);
         var key = RedisKeys.CCVipMappingCouponKey(VipMappingCoupon.CustomerId);
         db.InsertListQueue(key, VipMappingCoupon);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #25
0
ファイル: CCPrizePoolsController.cs プロジェクト: radtek/crm
 public HttpResponseMessage DeletePrizePoolsList([FromBody] CC_PrizePool prizePoolData)
 {
     try
     {
         var db     = new RedisOperation(_RedisDB);
         var key    = RedisKeys.CCPrizePoolsKey(prizePoolData.CustomerId, prizePoolData.EventId);
         var result = db.Delete(key);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #26
0
 public HttpResponseMessage Del(string key)
 {
     try
     {
         var db     = new RedisOperation(_RedisDB);
         var result = db.DeleteString(key);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel <string>
         {
             Code = !result ? ResponseCode.Fail : ResponseCode.Success,
             Message = !result ? "fail" : "success",
             Result = ""
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #27
0
 public HttpResponseMessage Get(string key)
 {
     try
     {
         var db     = new RedisOperation(_RedisDB);
         var result = db.GetKeyString(key);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel <string>
         {
             Code = string.IsNullOrEmpty(result) ? ResponseCode.Fail : ResponseCode.Success,
             Message = string.IsNullOrEmpty(result) ? "fail" : "success",
             Result = result
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #28
0
 public HttpResponseMessage DelRole([FromBody] CC_Role role)
 {
     try
     {
         var db  = new RedisOperation(_RedisDB);
         var key = RedisKeys.CCMenuRoleKey(role.CustomerID, role.RoleID);
         db.DeleteString(key);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #29
0
ファイル: BIStatisticController.cs プロジェクト: radtek/crm
 public HttpResponseMessage GetBIUserData()
 {
     try
     {
         var db     = new RedisOperation(RedisDBEnum.Default);
         var result = db.SelectListQueue <BuryingPointEntity>(RedisKeys.BIBuryingKey);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel <BuryingPointEntity>
         {
             Code = ResponseCode.Success,
             Message = "success",
             Result = result
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }
コード例 #30
0
ファイル: CCConnectionController.cs プロジェクト: radtek/crm
 public HttpResponseMessage DelConnection([FromBody] CC_Connection Connection)
 {
     try
     {
         var db  = new RedisOperation(_RedisDB);
         var key = RedisKeys.CCConnectionKey(Connection.CustomerID);//根据CustomerID生成对应的key
         db.DeleteString(key);
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Success,
             Message = "success"
         }));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new ResponseModel
         {
             Code = ResponseCode.Fail,
             Message = "fail:" + ex.Message
         }));
     }
 }