Example #1
0
        private void sbxItemevent_Select(object sender, RoutedEventArgs e)
        {
            if (sbxItemevent.ItemID > 0)
            {
                if (project_costingViewSource != null)
                {
                    project_event project_event = project_costingViewSource.View.CurrentItem as project_event;

                    item item = EventDB.items.Where(x => x.id_item == sbxItemevent.ItemID).FirstOrDefault();


                    project_event_fixed services_per_event_details = new project_event_fixed();
                    services_per_event_details.is_included = true;
                    services_per_event_details.item        = item;
                    services_per_event_details.id_item     = item.id_item;
                    if (item.item_tag_detail.Count() > 0)
                    {
                        if (item.item_tag_detail.FirstOrDefault().item_tag != null)
                        {
                            services_per_event_details.item_tag = item.item_tag_detail.FirstOrDefault().item_tag;
                            services_per_event_details.id_tag   = item.item_tag_detail.FirstOrDefault().item_tag.id_tag;
                        }
                    }
                    services_per_event_details.consumption = 1;

                    services_per_event_details.is_included = false;
                    project_event.project_event_fixed.Add(services_per_event_details);
                }
                project_costingservices_per_event_detailsViewSource.View.Refresh();
                toolBar_btnSave_Click(sender);
                toolBar_btnEdit_Click(sender);
                EstimateCost();
            }
        }
Example #2
0
 private void sbxContact_Select(object sender, RoutedEventArgs e)
 {
     if (sbxContact.ContactID > 0)
     {
         project_event project_event = project_costingViewSource.View.CurrentItem as project_event;
         contact       contact       = EventDB.contacts.Where(x => x.id_contact == sbxContact.ContactID).FirstOrDefault();
         project_event.id_contact = contact.id_contact;
         get_ActiveRateXContact(ref contact);
     }
 }
Example #3
0
 private void toolBar_btnEdit_Click(object sender)
 {
     if (project_costingDataGrid.SelectedItem != null)
     {
         project_event project_costing = (project_event)project_costingDataGrid.SelectedItem;
         project_costing.IsSelected           = true;
         project_costing.State                = EntityState.Modified;
         EventDB.Entry(project_costing).State = EntityState.Modified;
     }
     else
     {
         toolBar.msgWarning("Please Select an Item");
     }
 }
Example #4
0
        private void toolBar_btnNew_Click(object sender)
        {
            project_event project_costing = new project_event();

            project_costing.IsSelected           = true;
            project_costing.State                = EntityState.Added;
            project_costing.status               = Status.Documents_General.Pending;
            EventDB.Entry(project_costing).State = EntityState.Added;

            EventDB.project_event.Add(project_costing);
            project_costingViewSource.View.Refresh();
            project_costingViewSource.View.MoveCurrentToLast();
            EstimateCost();
        }
Example #5
0
        private void project_costingDataGrid_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            project_event project_event = project_costingViewSource.View.CurrentItem as project_event;

            if (project_event != null)
            {
                if (project_event.id_contact != null)
                {
                    sbxContact.ContactID = (int)project_event.id_contact;
                    if (project_costingproject_event_template_variable_detailsViewSource != null && project_costingservices_per_event_detailsViewSource != null)
                    {
                        if (project_costingproject_event_template_variable_detailsViewSource.View != null && project_costingservices_per_event_detailsViewSource.View != null)
                        {
                            GetServices(sender, null);
                        }
                    }
                }
            }
        }
Example #6
0
        private void item_Select(object sender, RoutedEventArgs e)
        {
            if (sbxItem.ItemID > 0)
            {
                if (project_costingViewSource != null)
                {
                    project_event project_event = project_costingViewSource.View.CurrentItem as project_event;

                    item item = EventDB.items.Where(x => x.id_item == sbxItem.ItemID).FirstOrDefault();
                    project_event_variable project_event_variable = new project_event_variable();
                    project_event_variable.is_included = true;
                    project_event_variable.item        = item;
                    project_event_variable.id_item     = item.id_item;

                    if (item.item_tag_detail.Count() > 0)
                    {
                        if (item.item_tag_detail.FirstOrDefault().item_tag != null)
                        {
                            project_event_variable.item_tag = item.item_tag_detail.FirstOrDefault().item_tag;
                            project_event_variable.id_tag   = item.item_tag_detail.FirstOrDefault().item_tag.id_tag;
                        }
                    }
                    else
                    {
                        toolBar.msgWarning("Item needs Tag");
                        return;
                    }

                    project_event_variable.adult_consumption = 1;
                    project_event_variable.child_consumption = 1;
                    project_event_variable.is_included       = false;
                    project_event.project_event_variable.Add(project_event_variable);
                }
                project_costingproject_event_template_variable_detailsViewSource.View.Refresh();
                toolBar_btnSave_Click(sender);
                toolBar_btnEdit_Click(sender);
                EstimateCost();
            }
        }
Example #7
0
        private void btnPlaceProject_Click(object sender, RoutedEventArgs e)
        {
            //using (ProjectDB db = new ProjectDB())
            //{
            project project = new project();

            contact contact = EventDB.contacts.Where(x => x.id_contact == sbxContact.ContactID).FirstOrDefault();

            project.id_contact = contact.id_contact;

            project.IsSelected     = true;
            project.id_branch      = CurrentSession.Id_Branch;
            project.name           = txtName.Text;
            project.est_start_date = timestampCalendar.SelectedDate;
            project.est_end_date   = timestampCalendar.SelectedDate;
            project.priority       = 0;

            project_event project_costing = project_costingViewSource.View.CurrentItem as project_event;

            if (project_costing != null)
            {
                foreach (project_event_variable project_event_variable in project_costing.project_event_variable.Where(a => a.is_included == true))
                {
                    item item = project_event_variable.item;
                    if (item != null && item.id_item > 0 && item.is_autorecepie)
                    {
                        project_task project_task = new project_task();
                        project_task.status = Status.Project.Pending;
                        //project_task.project = project;
                        project_task.id_item          = project_event_variable.id_item;
                        project_task.item_description = project_event_variable.item.name;
                        project_task.code             = project_event_variable.item.code;
                        project_task.quantity_est     = ((project_event_variable.adult_consumption) + (project_event_variable.child_consumption));
                        project_task.unit_cost_est    = get_Price(contact, IDcurrencyfx, project_event_variable.item, entity.App.Modules.Sales);


                        if (item.item_recepie.Count() > 0)
                        {
                            foreach (item_recepie_detail item_recepie_detail in item.item_recepie.FirstOrDefault().item_recepie_detail)
                            {
                                project_task Subproject_task = new project_task();

                                Subproject_task.code             = item_recepie_detail.item.code;
                                Subproject_task.item_description = item_recepie_detail.item.name;
                                Subproject_task.id_item          = item_recepie_detail.item.id_item;
                                Subproject_task.items            = item_recepie_detail.item;
                                project_task.status = Status.Project.Pending;
                                Subproject_task.RaisePropertyChanged("item");
                                if (item_recepie_detail.quantity > 0)
                                {
                                    Subproject_task.quantity_est = (decimal)item_recepie_detail.quantity * project_task.quantity_est;
                                }
                                project_task.child.Add(Subproject_task);
                            }
                        }


                        project.project_task.Add(project_task);
                    }
                    else
                    {
                        project_task project_task = new project_task();
                        project_task.status = Status.Project.Pending;
                        //project_task.project = project;
                        project_task.id_item          = project_event_variable.id_item;
                        project_task.item_description = project_event_variable.item.name;
                        project_task.code             = project_event_variable.item.code;
                        project_task.quantity_est     = ((project_event_variable.adult_consumption) + (project_event_variable.child_consumption));
                        project_task.unit_cost_est    = get_Price(contact, IDcurrencyfx, project_event_variable.item, entity.App.Modules.Sales);
                        project.project_task.Add(project_task);
                    }
                }

                foreach (project_event_fixed per_event_service in project_costing.project_event_fixed.Where(a => a.is_included == true))
                {
                    item item = per_event_service.item;
                    if (item != null && item.id_item > 0 && item.is_autorecepie)
                    {
                        project_task project_task = new project_task();
                        project_task.status = Status.Project.Pending;
                        //project_task.project = project;
                        project_task.id_item          = per_event_service.id_item;
                        project_task.item_description = per_event_service.item.name;
                        project_task.code             = per_event_service.item.code;
                        project_task.quantity_est     = per_event_service.consumption;
                        project_task.unit_cost_est    = get_Price(contact, IDcurrencyfx, per_event_service.item, entity.App.Modules.Sales);


                        foreach (item_recepie_detail item_recepie_detail in item.item_recepie.FirstOrDefault().item_recepie_detail)
                        {
                            project_task Subproject_task = new project_task();

                            Subproject_task.code             = item_recepie_detail.item.name;
                            Subproject_task.item_description = item_recepie_detail.item.name;
                            Subproject_task.id_item          = item_recepie_detail.item.id_item;
                            Subproject_task.items            = item_recepie_detail.item;
                            Subproject_task.RaisePropertyChanged("item");
                            if (item_recepie_detail.quantity > 0)
                            {
                                Subproject_task.quantity_est = (decimal)item_recepie_detail.quantity * project_task.quantity_est;
                            }



                            project_task.child.Add(Subproject_task);
                        }
                        project.project_task.Add(project_task);
                    }
                    else
                    {
                        project_task project_task = new project_task();
                        project_task.status = Status.Project.Pending;
                        //project_task.project = project;
                        project_task.id_item          = per_event_service.id_item;
                        project_task.item_description = per_event_service.item.name;
                        project_task.code             = per_event_service.item.code;
                        project_task.quantity_est     = per_event_service.consumption;
                        project_task.unit_cost_est    = get_Price(contact, IDcurrencyfx, per_event_service.item, entity.App.Modules.Sales);
                        project.project_task.Add(project_task);
                    }
                }
                item _item = project_costing.item;
                if (_item != null && _item.id_item > 0 && _item.is_autorecepie)
                {
                    project_task _project_task = new project_task();
                    _project_task.status = Status.Project.Pending;
                    //_project_task.project = project;
                    _project_task.id_item          = project_costing.id_item;
                    _project_task.item_description = project_costing.item.name;
                    _project_task.code             = project_costing.item.code;
                    _project_task.quantity_est     = 1;
                    _project_task.unit_cost_est    = get_Price(contact, IDcurrencyfx, project_costing.item, entity.App.Modules.Sales);



                    foreach (item_recepie_detail item_recepie_detail in _item.item_recepie.FirstOrDefault().item_recepie_detail)
                    {
                        project_task Subproject_task = new project_task();

                        Subproject_task.code             = item_recepie_detail.item.name;
                        Subproject_task.item_description = item_recepie_detail.item.name;
                        Subproject_task.id_item          = item_recepie_detail.item.id_item;
                        Subproject_task.items            = item_recepie_detail.item;
                        Subproject_task.RaisePropertyChanged("item");
                        if (item_recepie_detail.quantity > 0)
                        {
                            Subproject_task.quantity_est = (decimal)item_recepie_detail.quantity * _project_task.quantity_est;
                        }



                        _project_task.child.Add(Subproject_task);
                    }
                    project.project_task.Add(_project_task);
                }
                else
                {
                    project_task _project_task = new project_task();
                    _project_task.status = Status.Project.Pending;
                    //_project_task.project = project;
                    _project_task.id_item          = project_costing.id_item;
                    _project_task.item_description = project_costing.item.name;
                    _project_task.code             = project_costing.item.code;
                    _project_task.quantity_est     = 1;
                    _project_task.unit_cost_est    = get_Price(contact, IDcurrencyfx, project_costing.item, entity.App.Modules.Sales);
                    project.project_task.Add(_project_task);
                }

                project_costing.status = Status.Documents_General.Approved;

                EventDB.projects.Add(project);
                EventDB.SaveChanges();
            }
            //}
        }
Example #8
0
        private void saveOrder_Click(object sender, RoutedEventArgs e)
        {
            project_event project_costing = project_costingViewSource.View.CurrentItem as project_event;

            if (project_costing != null)
            {
                contact       contact       = EventDB.contacts.Where(x => x.id_contact == sbxContact.ContactID).FirstOrDefault();
                app_condition app_condition = id_conditionComboBox.SelectedItem as app_condition;
                app_contract  app_contract  = id_contractComboBox.SelectedItem as app_contract;


                if (contact != null && app_condition != null && app_contract != null)
                {
                    using (SalesBudgetDB db = new SalesBudgetDB())
                    {
                        sales_budget sales_budget = new sales_budget();
                        sales_budget.IsSelected = true;
                        sales_budget.State      = EntityState.Added;
                        sales_budget.status     = Status.Documents_General.Pending;
                        sales_budget.id_contact = contact.id_contact;
                        sales_budget.contact    = db.contacts.Where(x => x.id_contact == contact.id_contact).FirstOrDefault();

                        if (CurrentSession.Id_Branch > 0)
                        {
                            sales_budget.id_branch = CurrentSession.Id_Branch;
                        }
                        else
                        {
                            sales_budget.id_branch = db.app_branch.Where(a => a.is_active == true && a.id_company == CurrentSession.Id_Company).FirstOrDefault().id_branch;
                        }

                        sales_budget.id_condition  = app_condition.id_condition;
                        sales_budget.id_contract   = app_contract.id_contract;
                        sales_budget.id_currencyfx = project_costing.id_currencyfx;


                        foreach (project_event_variable project_event_variable in project_costing.project_event_variable.Where(a => a.is_included == true))
                        {
                            sales_budget_detail sales_budget_detail = new sales_budget_detail();
                            sales_budget_detail.sales_budget  = sales_budget;
                            sales_budget_detail.item          = db.items.Where(a => a.id_item == project_event_variable.id_item).FirstOrDefault();
                            sales_budget_detail.id_item       = project_event_variable.id_item;
                            sales_budget_detail.quantity      = ((project_event_variable.adult_consumption) + (project_event_variable.child_consumption));
                            sales_budget_detail.UnitPrice_Vat = Math.Round(get_Price(contact, IDcurrencyfx, sales_budget_detail.item, entity.App.Modules.Sales));
                            sales_budget.sales_budget_detail.Add(sales_budget_detail);
                        }

                        foreach (project_event_fixed project_event_fixed in project_costing.project_event_fixed.Where(a => a.is_included == true))
                        {
                            sales_budget_detail sales_budget_detail = new sales_budget_detail();
                            sales_budget_detail.sales_budget  = sales_budget;
                            sales_budget_detail.item          = db.items.Where(a => a.id_item == project_event_fixed.id_item).FirstOrDefault();
                            sales_budget_detail.id_item       = project_event_fixed.id_item;
                            sales_budget_detail.quantity      = project_event_fixed.consumption;
                            sales_budget_detail.UnitPrice_Vat = Math.Round(get_Price(contact, IDcurrencyfx, sales_budget_detail.item, entity.App.Modules.Sales));
                            sales_budget.sales_budget_detail.Add(sales_budget_detail);
                        }

                        sales_budget_detail sales_budget_detail_hall = new sales_budget_detail();
                        sales_budget_detail_hall.sales_budget  = sales_budget;
                        sales_budget_detail_hall.item          = db.items.Where(a => a.id_item == project_costing.id_item).FirstOrDefault();
                        sales_budget_detail_hall.id_item       = project_costing.id_item;
                        sales_budget_detail_hall.quantity      = 1;
                        sales_budget_detail_hall.UnitPrice_Vat = Math.Round(get_Price(contact, IDcurrencyfx, sales_budget_detail_hall.item, entity.App.Modules.Sales));
                        sales_budget.sales_budget_detail.Add(sales_budget_detail_hall);

                        db.sales_budget.Add(sales_budget);
                        db.SaveChanges();
                    }

                    lblCancel_MouseDown(null, null);
                }
                else
                {
                    if (MessageBox.Show("VALIDATION EXCEPTION : Please fill up all the fields", "Cognitivo", MessageBoxButton.OKCancel, MessageBoxImage.Asterisk) == MessageBoxResult.Cancel)
                    {
                        lblCancel_MouseDown(null, null);
                    }
                }
            }
        }
Example #9
0
        private void EstimateCost()
        {
            List <Event> EventList = new List <Event>();

            if (project_costingViewSource.View.CurrentItem != null)
            {
                IDcurrencyfx = (project_costingViewSource.View.CurrentItem as project_event).id_currencyfx;
            }
            int adult_guest = 0;
            int child_guest = 0;

            try
            {
                adult_guest = Convert.ToInt32(guest_adultTextBox.Text);
                child_guest = Convert.ToInt32(guest_childTextBox.Text);
            }
            catch
            {
                adult_guest = 0;
                child_guest = 0;
            }

            TotalCost = 0;
            CostForPerPersonServices = 0;
            CostForPerEventServices  = 0;
            CostForHall = 0;

            if (adult_guest > 0 || child_guest > 0)
            {
                project_event project_event = project_costingViewSource.View.CurrentItem as project_event;

                contact contact = EventDB.contacts.Where(x => x.id_contact == sbxContact.ContactID).FirstOrDefault();

                if (project_event != null)
                {
                    ICollection <project_event_variable> project_event_variableLIST = project_event.project_event_variable;
                    List <project_event_variable>        Selectedlist = project_event_variableLIST.Where(x => x.is_included == true).ToList();
                    CostForPerPersonServices = Selectedlist.Sum(x => ((x.adult_consumption) + (x.child_consumption)) * get_Price(contact, IDcurrencyfx, x.item, entity.App.Modules.Sales));
                    foreach (project_event_variable item in Selectedlist)
                    {
                        Event Event = new Event();
                        Event.code        = item.item.code;
                        Event.description = item.item.name;
                        Event.Quantity    = item.adult_consumption + item.child_consumption;
                        Event.UnitPrice   = get_Price(contact, IDcurrencyfx, item.item, entity.App.Modules.Sales);
                        Event.SubTotal    = (item.adult_consumption + item.child_consumption) * get_Price(contact, IDcurrencyfx, item.item, entity.App.Modules.Sales);
                        EventList.Add(Event);
                    }

                    ICollection <project_event_fixed> project_event_fixedLIST = project_event.project_event_fixed;
                    List <project_event_fixed>        Selectedeventlist       = project_event_fixedLIST.Where(x => x.is_included == true).ToList();
                    CostForPerEventServices = Selectedeventlist.Sum(x => x.consumption * get_Price(contact, IDcurrencyfx, x.item, entity.App.Modules.Sales));

                    foreach (project_event_fixed item in Selectedeventlist)
                    {
                        Event Event = new Event();
                        Event.code        = item.item.code;
                        Event.description = item.item.name;
                        Event.Quantity    = item.consumption;
                        Event.UnitPrice   = get_Price(contact, IDcurrencyfx, item.item, entity.App.Modules.Sales);
                        Event.SubTotal    = item.consumption * get_Price(contact, IDcurrencyfx, item.item, entity.App.Modules.Sales);
                        EventList.Add(Event);
                    }

                    if (project_event.item != null)
                    {
                        CostForHall = get_Price(contact, IDcurrencyfx, project_event.item, entity.App.Modules.Sales);
                    }

                    Event EventForHall = new Event();
                    if (project_event.item != null)
                    {
                        EventForHall.code        = project_event.item.code;
                        EventForHall.description = project_event.item.name;
                        EventForHall.Quantity    = 1;
                        EventForHall.UnitPrice   = get_Price(contact, IDcurrencyfx, project_event.item, entity.App.Modules.Sales);
                        EventForHall.SubTotal    = get_Price(contact, IDcurrencyfx, project_event.item, entity.App.Modules.Sales);
                        EventList.Add(EventForHall);
                    }
                }
                TotalCost = CostForPerEventServices + CostForPerPersonServices + CostForHall;
            }
            dgvorder.ItemsSource = EventList;
            RaisePropertyChanged("TotalCost");
            RaisePropertyChanged("CostForPerEventServices");
            RaisePropertyChanged("CostForPerPersonServices");
            RaisePropertyChanged("CostForHall");
        }
Example #10
0
        private void GetServices(object sender, RoutedEventArgs e)
        {
            toolBar_btnSave_Click(sender);
            toolBar_btnEdit_Click(sender);

            if (project_costingViewSource != null)
            {
                project_event project_event = project_costingViewSource.View.CurrentItem as project_event;
                //if (project_event.project_event_fixed.Count()==0)
                //{


                if (project_event != null && id_template_designerComboBox.SelectedItem != null)
                {
                    project_event_template project_event_template = id_template_designerComboBox.SelectedItem as project_event_template;
                    if (project_event_template.project_event_template_variable != null && project_event_template.project_event_template_variable.Count > 0)
                    {
                        // EventDB.project_event_variable.RemoveRange(project_event.project_event_variable);
                        foreach (project_event_template_variable person_service in project_event_template.project_event_template_variable)
                        {
                            item_tag item_tag = person_service.item_tag;
                            foreach (item_tag_detail tag_detail in item_tag.item_tag_detail)
                            {
                                if (tag_detail.item.is_active)
                                {
                                    if (project_event.project_event_variable.Where(x => x.id_item == tag_detail.item.id_item).Any())
                                    {
                                        project_event_variable project_event_variable = project_event.project_event_variable.Where(x => x.id_item == tag_detail.item.id_item).FirstOrDefault();
                                        project_event_variable.adult_consumption = person_service.adult_consumption * project_event.quantity_adult;
                                        project_event_variable.child_consumption = person_service.child_consumption * project_event.quantity_child;
                                    }
                                    else
                                    {
                                        project_event_variable project_event_variable = new project_event_variable();
                                        project_event_variable.item              = tag_detail.item;
                                        project_event_variable.id_item           = tag_detail.id_item;
                                        project_event_variable.item_tag          = tag_detail.item_tag;
                                        project_event_variable.id_tag            = tag_detail.id_tag;
                                        project_event_variable.adult_consumption = person_service.adult_consumption * project_event.quantity_adult;
                                        project_event_variable.child_consumption = person_service.child_consumption * project_event.quantity_child;
                                        project_event_variable.is_included       = false;
                                        project_event.project_event_variable.Add(project_event_variable);
                                    }
                                }
                            }
                        }
                        project_costingproject_event_template_variable_detailsViewSource.View.Refresh();
                    }
                }

                if (project_event != null && id_template_designerComboBox.SelectedItem != null)
                {
                    project_event_template project_event_template = id_template_designerComboBox.SelectedItem as project_event_template;
                    if (project_event_template.project_event_template_fixed != null && project_event_template.project_event_template_fixed.Count > 0)
                    {
                        // EventDB.project_event_fixed.RemoveRange(project_event.project_event_fixed);
                        foreach (project_event_template_fixed project_event_template_fixed in project_event_template.project_event_template_fixed)
                        {
                            item_tag item_tag = project_event_template_fixed.item_tag;
                            foreach (item_tag_detail tag_detail in item_tag.item_tag_detail)
                            {
                                if (tag_detail.item.is_active)
                                {
                                    if (project_event.project_event_fixed.Where(x => x.id_item == tag_detail.item.id_item).Any())
                                    {
                                        project_event_fixed services_per_event_details = project_event.project_event_fixed.Where(x => x.id_item == tag_detail.item.id_item).FirstOrDefault();

                                        services_per_event_details.consumption = services_per_event_details.consumption;
                                    }
                                    else
                                    {
                                        project_event_fixed services_per_event_details = new project_event_fixed();
                                        services_per_event_details.item        = tag_detail.item;
                                        services_per_event_details.id_item     = tag_detail.id_item;
                                        services_per_event_details.item_tag    = tag_detail.item_tag;
                                        services_per_event_details.id_tag      = tag_detail.id_tag;
                                        services_per_event_details.consumption = 1;
                                        services_per_event_details.is_included = false;
                                        project_event.project_event_fixed.Add(services_per_event_details);
                                    }
                                }
                            }
                        }
                        project_costingservices_per_event_detailsViewSource.View.Refresh();
                    }
                }
                //}
                EstimateCost();
            }
        }