Beispiel #1
0
        private static Order CreateOrder()
        {
            Product p1 = new Product {
                ID = 1, Description = "p2", Price = 9
            };
            Product p2 = new Product {
                ID = 2, Description = "p3", Price = 6
            };
            Order order = new VIPOrder
            {
                ID          = 4,
                Description = "Order for John Doe. Use the nice giftwrap",
                OrderLines  = new List <OrderLine>
                {
                    new OrderLine {
                        ID = 5, Amount = 1, Product = p1
                    },
                    new OrderLine {
                        ID = 6, Amount = 10, Product = p2
                    },
                }
            };

            return(order);
        }
 public static void Start()
 {
     var order     = new Order();
     var orderLine = new OrderLine();
     var product   = new Product();
     var vipOrder  = new VIPOrder();
 }
        private Order CreateOrder()
        {
            Product prod1 = new Product {
                ID = 1, Description = "p1", Price = 9
            };
            Product prod2 = new Product {
                ID = 2, Description = "p2", Price = 6
            };

            Order order = new VIPOrder
            {
                ID          = 4,
                Description = "Order for john dae,use a nice wrap",
                OrderLines  = new List <OrderLine>
                {
                    new OrderLine {
                        ID = 5, Amount = 1, Product = prod1
                    },
                    new OrderLine {
                        ID = 6, Amount = 2, Product = prod2
                    },
                }
            };

            return(order);
        }
        private static Order CreateOrder()
        {
            var p1 = new Product {ID = 1, Description = "p2", Price = 9};
            var p2 = new Product {ID = 2, Description = "p3", Price = 6};

            Order order = new VIPOrder
            {
                ID = 4,
                Description = "Order for John Doe. Use the nice giftwrap",
                OrderLines = new List<OrderLine>
                {
                    new OrderLine {ID = 5, Amount = 1, Product = p1},
                    new OrderLine {ID = 6, Amount = 10, Product = p2},
                }
            };

            return order;
        }
        private Order CreateOrder()
        {
            Product prod1 = new Product { ID = 1, Description = "p1", Price = 9 };
            Product prod2 = new Product { ID = 2, Description = "p2", Price = 6 };

            Order order = new VIPOrder
            {
                ID = 4,
                Description = "Order for john dae,use a nice wrap",
                OrderLines = new List<OrderLine>
                {
                    new OrderLine {ID=5,Amount=1,Product=prod1 },
                    new OrderLine {ID=6,Amount=2,Product=prod2 },
                }
            };

            return order;
        }
Beispiel #6
0
        public void Execute(IJobExecutionContext context)
        {
            string JobName = "OrderProfit";
            string CanRun  = ConfigurationManager.AppSettings["Run" + JobName].ToString();

            if (CanRun == "true")
            {
                if (!IsRun)
                {
                    LokFuEntity Entity = new LokFuEntity();
                    IsRun = true;
                    try
                    {
                        Log.Write(JobName + "任务开始执行!");
                        //-------------------------------------------------------
                        #region 任务主体
                        IList <Orders> List = Entity.Orders.Where(n => n.RunSplit == 1).Take(50).ToList();
                        foreach (var p in List)
                        {
                            p.RunSplit = 2;
                        }
                        Entity.SaveChanges();
                        foreach (var O in List)
                        {
                            if (O.TType == 1)//银联卡支付
                            {
                                OrderRecharge OrderRecharge = Entity.OrderRecharge.FirstOrDefault(n => n.OId == O.TNum);
                                if (OrderRecharge != null)
                                {
                                    OrderRecharge = OrderRecharge.PayAgent(Entity, 1, O.FrozenState);
                                    O.AgentPayGet = (decimal)OrderRecharge.AgentPayGet;
                                    O.AgentState  = 1;
                                }
                            }
                            if (O.TType == 2)//提现
                            {
                                OrderCash OrderCash = Entity.OrderCash.FirstOrDefault(n => n.OId == O.TNum);
                                if (OrderCash != null)
                                {
                                    OrderCash     = OrderCash.PayAgent(Entity, 1);
                                    O.AgentPayGet = (decimal)OrderCash.AgentCashGet;
                                }
                            }
                            if (O.TType == 3)//转帐
                            {
                                OrderTransfer OrderTransfer = Entity.OrderTransfer.FirstOrDefault(n => n.OId == O.TNum);
                                if (OrderTransfer != null)
                                {
                                    OrderTransfer = OrderTransfer.PayAgent(Entity, 1);
                                    O.AgentPayGet = (decimal)OrderTransfer.AgentPayGet;
                                }
                            }
                            if (O.TType == 5)//房租
                            {
                                OrderHouse OrderHouse = Entity.OrderHouse.FirstOrDefault(n => n.OId == O.TNum);
                                if (OrderHouse != null)
                                {
                                    OrderHouse    = OrderHouse.PayAgent(Entity, 1);
                                    O.AgentPayGet = (decimal)OrderHouse.AgentPayGet;
                                }
                            }
                            if (O.TType == 6)//升级
                            {
                                VIPOrder VIPOrder = Entity.VIPOrder.FirstOrDefault(n => n.TNum == O.TNum);
                                if (VIPOrder != null)
                                {
                                    VIPOrder      = VIPOrder.PayAgent(Entity, 1);
                                    O.AgentPayGet = (decimal)VIPOrder.SplitMoney;
                                    O.AgentState  = 1;
                                }
                            }
                            if (O.TType == 7 || O.TType == 8 || O.TType == 9)//扫码 NFC
                            {
                                OrderF2F OrderF2F = Entity.OrderF2F.FirstOrDefault(n => n.OId == O.TNum);
                                if (OrderF2F != null)
                                {
                                    OrderF2F      = OrderF2F.PayAgent(Entity, 1, O.FrozenState);
                                    O.AgentPayGet = (decimal)OrderF2F.AgentPayGet;
                                }
                            }
                            if (O.TType == 10)//代理自助开通
                            {
                                DaiLiOrder DaiLiOrder = Entity.DaiLiOrder.FirstOrDefault(n => n.OId == O.TNum);
                                if (DaiLiOrder != null)
                                {
                                    DaiLiOrder    = DaiLiOrder.PayAgent(Entity, 1);
                                    O.AgentPayGet = (decimal)DaiLiOrder.AgentGet;
                                    O.AgentState  = 1;
                                }
                            }

                            O.RunSplit = 3;
                            Entity.SaveChanges();
                        }
                        #endregion
                        //-------------------------------------------------------
                        Log.Write(JobName + "任务执行结束![共计" + List.Count + "条]");
                    }
                    catch (Exception Ex)
                    {
                        Log.Write(JobName + "任务执行过程出错!", Ex);
                    }
                    IsRun = false;
                }
                else
                {
                    Log.Write(JobName + "任务还在执行中!");
                }
            }
        }
Beispiel #7
0
        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("[OrderPayConfig]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            VIPOrder VIPOrder = new VIPOrder();

            VIPOrder = JsonToObject.ConvertJsonToModel(VIPOrder, json);

            UserTrack UserTrack = new UserTrack();

            UserTrack = JsonToObject.ConvertJsonToModel(UserTrack, json);
            if (VIPOrder.X.IsNullOrEmpty() || VIPOrder.Y.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            //获取用户信息
            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == VIPOrder.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;
            }
            if (baseUsers.IsVip == 1)//是VIP不能再生成
            {
                DataObj.OutError("9001");
                return;
            }

            //获取分支机构信息
            SysAgent SysAgent = new SysAgent();

            if (!baseUsers.Agent.IsNullOrEmpty())
            {
                SysAgent = Entity.SysAgent.FirstOrNew(n => n.Id == baseUsers.Agent);
            }
            VIPOrder.UId = baseUsers.Id;
            //VIPOrder.Agent = baseUsers.Agent;
            //PayConfigOrder.AId = baseUsers.AId;
            SysMoneySet SysMoneySet = Entity.SysMoneySet.FirstOrNew();

            VIPOrder.Amoney   = SysMoneySet.VipPrice;
            VIPOrder.VName    = "升级VIP";
            VIPOrder.State    = 1;
            VIPOrder.PayState = 0;
            VIPOrder.AddTime  = DateTime.Now;
            //这里是利润计算==========
            //利润舍位
            VIPOrder.SplitMoney = 0;
            VIPOrder.SplitState = 0;
            VIPOrder.Poundage   = 0;
            VIPOrder.HFGet      = 0;
            VIPOrder.PayWay     = 15;
            VIPOrder.Days       = 99999999;
            VIPOrder.UserState  = 0;
            VIPOrder.Agent      = baseUsers.Agent;
            VIPOrder.SameGet    = 0;
            //写入订单总表
            Orders Orders = new Orders();

            Orders.UId     = VIPOrder.UId;
            Orders.TName   = "VIP升级";
            Orders.PayType = 0;
            Orders.PayName = "升级VIP";

            Orders.RUId     = 0;
            Orders.RName    = string.Empty;
            Orders.TType    = 6;
            Orders.TState   = 1;
            Orders.Amoney   = VIPOrder.Amoney;
            Orders.Poundage = VIPOrder.Poundage;
            Orders.AddTime  = DateTime.Now;
            Orders.PayState = 0;
            Orders.PayWay   = 15;

            Orders.Agent      = baseUsers.Agent;
            Orders.AgentState = 0;
            Orders.AId        = baseUsers.AId;
            Orders.FId        = 0;

            string OrderAddress = VIPOrder.OrderAddress;

            if (OrderAddress.IsNullOrEmpty())
            {
                OrderAddress = Utils.GetAddressByGPS(VIPOrder.X, VIPOrder.Y);
            }
            Orders.OrderAddress = OrderAddress;
            Orders.X            = VIPOrder.X;
            Orders.Y            = VIPOrder.Y;

            Entity.Orders.AddObject(Orders);
            Entity.SaveChanges();
            Entity.Refresh(RefreshMode.StoreWins, Orders);

            VIPOrder.TNum = Orders.TNum;
            Entity.VIPOrder.AddObject(VIPOrder);
            Entity.SaveChanges();

            //=======================================
            UserTrack.ENo        = DataObj.ENo;
            UserTrack.OPType     = Orders.PayName;
            UserTrack.UserName   = Orders.TNum;
            UserTrack.GPSAddress = Orders.OrderAddress;
            UserTrack.GPSX       = Orders.X;
            UserTrack.GPSY       = Orders.Y;
            Orders.SeavGPSLog(UserTrack, Entity);
            //=======================================
            Orders.SendMsg(Entity);//发送消息类
            //=======================================
            Orders.Cols = "TNum,PayId,Amoney,PayState";
            string TNum = Orders.TNum;
            string Sign = (TNum + "NewPay").GetMD5().Substring(8, 8);

            //Orders.PayId = PayPath + "/pay/" + TNum + ".html?sign=" + Sign;
            Orders.PayId = PayPath + "/mobile/orders/GoPay.html?sign=" + Sign + "&tnum=" + TNum;
            //=======================================

            #region 走结算中心
            //获取最佳支付通道
            //IList<PayConfig> PayConfigList = Entity.PayConfig.Where(n => n.State == 1).OrderBy(n => n.Cost).ToList();
            //IList<SysControl> SysControlList = Entity.SysControl.OrderBy(n => n.Sort).ToList();//SysControl
            //IList<SysControl> SCList = new List<SysControl>();
            //IList<PayConfig> PCList = new List<PayConfig>();
            //foreach (var p in SysControlList)
            //{
            //    SysControl T = p.ChkState();
            //    if (T.State == 1)
            //    {
            //        SCList.Add(p);
            //    }
            //}
            //foreach (var p in PayConfigList)
            //{
            //    SysControl T = SCList.FirstOrDefault(n => n.PayWay == p.Id);
            //    if (T != null)
            //    {
            //        if (VIPOrder.Amoney >= (decimal)T.SNum && VIPOrder.Amoney <= (decimal)T.ENum)
            //        {
            //            PCList.Add(p);
            //        }
            //    }
            //}
            //IList<PayConfig> CashList = PCList.Where(n => n.GroupType == "Cash").OrderBy(n => n.Cost).ToList();
            //IList<PayConfig> BankList = PCList.Where(n => n.GroupType == "Bank").OrderBy(n => n.Cost).ToList();
            //IList<PayConfig> WxList = PCList.Where(n => n.GroupType == "WeiXin").OrderBy(n => n.Cost).ToList();
            //IList<PayConfig> AliList = PCList.Where(n => n.GroupType == "AliPay").OrderBy(n => n.Cost).ToList();

            //IList<PayConfig> List = new List<PayConfig>();
            //if (CashList.Count > 0)
            //{
            //    PayConfig Cash = new PayConfig();
            //    Cash.GroupType = "Cash";
            //    Cash.Name = "余额支付";
            //    Cash.State = 1;
            //    Cash.Cols = "Name,GroupType,State";
            //    List.Add(Cash);
            //}
            //if (BankList.Count > 0)
            //{
            //    PayConfig Bank = new PayConfig();
            //    Bank.GroupType = "Bank";
            //    Bank.Name = "银联支付";
            //    Bank.State = 1;
            //    Bank.Cols = "Name,GroupType,State";
            //    List.Add(Bank);
            //}
            //if (WxList.Count > 0)
            //{
            //    PayConfig Wx = new PayConfig();
            //    Wx.GroupType = "WeiXin";
            //    Wx.Name = "微信支付";
            //    Wx.State = 0;
            //    Wx.Cols = "Name,GroupType,State";
            //    List.Add(Wx);
            //}
            //if (AliList.Count > 0)
            //{
            //    PayConfig Ali = new PayConfig();
            //    Ali.GroupType = "AliPay";
            //    Ali.Name = "支付宝支付";
            //    Ali.State = 1;
            //    Ali.Cols = "Name,GroupType,State";
            //    List.Add(Ali);
            //}
            //string PCString = List.EntityToJson();
            //JArray PCJson = (JArray)JsonConvert.DeserializeObject(PCString);
            //Orders.PayConfig = PCJson;

            //Orders.Cols += ",PayConfig";
            #endregion
            //Orders.paycon
            DataObj.Data = Orders.OutJson();
            DataObj.Code = "0000";
            DataObj.OutString();
        }