public BackMessage FindPassword(string number, string name, string identityNumber, out string newPwd)
        {
            BackMessage backMessage = new BackMessage();

            var memberInfo = memberInfoRepository.FindEntity(m => m.Number == number && m.PaperNumber == identityNumber && m.Name == name);

            if (memberInfo == null)
            {
                newPwd           = null;
                backMessage.Code = 500;
                backMessage.Msg  = "用户名或姓名或证件号错误!";
                backMessage.Data = null;
            }
            else
            {
                newPwd = new Random().Next(1111111, 999999).ToString().PadLeft(6, '0');

                memberInfo.LoginPass = newPwd;

                if (memberInfoRepository.Update(memberInfo) > 0)
                {
                    backMessage.Code = 200;
                    backMessage.Msg  = "success";
                }
            }

            return(backMessage);
        }
예제 #2
0
        private static void AppServerOnNewRequestReceived(ProtobufAppSession session, ProtobufRequestInfo requestInfo)
        {
            switch (requestInfo.Type)
            {
            case DefeatMessage.Types.Type.BackMessage:
                Console.WriteLine("BackMessage:{0}", requestInfo.Body.BackMessage.Content);
                break;

            case DefeatMessage.Types.Type.CallMessage:
                Console.WriteLine("CallMessage:{0}", requestInfo.Body.CallMessage.Content);

                var backMessage = BackMessage.CreateBuilder()
                                  .SetContent("Hello I am form C# server by SuperSocket").Build();
                var message = DefeatMessage.CreateBuilder()
                              .SetType(DefeatMessage.Types.Type.BackMessage)
                              .SetBackMessage(backMessage).Build();

                using (var stream = new MemoryStream())
                {
                    CodedOutputStream os = CodedOutputStream.CreateInstance(stream);

                    os.WriteMessageNoTag(message);

                    os.Flush();

                    byte[] data = stream.ToArray();
                    session.Send(new ArraySegment <byte>(data));
                }


                break;
            }
        }
        private void ModifyLoginPwd(string number, string oldPwd, string newPwd, BackMessage backMessage)
        {
            var memberInfo = memberInfoRepository.FindEntity(m => m.Number == number && m.LoginPass == oldPwd);

            if (memberInfo.IsNull())
            {
                backMessage.Code = 500;
                backMessage.Msg  = "原始密码错误!";
            }
            else
            {
                memberInfo.LoginPass = EncryptionUtil.MD5(newPwd);
                if (memberInfoRepository.Update(memberInfo) > 0)
                {
                    backMessage.Code = 200;
                    backMessage.Msg  = "success";
                }
            }
        }
예제 #4
0
        /// <summary>
        /// 获取首页数据
        /// </summary>
        /// <returns></returns>
        public BackMessage GetHomeIndexData()
        {
            BackMessage backMessage = new BackMessage();

            try
            {
                HomeIndexBD homeIndexBD = new HomeIndexBD();
                homeIndexBD.Banner   = GetBanner() as List <Banner>;
                homeIndexBD.HomeJBox = GetHomeJBox() as List <HomeJBox>;
                homeIndexBD.Notice   = GetNotice();
                homeIndexBD.Products = GetProducts();
                homeIndexBD.BottomAd = GetBottomAd() as List <BottomAd>;

                backMessage.Code = 200;
                backMessage.Msg  = "success";
                backMessage.Data = homeIndexBD;
                return(backMessage);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #5
0
        public JsonResult FindPwd(string phoneNumber, string number, string name, string identityNumber, string validateCode)
        {
            string cacheValidateCode = ValidateCodeCache.GetValidateCodeWithExpire(phoneNumber);

            if (cacheValidateCode.IsNullOrEmpty() || !cacheValidateCode.Equals(validateCode))
            {
                return(CustomResult.ErrorMessage("验证码错误或已失效"));
            }

            string newPwd;

            BackMessage backMessage = settingService.FindPassword(number, name, identityNumber, out newPwd);

            if (backMessage.Code == 200)
            {
                SendMsgService.SendNewPassword(phoneNumber, newPwd);
            }

            return(new JsonResult()
            {
                Data = backMessage
            });
        }
        /// <summary>
        /// 修改密码
        /// </summary>
        /// <param name="number">会员编号</param>
        /// <param name="oldPwd">旧密码</param>
        /// <param name="newPwd">新密码</param>
        /// <param name="passwordType">密码类型</param>
        /// <returns></returns>
        public BackMessage ModifyPassword(string number, string oldPwd, string newPwd, PasswordType passwordType)
        {
            oldPwd = EncryptionUtil.MD5(oldPwd);

            BackMessage backMessage = new BackMessage();

            switch (passwordType)
            {
            case PasswordType.LoginPassword:

                ModifyLoginPwd(number, oldPwd, newPwd, backMessage);

                break;

            case PasswordType.PaymentPassword:

                ModifyPaymentPwd(number, oldPwd, newPwd, backMessage);

                break;
            }

            return(backMessage);
        }
예제 #7
0
 private void OnBackMessageReceived(BackMessage obj)
 {
     this.navigationStack.Pop();
     ShowView(this.navigationStack.Peek(), false);
 }
        /// <summary>
        /// 登录
        /// </summary>
        /// <param name="userName">会员编号</param>
        /// <param name="password">密码</param>
        /// <returns></returns>
        public BackMessage Login(string userName, string password)
        {
            BackMessage backMessage = new BackMessage();

            if (userName.IsNullOrEmpty() || password.IsNullOrEmpty())
            {
                backMessage.Code = 500;
                backMessage.Msg  = "";
                backMessage.Data = null;

                return(backMessage);
            }

            #region 登录逻辑SQL
            StringBuilder sb = new StringBuilder(string.Format(@"
                    declare @systemvalue int;
                    declare @validBlack int;
                    declare @expired int;
                    declare @blackList int;
                    declare @memberState1 int;
                    declare @memberState2 int;
                    declare @limitLogin int;
                    declare @name nvarchar(100);
                    declare @sex int;
                    declare @mobileTele nvarchar(500);
                    declare @paperNumber nvarchar(500);
                    declare @defaultNumber nvarchar(100);
                    DECLARE @bankCard NVARCHAR(20);
                    DECLARE @birthday DATETIME;
                    DECLARE @lastLoginDate DATETIME;
                    DECLARE @levelint INT;
                    
                    DECLARE @realName INT;
                    DECLARE @isPreMember INT;
                    DECLARE @isStore INT;
                    DECLARE @isHealthManageCenter INT;
                    DECLARE @isPartner INT;
                    DECLARE @levelTitle INT;

                    declare @ExceptNum int=(select max(ExpectNum) from config);
                    --获取SystemValue值
                    select @systemvalue=systemvalue  from setsystem where systemname=@systemname; 
                    --会员是否已过实名期
                    Select @validBlack=Count(0) from ValidBlackData where UserGroup=1 and [Status]=1 and UserID=@userCode;
                    --续约是否到期
                    Select top 1 @expired=(CASE WHEN xuyueType=1 OR DATEDIFF(d,zhifuTime,GETDATE())<=366 THEN 0 ELSE 1 END ) 
                    from xuyueTb where isZhifu=1 and number=@userCode order by zhifuTime desc;
                    --禁止登陆黑名单
                    select @blackList=count(0) from Blacklist where UserID = @userCode;
                    --限制区域登陆
                    Select top 1 @defaultNumber=Number From MemberInfo Where DefaultNumber = 1;
                    select  @limitLogin=count(0) from memberinfo a left join blackgroup b on a.CPCCode=b.groupvalue
                    where grouptype=3 and number=@userCode AND a.Number !=@defaultNumber;
                    --密码验证
                    select @memberState1=isnull(MemberState,0) from memberinfo where (number=@userCode) 
                    and (loginpass=@pwd);

                    --会员已实名,返回1
                    if((Select Count(0) from CardInfo where MemberCode=@userCode)>0) begin select @realName = 1 end
                    --会员职称达到见习主任(含)以上
                    else begin 
                    
                    declare @postResult int=0
                    declare @sql nvarchar(500)='select @postResult=level2 from MemberInfoBalance'+convert(nvarchar(10),@ExceptNum)
                                              +' where Number=@Number'
                    exec sp_executesql @sql,N'@postResult int output,@Number nvarchar(50)',@postResult output,@userCode
                    --待审核-1,已录入返回-2,退回返回-3,未录入返回-4
                    declare @recoreResult int=4
                    Select @recoreResult=ApplyStatus from CardRecord where Number=@userCode and IsCurrent='True';
                    SELECT @realName = (CASE WHEN DATEDIFF(d,RegisterDate,GETDATE())>93 THEN -@recoreResult ELSE 2 END) FROM dbo.MemberInfo WHERE Number=@userCode;
                    end 

                    --是否准会员
                    SELECT @isPreMember=COUNT(0) FROM HandingCardInfo AS hci JOIN MemberInfo AS mi ON (mi.Number = hci.Number ) WHERE hci.Number=@userCode;

                    --是否服务中心
                    SELECT @isStore= COUNT(0) FROM StoreInfo si 
                    INNER JOIN StoreApplyManage sam ON si.StoreID=sam.StoreID 
                    WHERE si.Number=@userCode AND si.StoreState=1 AND sam.ApplyStatus=5 AND sam.IsCurrent='True';

--是否健康管理中心
SELECT @isHealthManageCenter = COUNT(0) FROM StudioApply sa WHERE sa.Number=@userCode AND sa.IsShop IN (1,2) AND sa.YCShopStatus=1;
--是否合伙人
SELECT @isPartner = COUNT(0) FROM StorePartner sp WHERE sp.PartnerNumber=@userCode AND sp.PayStatus=1;
--获取职称
declare @sql2 nvarchar(500)='select @levelTitle=level2 from MemberInfoBalance'+convert(nvarchar(10),@ExceptNum)
                                              +' where Number=@Number'
exec sp_executesql @sql2,N'@levelTitle int output,@Number nvarchar(50)',@levelTitle output,@userCode

                    --获取基本信息
                    SELECT @name=Name,@sex=Sex,@mobileTele=MobileTele,@paperNumber=PaperNumber,@bankCard=BankCard,@birthday=Birthday,@lastLoginDate=LastLoginDate,@levelint=LevelInt FROM dbo.MemberInfo WHERE Number=@userCode;
  
                    --返回登录验证信息
                    select @levelint LevelInt, @levelTitle LevelTitle, @isPartner IsPartner, @isHealthManageCenter IsHealthManageCenter, @isPreMember IsPreMember,@isStore IsStore, @realName RealName, @userCode UserCode,@systemvalue SystemValue,@validBlack ValidBlack,@expired Expired,@blackList BlackList,
                    case when @memberState1>=0 then @memberState1 else 
                    -1 end
                    --end
                    MemberState,@limitLogin LimitLogin,
                    @name Name,@sex Sex,@mobileTele MobileTele,@paperNumber PaperNumber ,@bankCard BankCard,@birthday Birthday,@lastLoginDate LastLoginDate,@levelint LevelInt;
            "));
            #endregion

            DbParameter[] parameters = new DbParameter[] {
                DbParameters.CreateDbParameter("systemname", "H", DbType.String),
                DbParameters.CreateDbParameter("userCode", userName, DbType.String),
                DbParameters.CreateDbParameter("pwd", EncryptionUtil.MD5(password), DbType.String),
            };

            var loginInfo = this.BaseRepository().FindList <LoginInfo>(sb.ToString(), parameters).FirstOrDefault();

            //  IMemberInfoService memberInfoService = new MemberInfoService();

            string errMsg;
            if (ValidateLogin(loginInfo, out errMsg))
            {
                //登录成功后返回token
                backMessage.Code = 200;
                backMessage.Msg  = "success";
                backMessage.Data = new LoginMessage()
                {
                    Token            = JwtUtil.SetJwtEncode(userName),
                    PermissionString = GetHasPermission(loginInfo),
                    LoginInfo        = new LoginInfoBD()
                    {
                        IsHealthManageCenter = loginInfo.IsHealthManageCenter > 0 ? 1 : 0,
                        IsPartner            = loginInfo.IsPartner,
                        IsPreMember          = loginInfo.IsPreMember,
                        IsStore      = loginInfo.IsStore,
                        LevelInt     = (LevelInt)loginInfo.LevelInt,
                        LevelTitle   = (LevelTitle)loginInfo.LevelTitle,
                        Name         = loginInfo.Name,
                        UserCode     = loginInfo.UserCode,
                        Sex          = loginInfo.Sex == 0 ? "女" : "男",
                        ShoppingPv   = memberInfoService.GetMemberShoppingPv(userName),
                        ExperiencePv = memberInfoService.GetMemberExperiencePv(userName)
                    }
                };
            }
            else
            {
                backMessage.Code = 500;
                backMessage.Msg  = errMsg;
                backMessage.Data = null;
            }

            return(backMessage);
        }
예제 #9
0
        /// <summary>
        /// 注册
        /// </summary>
        /// <param name="welcomeCode"></param>
        /// <param name="phone"></param>
        /// <param name="pwd"></param>
        /// <param name="pwd_md5"></param>
        /// <param name="code"></param>
        /// <param name="_user"></param>
        /// <returns></returns>
        public BackMessage Register(string pwd, string pwd_md5, string email, out YH_UserModel _user)
        {
            _user = null;

            //注册回调信息
            BackMessage msg = new BackMessage();

            msg.status = 0;


            if ("" == pwd || new Regex(@"/[^\x00-\xff]|\s/").IsMatch(pwd))
            {
                msg.message = CultureHelper.GetLangString("LOGIN_PWD_FORMAT");//"密码格式不正确8-20位字母数字组合!";
                return(msg);
            }

            if (!string.IsNullOrEmpty(email))
            {
                if (!new Regex(@"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$").IsMatch(email))
                {
                    msg.message = CultureHelper.GetLangString("ACCOUNT_USERINFO_ADDRESS_EMAILERROR");//邮箱格式错误
                    return(msg);
                }
            }


            using (var tx = _database.Db.BeginTransaction())
            {
                try
                {
                    YH_UserModel user = new YH_UserModel();
                    user.UserID = HKTHMall.Core.MemCacheFactory.GetCurrentMemCache().Increment("commonId"); //rstatus.uid;
                    //user.Phone = phone;
                    user.PassWord       = pwd_md5;
                    user.NickName       = SetNickName();
                    user.Sex            = 0;
                    user.RegisterSource = 1;
                    user.UserType       = 0;
                    user.ActivePhone    = 1;
                    user.IsLock         = 0;
                    user.IsDelete       = 0;



                    //判断本地UID数据是否存在
                    var result = GetUserInfoByEmail(email);
                    //YH_UserModel has_uid = GetUserInfoById().Data;
                    if (!result.IsValid)
                    {
                        tx.Rollback();
                        msg.message = CultureHelper.GetLangString("REGISETR_HADREGISTER");//您输入的手机号码已注册;
                        return(msg);
                    }
                    else
                    {
                        user.Account     = email;
                        user.Email       = email;
                        user.ActiveEmail = 0;
                        user.ReferrerID  = 0;
                        user.ParentID2   = 0;
                        user.ParentID3   = 0;
                        user.ParentIDs   = "";
                        //user.UpdateDT = ;
                        user.RegisterDate = DateTime.Now;
                        //写入本地数据
                        if (!Add(user).IsValid)
                        {
                            tx.Rollback();
                            msg.message = CultureHelper.GetLangString("REGISETR_USERREGISTERFAIL"); //会员注册失败;
                            return(msg);
                        }

                        ZJ_UserBalanceModel zj_UserBalanceModel = new ZJ_UserBalanceModel();
                        zj_UserBalanceModel.UserID         = user.UserID;
                        zj_UserBalanceModel.ConsumeBalance = 0;
                        zj_UserBalanceModel.AccountStatus  = 1;
                        zj_UserBalanceModel.CreateBy       = user.Account;
                        zj_UserBalanceModel.CreateDT       = DateTime.Now;
                        zj_UserBalanceModel.UpdateBy       = user.Account;
                        zj_UserBalanceModel.UpdateDT       = DateTime.Now;

                        if (!new ZJ_UserBalanceService().AddBalance(zj_UserBalanceModel).IsValid)
                        {
                            tx.Rollback();
                            msg.message = CultureHelper.GetLangString("REGISETR_USERREGISTERFAIL"); //会员注册失败;
                            return(msg);
                        }


                        YH_UserUpdateInfoModel updateInfo = new YH_UserUpdateInfoModel {
                            UserID = user.UserID, TimeStamp = HKTHMall.Services.Common.ConvertsTime.DateTimeToTimeStamp(DateTime.Now)
                        };
                        if (!new YH_UserUpdateInfoService().Add(updateInfo).IsValid)
                        {
                            tx.Rollback();
                            msg.message = CultureHelper.GetLangString("REGISETR_USERREGISTERFAIL"); //会员注册失败;
                            return(msg);
                        }

                        _user = new YH_UserModel {
                            UserID = user.UserID, Account = user.Account, NickName = user.NickName, UserType = user.UserType, Email = email
                        };
                        tx.Commit();

                        msg.status  = 1;
                        msg.message = CultureHelper.GetLangString("REGISETR_USERREGISTERSUCCESS"); //会员注册成功;
                        return(msg);
                    }
                }
                catch
                {
                    tx.Rollback();
                    msg.message = CultureHelper.GetLangString("REGISETR_USERREGISTERFAIL"); //会员注册失败;
                    return(msg);
                }
            }
        }
예제 #10
0
        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);
            }
        }
예제 #11
0
        /// <summary>
        /// 生成返现订单
        /// </summary>
        /// <returns></returns>
        public BackMessage GenerateList(OderModel model)
        {
            var result = new BackMessage();

            result.status = 0;
            ExceptionLogModel exceptionLogModel = new ExceptionLogModel();

            exceptionLogModel.ServiceName = "会员购物订单返现订单生成服务";
            exceptionLogModel.CreateBy    = "系统服务";
            List <OrderDetails> orderDetails = _database.Db.OrderDetails.FindAll(_database.Db.OrderDetails.OrderID == model.OrderID).ToList <OrderDetails>();
            int tuiCount = orderDetails.Count(x => x.IsReturn == 2);//是否有退款的订单明细

            //if (model.RefundFlag != 0)//存在退款
            //{
            //    orderDetails = orderDetails.FindAll(x => x.IsReturn == 3 || x.IsReturn == 0);
            //}
            //  orderDetails = orderDetails.FindAll(x => x.IsReturn == 3 || x.IsReturn == 0);
            if (orderDetails != null)
            {
                List <ZJ_RebateInfo> zj_detils = new List <ZJ_RebateInfo>();
                if (tuiCount == 0)
                {
                    foreach (OrderDetails detail in orderDetails)
                    {
                        //商品返现金额= 销售价 * 数量
                        decimal tmoney = detail.SalesPrice * detail.Quantity;
                        zj_detils.Add(FormartZJ_RebateInfo(tmoney, model, detail));
                    }
                }
                else
                {
                    List <ReturnProductInfoModel> returnList = GetReturnProductListByOrderId(model.OrderID);
                    foreach (OrderDetails detail in orderDetails)
                    {
                        // int yituiCount = returnList.Count(x => x.OrderDetailsID == detail.OrderDetailsID);
                        ReturnProductInfoModel returndetail = returnList.Where(x => x.OrderDetailsID == detail.OrderDetailsID).FirstOrDefault();
                        if (returndetail != null)
                        {
                            int num = detail.Quantity - returndetail.ReturntNumber;
                            if (num > 0)
                            {
                                decimal tmoney = detail.SalesPrice * num;                        //商品返现金额= 销售价 * 数量
                                zj_detils.Add(FormartZJ_RebateInfo(tmoney, model, detail));
                            }
                        }
                        else
                        {
                            //商品返现金额= 销售价 * 数量
                            decimal tmoney = detail.SalesPrice * detail.Quantity;
                            zj_detils.Add(FormartZJ_RebateInfo(tmoney, model, detail));
                        }
                    }
                }

                if (SetCashBackList(model, zj_detils))
                {
                    result.status = 1;
                }
            }
            else
            {
                exceptionLogModel.HandleId   = model.OrderID;
                exceptionLogModel.Status     = 1;
                exceptionLogModel.ResultType = 1;
                exceptionLogModel.Message    = string.Format("处理订单【{0}】的返现订单生成失败,获取订单详情失败", model.OrderID);
                exceptionLogService.Add(exceptionLogModel);
                _logger.Error(typeof(ZJ_RebateService), string.Format("处理订单【{0}】的返现订单生成失败,获取订单详情失败", model.OrderID));
            }
            return(result);
        }