/// <summary> /// 获取当前用户的数据库购物车 /// </summary> /// <param name="userid"></param> /// <param name="u"></param> /// <returns></returns> private ResultModel GetShoppingCartInfo(string userid = null, YH_User u = null) { var sc = _database.Db.ShoppingCart; //购物车表 ResultModel result = new ResultModel { Data = sc.FindAllByUserID(userid) .Select( sc.ShoppingCartId, sc.ProductID, sc.SKU_ProducId, sc.Quantity, sc.UserID, sc.IsCheck ).ToList <ShoppingCartModel>() }; return(result); }
/// <summary>获取当前用户的数据库购物车.</summary> /// <remarks></remarks> /// <returns>List{GoodsInfo}.</returns> /// <exception cref="System.Exception">未登录用户</exception> public List <GoodsInfoModel> getCartFromDb(int languageId, string userid = null, YH_User u = null) { //if (u == null) //{ // u = SessionHelper.getCurUserFromSession(); //} //if (string.IsNullOrEmpty(userid) && u == null) //{ // throw new Exception("未登录用户"); //} //if (!string.IsNullOrEmpty(userid)) //{ ResultModel resul = GetShoppingCartByUserId(userid, languageId); return(resul.Data); //} //else //{ // ResultModel resul = GetShoppingCartByUserId(u.UserID.ToString(), languageId); // return resul.Data; //} }
private readonly static long companyAccountParamenterID = Convert.ToInt64(ConfigurationManager.AppSettings["companyAccountParamenterID"]); //公司虚拟帐户系统参数ID public void Execute(IJobExecutionContext context) { ExceptionLogModel exceptionLogModel = new ExceptionLogModel(); exceptionLogModel.ServiceName = "会员购物订单返现订单生成服务"; exceptionLogModel.CreateBy = "系统服务"; try { _logger.Error(typeof(BounsJob), "会员购物订单返现订单生成服务开始***********************************"); //订单信息 string sqlOrder = string.Format(@"select OrderID,OrderStatus,DelayDays,OrderAmount,CostAmount,UserID,RefundFlag from [Order] where OrderStatus=5 and RefundFlag in(0,2)"); List <dynamic> sourcesOrder = _database.RunSqlQuery(x => x.ToResultSets(sqlOrder))[0]; List <OderModel> listOrder = sourcesOrder.ToEntity <OderModel>(); //订单跟踪信息 string sqlOrderTrackingLog = string.Format(@"select OrderID,OrderStatus,CreateTime from OrderTrackingLog where OrderID in(select OrderID from [Order] where OrderStatus=5)"); List <dynamic> sourcesOrderTrackingLog = _database.RunSqlQuery(x => x.ToResultSets(sqlOrderTrackingLog))[0]; List <OrderTrackingLogModel> listOrderTrackingLog = sourcesOrderTrackingLog.ToEntity <OrderTrackingLogModel>(); if (listOrder != null && listOrder.Count > 0) { foreach (OderModel orderModel in listOrder) { YH_User currUser = (YH_User)_database.Db.YH_User.FindByUserID(orderModel.UserID); if (currUser != null) { try { #region 订单表状态为已收货OrderStatus=5且退货标示0正常,2已处理(包括成功,失败)RefundFlag in{0,2} if (orderModel.OrderStatus == (int)HKTHMall.Domain.Enum.OrderEnums.OrderStatus.OutTimeReceiving) { var orderLog = listOrderTrackingLog.Find(orderTrackingLog => orderTrackingLog.OrderID == orderModel.OrderID && orderTrackingLog.OrderStatus == orderModel.OrderStatus); if (orderLog != null) { //DateTime endTime = orderLog.CreateTime.AddDays(earningsDays); DateTime endTime = orderLog.CreateTime.AddMinutes(earningsDays); if (endTime < DateTime.Now && orderModel.IsReward == 0) { if (orderModel.RefundFlag != 1) { BackMessage resultModel = _rebateService.GenerateList(orderModel); if (resultModel.status == 1) { _logger.Error(typeof(BounsJob), string.Format("处理订单【{0}】的返现订单生成成功", orderModel.OrderID)); } else { exceptionLogModel.HandleId = orderModel.OrderID; exceptionLogModel.Status = 1; exceptionLogModel.ResultType = 1; exceptionLogModel.Message = string.Format("处理订单【{0}】的会员购物订单返现订单生成失败,", orderModel.OrderID); exceptionLogService.Add(exceptionLogModel); _logger.Error(typeof(BounsJob), string.Format("处理订单【{0}】的会员购物订单返现订单生成失败,", orderModel.OrderID)); } } } } else { exceptionLogModel.HandleId = orderModel.OrderID; exceptionLogModel.Status = 1; exceptionLogModel.ResultType = 1; exceptionLogModel.Message = "订单返现订单生成,订单【" + orderModel.OrderID + "】跟踪信息查询无结果"; exceptionLogService.Add(exceptionLogModel); _logger.Error(typeof(BounsJob), "订单返现订单生成,订单【" + orderModel.OrderID + "】跟踪信息查询无结果"); } } #endregion } catch (Exception ex) { exceptionLogModel.HandleId = orderModel.OrderID; exceptionLogModel.Status = 1; exceptionLogModel.ResultType = 1; exceptionLogModel.Message = "【会员购物订单返现订单生成算法foreach】" + ex.Message; exceptionLogService.Add(exceptionLogModel); _logger.Error(typeof(BounsJob), "【会员购物订单返现订单生成算法foreach】" + ex.Message); } } else { exceptionLogModel.HandleId = orderModel.OrderID; exceptionLogModel.Status = 1; exceptionLogModel.ResultType = 1; exceptionLogModel.Message = string.Format("处理订单【{0}】的订单返现订单生成失败,获取订单用户【{1}】信息失败", orderModel.OrderID, orderModel.UserID); exceptionLogService.Add(exceptionLogModel); _logger.Error(typeof(BounsJob), string.Format("处理订单【{0}】的订单返现订单生成失败,获取订单用户【{1}】信息失败", orderModel.OrderID, orderModel.UserID)); } } } else { _logger.Error(typeof(BounsJob), "【会员购物订单返现订单生成服务】本次未处理任何数据."); } exceptionLogModel.HandleId = "0"; exceptionLogModel.Status = 2; exceptionLogModel.ResultType = 2; exceptionLogModel.Message = "运行正常"; exceptionLogService.Add(exceptionLogModel); _logger.Error(typeof(BounsJob), "会员购物订单返现订单生成服务结束**********************************"); } catch (Exception ex) { exceptionLogModel.HandleId = "0"; exceptionLogModel.Status = 1; exceptionLogModel.ResultType = 1; exceptionLogModel.Message = "【会员购物订单返现订单生成服务运行环节报错】" + ex.Message; exceptionLogService.Add(exceptionLogModel); _logger.Error(typeof(BounsJob), "【会员购物订单返现订单生成服务运行环节报错】" + ex.Message); } }