From 9da7ef3610c2f2e5c675844b5b60051c0b8e2041 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Fri, 13 Aug 2021 21:54:41 +0000 Subject: [PATCH] --- source/Plugins/AyaNova.Plugin.V8/V8.cs | 51 +++++++++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) diff --git a/source/Plugins/AyaNova.Plugin.V8/V8.cs b/source/Plugins/AyaNova.Plugin.V8/V8.cs index 4dba1ef..57a13f8 100644 --- a/source/Plugins/AyaNova.Plugin.V8/V8.cs +++ b/source/Plugins/AyaNova.Plugin.V8/V8.cs @@ -397,6 +397,7 @@ namespace AyaNova.PlugIn.V8 await ExportUnits(progress); await ExportExternalUsers(progress);//needs vendors, clients and headoffices already exported so needs to be here late await ExportMemos(progress); + await ExportTaskGroups(progress); await ExportWorkorderStatus(progress);//item and workorder both as split in v8 await ExportWorkOrderItemPriorities(progress); await ExportServiceWorkorders(progress); @@ -1865,6 +1866,54 @@ namespace AyaNova.PlugIn.V8 } #endregion PurchaseOrders + + #region Task groups + private async System.Threading.Tasks.Task ExportTaskGroups(ProgressForm progress) + { + ResetUniqueNames(); + if (!progress.KeepGoing) return; + progress.Op("Start Task Groups export"); + progress.SubOp(""); + var ObjectTypeName = "TaskGroup"; + + + //Step 2: export the objects + PickListAutoComplete pl = PickListAutoComplete.GetList("**", "taskgroup"); + progress.Append("Exporting " + pl.Count.ToString() + " " + ObjectTypeName + "s"); + //task picklist used over and over + var AllTasks = TaskPickList.GetList(); + foreach (PickListAutoComplete.PickListAutoCompleteInfo i in pl) + { + if (!progress.KeepGoing) return; + + TaskGroup c = TaskGroup.GetItem(i.ID); + var ObjectTID = new TypeAndID(RootObjectTypes.TaskGroup, c.ID); + dynamic d = new JObject(); + d.name = GetUniqueName(c.Name); + if (IsDuplicatev7v8IdMapItem(c.ID, c.Name, progress)) continue; + progress.Op(ObjectTypeName + " " + d.name); + d.active = c.Active; + d.notes = c.Description; + dynamic dTasks = new JArray(); + int sequence = 0; + foreach (TaskGroupTask t in c.Tasks) + { + dynamic dtask = new JObject(); + dtask.id = 0; + dtask.taskGroupId = 0; + dtask.sequence = ++sequence; + dtask.task = AllTasks[t.TaskID].Name; + } + var rMainObject = await util.PostAsync("task-group", d.ToString()); + long RavenId = util.IdFromResponse(rMainObject); + Addv7v8IdMap(c.ID, RavenId); + await util.EventLog(util.AyaType.Project, RavenId, SafeGetUserMap(c.Creator), SafeGetUserMap(c.Modifier), c.Created, c.Modified); + } + } + #endregion Task groups + + + #region Units private async System.Threading.Tasks.Task ExportUnits(ProgressForm progress) { @@ -2913,7 +2962,7 @@ namespace AyaNova.PlugIn.V8 foreach (WorkorderItemTask wt in wi.Tasks) { progress.SubOp("WorkorderItemTask " + wt.ID.ToString()); - var tg = TaskGroup.GetItem(wt.TaskGroupID); + //var tg = TaskGroup.GetItem(wt.TaskGroupID); dynamic dwt = new JObject(); dwt.workOrderId = RavenId; dwt.workorderItemId = ravenwoitemid;