git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorBellai Ádám <USER\adam.bellai>
Fri, 6 Oct 2017 08:14:16 +0000 (08:14 +0000)
committerBellai Ádám <USER\adam.bellai>
Fri, 6 Oct 2017 08:14:16 +0000 (08:14 +0000)
client/DxPlay/PlayerForm.cs
client/IntegrationTests/PlanAIRTests.cs
client/Maestro/MaestroForm.Target.cs
client/Maestro/MaestroForm.cs
client/Maestro/Targets/UNCTargetProcessor.cs
client/PlanAIRClient/BroadcastWorker.cs [new file with mode: 0644]
client/PlanAIRClient/TrafficAPI.cs
client/PlanAIRClient/TrafficClient.csproj
client/PlanAIRClient/TrafficIDSelector.cs

index aba635fd81ba40bedda13796d33826955ee72974..c282888a7745a10c04cf33eecc004bd973556ccb 100644 (file)
@@ -344,10 +344,7 @@ namespace DxPlay {
                             currentSegment.TCIn = actual;\r
                         } else {\r
                             MessageBox.Show("A kilépõ a belépõ elõtt van!", "Hiba");\r
-                            //így kell?\r
-                            currentSegment.TCIn = null;\r
-                            //vagy így?\r
-                            //currentSegment.TCIn = new Timecode();\r
+                            currentSegment.TCIn = new Timecode();\r
                         }\r
                     }\r
                 } else {\r
@@ -382,10 +379,7 @@ namespace DxPlay {
                             currentSegment.TCOut = actual;\r
                         } else {\r
                             MessageBox.Show("A kilépõ a belépõ elõtt van!", "Hiba");\r
-                            //így kell?\r
-                            currentSegment.TCIn = null;\r
-                            //vagy így?\r
-                            //currentSegment.TCIn = new Timecode();\r
+                            currentSegment.TCIn = new Timecode();\r
                         }\r
                     }\r
                 } else {\r
index fd3382c9b980cdf29e47e5f94c08470be39a24ce..29e8c990d76bc870b8861a55c6b1b0623f85cbc7 100644 (file)
@@ -59,7 +59,7 @@ namespace IntegrationTests {
             const string STR_PARAM = "";\r
 \r
             //Exercise\r
-            List<MamResultWrapper> actual = sut.SearchPromotional(STR_PARAM);\r
+            List<MamResultWrapper> actual = sut.GetPromotionals(STR_PARAM);\r
         }\r
 \r
         [TestMethod]\r
@@ -68,7 +68,16 @@ namespace IntegrationTests {
             const string STR_PARAM = "";\r
 \r
             //Exercise\r
-            List<MamResultWrapper> actual = sut.SearchAdvertisement(STR_PARAM);\r
+            List<MamResultWrapper> actual = sut.GetAdvertisements(STR_PARAM);\r
+        }\r
+\r
+        [TestMethod]\r
+        public void MediaOKForAirTest() {\r
+            //Fixture\r
+            const int ITEM_ID = 24;\r
+\r
+            //Exercise\r
+            sut.MediaOKForAir(ITEM_ID);\r
         }\r
     }\r
 }\r
index 7b4cab5a0f6b2b42bfe0f0940031c398248dff22..f2fdc3b3497912e7b1ca1668a4e139ae087fb57d 100644 (file)
@@ -139,11 +139,11 @@ namespace Maestro {
             TrafficAPI api = trafficIDSelector.trafficAPI;\r
             List<ArchiveMatadataWrapper> result = null;\r
             if (id.StartsWith("M"))\r
-                result = api.SearchArchiveMetadataBroadcast(id);\r
+                result = api.GetBroadcastArchiveMetadata(id);\r
             else if (id.StartsWith("P"))\r
-                result = api.SearchArchiveMetadataPromotional(id);\r
+                result = api.GetPromotionalArchiveMetadata(id);\r
             else if (id.StartsWith("R"))\r
-                result = api.SearchArchiveMetadataAdvertisement(id);\r
+                result = api.GetAdvertisementArchiveMetadata(id);\r
             if (result == null)\r
                 return;\r
             ArchiveMatadataWrapper actualResult = result[0];\r
index 8bd406acbee270b9e0f7bf2b0bd25ada0e294889..d99aa6fa81a58c8c5b0216d80f8e049023a9a3a1 100644 (file)
@@ -220,12 +220,12 @@ namespace Maestro {
             Cursor.Current = Cursors.WaitCursor;\r
             List<MamResultWrapper> result = null;\r
             if (startingName.StartsWith("M"))\r
-                result = api.SearchBroadcast(startingName, null, null, true);\r
+                result = api.GetBroadcasts(startingName, null, null, true);\r
             else if (startingName.StartsWith("P"))\r
-                result = api.SearchPromotional(startingName);\r
+                result = api.GetPromotionals(startingName);\r
             //todo ha az adatbázis felvan töltve normális adatokkal, megnézni hogy tényleg R betüvel kezdődnek-e a reklámok\r
             else if (startingName.StartsWith("R"))\r
-                result = api.SearchAdvertisement(startingName);\r
+                result = api.GetAdvertisements(startingName);\r
             ProcessMamResults(result);\r
         }\r
 \r
index 423671e480425321285745f44cfd917723e498c7..2350a9d6277a94998e9425d8a7a5c7132448da67 100644 (file)
@@ -93,6 +93,7 @@ namespace Maestro.Targets {
                 SaveSegments();\r
         }\r
 \r
+        \r
         private void SaveSegments() {\r
             MaestroForm maestroForm = parent as MaestroForm;\r
             TrafficMetadata metadata = maestroForm.Configuration.Metadatas.Where(m => { return m is TrafficMetadata; }).FirstOrDefault() as TrafficMetadata;\r
diff --git a/client/PlanAIRClient/BroadcastWorker.cs b/client/PlanAIRClient/BroadcastWorker.cs
new file mode 100644 (file)
index 0000000..a076612
--- /dev/null
@@ -0,0 +1,92 @@
+using System;\r
+using System.Collections.Generic;\r
+using System.Data;\r
+using System.Data.SqlClient;\r
+using NLog;\r
+\r
+namespace TrafficClient {\r
+\r
+    public class BroadcastWorker {\r
+\r
+        private string connectionString;\r
+        private CliFSPReader cliFSPReader;\r
+        private SqlConnection connection;\r
+        private static Logger logger = LogManager.GetCurrentClassLogger();\r
+\r
+        public List<MamResultWrapper> GetBroadcasts(string strParam, DateTime? from, DateTime? to, bool missingCopia) {\r
+            List<clIFsp_EC_MAMBradocastResult> sqlResult = null;\r
+            List<MamResultWrapper> result = null;\r
+            try {\r
+                TryConnect();\r
+                using (SqlCommand cmd = new SqlCommand("dbo.clIFsp_EC_MAM", connection)) {\r
+                    cmd.CommandType = CommandType.StoredProcedure;\r
+                    cmd.Parameters.AddWithValue("@Operation", 1001);\r
+                    cmd.Parameters.AddWithValue("@@ItemID", DBNull.Value);\r
+                    if (!missingCopia) {\r
+                        cmd.Parameters.AddWithValue("@@@Options", 1);\r
+                        cmd.Parameters.AddWithValue("@@StrParam1", strParam);\r
+                        cmd.Parameters.AddWithValue("@@DateParam1", from.Value.Date);\r
+                        cmd.Parameters.AddWithValue("@@DateParam2", to.Value.Date);\r
+                    } else {\r
+                        cmd.Parameters.AddWithValue("@@@Options", 24);\r
+                        if (!String.IsNullOrEmpty(strParam))\r
+                            cmd.Parameters.AddWithValue("@@StrParam1", strParam);\r
+                        if (from.HasValue) {\r
+                            cmd.Parameters.AddWithValue("@@DateParam1", from.Value.Date);\r
+                            cmd.Parameters.AddWithValue("@@DateParam2", to.Value.Date);\r
+                        }\r
+                    }\r
+                    sqlResult = ExecuteAndReadBradcast(cmd);\r
+                    result = ProcessMamBroadcastResult(sqlResult);\r
+                }\r
+            }\r
+            catch (Exception e) {\r
+                logger.Error(e.Message);\r
+                throw e;\r
+            }\r
+            finally {\r
+                connection.Close();\r
+            }\r
+            return result;\r
+        }\r
+\r
+        private List<MamResultWrapper> ProcessMamBroadcastResult(List<clIFsp_EC_MAMBradocastResult> sqlResult) {\r
+            if (sqlResult == null)\r
+                return null;\r
+            List<MamResultWrapper> result = new List<MamResultWrapper>();\r
+            foreach (clIFsp_EC_MAMBradocastResult actual in sqlResult) {\r
+                MamResultWrapper actualObject = new MamResultWrapper() {\r
+                    MediaID = actual.v_MediaID,\r
+                    EpisodeTitle = actual.v_EpTitle,\r
+                    Title = actual.v_ProgTitle,\r
+                    EpisodeNumber = actual.v_EpisodeID,\r
+                    VariantID = actual.v_VariantID.HasValue ? actual.v_VariantID.Value : -1,\r
+                    Episode = actual.v_Episode.HasValue ? actual.v_Episode.Value : (short)-1,\r
+                    NextBroadcastDate = actual.v_NextBroadcastDate\r
+                };\r
+                result.Add(actualObject);\r
+            }\r
+            return result;\r
+        }\r
+\r
+        private List<clIFsp_EC_MAMBradocastResult> ExecuteAndReadBradcast(SqlCommand cmd) {\r
+            List<clIFsp_EC_MAMBradocastResult> result = null;\r
+            using (SqlDataReader reader = cmd.ExecuteReader()) {\r
+                while (reader.Read()) {\r
+                    if (result == null)\r
+                        result = new List<clIFsp_EC_MAMBradocastResult>();\r
+                    clIFsp_EC_MAMBradocastResult item = cliFSPReader.ToclIFsp_MAMBroadcastResult(reader);\r
+                    result.Add(item);\r
+                }\r
+            }\r
+            return result;\r
+        }\r
+\r
+        private void TryConnect() {\r
+            if (connection.State != ConnectionState.Open) {\r
+                connection.Close();\r
+                connection.Open();\r
+            }\r
+        }\r
+    }\r
+}\r
index 44cbf7726bd9b73cb87391bfad531b0b9dbeb5be..5125b7de0336ab2261554c0625f4be83934ed1ee 100644 (file)
@@ -2,8 +2,8 @@
 using System.Collections.Generic;\r
 using System.Data;\r
 using System.Data.SqlClient;\r
-using System.Diagnostics;\r
 using NLog;\r
+\r
 namespace TrafficClient {\r
     public class TrafficAPI {\r
         private TrafficContext context = new TrafficContext();\r
@@ -18,7 +18,7 @@ namespace TrafficClient {
             cliFSPReader = new CliFSPReader();\r
         }\r
 \r
-        public List<MamResultWrapper> SearchBroadcast(string strParam, DateTime? from, DateTime? to, bool missingCopia) {\r
+        public List<MamResultWrapper> GetBroadcasts(string strParam, DateTime? from, DateTime? to, bool missingCopia) {\r
             List<clIFsp_EC_MAMBradocastResult> sqlResult = null;\r
             List<MamResultWrapper> result = null;\r
             try {\r
@@ -81,7 +81,6 @@ namespace TrafficClient {
             return result;\r
         }\r
 \r
-\r
         public List<Segment> GetSegmentReady(int itemID) {\r
             List<Segment> result = null;\r
             try {\r
@@ -170,7 +169,7 @@ namespace TrafficClient {
             }\r
         }\r
 \r
-        public void AddSegmentToCopia(int itemID, string strParam, long tcIn, long tcOut, bool options) {\r
+        public void AddSegmentToCopia(int itemID, string strParam, long tcIn, long tcOut, bool optional) {\r
             //string strparam = String.IsNullOrEmpty(strParam) ? string.Empty : strParam;\r
             object strparam = strParam;\r
             if (String.IsNullOrEmpty(strParam))\r
@@ -178,7 +177,7 @@ namespace TrafficClient {
             try {\r
                 TryConnect();\r
                 using (SqlCommand cmd = new SqlCommand("dbo.clIFsp_EC_MAM", connection)) {\r
-                    int optionsParam = options ? 1 : 0;\r
+                    int optionalParam = optional ? 1 : 0;\r
                     cmd.CommandType = CommandType.StoredProcedure;\r
                     cmd.Parameters.AddWithValue("@Operation", 1115);\r
                     cmd.Parameters.AddWithValue("@@ItemID", itemID);\r
@@ -186,7 +185,7 @@ namespace TrafficClient {
                     cmd.Parameters.AddWithValue("@@IntParam2", tcOut);\r
                     cmd.Parameters.AddWithValue("@@StrParam1", strparam);\r
                     cmd.Parameters.AddWithValue("@@StrParam2", DBNull.Value);\r
-                    cmd.Parameters.AddWithValue("@@@Options", optionsParam);\r
+                    cmd.Parameters.AddWithValue("@@@Options", optionalParam);\r
                     cmd.ExecuteNonQuery();\r
                 }\r
             }\r
@@ -212,7 +211,7 @@ namespace TrafficClient {
             return result;\r
         }\r
 \r
-        public List<ArchiveMatadataWrapper> SearchArchiveMetadataBroadcast(string strParam) {\r
+        public List<ArchiveMatadataWrapper> GetBroadcastArchiveMetadata(string strParam) {\r
             List<clIFsp_EC_MAMBradocastResult> sqlResult = null;\r
             List<ArchiveMatadataWrapper> result = null;\r
             try {\r
@@ -224,7 +223,7 @@ namespace TrafficClient {
                     cmd.Parameters.AddWithValue("@@ItemID", DBNull.Value);\r
                     cmd.Parameters.AddWithValue("@@StrParam1", strParam);\r
                     sqlResult = ExecuteAndReadBradcast(cmd);\r
-                    result = ProcessArchiveBroadcastResult(sqlResult);\r
+                    result = ProcessaBroadcastArchiveMetadatResult(sqlResult);\r
                 }\r
             }\r
             catch (Exception e) {\r
@@ -237,7 +236,7 @@ namespace TrafficClient {
             return result;\r
         }\r
 \r
-        public List<ArchiveMatadataWrapper> SearchArchiveMetadataPromotional(string strParam) {\r
+        public List<ArchiveMatadataWrapper> GetPromotionalArchiveMetadata(string strParam) {\r
             List<clIFsp_EC_MAMPromotionalResult> sqlResult = null;\r
             List<ArchiveMatadataWrapper> result = null;\r
             try {\r
@@ -249,7 +248,7 @@ namespace TrafficClient {
                     cmd.Parameters.AddWithValue("@@ItemID", DBNull.Value);\r
                     cmd.Parameters.AddWithValue("@@StrParam1", strParam);\r
                     sqlResult = ExecuteAndReadPromotionals(cmd);\r
-                    result = ProcessArchivePromotionalResult(sqlResult);\r
+                    result = ProcessPromotionalArchiveMetadataResult(sqlResult);\r
                 }\r
             }\r
             catch (Exception e) {\r
@@ -262,7 +261,7 @@ namespace TrafficClient {
             return result;\r
         }\r
 \r
-        public List<ArchiveMatadataWrapper> SearchArchiveMetadataAdvertisement(string strParam) {\r
+        public List<ArchiveMatadataWrapper> GetAdvertisementArchiveMetadata(string strParam) {\r
             List<clIFsp_EC_MAMAdvertismentResult> sqlResult = null;\r
             List<ArchiveMatadataWrapper> result = null;\r
             try {\r
@@ -274,7 +273,7 @@ namespace TrafficClient {
                     cmd.Parameters.AddWithValue("@@ItemID", DBNull.Value);\r
                     cmd.Parameters.AddWithValue("@@StrParam1", strParam);\r
                     sqlResult = ExecuteAndReadAdvertisement(cmd);\r
-                    result = ProcessArchiveAdvertisementResult(sqlResult);\r
+                    result = ProcessAdvertisementArchiveMetadataResult(sqlResult);\r
                 }\r
             }\r
             catch (Exception e) {\r
@@ -287,7 +286,7 @@ namespace TrafficClient {
             return result;\r
         }\r
 \r
-        private List<ArchiveMatadataWrapper> ProcessArchiveBroadcastResult(List<clIFsp_EC_MAMBradocastResult> sqlResult) {\r
+        private List<ArchiveMatadataWrapper> ProcessaBroadcastArchiveMetadatResult(List<clIFsp_EC_MAMBradocastResult> sqlResult) {\r
             if (sqlResult == null)\r
                 return null;\r
             List<ArchiveMatadataWrapper> result = new List<ArchiveMatadataWrapper>();\r
@@ -303,7 +302,7 @@ namespace TrafficClient {
             return result;\r
         }\r
 \r
-        private List<ArchiveMatadataWrapper> ProcessArchivePromotionalResult(List<clIFsp_EC_MAMPromotionalResult> sqlResult) {\r
+        private List<ArchiveMatadataWrapper> ProcessPromotionalArchiveMetadataResult(List<clIFsp_EC_MAMPromotionalResult> sqlResult) {\r
             if (sqlResult == null)\r
                 return null;\r
             List<ArchiveMatadataWrapper> result = new List<ArchiveMatadataWrapper>();\r
@@ -318,7 +317,7 @@ namespace TrafficClient {
             return result;\r
         }\r
 \r
-        private List<ArchiveMatadataWrapper> ProcessArchiveAdvertisementResult(List<clIFsp_EC_MAMAdvertismentResult> sqlResult) {\r
+        private List<ArchiveMatadataWrapper> ProcessAdvertisementArchiveMetadataResult(List<clIFsp_EC_MAMAdvertismentResult> sqlResult) {\r
             if (sqlResult == null)\r
                 return null;\r
             List<ArchiveMatadataWrapper> result = new List<ArchiveMatadataWrapper>();\r
@@ -334,7 +333,7 @@ namespace TrafficClient {
             return result;\r
         }\r
 \r
-        public List<MamResultWrapper> SearchPromotional(string strParam) {\r
+        public List<MamResultWrapper> GetPromotionals(string strParam) {\r
             List<clIFsp_EC_MAMPromotionalResult> sqlResult = null;\r
             List<MamResultWrapper> result = null;\r
             try {\r
@@ -389,7 +388,7 @@ namespace TrafficClient {
             return result;\r
         }\r
 \r
-        public List<MamResultWrapper> SearchAdvertisement(string strParam) {\r
+        public List<MamResultWrapper> GetAdvertisements(string strParam) {\r
             List<clIFsp_EC_MAMAdvertismentResult> sqlResult = null;\r
             List<MamResultWrapper> result = null;\r
             try {\r
@@ -440,5 +439,25 @@ namespace TrafficClient {
             }\r
             return result;\r
         }\r
+\r
+        public void MediaOKForAir(int itemID) {\r
+            try {\r
+                TryConnect();\r
+                using (SqlCommand cmd = new SqlCommand("dbo.clIFsp_EC_MAM", connection)) {\r
+                    cmd.CommandType = CommandType.StoredProcedure;\r
+                    cmd.Parameters.AddWithValue("@Operation", 1100);\r
+                    cmd.Parameters.AddWithValue("@@ItemID", itemID);\r
+                    cmd.Parameters.AddWithValue("@@@Options", 1);\r
+                    cmd.ExecuteNonQuery();\r
+                }\r
+            }\r
+            catch (Exception e) {\r
+                logger.Error(e.Message);\r
+                throw e;\r
+            }\r
+            finally {\r
+                connection.Close();\r
+            }\r
+        }\r
     }\r
 }\r
index f152a4c02d7964c4bb784daaf0655a12541ac3a1..7ce25542d9bf48b79d5f714be14eeba2930d704d 100644 (file)
@@ -50,6 +50,7 @@
     <Reference Include="System.Xml" />\r
   </ItemGroup>\r
   <ItemGroup>\r
+    <Compile Include="BroadcastWorker.cs" />\r
     <Compile Include="clIFsp_EC_MAMAdvertismentsResult.cs" />\r
     <Compile Include="clIFsp_EC_MAMPromotionalResult.cs" />\r
     <Compile Include="clIFsp_EC_SegmentResult.cs" />\r
index b8d39babd423749bef3e8c7a484f8a0fb9b32872..54392a40b2dd75a8d40a5253cd957cb6027a3e39 100644 (file)
@@ -87,11 +87,11 @@ namespace TrafficClient {
             }\r
             MamResultWrapper[] result = null;\r
             if (radioButtonBroadCast.Checked)\r
-                result = trafficAPI.SearchBroadcast(searchText, from, to, copiaCheckBox.Checked)?.ToArray();\r
+                result = trafficAPI.GetBroadcasts(searchText, from, to, copiaCheckBox.Checked)?.ToArray();\r
             else if (radioButtonAD.Checked)\r
-                result = trafficAPI.SearchAdvertisement(searchText)?.ToArray();\r
+                result = trafficAPI.GetAdvertisements(searchText)?.ToArray();\r
             else if (radioButtonPromo.Checked)\r
-                result = trafficAPI.SearchPromotional(searchText)?.ToArray();\r
+                result = trafficAPI.GetPromotionals(searchText)?.ToArray();\r
             if (result == null) {\r
                 dataGridView1.DataSource = null;\r
                 return;\r