Advertisement
patege

compareWhatDafok

Jan 13th, 2021
785
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 9.32 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.IO;
  5. using System.Linq;
  6. using System.Net;
  7. using System.Text;
  8. using System.Text.RegularExpressions;
  9. using System.Web;
  10. using System.Web.Script.Serialization;
  11. using System.Windows.Forms;
  12.  
  13. namespace importwiz
  14. {
  15.     public class allreadyAssigned
  16.     {
  17.         public int id { get; set; }
  18.         public string externalXref { get; set; }
  19.     }
  20.     public class ownerIdfinder
  21.     {
  22.         public string id { get; set; }
  23.         public string externalXref { get; set; }
  24.     }
  25.     class ownerAssign
  26.     {
  27.         public static void ownerMethod()
  28.         {
  29.             allreadyAssigned[] allreadyIds;
  30.             ownerIdfinder[] ids;
  31.             ProgressBar progressBar1 = Form1.main.progressBar1;
  32.             progressBar1.Visible = true;
  33.             progressBar1.Minimum = 0;
  34.             progressBar1.Maximum = 70;
  35.             progressBar1.Value = 0;
  36.             progressBar1.Step = 1;
  37.            
  38.             for (int i = 1; i < 70; i++)
  39.             {
  40.                 WebRequest request = WebRequest.Create("https://cwm.unident.se/v4_6_release/apis/3.0/service/tickets?fields=id,externalXref&pageSize=1000&conditions=externalXref like 'I%'&page=" + i);
  41.                 var myHttpWebRequest = (HttpWebRequest)request;
  42.                 request.Method = "GET";
  43.                 request.ContentType = "application/json";
  44.                 request.Headers.Add("Authorization", "Basic " + encoded);
  45.                 request.Headers.Add("ClientId", clientId);
  46.                 try
  47.                 {
  48.                     var httpResponse = (HttpWebResponse)request.GetResponse();
  49.                     using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
  50.                     {
  51.                         JavaScriptSerializer js = new JavaScriptSerializer();
  52.                         ids = js.Deserialize<ownerIdfinder[]>(streamReader.ReadToEnd());
  53.  
  54.                         WebRequest allreadyRequest = WebRequest.Create("https://cwm.unident.se/v4_6_release/apis/3.0/service/tickets?fields=id,externalXref&pageSize=1000&conditions=externalXref like 'I%' AND owner/identifier like '*1'");
  55.                         var allreadymyHttpWebRequest = (HttpWebRequest)allreadyRequest;
  56.                         allreadyRequest.Method = "GET";
  57.                         allreadyRequest.ContentType = "application/json";
  58.                         allreadyRequest.Headers.Add("Authorization", "Basic " + encoded);
  59.                         allreadyRequest.Headers.Add("ClientId", clientId);
  60.                         try
  61.                         {
  62.                             var allreadyhttpResponse = (HttpWebResponse)allreadyRequest.GetResponse();
  63.                             using (var allreadystreamReader = new StreamReader(allreadyhttpResponse.GetResponseStream()))
  64.                             {
  65.                                 JavaScriptSerializer allreadyjs = new JavaScriptSerializer();
  66.                                 allreadyIds = allreadyjs.Deserialize<allreadyAssigned[]>(allreadystreamReader.ReadToEnd());
  67.                                 foreach (ownerIdfinder id in ids)
  68.                                 {
  69.                                     DataTable dt = sqlFetch.ticketAssigner(id.externalXref.ToString());
  70.                                     //HER VIL JEG AT DE SOM FINNES I ALLREADYASSIGNED SKAL SKIPPES
  71.                                     if ()
  72.                                     {
  73.                                         Console.WriteLine("Skipped " + id.id.ToString());
  74.                                     }
  75.                                     else
  76.                                     {
  77.                                         foreach (DataRow row in dt.Rows)
  78.                                         {
  79.                                             if (getUser(row["owner"].ToString()))
  80.                                             {
  81.                                                 Console.WriteLine(row["owner"] + " " + id.id.ToString());
  82.                                                 owner(row["owner"].ToString(), id.id.ToString());
  83.                                             }
  84.                                         }
  85.                                     }
  86.                                 }
  87.                             }
  88.                         }
  89.                         catch (WebException wex)
  90.                         {
  91.                             if (wex.Response != null)
  92.                             {
  93.                                 using (var errorResponse = (HttpWebResponse)wex.Response)
  94.                                 {
  95.                                     using (var reader = new StreamReader(errorResponse.GetResponseStream()))
  96.                                     {
  97.                                         string error = reader.ReadToEnd();
  98.                                         Console.WriteLine(error);
  99.                                     }
  100.                                 }
  101.                             }
  102.                         }
  103.                        
  104.                     }
  105.                 }
  106.                 catch (WebException wex)
  107.                 {
  108.                     if (wex.Response != null)
  109.                     {
  110.                         using (var errorResponse = (HttpWebResponse)wex.Response)
  111.                         {
  112.                             using (var reader = new StreamReader(errorResponse.GetResponseStream()))
  113.                             {
  114.                                 string error = reader.ReadToEnd();
  115.                                 Console.WriteLine(error);
  116.                             }
  117.                         }
  118.                     }
  119.                 }
  120.                 progressBar1.PerformStep();
  121.             }
  122.             controls.Enable();
  123.         }
  124.         public static void owner(string owner, string id)
  125.         {
  126.             string httpRes;
  127.             string jsonPatch =
  128.             "[{ " +
  129.                 "\"op\": \"replace\", " +
  130.                 "\"path\": \"owner/identifier\", " +
  131.                 "\"value\": \"" + owner + "\"" +
  132.             "}]";
  133.             WebRequest Patchrequest = WebRequest.Create("https://cwm.unident.se/v4_6_release/apis/3.0/service/tickets/" + id);
  134.             var patchmyHttpWebRequest = (HttpWebRequest)Patchrequest;
  135.             Patchrequest.Method = "PATCH";
  136.             Patchrequest.ContentType = "application/json";
  137.             Patchrequest.Headers.Add("Authorization", "Basic " + encoded);
  138.             Patchrequest.Headers.Add("ClientId", clientId);
  139.             using (var streamWriter = new StreamWriter(Patchrequest.GetRequestStream()))
  140.             {
  141.                 streamWriter.Write(jsonPatch);
  142.                 streamWriter.Flush();
  143.                 streamWriter.Close();
  144.             }
  145.             try
  146.             {
  147.                 var patchhttpResponse = (HttpWebResponse)Patchrequest.GetResponse();
  148.                 using (var patchstreamReader = new StreamReader(patchhttpResponse.GetResponseStream()))
  149.                 {
  150.                     var result = patchstreamReader.ReadToEnd();
  151.                     httpRes = result.ToString();
  152.                 }
  153.             }
  154.             catch (WebException wex)
  155.             {
  156.                 if (wex.Response != null)
  157.                 {
  158.                     using (var errorResponse = (HttpWebResponse)wex.Response)
  159.                     {
  160.                         using (var reader = new StreamReader(errorResponse.GetResponseStream()))
  161.                         {
  162.                             string error = reader.ReadToEnd();
  163.                             Console.WriteLine(id + " " + owner + Environment.NewLine + error + Environment.NewLine);
  164.                         }
  165.                     }
  166.                 }
  167.             }
  168.         }
  169.         public static bool getUser(string user)
  170.         {
  171.             bool found = false;
  172.             WebRequest request = WebRequest.Create("https://cwm.unident.se/v4_6_release/apis/3.0/system/members?conditions=identifier = '" + user + "'");
  173.             var myHttpWebRequest = (HttpWebRequest)request;
  174.             request.Method = "GET";
  175.             request.ContentType = "application/json";
  176.             request.Headers.Add("Authorization", "Basic " + encoded);
  177.             request.Headers.Add("ClientId", clientId);
  178.             try
  179.             {
  180.                 var httpResponse = (HttpWebResponse)request.GetResponse();
  181.                 using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
  182.                 {
  183.                     var result = streamReader.ReadToEnd();
  184.                     httpRes = result.ToString();
  185.                     if (httpRes.Length > 2)
  186.                     {
  187.                         found = true;
  188.                     }
  189.                 }
  190.             }
  191.             catch (WebException wex)
  192.             {
  193.                 if (wex.Response != null)
  194.                 {
  195.                     using (var errorResponse = (HttpWebResponse)wex.Response)
  196.                     {
  197.                         using (var reader = new StreamReader(errorResponse.GetResponseStream()))
  198.                         {
  199.                             string error = reader.ReadToEnd();
  200.                             File.AppendAllText("log.txt", error);
  201.                         }
  202.                     }
  203.                 }
  204.             }
  205.             return found;
  206.         }
  207.     }
  208. }
  209.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement