public void CancelSave(OrderCash OrderCash)
        {
            OrderCash.Remark = OrderCash.Remark.IsNullOrEmpty() ? string.Empty : OrderCash.Remark;
            OrderCash baseOrderCash = Entity.OrderCash.FirstOrDefault(n => n.Id == OrderCash.Id);

            if (baseOrderCash.OrderState == 2 && ((baseOrderCash.PayState == 1 && baseOrderCash.FState == 0) || (baseOrderCash.PayState == 2 && baseOrderCash.FState == 1)))
            {
                baseOrderCash.PayState = 3;
                baseOrderCash.Remark   = OrderCash.Remark;
                Orders Orders = Entity.Orders.FirstOrDefault(n => n.TNum == baseOrderCash.OId);
                Orders.PayState = 3;
                Orders.Remark   = OrderCash.Remark;

                var OrderCashLog = new OrderCashLog()
                {
                    AddTime   = DateTime.Now,
                    AdminId   = this.AdminUser.Id,
                    AdminName = this.AdminUser.TrueName,
                    TNum      = baseOrderCash.OId,
                    Remark    = baseOrderCash.Remark,
                    LogType   = 2,
                };
                this.Entity.OrderCashLog.AddObject(OrderCashLog);

                Entity.SaveChanges();
                Orders.SendMsg(Entity);//发送消息类
            }
            BaseRedirect();
        }
        public void SaveEdit(OrderCash OrderCash)
        {
            OrderCash baseOrderCash = Entity.OrderCash.FirstOrDefault(n => n.Id == OrderCash.Id);
            Orders    Orders        = Entity.Orders.FirstOrDefault(n => n.TNum == baseOrderCash.OId);

            if (baseOrderCash.OrderState == 2 && baseOrderCash.PayState == 3)
            {
                baseOrderCash.PayState = 2;
                baseOrderCash.FState   = 1;
                baseOrderCash.FTime    = DateTime.Now;
                Orders.PayState        = 2;
                Entity.SaveChanges();
                //======分润======
                baseOrderCash      = baseOrderCash.PayAgent(Entity, 1);
                Orders.AgentPayGet = (decimal)baseOrderCash.AgentCashGet;

                var OrderCashLog = new OrderCashLog()
                {
                    AddTime   = DateTime.Now,
                    AdminId   = this.AdminUser.Id,
                    AdminName = this.AdminUser.TrueName,
                    TNum      = baseOrderCash.OId,
                    Remark    = string.Empty,
                    LogType   = 4,
                };
                this.Entity.OrderCashLog.AddObject(OrderCashLog);

                Entity.SaveChanges();
                Orders.SendMsg(Entity);//发送消息类
            }
            BaseRedirect();
        }
        public void Save(OrderCash OrderCash)
        {
            OrderCash baseOrderCash = Entity.OrderCash.FirstOrDefault(n => n.Id == OrderCash.Id);
            Orders    Orders        = Entity.Orders.FirstOrDefault(n => n.TNum == baseOrderCash.OId);
            var       OrderCashLog  = new OrderCashLog()
            {
                AddTime   = DateTime.Now,
                AdminId   = this.AdminUser.Id,
                AdminName = this.AdminUser.TrueName,
                TNum      = baseOrderCash.OId,
                Remark    = string.Empty,
                LogType   = 1,
            };

            this.Entity.OrderCashLog.AddObject(OrderCashLog);
            Entity.SaveChanges();
            if (BasicSet.CashPayWay == 1)//开启自动结算时执行
            {
                //自动出款
                baseOrderCash.PayCash(Orders, Entity);//去付款
            }
            else
            {
                if (baseOrderCash.OrderState == 2 && baseOrderCash.PayState == 1 && baseOrderCash.FState == 0)
                {
                    baseOrderCash.PayState = 2;
                    baseOrderCash.FState   = 1;
                    baseOrderCash.FTime    = DateTime.Now;
                    Orders.PayState        = 2;
                    Entity.SaveChanges();
                    //======分润======
                    baseOrderCash      = baseOrderCash.PayAgent(Entity, 1);
                    Orders.AgentPayGet = (decimal)baseOrderCash.AgentCashGet;
                    Entity.SaveChanges();
                }
            }
            Orders.SendMsg(Entity);//发送消息类
            BaseRedirect();
        }
        public ActionResult Save(OrderCash OrderCash)
        {
            OrderCash baseOrderCash = Entity.OrderCash.FirstOrDefault(n => n.Id == OrderCash.Id);
            string    tnum          = "TK" + baseOrderCash.OId;

            if (!this.GetRuningState(tnum))
            {
                this.SetRuningState(tnum);
                try
                {
                    OrdersPayOnly OPO = new OrdersPayOnly();
                    OPO.TNum    = tnum;
                    OPO.AddTime = DateTime.Now;
                    Entity.OrdersPayOnly.AddObject(OPO);
                    Entity.SaveChanges();
                }
                catch (Exception)
                {
                    ViewBag.ErrorMsg = "重复入帐!";
                    return(View("Error"));
                }
                //return null;
                if (baseOrderCash.OrderState == 2 && baseOrderCash.PayState == 3)
                {
                    var OrderCashLog = new OrderCashLog()
                    {
                        AddTime   = DateTime.Now,
                        AdminId   = this.AdminUser.Id,
                        AdminName = this.AdminUser.TrueName,
                        TNum      = baseOrderCash.OId,
                        Remark    = string.Empty,
                        LogType   = 3,
                    };
                    this.Entity.OrderCashLog.AddObject(OrderCashLog);
                    baseOrderCash.RefundTime = DateTime.Now;
                    baseOrderCash.PayState   = 4;
                    Orders Orders = Entity.Orders.FirstOrDefault(n => n.TNum == baseOrderCash.OId);
                    Orders.PayState = 4;
                    //退款到余额
                    Users baseUsers = Entity.Users.FirstOrDefault(n => n.Id == baseOrderCash.UId);
                    //帐户变动记录
                    int     USERSID  = baseUsers.Id;
                    string  TNUM     = Orders.TNum;
                    decimal PAYMONEY = baseOrderCash.Amoney;
                    string  SP_Ret   = Entity.SP_UsersMoney(USERSID, TNUM, PAYMONEY, 6, "");
                    if (SP_Ret != "3")
                    {
                        Utils.WriteLog(string.Format("U{0},O{1},T{2}:{3}【{4}】", USERSID, TNUM, 6, PAYMONEY, SP_Ret), "SP_UsersMoney");
                    }
                    //======分润======
                    baseOrderCash      = baseOrderCash.PayAgent(Entity, 2);
                    Orders.AgentPayGet = (decimal)baseOrderCash.AgentCashGet;
                    Entity.SaveChanges();
                    Orders.SendMsg(Entity);//发送消息类
                    //T0时增加配额
                    if (baseOrderCash.TrunType == 0)
                    {
                        decimal     Money       = baseOrderCash.Amoney - (decimal)baseOrderCash.UserRate;
                        DateTime    Today       = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                        TaskTimeSet TaskTimeSet = Entity.TaskTimeSet.FirstOrDefault(n => n.ODate == Today);
                        if (TaskTimeSet != null)
                        {
                            if (TaskTimeSet.UsedMoney >= Money)
                            {
                                TaskTimeSet.UsedMoney -= Money;
                            }
                            else
                            {
                                TaskTimeSet.UsedMoney = 0;
                            }
                            Entity.SaveChanges();
                        }
                    }
                }
                BaseRedirect();
            }
            return(null);
        }