123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Windows.Controls;
- using System.Windows.Controls.Primitives;
- using Comal.Classes;
- using InABox.Core;
- using InABox.Wpf;
- namespace PRSDesktop;
- public interface ITaskHost : IMasterDetailControl<Job>
- {
- IList<KanbanType> KanbanTypes { get; }
- KanbanSettings KanbanSettings { get; }
- TaskPanelProperties Properties { get; }
- void SaveSettings();
- void PopulateMenu(ITaskControl control, TaskModel task, ContextMenu menu);
- Kanban? CreateKanban(Action<Kanban> customise);
- IEnumerable<Kanban> LoadKanbans(IEnumerable<TaskModel> models, Columns<Kanban> columns);
- bool EditKanbans(IEnumerable<TaskModel> models, Action<Kanban>? customise = null);
- void DeleteKanbans(IEnumerable<TaskModel> models, string auditnote);
- //Requisition CreateRequisition(TaskModel model, Action<Requisition> customise);
- //bool EditRequisition(TaskModel model, Action<Requisition> customise = null);
- KanbanReferences[] GetReferences(IEnumerable<TaskModel> models);
- bool EditReferences(IEnumerable<TaskModel> models);
- bool CanChangeTasks(IEnumerable<TaskModel> models);
- }
- public interface ITaskControl
- {
- ITaskHost Host { get; set; }
- KanbanViewType KanbanViewType { get; }
- bool IsReady { get; set; }
- IEnumerable<TaskModel> SelectedModels(TaskModel? sender = null);
- string SectionName { get; }
- DataModel DataModel(Selection selection);
- void Setup();
- void Refresh();
- }
- public class KanbanReferences
- {
- public KanbanReferences()
- {
- Requisitions = new Guid[] { };
- Setouts = new Guid[] { };
- Deliveries = new Guid[] { };
- Orders = new Guid[] { };
- }
- public Guid Kanban { get; set; }
- public Guid[] Requisitions { get; set; }
- public Guid[] Setouts { get; set; }
- public Guid[] Deliveries { get; set; }
- public Guid[] Orders { get; set; }
- public Type ReferenceType()
- {
- if (Requisitions.Any())
- return typeof(Requisition);
- if (Setouts.Any())
- return typeof(Setout);
- if (Deliveries.Any())
- return typeof(Delivery);
- if (Orders.Any())
- return typeof(PurchaseOrder);
- return null;
- }
- public Guid GetID()
- {
- if (Requisitions.Any())
- return Requisitions.First();
- if (Setouts.Any())
- return Setouts.First();
- if (Deliveries.Any())
- return Deliveries.First();
- if (Orders.Any())
- return Orders.First();
- return Guid.Empty;
- }
- }
|