Bug #96 Octopus tükör listázó felület story sorrend hibás
authorVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Fri, 26 Oct 2018 09:34:27 +0000 (09:34 +0000)
committerVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Fri, 26 Oct 2018 09:34:27 +0000 (09:34 +0000)
git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube;C31334

client/MaestroShared/Targets/UNCTargetProcessor.cs
server/user.jobengine.osgi.commons/src/user/commons/octopus/OctopusAPI.java
server/user.jobengine.osgi.services/src/user/jobengine/osgi/rest/octopus/OctopusRESTService.java

index fd0a49533592f62e77ec4f6e7d5235b193bd553f..c30e2835fe5ad01edf1ad02674bf169243ed3c78 100644 (file)
@@ -1,13 +1,13 @@
-using NLog;\r
-using System;\r
-using System.IO;\r
-using System.Windows.Forms;\r
-using System.Text;\r
+using MaestroShared.Commons;\r
 using MaestroShared.Configuration;\r
-using MaestroShared.Target;\r
 using MaestroShared.Metadata;\r
-using MaestroShared.Commons;\r
 using MaestroShared.Model;\r
+using MaestroShared.Target;\r
+using NLog;\r
+using System;\r
+using System.IO;\r
+using System.Text;\r
+using System.Windows.Forms;\r
 \r
 namespace MaestroShared.Targets {\r
 \r
@@ -97,16 +97,16 @@ namespace MaestroShared.Targets {
                     DeleteAfterCopy();\r
 \r
                 ExecuteCompleted();\r
-            }\r
-            catch (Exception e) {\r
+                workFlowAction.successful = true;\r
+            catch (Exception e) {\r
                 Status = ERROR;\r
                 Message = e.Message;\r
                 workFlowAction.description = Message;\r
+                workFlowAction.successful = false;\r
                 logger.Error(e);\r
-                if (Parameters.TargetConfig.SendEmailOnError && !String.IsNullOrEmpty(Parameters.TargetConfig.ErrorEmailRecipient) && !String.IsNullOrEmpty(Parameters.TargetConfig.ErrorEmailPattern))\r
+                if (Parameters.TargetConfig.SendEmailOnError && !string.IsNullOrEmpty(Parameters.TargetConfig.ErrorEmailRecipient) && !String.IsNullOrEmpty(Parameters.TargetConfig.ErrorEmailPattern))\r
                     SendEmail(Parameters.TargetConfig.ErrorEmailRecipient, Parameters.TargetConfig.ErrorEmailPattern);\r
-            }\r
-            finally {\r
+            } finally {\r
                 AfterExecute();\r
             }\r
             logger.Info(PROCESSING_COMPLETED, InputName);\r
@@ -137,10 +137,9 @@ namespace MaestroShared.Targets {
                             Message = "A célállomány már létezik és el van fogadva, felülírása nem lehetséges.";\r
                             Status = SKIPPED;\r
                             return false;\r
-                        } else \r
+                        } else\r
                             DeleteFile(currentFile);\r
-                    }\r
-                    else {\r
+                    } else {\r
                         Message = "A célállomány létezik, felülírása a konfiuráció alapján nem lehetséges.";\r
                         Status = SKIPPED;\r
                         return false;\r
@@ -181,7 +180,6 @@ namespace MaestroShared.Targets {
             logger.Trace(Strings.ENTRY);\r
             workFlowAction.description = SUCCESS;\r
             base.ExecuteCompleted();\r
-            workFlowAction.successful = true;\r
             if (Parameters.TargetConfig.NexioServer)\r
                 UploadNexioMetadata();\r
             else {\r
@@ -257,8 +255,7 @@ namespace MaestroShared.Targets {
             try {\r
                 string message = GetDynamicText(messagePattern);\r
                 Parameters.MediaCubeApi.Notify(to, message);\r
-            }\r
-            catch (Exception e) {\r
+            } catch (Exception e) {\r
                 MessageBox.Show(parent, e.Message);\r
             }\r
             logger.Trace(Strings.EXIT);\r
@@ -292,8 +289,7 @@ namespace MaestroShared.Targets {
             try {\r
 \r
                 Parameters?.MediaCubeApi?.Create<WorkflowAction>(workFlowAction);\r
-            }\r
-            catch (Exception e) {\r
+            } catch (Exception e) {\r
                 logger.Error(e);\r
                 MessageBox.Show(parent, e.Message);\r
             }\r
index d77ef2085280310992d95ece2b64f3e33904ce8d..cefb24836a8ae77dc3859fc782d6967bd192e034 100644 (file)
@@ -219,6 +219,7 @@ public class OctopusAPI implements IOctopusAPI {
                                .sort(new BasicDBObject("name", 1));\r
                if (find.hasNext())\r
                        result = find.toArray();\r
+\r
                return result;\r
        }\r
 \r
@@ -226,10 +227,32 @@ public class OctopusAPI implements IOctopusAPI {
        public List<DBObject> getRundownStories(long id, BasicDBObject fields) {\r
                List<DBObject> result = null;\r
                DBCollection collection = db.getCollection(STORY_COLLECTION);\r
-               DBCursor find = collection.find(new BasicDBObject(REF_RUNDOWN, new BasicDBObject($ELEMMATCH, new BasicDBObject(ID, id))), fields)\r
+               DBCursor find = collection.find(new BasicDBObject(REF_RUNDOWN, new BasicDBObject($ELEMMATCH, new BasicDBObject(ID, id))))\r
                                .sort(new BasicDBObject("name", 1));\r
                if (find.hasNext())\r
                        result = find.toArray();\r
+\r
+               if (result != null) {\r
+                       result.forEach(o -> {\r
+                               List<BasicDBObject> rds = NoSQLUtils.asList((BasicDBObject) o, REF_RUNDOWN);\r
+                               if (rds != null) {\r
+                                       for (BasicDBObject rd : rds) {\r
+                                               long rundownID = NoSQLUtils.asLong(rd, ID);\r
+                                               if (rundownID == id) {\r
+                                                       long position = NoSQLUtils.asLong(rd, POSITION);\r
+                                                       o.put(POSITION, position);\r
+                                                       break;\r
+                                               }\r
+                                       }\r
+                               }\r
+                       });\r
+               }\r
+\r
+               Collections.sort(result, (o1, o2) -> {\r
+                       long pos1 = NoSQLUtils.asLong((BasicDBObject) o1, POSITION);\r
+                       long pos2 = NoSQLUtils.asLong((BasicDBObject) o2, POSITION);\r
+                       return (pos1 < pos2 ? -1 : (pos1 == pos2 ? 0 : 1));\r
+               });\r
                return result;\r
        }\r
 \r
index d8e19993c25026bb5c227ac4b63a276e51b91b2f..95c4b3027339a599f00f01f1e6cd178013b5c7e9 100644 (file)
@@ -3,6 +3,7 @@ package user.jobengine.osgi.rest.octopus;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
+import java.util.TimeZone;
 
 import javax.ws.rs.Consumes;
 import javax.ws.rs.GET;
@@ -62,7 +63,8 @@ public class OctopusRESTService {
                        StringBuilder sb = new StringBuilder();
 
                        List<BasicDBObject> rundowns = ListUtils.cast(octopusService.getRundowns(null));
-                       SimpleDateFormat sdt = new SimpleDateFormat("yyyy.MM.dd hh:mm");
+                       SimpleDateFormat sdt = new SimpleDateFormat("yyyy.MM.dd HH:mm");
+                       sdt.setTimeZone(TimeZone.getTimeZone("Europe/Prague"));
                        for (BasicDBObject rundown : rundowns) {
                                String name = rundown.getString(IOctopusAPI.NAME);
 
@@ -79,6 +81,9 @@ public class OctopusRESTService {
                        }
 
                        result = Response.ok(sb.toString()).build();
+                       //                      String a = TimeZone.getDefault().getDisplayName();
+                       //                      String b = TimeZone.getDefault().getID();
+                       //                      result = Response.ok(b + " " + a).build();
                } catch (Exception e) {
                        result = createErrorResponse(e);
                }