예제 #1
0
 async void InsertOrderItems(Order order)
 {
     foreach (var item in order.OIs)
     {
         if (item.Order == null)
         {
             item.Order = order;
             Order_Item.InsertData(item);
         }
         else
         {
             Order_Item.UpdateData(item);
         }
     }
     foreach (var item in DeletedItems)
     {
         if (item.Order != null)
         {
             Order_Item.DeleteData(item);
         }
     }
     await Dispatcher.BeginInvoke(new Action(() =>
     {
         PrintOrder(order);
     }), System.Windows.Threading.DispatcherPriority.Normal);
 }
예제 #2
0
        private void btnSave_Click(object sender, RoutedEventArgs e)
        {
            var order = this.DataContext as Order;

            if (order.IsValidateMainOrderData() && order.IsValidateOrderItemsData())
            {
                try
                {
                    if (order.Type == 5)
                    {
                        if (cmboInventory2.SelectedValue == null || int.Parse(cmboInventory2.SelectedValue.ToString()) == order.InventoryID)
                        {
                            MyMessageBox.Show("يجب اختيار المستودع المراد نقل المواد اليه ويجب ان يكون مختلفا عن المستودع الاساسي");
                            return;
                        }
                    }
                    if (order.Id == null)
                    {
                        if (Order.InsertData(order))
                        {
                            if (MyMessageBox.Show("هل تريد طباعة وصل", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
                            {
                                PrintTicket.printReportA6(order);
                            }
                            MyMessage.InsertMessage();
                        }
                    }
                    else
                    {
                        if (Order.UpdateData(order))
                        {
                            MyMessage.UpdateMessage();
                        }
                    }
                    foreach (var item in order.OIs)
                    {
                        if (item.Order == null)
                        {
                            item.Order = order;
                            Order_Item.InsertData(item);
                        }
                        else
                        {
                            Order_Item.UpdateData(item);
                        }
                    }
                    foreach (var item in DeletedItems)
                    {
                        if (item.Order != null)
                        {
                            Order_Item.DeleteData(item);
                        }
                    }
                    DialogResult = true;
                }
                catch (Exception ex) { MyMessageBox.Show(ex.Message); }
            }
        }
예제 #3
0
파일: Order.cs 프로젝트: mustafashaban/Rawd
        public static bool InsertData(Order x, bool InsertOrderItems = false)
        {
            x.LastUserID = BaseDataBase.CurrentUser.ID.Value;
            x.Id         = BaseDataBase._StoredProcedureReturnable("sp_Add_Order"
                                                                   , new SqlParameter("@Id", System.Data.SqlDbType.Int)
                                                                   , new SqlParameter("@InventoryID", x.InventoryID)
                                                                   , new SqlParameter("@FamilyID", x.FamilyID)
                                                                   , new SqlParameter("@OrphanID", x.OrphanID)
                                                                   , new SqlParameter("@SpecialFamilyID", x.SpecialFamilyID)
                                                                   , new SqlParameter("@Type", x.Type)
                                                                   , new SqlParameter("@Date", x.Date)
                                                                   , new SqlParameter("@NextOrderDate", x.NextOrderDate)
                                                                   , new SqlParameter("@Description", x.Description)
                                                                   , new SqlParameter("@Source", x.Source)
                                                                   , new SqlParameter("@InvoiceSerial", x.InvoiceSerial)
                                                                   , new SqlParameter("@Notes", x.Notes)
                                                                   , new SqlParameter("@LastUserID", x.LastUserID));

            if (InsertOrderItems)
            {
                foreach (var item in x.OIs)
                {
                    item.Order = x;
                    Order_Item.InsertData(item);
                }
            }
            x.OrderCode = int.Parse(BaseDataBase._Scalar($"select OrderCode from [Order] where Id = {x.Id}"));
            x.BarCode   = BaseDataBase._Scalar($"select BarCode from [Order] where Id = {x.Id}");
            //if (x.Id.HasValue)
            //{
            //    foreach (var item in x.FamilyNeeds)
            //    {
            //        if (item.IsEnsured)
            //            item.OrderID = x.Id;
            //        else item.OrderID = null;
            //        FamilyNeed_ListerGroup.UpdateData(item);
            //    }
            //}
            return(x.Id.HasValue);
        }