Skip to content

Commit e7628bc

Browse files
committed
v1.1.2
- Added UPLOAD_PHOTO - Updated environments file
1 parent 0a1453b commit e7628bc

File tree

8 files changed

+262
-112
lines changed

8 files changed

+262
-112
lines changed

CLARiNET.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<PackageIcon>CLARiNET.ico</PackageIcon>
88
<PackageIconUrl />
99
<ApplicationIcon>CLARiNET.ico</ApplicationIcon>
10-
<Version>1.1.1</Version>
10+
<Version>1.1.2</Version>
1111
</PropertyGroup>
1212

1313
<ItemGroup>

CommandLineOptions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ namespace CLARiNET
99
{
1010
public class Options
1111
{
12-
[Value(index: 0, MetaName = "Command", Required = false, HelpText = "CLARiNET Commands:\n\nCLAR_UPLOAD\nCLAR_DOWNLOAD\nDRIVE_UPLOAD\nDRIVE_TRASH\nPHOTO_DOWNLOAD\nDOCUMENT_UPLOAD")]
12+
[Value(index: 0, MetaName = "Command", Required = false, HelpText = "CLARiNET Commands:\n\nCLAR_UPLOAD\nCLAR_DOWNLOAD\nDRIVE_UPLOAD\nDRIVE_TRASH\nPHOTO_DOWNLOAD\nPHOTO_UPLOAD\nDOCUMENT_UPLOAD")]
1313
public string Command { get; set; }
1414

1515
[Value(index: 1, MetaName = "File or Directory", Required = false, HelpText = "Path or Path and file name")]

Photo.cs

Lines changed: 56 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,61 @@ public static string Download(Options options, string file, string soapUrl)
9595
return result;
9696
}
9797

98-
98+
public static string Upload(string file, byte[] bytes, string soapUrl, string processedDir, Options options)
99+
{
100+
string xmlData = "";
101+
string result = "";
102+
103+
try
104+
{
105+
xmlData = Resources.Put_Worker_Photo_Request;
106+
string[] fileVars = Path.GetFileName(file).Split("~");
107+
if (fileVars.Length > 1)
108+
{
109+
Console.WriteLine("\n\nProcessing {0} for {1}", fileVars[1], fileVars[0]);
110+
string workerId = fileVars[0];
111+
string filename = fileVars[1];
112+
string workerType = "Employee_ID";
113+
114+
if (fileVars.Length > 2)
115+
{
116+
filename = fileVars[2];
117+
if (fileVars[1].ToUpper() == "C")
118+
{
119+
workerType = "Contingent_Worker_ID";
120+
}
121+
}
122+
// worker id ~ filename
123+
// worker id ~ C ~ filename
124+
xmlData = xmlData.Replace("{workerId}", workerId)
125+
.Replace("{filename}", filename)
126+
.Replace("{workerIdType}", workerType)
127+
.Replace("{filedata}", Convert.ToBase64String(bytes));
128+
129+
result = WDWebService.CallAPI(options.Username + "@" + options.Tenant, options.Password, soapUrl, xmlData);
130+
if (result.IndexOf("<?xml") == 0)
131+
{
132+
string processedFile = Path.Combine(processedDir, Path.GetFileName(file));
133+
int num = 2;
134+
while (File.Exists(processedFile) && num < 100)
135+
{
136+
processedFile = Path.Combine(processedDir, Path.GetFileNameWithoutExtension(file) + "." + num.ToString("000") + Path.GetExtension(file));
137+
num++;
138+
}
139+
File.Move(file, processedFile);
140+
result = String.Format("Processed {0} for {1}", filename, workerId);
141+
}
142+
}
143+
}
144+
catch (Exception ex)
145+
{
146+
Console.WriteLine("\n\nError: " + ex.Message);
147+
Console.WriteLine("\n");
148+
}
149+
150+
return result;
151+
}
152+
153+
99154
}
100155
}

Program.cs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ static void Main(string[] args)
6969
case Command.DRIVE_UPLOAD:
7070
case Command.DRIVE_TRASH:
7171
case Command.PHOTO_DOWNLOAD:
72+
case Command.PHOTO_UPLOAD:
7273
case Command.DOCUMENT_UPLOAD:
7374
soapUrl = SoapUrlBuild(options.Command);
7475
break;
@@ -104,6 +105,9 @@ static void Main(string[] args)
104105
case Command.PHOTO_DOWNLOAD:
105106
Console.WriteLine("\n\nDownloading photos...\n\n");
106107
break;
108+
case Command.PHOTO_UPLOAD:
109+
Console.WriteLine("\n\nUploading photos...\n\n");
110+
break;
107111
case Command.DOCUMENT_UPLOAD:
108112
Console.WriteLine("\n\nUploading documents...\n\n");
109113
break;
@@ -141,6 +145,10 @@ static void Main(string[] args)
141145
case Command.PHOTO_DOWNLOAD:
142146
result = Photos.Download(options, file, soapUrl);
143147
break;
148+
case Command.PHOTO_UPLOAD:
149+
bytes = File.ReadAllBytes(file);
150+
result = Photos.Upload(file, bytes, soapUrl, processedDir, options);
151+
break;
144152
case Command.DOCUMENT_UPLOAD:
145153
bytes = File.ReadAllBytes(file);
146154
result = Documents.Upload(file, bytes, soapUrl, processedDir, options);
@@ -295,6 +303,7 @@ static bool InitOptions(string[] args)
295303
case Command.PHOTO_DOWNLOAD:
296304
searchPattern = options.Parameters;
297305
break;
306+
case Command.PHOTO_UPLOAD:
298307
case Command.DOCUMENT_UPLOAD:
299308
searchPattern = "*.*";
300309
break;
@@ -359,6 +368,7 @@ static void CommandOption()
359368
case Command.DRIVE_UPLOAD:
360369
case Command.DRIVE_TRASH:
361370
case Command.PHOTO_DOWNLOAD:
371+
case Command.PHOTO_UPLOAD:
362372
case Command.DOCUMENT_UPLOAD:
363373
break;
364374
default:
@@ -388,6 +398,7 @@ static void PathOption()
388398
case Command.PHOTO_DOWNLOAD:
389399
options.Path = appDir;
390400
break;
401+
case Command.PHOTO_UPLOAD:
391402
case Command.DOCUMENT_UPLOAD:
392403
options.Path = inboundDir;
393404
break;
@@ -433,6 +444,7 @@ static void ParameterOption()
433444
Console.WriteLine("");
434445
searchPattern = options.Parameters;
435446
break;
447+
case Command.PHOTO_UPLOAD:
436448
case Command.DOCUMENT_UPLOAD:
437449
searchPattern = "*.*";
438450
break;
@@ -552,6 +564,7 @@ static string SoapUrlBuild(string command)
552564
case Command.DRIVE_TRASH:
553565
soapUrl += "/{tenant}/Drive/{version}";
554566
break;
567+
case Command.PHOTO_UPLOAD:
555568
case Command.PHOTO_DOWNLOAD:
556569
soapUrl += "/{tenant}/Human_Resources/{version}";
557570
break;

Resources.Designer.cs

Lines changed: 33 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Resources.resx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,19 @@
181181
&lt;bsvc:Content_Type&gt;{contentType}&lt;/bsvc:Content_Type&gt;
182182
&lt;/bsvc:Worker_Document_Data&gt;
183183
&lt;/bsvc:Put_Worker_Document_Request&gt;</value>
184+
</data>
185+
<data name="Put_Worker_Photo_Request" xml:space="preserve">
186+
<value>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
187+
&lt;bsvc:Put_Worker_Photo_Request bsvc:version="v39.1" xmlns:bsvc="urn:com.workday/bsvc"&gt;
188+
&lt;bsvc:Worker_Reference&gt;
189+
&lt;bsvc:ID bsvc:type="{workerIdType}"&gt;{workerId}&lt;/bsvc:ID&gt;
190+
&lt;/bsvc:Worker_Reference&gt;
191+
&lt;bsvc:Worker_Photo_Data&gt;
192+
&lt;bsvc:ID&gt;{workerId}&lt;/bsvc:ID&gt;
193+
&lt;bsvc:Filename&gt;{filename}&lt;/bsvc:Filename&gt;
194+
&lt;bsvc:File&gt;{filedata}&lt;/bsvc:File&gt;
195+
&lt;/bsvc:Worker_Photo_Data&gt;
196+
&lt;/bsvc:Put_Worker_Photo_Request&gt;</value>
184197
</data>
185198
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
186199
<data name="WDEnvironments" type="System.Resources.ResXFileRef, System.Windows.Forms">

0 commit comments

Comments
 (0)