diff options
Diffstat (limited to 'Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs')
| -rw-r--r-- | Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs index 20cf142f0..e5dba6580 100644 --- a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs +++ b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs @@ -33,7 +33,7 @@ namespace Tango.MachineService.Controllers private static List<PPCPendingUpload> _pendingUploads; private static List<PPCPendingUpdate> _pendingUpdates; private ActiveDirectoryManager _ad_manager; - public const int SQL_TEMP_CREDENTIALS_EXP_MINUTS = 20; + public const int SQL_TEMP_CREDENTIALS_EXP_MINUTS = 30; public class TokenObject { @@ -105,7 +105,7 @@ namespace Tango.MachineService.Controllers var machine_version = db.MachineVersions.SingleOrDefault(x => x.Guid == machine.MachineVersionGuid); - var latest_machine_version = db.TangoVersions.Where(x => x.MachineVersionGuid == machine_version.Guid && !x.Disabled).ToList().OrderByDescending(x => Version.Parse(x.Version)).FirstOrDefault(); + var latest_machine_version = db.TangoVersions.Where(x => x.MachineVersionGuid == machine_version.Guid && x.Tag == machine.VersionTag && !x.Disabled).ToList().OrderByDescending(x => Version.Parse(x.Version)).FirstOrDefault(); response.Version = latest_machine_version.Version; response.FirmwareVersion = latest_machine_version.FirmwareVersion; @@ -228,7 +228,7 @@ namespace Tango.MachineService.Controllers var machine_version = db.MachineVersions.SingleOrDefault(x => x.Guid == machine.MachineVersionGuid); - var latest_machine_version = db.TangoVersions.Where(x => x.MachineVersionGuid == machine_version.Guid && !x.Disabled).ToList().OrderByDescending(x => Version.Parse(x.Version)).FirstOrDefault(); + var latest_machine_version = db.TangoVersions.Where(x => x.MachineVersionGuid == machine_version.Guid && x.Tag == machine.VersionTag && !x.Disabled).ToList().OrderByDescending(x => Version.Parse(x.Version)).FirstOrDefault(); response.Version = latest_machine_version.Version; response.FirmwareVersion = latest_machine_version.FirmwareVersion; @@ -347,7 +347,7 @@ namespace Tango.MachineService.Controllers { var machine_version = db.MachineVersions.SingleOrDefault(x => x.Guid == machine.MachineVersionGuid); - var latest_machine_version = db.TangoVersions.Where(x => x.MachineVersionGuid == machine_version.Guid && !x.Disabled).ToList().OrderByDescending(x => Version.Parse(x.Version)).FirstOrDefault(); + var latest_machine_version = db.TangoVersions.Where(x => x.MachineVersionGuid == machine_version.Guid && x.Tag == machine.VersionTag && !x.Disabled).ToList().OrderByDescending(x => Version.Parse(x.Version)).FirstOrDefault(); if (Version.Parse(latest_machine_version.Version) > Version.Parse(request.Version)) { @@ -848,6 +848,26 @@ namespace Tango.MachineService.Controllers } [HttpPost] + public GetTagsResponse GetTags(GetTagsRequest request) + { + GetTagsResponse response = new GetTagsResponse(); + + using (ObservablesContext db = ObservablesContextHelper.CreateContext()) + { + var versions = db.TangoVersions.Where(x => x.MachineVersionGuid == request.MachineVersionGuid).ToList(); + + if (versions.Count == 0) + { + return new GetTagsResponse(); + } + + response.Tags = versions.Select(x => x.Tag).Where(x => x != null).Distinct().ToList(); + } + + return response; + } + + [HttpPost] [JwtTokenFilter] public UploadVersionResponse UploadVersion(UploadVersionRequest request) { @@ -900,6 +920,7 @@ namespace Tango.MachineService.Controllers BlobName = blob.Name, MachineVersionGuid = request.MachineVersionGuid, FirmwareVersion = request.FirmwareVersion, + Tag = String.IsNullOrWhiteSpace(request.Tag) ? null : request.Tag, }; if (request.WithInstaller) @@ -947,6 +968,7 @@ namespace Tango.MachineService.Controllers Version = upload.Version, MachineVersionGuid = upload.MachineVersionGuid, FirmwareVersion = upload.FirmwareVersion, + Tag = upload.Tag, }); db.SaveChanges(); |
