//public ActionResult OrderProfitLogList(string orderNum)
        //{
        //    if (!orderNum.IsNullOrEmpty())
        //    {
        //        Orders Orders = Entity.Orders.FirstOrDefault(n => n.TNum == orderNum );
        //        if (Orders == null)
        //        {
        //            ViewBag.ErrorMsg = "查询的交易不存在";
        //            return View("Error");
        //        }
        //        /*
        //         * 订单号=订单号 并且 所属id==我的代理id 或者 记录类型==用户
        //         * 结果:代理只能看到自己的利润和用户的利润
        //         */
        //        List<OrderProfitLog> OrderProfitLogs = new List<OrderProfitLog>();
        //        if (Orders.Agent == this.BasicAgent.Id)
        //        {
        //            OrderProfitLogs = Entity.OrderProfitLog.Where(o => o.TNum == orderNum && (o.Agent == this.BasicAgent.Id || o.LogType == 1)).OrderBy(o => o.AddTime).ToList();
        //        }
        //        else
        //        {
        //            OrderProfitLogs = Entity.OrderProfitLog.Where(o => o.TNum == orderNum && o.Agent == this.BasicAgent.Id).OrderBy(o => o.AddTime).ToList();
        //        }
        //        var GroupByIds = OrderProfitLogs.GroupBy(o => o.LogType, o => o.UId).ToArray();
        //        List<Users> users = null;
        //        foreach (var item in GroupByIds)
        //        {
        //            switch (item.Key)
        //            {
        //                case 1:
        //                    users = Entity.Users.Where(o => item.Contains(o.Id)).ToList();
        //                    break;
        //            }
        //        }
        //        foreach (var item in OrderProfitLogs)
        //        {
        //            switch (item.LogType)
        //            {
        //                case 1:
        //                    item.users = users.FirstOrDefault(o => o.Id == item.UId);
        //                    break;
        //            }
        //        }
        //        this.ViewBag.OrderProfitLogs = OrderProfitLogs;
        //    }
        //    return this.View();
        //}

        public ActionResult IndexOrdersDDLog(OrdersDDLog OrdersDDLog)
        {
            List <OrdersDDLog> OrdersDDLogList = null;

            if (!OrdersDDLog.TNum.IsNullOrEmpty())
            {
                OrdersDDLogList = this.Entity.OrdersDDLog.Where(o => o.TNum == OrdersDDLog.TNum).OrderByDescending(o => o.AddTime).ToList();
            }
            ViewBag.Orders = Entity.Orders.FirstOrDefault(o => o.TNum == OrdersDDLog.TNum);
            this.ViewBag.OrdersDDLogList = OrdersDDLogList;
            return(View());
        }
        public ActionResult Add(Orders Orders, List <string> Contract)
        {
            if (Contract == null || Orders.DDUserRm.IsNullOrEmpty())
            {
                ViewBag.ErrorMsg = "请填写相关数据";
                return(View("Error"));
            }
            if (Orders.CardUpType == 2)
            {
                if (this.BasicAgent.Tier != 1)
                {
                    ViewBag.ErrorMsg = "只有一级代理商才能操作";
                    return(View("Error"));
                }
            }
            string pic = "pic000";

            foreach (var info in Contract)
            {
                pic = pic + "," + info;
            }
            pic = pic.Replace("pic000,", "");
            Orders.UserCardPic = pic;
            Orders baseOrders = null;

            if (this.BasicAgent.Tier == 1)
            {
                baseOrders = Entity.Orders.FirstOrDefault(n => n.Id == Orders.Id);
            }
            else
            {
                baseOrders = Entity.Orders.FirstOrDefault(n => n.Id == Orders.Id && n.Agent == this.BasicAgent.Id);
            }

            if (baseOrders.IdCardState == 1 || baseOrders.IdCardState == 4)
            {
                Orders = Request.ConvertRequestToModel <Orders>(Orders, Orders);
                if (Orders.UserCardPic == "System.Web.HttpPostedFileWrapper" || Orders.UserCardPic == null)
                {
                    ViewBag.ErrorMsg = "文件类型错误";
                    return(View("Error"));
                }
                baseOrders.UserCardPic    = Orders.UserCardPic;
                baseOrders.BankCardId     = Orders.BankCardId;
                baseOrders.UserCardId     = Orders.UserCardId;
                baseOrders.IdCardState    = 2;
                baseOrders.CardUpType     = Orders.CardUpType;
                baseOrders.DDUserRm       = Orders.DDUserRm;
                baseOrders.CardUpdateTime = DateTime.Now;
                if (baseOrders.TState == 3)
                {
                    baseOrders.TState = 1;
                }
                //调单日志
                var OrdersDDLog = new OrdersDDLog()
                {
                    AddTime  = DateTime.Now,
                    LastTime = baseOrders.DDLastTime,
                    LogType  = 2,
                    OpName   = this.AdminUser.TrueName,
                    Remark   = baseOrders.DDUserRm,
                    TNum     = baseOrders.TNum,
                    Img      = baseOrders.UserCardPic,
                };
                this.Entity.OrdersDDLog.AddObject(OrdersDDLog);
                Entity.SaveChanges();
                baseOrders.SendMsg(Entity);
            }
            return(this.View("ReloadFrame"));
            //BaseRedirect();
        }
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[OrdersPicController]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }

            Orders Orders = new Orders();

            Orders = JsonToObject.ConvertJsonToModel(Orders, json);

            if (Orders.BankCardId.IsNullOrEmpty() || Orders.UserCardId.IsNullOrEmpty() || Orders.UserCardPic.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }

            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == Orders.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                DataObj.OutError("2006");
                return;
            }
            if (baseUsers.MiBao != 1)//未设置支付密码
            {
                DataObj.OutError("2008");
                return;
            }

            Orders baseOrders = Entity.Orders.FirstOrDefault(n => n.TNum == Orders.TNum && n.UId == baseUsers.Id);

            if (baseOrders == null)//不存在
            {
                DataObj.OutError("1001");
                return;
            }
            if (baseOrders.IdCardState == 0)
            {
                DataObj.OutError("6041");
                return;
            }
            if (baseOrders.IdCardState == 2)
            {
                DataObj.OutError("6042");
                return;
            }
            if (baseOrders.IdCardState == 3)
            {
                DataObj.OutError("6043");
                return;
            }

            bool IsOld = true;

            #region 版本比较
            //处理贴牌相关
            var SysAgent = this.Entity.SysAgent.FirstOrDefault(o => o.Id == baseUsers.Agent);
            if (SysAgent == null)
            {
                DataObj.OutError("1000");
                return;
            }
            var topSysAgent = SysAgent.GetTopAgent(this.Entity);

            if (!Equipment.SoftVer.IsNullOrEmpty())
            {
                Version v1 = new Version(Equipment.SoftVer);//当前版本
                Version v2 = new Version("1.0");

                if (Equipment.RqType.ToLower() == "apple")
                {
                    //苹果
                    if (topSysAgent.IsTeiPai == 0)//好付
                    {
                        v2 = new Version("8.0");
                    }
                    else//贴牌
                    {
                        v2 = new Version("6.0");
                    }
                }
                else if (Equipment.RqType.ToLower() == "android")
                {
                    //安卓
                    if (topSysAgent.IsTeiPai == 0)//好付
                    {
                        v2 = new Version("8.0.0");
                    }
                    else //贴牌
                    {
                        v2 = new Version("6.0");
                    }
                }
                if (v1 >= v2)
                {
                    IsOld = false;
                }
            }
            #endregion

            if (!IsOld)//新版
            {
                baseOrders.UserCardPic  = Orders.UserCardPic;
                baseOrders.UserCardName = Orders.UserCardName;
            }
            else
            {
                baseOrders.UserCardPic = Utils.Base64StringToImage(Orders.UserCardPic, "Orders");
            }

            baseOrders.BankCardId     = Orders.BankCardId;
            baseOrders.UserCardId     = Orders.UserCardId;
            baseOrders.IdCardState    = 2;
            baseOrders.CardUpType     = 0;
            baseOrders.CardUpdateTime = DateTime.Now;
            if (baseOrders.TState == 3)
            {
                baseOrders.TState = 1;
            }

            //调单记录日志
            OrdersDDLog OrdersDDLog = new OrdersDDLog()
            {
                AddTime        = DateTime.Now,
                LastTime       = null,
                LogType        = 2,
                OpName         = baseUsers.TrueName,
                Remark         = string.Empty,
                TNum           = baseOrders.TNum,
                InteriorRemark = string.Empty,
                Img            = baseOrders.UserCardPic ?? string.Empty,
            };
            Entity.OrdersDDLog.AddObject(OrdersDDLog);

            Entity.SaveChanges();

            baseOrders.SendMsg(Entity);

            baseOrders.Cols += ",Json,PicList,UserCardName,CardUpdateTime";
            if (!baseOrders.UserCardPic.IsNullOrEmpty())
            {
                var UserCardPicList = baseOrders.UserCardPic.Split(',').ToList();
                for (int i = 0; i < UserCardPicList.Count; i++)
                {
                    var a = Utils.ImageUrl("Orders", UserCardPicList[i], AppImgPath);
                    UserCardPicList[i] = a;
                }
                JavaScriptSerializer JSS = new JavaScriptSerializer();
                string data = JSS.Serialize(UserCardPicList);
                JArray JO   = (JArray)JsonConvert.DeserializeObject(data);
                baseOrders.PicList = JO;
            }

            DataObj.Data = baseOrders.OutJson();
            DataObj.Code = "0000";
            DataObj.OutString();
        }