コード例 #1
0
        static void ExportCustomer(int OldId)
        {
            var existsClients = AlohaFly.DBProvider.Client.GetOrderCustomerList().Result;
            var cls           = db.Client;
            //var clsList = new List<OrderCustomer>();
            var cl = db.Client.SingleOrDefault(a => a.ID == OldId);

            if (existsClients.Any(a => a.OldId == cl.ID))
            {
                return;
            }
            var orderCustomer = new OrderCustomer();

            orderCustomer.OldId           = cl.ID;
            orderCustomer.Name            = cl.Name;
            orderCustomer.SecondName      = cl.FamilyName;
            orderCustomer.IsActive        = true;
            orderCustomer.Comments        = cl.Comment;
            orderCustomer.DiscountPercent = 0;
            orderCustomer.Email           = cl.Email;

            orderCustomer.Phones = new List <OrderCustomerPhone>();
            foreach (var tel in db.Tel.Where(a => a.ID == cl.ID))
            {
                OrderCustomerPhone ph = new OrderCustomerPhone()
                {
                    IsActive  = tel.Active,
                    IsPrimary = (tel.ID == db.Tel.Where(a => a.ID == cl.ID).Select(a => a.ID).Max()),
                    Phone     = tel.Number
                };
                orderCustomer.Phones.Add(ph);
            }
            orderCustomer.Addresses = new List <OrderCustomerAddress>();
            {
                foreach (var addr in db.Address.Where(a => a.ID == cl.ID))
                {
                    OrderCustomerAddress ph = new OrderCustomerAddress()
                    {
                        IsActive  = addr.Active.GetValueOrDefault(true),
                        IsPrimary = (addr.ID == db.Address.Where(a => a.ID == cl.ID).Select(a => a.ID).Max()),
                        Address   = addr.Address1,
                        Comment   = addr.Comment,
                        MapUrl    = addr.MapURL,
                        SubWay    = addr.Subway,
                        ZoneId    = addr.Zone.GetValueOrDefault(1),
                        OldId     = addr.ID
                    };
                    orderCustomer.Addresses.Add(ph);
                }
            }
            //clsList.Add(orderCustomer);
            var res = AlohaFly.DBProvider.Client.CreateOrderCustomer(orderCustomer);

            if (!res.Success)
            {
                string err = res.ErrorMessage;
            }
        }
コード例 #2
0
 public ShowMapViewModel(OrderCustomerAddress _orderCustomerAddress)
 {
     if (_orderCustomerAddress == null)
     {
         _orderCustomerAddress = new OrderCustomerAddress();
     }
     ;
     orderCustomerAddress = _orderCustomerAddress;
     Address = orderCustomerAddress.Address;
     NavigateToAddress();
 }
コード例 #3
0
 public static bool AddressEquals(this OrderCustomerAddress orig, OrderCustomerAddress phone)
 {
     if (phone == null)
     {
         return(false);
     }
     return((orig.IsActive == phone.IsActive) &&
            (orig.IsPrimary == phone.IsPrimary) &&
            (orig.MapUrl == phone.MapUrl) &&
            (orig.SubWay == phone.SubWay) &&
            (orig.Address == phone.Address) &&
            (orig.ZoneId == phone.ZoneId));
 }
コード例 #4
0
        //private static WndShowMap mapWnd = new WndShowMap();
        public static void ShowWndMap(OrderCustomerAddress address)
        {
            try
            {
                logger.Debug("ShowWndMap");


                System.Windows.Application.Current.Dispatcher.Invoke(() =>
                {
                    var model = new ShowMapViewModel(address);

                    WndShowMap mapWnd = new WndShowMap
                    {
                        DataContext = model
                    };

                    ShowDialogWnd(mapWnd);
                });
            }
            catch (Exception e)
            {
                logger.Error($"ShowWndChangeOrderStatus {e.Message}");
            }
        }
コード例 #5
0
 public void SetPrimaryAddress(OrderCustomerAddress value)
 {
     PrimaryAddress = value;
 }
コード例 #6
0
        static void ExportCustomersPhones()
        {
            _logger.Debug("ExportCustomersPhones ");
            try
            {
                DateTime dtstart = new DateTime(2019, 01, 01);
                //var existsD = AlohaFly.DBProvider.Client.GetDishList().Result.Where(a => a.IsToGo);
                var oldOrdersCustIds = db.Orders.Where(a => a.DateDelivery >= dtstart).Select(a => a.ClientID).ToList();

                var existsClients = AlohaFly.DBProvider.Client.GetOrderCustomerList().Result;



                var cls     = db.Client.Where(a => oldOrdersCustIds.Contains(a.ID));
                var clsList = new List <OrderCustomer>();



                List <OrderCustomerAddress> addresses = new List <OrderCustomerAddress>();
                foreach (var addrList in existsClients.Select(a => a.Addresses))
                {
                    addresses.AddRange(addrList);
                }

                List <OrderCustomerPhone> tels = new List <OrderCustomerPhone>();
                foreach (var phones in existsClients.Select(a => a.Phones))
                {
                    tels.AddRange(phones);
                }

                foreach (var cl in cls)
                {
                    try
                    {
                        //orderCustomer.Addresses = new List<OrderCustomerAddress>();
                        {
                            foreach (var addr in db.Address.Where(a => a.ClientID == cl.ID))
                            {
                                if (!addresses.Any(a => a.OldId == addr.ID))
                                {
                                    OrderCustomerAddress ph = new OrderCustomerAddress()
                                    {
                                        IsActive        = addr.Active.GetValueOrDefault(true),
                                        IsPrimary       = (addr.ID == db.Address.Where(a => a.ClientID == cl.ID).Select(a => a.ID).Max()),
                                        Address         = addr.Address1,
                                        Comment         = addr.Comment,
                                        MapUrl          = addr.MapURL,
                                        SubWay          = addr.Subway,
                                        ZoneId          = addr.Zone.GetValueOrDefault(1),
                                        OldId           = addr.ID,
                                        OrderCustomerId = existsClients.FirstOrDefault(a => a.OldId == cl.ID).Id,
                                    };
                                    var res = AlohaFly.DBProvider.Client.CreateOrderCustomerAddress(ph);
                                    _logger.Debug("Add address addr.ID");
                                    if (!res.Success)
                                    {
                                        string err = res.ErrorMessage;
                                    }
                                }
                            }
                        }

                        // if (existsClients.Any(a => a.OldId == cl.ID)) { continue; }

                        /*
                         * var orderCustomer = new OrderCustomer();
                         * orderCustomer.OldId = cl.ID;
                         * orderCustomer.Name = cl.Name;
                         * orderCustomer.SecondName = cl.FamilyName;
                         * orderCustomer.IsActive = true;
                         * orderCustomer.Comments = cl.Comment;
                         * orderCustomer.DiscountPercent = 0;
                         * orderCustomer.Email = cl.Email;
                         *
                         * orderCustomer.Phones = new List<OrderCustomerPhone>();
                         * foreach (var tel in db.Tel.Where(a => a.ClientID == cl.ID))
                         * {
                         *   OrderCustomerPhone ph = new OrderCustomerPhone()
                         *   {
                         *       IsActive = tel.Active,
                         *       IsPrimary = (tel.ID == db.Tel.Where(a => a.ClientID == cl.ID).Select(a => a.ID).Max()),
                         *       Phone = tel.Number
                         *
                         *   };
                         *   orderCustomer.Phones.Add(ph);
                         * }
                         * orderCustomer.Addresses = new List<OrderCustomerAddress>();
                         * {
                         *   foreach (var addr in db.Address.Where(a => a.ClientID == cl.ID))
                         *   {
                         *       OrderCustomerAddress ph = new OrderCustomerAddress()
                         *       {
                         *           IsActive = addr.Active.GetValueOrDefault(true),
                         *           IsPrimary = (addr.ID == db.Address.Where(a => a.ClientID == cl.ID).Select(a => a.ID).Max()),
                         *           Address = addr.Address1,
                         *           Comment = addr.Comment,
                         *           MapUrl = addr.MapURL,
                         *           SubWay = addr.Subway,
                         *           ZoneId = addr.Zone.GetValueOrDefault(1),
                         *           OldId = addr.ID
                         *
                         *       };
                         *       orderCustomer.Addresses.Add(ph);
                         *   }
                         * }
                         * //clsList.Add(orderCustomer);
                         * var res = AlohaFly.DBProvider.Client.CreateOrderCustomer(orderCustomer);
                         * if (!res.Success)
                         * {
                         *   string err = res.ErrorMessage;
                         * }
                         *
                         */
                    }
                    catch (Exception e)
                    {
                        _logger.Debug("error  ExportCustomersPhones " + e.Message);
                    }
                }
            }
            catch (Exception exc)
            {
                _logger.Debug("Error2  ExportCustomersPhones " + exc.Message);
            }
        }
コード例 #7
0
        static void ExportCustomers()
        {
            _logger.Debug("ExportCustomers ");
            try
            {
                DateTime dtstart = new DateTime(2019, 01, 01);
                //var existsD = AlohaFly.DBProvider.Client.GetDishList().Result.Where(a => a.IsToGo);
                var oldOrdersCustIds = db.Orders.Where(a => a.DateDelivery >= dtstart).Select(a => a.ClientID).ToList();

                var existsClients = AlohaFly.DBProvider.Client.GetOrderCustomerList().Result;
                var cls           = db.Client.Where(a => oldOrdersCustIds.Contains(a.ID));
                var clsList       = new List <OrderCustomer>();
                foreach (var cl in cls)
                {
                    try
                    {
                        if (existsClients.Any(a => a.OldId == cl.ID))
                        {
                            continue;
                        }
                        var orderCustomer = new OrderCustomer();
                        orderCustomer.OldId           = cl.ID;
                        orderCustomer.Name            = cl.Name;
                        orderCustomer.SecondName      = cl.FamilyName;
                        orderCustomer.IsActive        = true;
                        orderCustomer.Comments        = cl.Comment;
                        orderCustomer.DiscountPercent = 0;
                        orderCustomer.Email           = cl.Email;

                        orderCustomer.Phones = new List <OrderCustomerPhone>();
                        foreach (var tel in db.Tel.Where(a => a.ClientID == cl.ID))
                        {
                            OrderCustomerPhone ph = new OrderCustomerPhone()
                            {
                                IsActive  = tel.Active,
                                IsPrimary = (tel.ID == db.Tel.Where(a => a.ClientID == cl.ID).Select(a => a.ID).Max()),
                                Phone     = tel.Number
                            };
                            orderCustomer.Phones.Add(ph);
                        }
                        orderCustomer.Addresses = new List <OrderCustomerAddress>();
                        {
                            foreach (var addr in db.Address.Where(a => a.ClientID == cl.ID))
                            {
                                OrderCustomerAddress ph = new OrderCustomerAddress()
                                {
                                    IsActive  = addr.Active.GetValueOrDefault(true),
                                    IsPrimary = (addr.ID == db.Address.Where(a => a.ClientID == cl.ID).Select(a => a.ID).Max()),
                                    Address   = addr.Address1,
                                    Comment   = addr.Comment,
                                    MapUrl    = addr.MapURL,
                                    SubWay    = addr.Subway,
                                    ZoneId    = addr.Zone.GetValueOrDefault(1),
                                    OldId     = addr.ID
                                };
                                orderCustomer.Addresses.Add(ph);
                            }
                        }
                        //clsList.Add(orderCustomer);
                        var res = AlohaFly.DBProvider.Client.CreateOrderCustomer(orderCustomer);
                        if (!res.Success)
                        {
                            string err = res.ErrorMessage;
                        }
                    }
                    catch (Exception e)
                    {
                        _logger.Debug("error  ExportCustomers " + e.Message);
                    }
                }
            }
            catch (Exception exc)
            {
                _logger.Debug("Error2  ExportCustomers " + exc.Message);
            }
        }