Bump
Remove static from solution
This commit is contained in:
parent
141f9c084a
commit
0a529a0206
@ -28,19 +28,19 @@
|
||||
<PackageReference Include="Dapper" Version="2.1.44" />
|
||||
<PackageReference Include="EntityFramework" Version="6.5.1" />
|
||||
<PackageReference Include="jQuery" Version="3.7.1" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="8.0.7" />
|
||||
<PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting.WindowsServices" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.EventLog" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="8.0.10" />
|
||||
<PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting.WindowsServices" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.EventLog" Version="8.0.1" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.6.2" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.8.1" />
|
||||
<PackageReference Include="System.Data.SqlClient" Version="4.8.6" />
|
||||
<PackageReference Include="System.Drawing.Common" Version="8.0.7" />
|
||||
<PackageReference Include="System.Drawing.Common" Version="8.0.10" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Shared\OI.Metrology.Shared.csproj" />
|
||||
|
@ -1,65 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - 122508 - Feature iteration should be set to max of children</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/122508.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/122508.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 20px;">
|
||||
Mesa - 122508 - Feature iteration should be set to max of children
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/122508">122508</a></li>
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 10px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/check-122508.json?v=2024-10-07-18-50");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,65 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - 122514 - Features and children must have a Tag</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/122514.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/122514.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 20px;">
|
||||
Mesa - 122514 - Features and children must have a Tag
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/122514">122514</a></li>
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 10px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/check-122514.json?v=2024-10-07-18-50");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,65 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - 123066 - When children of a Feature are not New Feature must also not be New</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/123066.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/123066.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 20px;">
|
||||
Mesa - 123066 - When children of a Feature are not New Feature must also not be New
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/123066">123066</a></li>
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 10px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/check-123066.json?v=2024-10-07-18-50");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,65 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - 123067 - WIP</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/123067.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/123067.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 20px;">
|
||||
Mesa - 123067 - WIP
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/123067">123067</a></li>
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 10px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/check-123067.json?v=2024-10-07-18-50");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,65 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - 126169 - Children of a Feature should have the same priority</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/126169.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/126169.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 20px;">
|
||||
Mesa - 126169 - Children of a Feature should have the same priority
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/126169">126169</a></li>
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 10px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/check-126169.json?v=2024-10-07-18-50");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,68 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - Business Value</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/business.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/business.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 1200px; background-color: whitesmoke;">
|
||||
Mesa - Business Value</br>
|
||||
What is the relative value to the Customer or business?
|
||||
• Do our users prefer this over that?
|
||||
• What is the revenue impact on our business?
|
||||
• Is there a potential penalty or other negative effects if we delay?
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 80px; margin-left: 15px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid" border="1"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/with-parents.json?v=2024-10-07-18-50", "http://localhost:5003/api/v1/ado/");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,64 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - Effort</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/effort.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/effort.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 1200px; background-color: whitesmoke;">
|
||||
Mesa - Effort
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 80px; margin-left: 15px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid" border="1"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/with-parents.json?v=2024-10-07-18-50", "http://localhost:5003/api/v1/ado/");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,68 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - Risk Reduction and/or Opportunity Enablement</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/risk.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/risk.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 1200px; background-color: whitesmoke;">
|
||||
Mesa - Risk Reduction and/or Opportunity Enablement</br>
|
||||
What else does this do for our business?
|
||||
• Reduce the risk of this or future delivery?
|
||||
• Is there value in the information we will receive?
|
||||
• Enable new business opportunities?
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 80px; margin-left: 15px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid" border="1"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/with-parents.json?v=2024-10-07-18-50", "http://localhost:5003/api/v1/ado/");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,69 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - Time Criticality</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/time.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/time.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 1200px; background-color: whitesmoke;">
|
||||
Mesa - Time Criticality</br>
|
||||
How does user/business value decay over time?
|
||||
• Is there a fixed deadline?
|
||||
• Will they wait for us or move to another Solution?
|
||||
• What is the current effect on Customer satisfaction?
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 80px; margin-left: 15px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid" border="1"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/with-parents.json?v=2024-10-07-18-50", "http://localhost:5003/api/v1/ado/");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,64 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - User Stor(ies) with parents</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/with-parents.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/with-parents.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 20px;">
|
||||
Mesa - User Stor(ies) with parents
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 10px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/with-parents.json?v=2024-10-07-18-50");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,64 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Mesa - Result of Weightest Shortest Job First calculation (see @SCALE formula)</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/wsjf.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/wsjf.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 20px;">
|
||||
Mesa - Result of Weightest Shortest Job First calculation (see @SCALE formula)
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 40px; margin-left: 15px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid" border="1"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/markdown/with-parents.json?v=2024-10-07-18-50", "http://localhost:5003/api/v1/ado/");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,160 +0,0 @@
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.TimeCriticality[0] - b.TimeCriticality[0] || b.State[0] - a.State[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
workItem = data[i];
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function initIndex(url) {
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
$("#HeaderGrid").igGrid({
|
||||
autoGenerateColumns: false,
|
||||
dataSource: workItems,
|
||||
height: "100%",
|
||||
primaryKey: "Id",
|
||||
width: "100%",
|
||||
columns: [
|
||||
{ key: "Violation", dataType: "string", hidden: true },
|
||||
{ key: "Id", dataType: "number" },
|
||||
{ key: "Requester", dataType: "string" },
|
||||
{ headerText: "Assigned To", key: "AssignedTo", dataType: "string" },
|
||||
{ key: "Title", dataType: "string", width: "20%" },
|
||||
{ headerText: "System(s)", key: "Tags", dataType: "string" },
|
||||
{ key: "Priority", dataType: "string" },
|
||||
{ headerText: "Qual/Eff", key: "TimeCriticality", dataType: "string" },
|
||||
{ key: "State", dataType: "string" },
|
||||
{ headerText: "Effort in Days", key: "Effort", dataType: "number" },
|
||||
{ headerText: "UAT as of", key: "ResolvedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "CMP Date", key: "ClosedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "Target", key: "TargetDate", dataType: "date", format: "date" },
|
||||
{ key: "AreaPath", dataType: "string", hidden: true },
|
||||
{ key: "AssignedTo", dataType: "string", hidden: true },
|
||||
{ key: "BusinessValue", dataType: "number", hidden: true },
|
||||
{ key: "ChangedDate", dataType: "string", hidden: true },
|
||||
{ key: "CommentCount", dataType: "number", hidden: true },
|
||||
{ key: "CreatedDate", dataType: "string", hidden: true },
|
||||
{ key: "Description", dataType: "string", hidden: true },
|
||||
{ key: "IterationPath", dataType: "string", hidden: true },
|
||||
{ key: "Revision", dataType: "number", hidden: true },
|
||||
{ key: "RiskReductionMinusOpportunityEnablement", dataType: "string", hidden: true },
|
||||
{ key: "StartDate", dataType: "string", hidden: true },
|
||||
{ key: "WeightedShortestJobFirst", dataType: "number", hidden: true },
|
||||
{ key: "WorkItemType", dataType: "string", hidden: true },
|
||||
],
|
||||
features: [
|
||||
{ name: "Sorting", type: "local" },
|
||||
{ name: "Filtering", type: "local" },
|
||||
{ name: "Selection", mode: "row", multipleSelection: false, rowSelectionChanging: detailSelectionChangedRunInfo },
|
||||
{ name: "Paging", type: "local", recordCountKey: "TotalRows", pageSize: 10, pageSizeUrlKey: "pageSize", "pageIndexUrlKey": "page", showPageSizeDropDown: true },
|
||||
],
|
||||
});
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,160 +0,0 @@
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.TimeCriticality[0] - b.TimeCriticality[0] || b.State[0] - a.State[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
workItem = data[i];
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function initIndex(url) {
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
$("#HeaderGrid").igGrid({
|
||||
autoGenerateColumns: false,
|
||||
dataSource: workItems,
|
||||
height: "100%",
|
||||
primaryKey: "Id",
|
||||
width: "100%",
|
||||
columns: [
|
||||
{ key: "Violation", dataType: "string", hidden: true },
|
||||
{ key: "Id", dataType: "number" },
|
||||
{ key: "Requester", dataType: "string" },
|
||||
{ headerText: "Assigned To", key: "AssignedTo", dataType: "string" },
|
||||
{ key: "Title", dataType: "string", width: "20%" },
|
||||
{ headerText: "System(s)", key: "Tags", dataType: "string" },
|
||||
{ key: "Priority", dataType: "string" },
|
||||
{ headerText: "Qual/Eff", key: "TimeCriticality", dataType: "string" },
|
||||
{ key: "State", dataType: "string" },
|
||||
{ headerText: "Effort in Days", key: "Effort", dataType: "number" },
|
||||
{ headerText: "UAT as of", key: "ResolvedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "CMP Date", key: "ClosedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "Target", key: "TargetDate", dataType: "date", format: "date" },
|
||||
{ key: "AreaPath", dataType: "string", hidden: true },
|
||||
{ key: "AssignedTo", dataType: "string", hidden: true },
|
||||
{ key: "BusinessValue", dataType: "number", hidden: true },
|
||||
{ key: "ChangedDate", dataType: "string", hidden: true },
|
||||
{ key: "CommentCount", dataType: "number", hidden: true },
|
||||
{ key: "CreatedDate", dataType: "string", hidden: true },
|
||||
{ key: "Description", dataType: "string", hidden: true },
|
||||
{ key: "IterationPath", dataType: "string", hidden: true },
|
||||
{ key: "Revision", dataType: "number", hidden: true },
|
||||
{ key: "RiskReductionMinusOpportunityEnablement", dataType: "string", hidden: true },
|
||||
{ key: "StartDate", dataType: "string", hidden: true },
|
||||
{ key: "WeightedShortestJobFirst", dataType: "number", hidden: true },
|
||||
{ key: "WorkItemType", dataType: "string", hidden: true },
|
||||
],
|
||||
features: [
|
||||
{ name: "Sorting", type: "local" },
|
||||
{ name: "Filtering", type: "local" },
|
||||
{ name: "Selection", mode: "row", multipleSelection: false, rowSelectionChanging: detailSelectionChangedRunInfo },
|
||||
{ name: "Paging", type: "local", recordCountKey: "TotalRows", pageSize: 10, pageSizeUrlKey: "pageSize", "pageIndexUrlKey": "page", showPageSizeDropDown: true },
|
||||
],
|
||||
});
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,160 +0,0 @@
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.TimeCriticality[0] - b.TimeCriticality[0] || b.State[0] - a.State[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
workItem = data[i];
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function initIndex(url) {
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
$("#HeaderGrid").igGrid({
|
||||
autoGenerateColumns: false,
|
||||
dataSource: workItems,
|
||||
height: "100%",
|
||||
primaryKey: "Id",
|
||||
width: "100%",
|
||||
columns: [
|
||||
{ key: "Violation", dataType: "string", hidden: true },
|
||||
{ key: "Id", dataType: "number" },
|
||||
{ key: "Requester", dataType: "string" },
|
||||
{ headerText: "Assigned To", key: "AssignedTo", dataType: "string" },
|
||||
{ key: "Title", dataType: "string", width: "20%" },
|
||||
{ headerText: "System(s)", key: "Tags", dataType: "string" },
|
||||
{ key: "Priority", dataType: "string" },
|
||||
{ headerText: "Qual/Eff", key: "TimeCriticality", dataType: "string" },
|
||||
{ key: "State", dataType: "string" },
|
||||
{ headerText: "Effort in Days", key: "Effort", dataType: "number" },
|
||||
{ headerText: "UAT as of", key: "ResolvedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "CMP Date", key: "ClosedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "Target", key: "TargetDate", dataType: "date", format: "date" },
|
||||
{ key: "AreaPath", dataType: "string", hidden: true },
|
||||
{ key: "AssignedTo", dataType: "string", hidden: true },
|
||||
{ key: "BusinessValue", dataType: "number", hidden: true },
|
||||
{ key: "ChangedDate", dataType: "string", hidden: true },
|
||||
{ key: "CommentCount", dataType: "number", hidden: true },
|
||||
{ key: "CreatedDate", dataType: "string", hidden: true },
|
||||
{ key: "Description", dataType: "string", hidden: true },
|
||||
{ key: "IterationPath", dataType: "string", hidden: true },
|
||||
{ key: "Revision", dataType: "number", hidden: true },
|
||||
{ key: "RiskReductionMinusOpportunityEnablement", dataType: "string", hidden: true },
|
||||
{ key: "StartDate", dataType: "string", hidden: true },
|
||||
{ key: "WeightedShortestJobFirst", dataType: "number", hidden: true },
|
||||
{ key: "WorkItemType", dataType: "string", hidden: true },
|
||||
],
|
||||
features: [
|
||||
{ name: "Sorting", type: "local" },
|
||||
{ name: "Filtering", type: "local" },
|
||||
{ name: "Selection", mode: "row", multipleSelection: false, rowSelectionChanging: detailSelectionChangedRunInfo },
|
||||
{ name: "Paging", type: "local", recordCountKey: "TotalRows", pageSize: 10, pageSizeUrlKey: "pageSize", "pageIndexUrlKey": "page", showPageSizeDropDown: true },
|
||||
],
|
||||
});
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,160 +0,0 @@
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.TimeCriticality[0] - b.TimeCriticality[0] || b.State[0] - a.State[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
workItem = data[i];
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function initIndex(url) {
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
$("#HeaderGrid").igGrid({
|
||||
autoGenerateColumns: false,
|
||||
dataSource: workItems,
|
||||
height: "100%",
|
||||
primaryKey: "Id",
|
||||
width: "100%",
|
||||
columns: [
|
||||
{ key: "Violation", dataType: "string", hidden: true },
|
||||
{ key: "Id", dataType: "number" },
|
||||
{ key: "Requester", dataType: "string" },
|
||||
{ headerText: "Assigned To", key: "AssignedTo", dataType: "string" },
|
||||
{ key: "Title", dataType: "string", width: "20%" },
|
||||
{ headerText: "System(s)", key: "Tags", dataType: "string" },
|
||||
{ key: "Priority", dataType: "string" },
|
||||
{ headerText: "Qual/Eff", key: "TimeCriticality", dataType: "string" },
|
||||
{ key: "State", dataType: "string" },
|
||||
{ headerText: "Effort in Days", key: "Effort", dataType: "number" },
|
||||
{ headerText: "UAT as of", key: "ResolvedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "CMP Date", key: "ClosedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "Target", key: "TargetDate", dataType: "date", format: "date" },
|
||||
{ key: "AreaPath", dataType: "string", hidden: true },
|
||||
{ key: "AssignedTo", dataType: "string", hidden: true },
|
||||
{ key: "BusinessValue", dataType: "number", hidden: true },
|
||||
{ key: "ChangedDate", dataType: "string", hidden: true },
|
||||
{ key: "CommentCount", dataType: "number", hidden: true },
|
||||
{ key: "CreatedDate", dataType: "string", hidden: true },
|
||||
{ key: "Description", dataType: "string", hidden: true },
|
||||
{ key: "IterationPath", dataType: "string", hidden: true },
|
||||
{ key: "Revision", dataType: "number", hidden: true },
|
||||
{ key: "RiskReductionMinusOpportunityEnablement", dataType: "string", hidden: true },
|
||||
{ key: "StartDate", dataType: "string", hidden: true },
|
||||
{ key: "WeightedShortestJobFirst", dataType: "number", hidden: true },
|
||||
{ key: "WorkItemType", dataType: "string", hidden: true },
|
||||
],
|
||||
features: [
|
||||
{ name: "Sorting", type: "local" },
|
||||
{ name: "Filtering", type: "local" },
|
||||
{ name: "Selection", mode: "row", multipleSelection: false, rowSelectionChanging: detailSelectionChangedRunInfo },
|
||||
{ name: "Paging", type: "local", recordCountKey: "TotalRows", pageSize: 10, pageSizeUrlKey: "pageSize", "pageIndexUrlKey": "page", showPageSizeDropDown: true },
|
||||
],
|
||||
});
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,160 +0,0 @@
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.TimeCriticality[0] - b.TimeCriticality[0] || b.State[0] - a.State[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
workItem = data[i];
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function initIndex(url) {
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
$("#HeaderGrid").igGrid({
|
||||
autoGenerateColumns: false,
|
||||
dataSource: workItems,
|
||||
height: "100%",
|
||||
primaryKey: "Id",
|
||||
width: "100%",
|
||||
columns: [
|
||||
{ key: "Violation", dataType: "string", hidden: true },
|
||||
{ key: "Id", dataType: "number" },
|
||||
{ key: "Requester", dataType: "string" },
|
||||
{ headerText: "Assigned To", key: "AssignedTo", dataType: "string" },
|
||||
{ key: "Title", dataType: "string", width: "20%" },
|
||||
{ headerText: "System(s)", key: "Tags", dataType: "string" },
|
||||
{ key: "Priority", dataType: "string" },
|
||||
{ headerText: "Qual/Eff", key: "TimeCriticality", dataType: "string" },
|
||||
{ key: "State", dataType: "string" },
|
||||
{ headerText: "Effort in Days", key: "Effort", dataType: "number" },
|
||||
{ headerText: "UAT as of", key: "ResolvedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "CMP Date", key: "ClosedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "Target", key: "TargetDate", dataType: "date", format: "date" },
|
||||
{ key: "AreaPath", dataType: "string", hidden: true },
|
||||
{ key: "AssignedTo", dataType: "string", hidden: true },
|
||||
{ key: "BusinessValue", dataType: "number", hidden: true },
|
||||
{ key: "ChangedDate", dataType: "string", hidden: true },
|
||||
{ key: "CommentCount", dataType: "number", hidden: true },
|
||||
{ key: "CreatedDate", dataType: "string", hidden: true },
|
||||
{ key: "Description", dataType: "string", hidden: true },
|
||||
{ key: "IterationPath", dataType: "string", hidden: true },
|
||||
{ key: "Revision", dataType: "number", hidden: true },
|
||||
{ key: "RiskReductionMinusOpportunityEnablement", dataType: "string", hidden: true },
|
||||
{ key: "StartDate", dataType: "string", hidden: true },
|
||||
{ key: "WeightedShortestJobFirst", dataType: "number", hidden: true },
|
||||
{ key: "WorkItemType", dataType: "string", hidden: true },
|
||||
],
|
||||
features: [
|
||||
{ name: "Sorting", type: "local" },
|
||||
{ name: "Filtering", type: "local" },
|
||||
{ name: "Selection", mode: "row", multipleSelection: false, rowSelectionChanging: detailSelectionChangedRunInfo },
|
||||
{ name: "Paging", type: "local", recordCountKey: "TotalRows", pageSize: 10, pageSizeUrlKey: "pageSize", "pageIndexUrlKey": "page", showPageSizeDropDown: true },
|
||||
],
|
||||
});
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,170 +0,0 @@
|
||||
var _apiUrl = null;
|
||||
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var parent;
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
parent = data[i].Parent;
|
||||
workItem = data[i].WorkItem;
|
||||
if (workItem.WorkItemType !== 'Feature')
|
||||
continue;
|
||||
if (workItem.IterationPath !== 'ART SPS')
|
||||
continue;
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
if (parent === null) {
|
||||
workItem["ParentId"] = null;
|
||||
workItem["ParentTitle"] = null;
|
||||
workItem["ParentState"] = null;
|
||||
}
|
||||
else {
|
||||
workItem["ParentId"] = parent["Id"];
|
||||
workItem["ParentTitle"] = parent["Title"];
|
||||
workItem["ParentState"] = getState(parent["State"]);
|
||||
}
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function sendValue(element, page, id) {
|
||||
$.post(_apiUrl + "save", { time: new Date().getTime(), id: id, page: page, value: element.value }, function (data) {
|
||||
console.log("Posted value of " + element.value + " for " + id + " on page " + page);
|
||||
});
|
||||
}
|
||||
|
||||
function setWorkItems(workItems) {
|
||||
var record;
|
||||
var html = "<tr><th>Parent Id</th><th>Parent Title</th><th>Id</th><th>Requester</th><th>Title</th><th>Assigned To</th><th>System(s)</th><th>Value</th></tr>";
|
||||
const element = document.getElementById("HeaderGrid");
|
||||
for (var i = 0; i < workItems.length; i++) {
|
||||
record = workItems[i];
|
||||
html += "<tr><td>" + '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + record.ParentId + '">' + record.ParentId + "</a>" +
|
||||
"</td><td>" + record.ParentTitle +
|
||||
"</td><td>" + '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + record.Id + '">' + record.Id + "</a>" +
|
||||
"</td><td>" + record.Requester +
|
||||
"</td><td>" + record.Title +
|
||||
"</td><td>" + record.AssignedTo +
|
||||
"</td><td>" + record.Tags +
|
||||
"</td><td>" +
|
||||
'<select onchange="sendValue(this, \'business\', ' + record.Id + ')">' +
|
||||
'<option value="9">Unknown</option>' +
|
||||
'<option value="1">High (Most Value)</option>' +
|
||||
'<option value="2">Medium</option>' +
|
||||
'<option value="3">Low</option>' +
|
||||
'</select>' +
|
||||
"</td></tr>";
|
||||
}
|
||||
element.innerHTML = html.replaceAll(">null<", "> <");
|
||||
}
|
||||
|
||||
function initIndex(url, apiUrl) {
|
||||
_apiUrl = apiUrl;
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
setWorkItems(workItems);
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,170 +0,0 @@
|
||||
var _apiUrl = null;
|
||||
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var parent;
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
parent = data[i].Parent;
|
||||
workItem = data[i].WorkItem;
|
||||
if (workItem.WorkItemType !== 'Feature')
|
||||
continue;
|
||||
if (workItem.IterationPath !== 'ART SPS')
|
||||
continue;
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
if (parent === null) {
|
||||
workItem["ParentId"] = null;
|
||||
workItem["ParentTitle"] = null;
|
||||
workItem["ParentState"] = null;
|
||||
}
|
||||
else {
|
||||
workItem["ParentId"] = parent["Id"];
|
||||
workItem["ParentTitle"] = parent["Title"];
|
||||
workItem["ParentState"] = getState(parent["State"]);
|
||||
}
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function sendValue(element, page, id) {
|
||||
$.post(_apiUrl + "save", { time: new Date().getTime(), id: id, page: page, value: element.value }, function (data) {
|
||||
console.log("Posted value of " + element.value + " for " + id + " on page " + page);
|
||||
});
|
||||
}
|
||||
|
||||
function setWorkItems(workItems) {
|
||||
var record;
|
||||
var html = "<tr><th>Parent Id</th><th>Parent Title</th><th>Id</th><th>Requester</th><th>Title</th><th>Assigned To</th><th>System(s)</th><th>Value</th></tr>";
|
||||
const element = document.getElementById("HeaderGrid");
|
||||
for (var i = 0; i < workItems.length; i++) {
|
||||
record = workItems[i];
|
||||
html += "<tr><td>" + '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + record.ParentId + '">' + record.ParentId + "</a>" +
|
||||
"</td><td>" + record.ParentTitle +
|
||||
"</td><td>" + '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + record.Id + '">' + record.Id + "</a>" +
|
||||
"</td><td>" + record.Requester +
|
||||
"</td><td>" + record.Title +
|
||||
"</td><td>" + record.AssignedTo +
|
||||
"</td><td>" + record.Tags +
|
||||
"</td><td>" +
|
||||
'<select onchange="sendValue(this, \'effort\', ' + record.Id + ')">' +
|
||||
'<option value="9">Unknown</option>' +
|
||||
'<option value="1">High (Most Effort)</option>' +
|
||||
'<option value="2">Medium</option>' +
|
||||
'<option value="3">Low</option>' +
|
||||
'</select>' +
|
||||
"</td></tr>";
|
||||
}
|
||||
element.innerHTML = html.replaceAll(">null<", "> <");
|
||||
}
|
||||
|
||||
function initIndex(url, apiUrl) {
|
||||
_apiUrl = apiUrl;
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
setWorkItems(workItems);
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
161
Static/js/leo.js
161
Static/js/leo.js
@ -1,161 +0,0 @@
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.TimeCriticality[0] - b.TimeCriticality[0] || b.State[0] - a.State[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "ADO Edit", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var workItems = [];
|
||||
var workItem;
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
workItem = data[i];
|
||||
if (workItem.AreaPath !== 'ART SPS\\LEO')
|
||||
continue;
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if (workItem.WorkItemType !== 'Feature' && workItem.WorkItemType !== 'Bug')
|
||||
continue;
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function initIndex(url) {
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
$("#HeaderGrid").igGrid({
|
||||
autoGenerateColumns: false,
|
||||
dataSource: workItems,
|
||||
height: "100%",
|
||||
primaryKey: "Id",
|
||||
width: "100%",
|
||||
columns: [
|
||||
{ key: "Id", dataType: "number" },
|
||||
{ key: "Requester", dataType: "string" },
|
||||
{ headerText: "Assigned To", key: "AssignedTo", dataType: "string" },
|
||||
{ key: "Title", dataType: "string", width: "20%" },
|
||||
{ headerText: "System(s)", key: "Tags", dataType: "string" },
|
||||
{ key: "Priority", dataType: "string" },
|
||||
{ headerText: "Qual/Eff", key: "TimeCriticality", dataType: "string" },
|
||||
{ key: "State", dataType: "string" },
|
||||
{ headerText: "Effort in Days", key: "Effort", dataType: "number" },
|
||||
{ headerText: "UAT as of", key: "ResolvedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "CMP Date", key: "ClosedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "Target", key: "TargetDate", dataType: "date", format: "date" },
|
||||
{ key: "AreaPath", dataType: "string", hidden: true },
|
||||
{ key: "AssignedTo", dataType: "string", hidden: true },
|
||||
{ key: "BusinessValue", dataType: "number", hidden: true },
|
||||
{ key: "ChangedDate", dataType: "string", hidden: true },
|
||||
{ key: "CommentCount", dataType: "number", hidden: true },
|
||||
{ key: "CreatedDate", dataType: "string", hidden: true },
|
||||
{ key: "Description", dataType: "string", hidden: true },
|
||||
{ key: "IterationPath", dataType: "string", hidden: true },
|
||||
{ key: "Revision", dataType: "number", hidden: true },
|
||||
{ key: "RiskReductionMinusOpportunityEnablement", dataType: "string", hidden: true },
|
||||
{ key: "StartDate", dataType: "string", hidden: true },
|
||||
{ key: "WorkItemType", dataType: "string", hidden: true },
|
||||
{ key: "WeightedShortestJobFirst", dataType: "number", hidden: true },
|
||||
],
|
||||
features: [
|
||||
{ name: "Sorting", type: "local" },
|
||||
{ name: "Filtering", type: "local" },
|
||||
{ name: "Selection", mode: "row", multipleSelection: false, rowSelectionChanging: detailSelectionChangedRunInfo },
|
||||
{ name: "Paging", type: "local", recordCountKey: "TotalRows", pageSize: 10, pageSizeUrlKey: "pageSize", "pageIndexUrlKey": "page", showPageSizeDropDown: true },
|
||||
],
|
||||
});
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
161
Static/js/mes.js
161
Static/js/mes.js
@ -1,161 +0,0 @@
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.TimeCriticality[0] - b.TimeCriticality[0] || b.State[0] - a.State[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var workItems = [];
|
||||
var workItem;
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
workItem = data[i];
|
||||
if (workItem.AreaPath !== 'ART SPS\\MES')
|
||||
continue;
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if (workItem.WorkItemType !== 'Feature' && workItem.WorkItemType !== 'Bug')
|
||||
continue;
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function initIndex(url) {
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
$("#HeaderGrid").igGrid({
|
||||
autoGenerateColumns: false,
|
||||
dataSource: workItems,
|
||||
height: "100%",
|
||||
primaryKey: "Id",
|
||||
width: "100%",
|
||||
columns: [
|
||||
{ key: "Id", dataType: "number" },
|
||||
{ key: "Requester", dataType: "string" },
|
||||
{ headerText: "Assigned To", key: "AssignedTo", dataType: "string" },
|
||||
{ key: "Title", dataType: "string", width: "20%" },
|
||||
{ headerText: "System(s)", key: "Tags", dataType: "string" },
|
||||
{ key: "Priority", dataType: "string" },
|
||||
{ headerText: "Qual/Eff", key: "TimeCriticality", dataType: "string" },
|
||||
{ key: "State", dataType: "string" },
|
||||
{ headerText: "Effort in Days", key: "Effort", dataType: "number" },
|
||||
{ headerText: "UAT as of", key: "ResolvedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "CMP Date", key: "ClosedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "Target", key: "TargetDate", dataType: "date", format: "date" },
|
||||
{ key: "AreaPath", dataType: "string", hidden: true },
|
||||
{ key: "AssignedTo", dataType: "string", hidden: true },
|
||||
{ key: "BusinessValue", dataType: "number", hidden: true },
|
||||
{ key: "ChangedDate", dataType: "string", hidden: true },
|
||||
{ key: "CommentCount", dataType: "number", hidden: true },
|
||||
{ key: "CreatedDate", dataType: "string", hidden: true },
|
||||
{ key: "Description", dataType: "string", hidden: true },
|
||||
{ key: "IterationPath", dataType: "string", hidden: true },
|
||||
{ key: "Revision", dataType: "number", hidden: true },
|
||||
{ key: "RiskReductionMinusOpportunityEnablement", dataType: "string", hidden: true },
|
||||
{ key: "StartDate", dataType: "string", hidden: true },
|
||||
{ key: "WorkItemType", dataType: "string", hidden: true },
|
||||
{ key: "WeightedShortestJobFirst", dataType: "number", hidden: true },
|
||||
],
|
||||
features: [
|
||||
{ name: "Sorting", type: "local" },
|
||||
{ name: "Filtering", type: "local" },
|
||||
{ name: "Selection", mode: "row", multipleSelection: false, rowSelectionChanging: detailSelectionChangedRunInfo },
|
||||
{ name: "Paging", type: "local", recordCountKey: "TotalRows", pageSize: 10, pageSizeUrlKey: "pageSize", "pageIndexUrlKey": "page", showPageSizeDropDown: true },
|
||||
],
|
||||
});
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,170 +0,0 @@
|
||||
var _apiUrl = null;
|
||||
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var parent;
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
parent = data[i].Parent;
|
||||
workItem = data[i].WorkItem;
|
||||
if (workItem.WorkItemType !== 'Feature')
|
||||
continue;
|
||||
if (workItem.IterationPath !== 'ART SPS')
|
||||
continue;
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
if (parent === null) {
|
||||
workItem["ParentId"] = null;
|
||||
workItem["ParentTitle"] = null;
|
||||
workItem["ParentState"] = null;
|
||||
}
|
||||
else {
|
||||
workItem["ParentId"] = parent["Id"];
|
||||
workItem["ParentTitle"] = parent["Title"];
|
||||
workItem["ParentState"] = getState(parent["State"]);
|
||||
}
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function sendValue(element, page, id) {
|
||||
$.post(_apiUrl + "save", { time: new Date().getTime(), id: id, page: page, value: element.value }, function (data) {
|
||||
console.log("Posted value of " + element.value + " for " + id + " on page " + page);
|
||||
});
|
||||
}
|
||||
|
||||
function setWorkItems(workItems) {
|
||||
var record;
|
||||
var html = "<tr><th>Parent Id</th><th>Parent Title</th><th>Id</th><th>Requester</th><th>Title</th><th>Assigned To</th><th>System(s)</th><th>Value</th></tr>";
|
||||
const element = document.getElementById("HeaderGrid");
|
||||
for (var i = 0; i < workItems.length; i++) {
|
||||
record = workItems[i];
|
||||
html += "<tr><td>" + '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + record.ParentId + '">' + record.ParentId + "</a>" +
|
||||
"</td><td>" + record.ParentTitle +
|
||||
"</td><td>" + '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + record.Id + '">' + record.Id + "</a>" +
|
||||
"</td><td>" + record.Requester +
|
||||
"</td><td>" + record.Title +
|
||||
"</td><td>" + record.AssignedTo +
|
||||
"</td><td>" + record.Tags +
|
||||
"</td><td>" +
|
||||
'<select onchange="sendValue(this, \'risk\', ' + record.Id + ')">' +
|
||||
'<option value="9">Unknown</option>' +
|
||||
'<option value="1">High (Most Risk)</option>' +
|
||||
'<option value="2">Medium</option>' +
|
||||
'<option value="3">Low</option>' +
|
||||
'</select>' +
|
||||
"</td></tr>";
|
||||
}
|
||||
element.innerHTML = html.replaceAll(">null<", "> <");
|
||||
}
|
||||
|
||||
function initIndex(url, apiUrl) {
|
||||
_apiUrl = apiUrl;
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
setWorkItems(workItems);
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,170 +0,0 @@
|
||||
var _apiUrl = null;
|
||||
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var parent;
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
parent = data[i].Parent;
|
||||
workItem = data[i].WorkItem;
|
||||
if (workItem.WorkItemType !== 'Feature')
|
||||
continue;
|
||||
if (workItem.IterationPath !== 'ART SPS')
|
||||
continue;
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
if (parent === null) {
|
||||
workItem["ParentId"] = null;
|
||||
workItem["ParentTitle"] = null;
|
||||
workItem["ParentState"] = null;
|
||||
}
|
||||
else {
|
||||
workItem["ParentId"] = parent["Id"];
|
||||
workItem["ParentTitle"] = parent["Title"];
|
||||
workItem["ParentState"] = getState(parent["State"]);
|
||||
}
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function sendValue(element, page, id) {
|
||||
$.post(_apiUrl + "save", { time: new Date().getTime(), id: id, page: page, value: element.value }, function (data) {
|
||||
console.log("Posted value of " + element.value + " for " + id + " on page " + page);
|
||||
});
|
||||
}
|
||||
|
||||
function setWorkItems(workItems) {
|
||||
var record;
|
||||
var html = "<tr><th>Parent Id</th><th>Parent Title</th><th>Id</th><th>Requester</th><th>Title</th><th>Assigned To</th><th>System(s)</th><th>Value</th></tr>";
|
||||
const element = document.getElementById("HeaderGrid");
|
||||
for (var i = 0; i < workItems.length; i++) {
|
||||
record = workItems[i];
|
||||
html += "<tr><td>" + '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + record.ParentId + '">' + record.ParentId + "</a>" +
|
||||
"</td><td>" + record.ParentTitle +
|
||||
"</td><td>" + '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + record.Id + '">' + record.Id + "</a>" +
|
||||
"</td><td>" + record.Requester +
|
||||
"</td><td>" + record.Title +
|
||||
"</td><td>" + record.AssignedTo +
|
||||
"</td><td>" + record.Tags +
|
||||
"</td><td>" +
|
||||
'<select onchange="sendValue(this, \'time\', ' + record.Id + ')">' +
|
||||
'<option value="9">Unknown</option>' +
|
||||
'<option value="1">High (Most Critical)</option>' +
|
||||
'<option value="2">Medium</option>' +
|
||||
'<option value="3">Low</option>' +
|
||||
'</select>' +
|
||||
"</td></tr>";
|
||||
}
|
||||
element.innerHTML = html.replaceAll(">null<", "> <");
|
||||
}
|
||||
|
||||
function initIndex(url, apiUrl) {
|
||||
_apiUrl = apiUrl;
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
setWorkItems(workItems);
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,177 +0,0 @@
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.TimeCriticality[0] - b.TimeCriticality[0] || b.State[0] - a.State[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var parent;
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
parent = data[i].Parent;
|
||||
workItem = data[i].WorkItem;
|
||||
if (workItem.WorkItemType !== 'User Story' && workItem.WorkItemType !== 'Bug')
|
||||
continue;
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
if (parent === null) {
|
||||
workItem["ParentId"] = null;
|
||||
workItem["ParentTitle"] = null;
|
||||
workItem["ParentState"] = null;
|
||||
}
|
||||
else {
|
||||
workItem["ParentId"] = parent["Id"];
|
||||
workItem["ParentTitle"] = parent["Title"];
|
||||
workItem["ParentState"] = getState(parent["State"]);
|
||||
}
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function initIndex(url) {
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
$("#HeaderGrid").igGrid({
|
||||
autoGenerateColumns: false,
|
||||
dataSource: workItems,
|
||||
height: "100%",
|
||||
primaryKey: "Id",
|
||||
width: "100%",
|
||||
columns: [
|
||||
{ key: "Violation", dataType: "string", hidden: true },
|
||||
{ headerText: "Parent Id", key: "ParentId", dataType: "string" },
|
||||
{ headerText: "Parent State", key: "ParentState", dataType: "string" },
|
||||
{ key: "Id", dataType: "number" },
|
||||
{ key: "Requester", dataType: "string" },
|
||||
{ headerText: "Assigned To", key: "AssignedTo", dataType: "string" },
|
||||
{ key: "Title", dataType: "string", width: "20%" },
|
||||
{ headerText: "System(s)", key: "Tags", dataType: "string" },
|
||||
{ key: "Priority", dataType: "string" },
|
||||
{ headerText: "Qual/Eff", key: "TimeCriticality", dataType: "string" },
|
||||
{ key: "State", dataType: "string" },
|
||||
{ headerText: "Effort in Days", key: "Effort", dataType: "number" },
|
||||
{ headerText: "UAT as of", key: "ResolvedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "CMP Date", key: "ClosedDate", dataType: "date", format: "date" },
|
||||
{ headerText: "Target", key: "TargetDate", dataType: "date", format: "date" },
|
||||
{ key: "ParentTitle", dataType: "string", hidden: true },
|
||||
{ key: "AreaPath", dataType: "string", hidden: true },
|
||||
{ key: "AssignedTo", dataType: "string", hidden: true },
|
||||
{ key: "BusinessValue", dataType: "number", hidden: true },
|
||||
{ key: "ChangedDate", dataType: "string", hidden: true },
|
||||
{ key: "CommentCount", dataType: "number", hidden: true },
|
||||
{ key: "CreatedDate", dataType: "string", hidden: true },
|
||||
{ key: "Description", dataType: "string", hidden: true },
|
||||
{ key: "IterationPath", dataType: "string", hidden: true },
|
||||
{ key: "Revision", dataType: "number", hidden: true },
|
||||
{ key: "RiskReductionMinusOpportunityEnablement", dataType: "string", hidden: true },
|
||||
{ key: "StartDate", dataType: "string", hidden: true },
|
||||
{ key: "WeightedShortestJobFirst", dataType: "number", hidden: true },
|
||||
{ key: "WorkItemType", dataType: "string", hidden: true },
|
||||
],
|
||||
features: [
|
||||
{ name: "Sorting", type: "local" },
|
||||
{ name: "Filtering", type: "local" },
|
||||
{ name: "Selection", mode: "row", multipleSelection: false, rowSelectionChanging: detailSelectionChangedRunInfo },
|
||||
{ name: "Paging", type: "local", recordCountKey: "TotalRows", pageSize: 10, pageSizeUrlKey: "pageSize", "pageIndexUrlKey": "page", showPageSizeDropDown: true },
|
||||
],
|
||||
});
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,155 +0,0 @@
|
||||
var _apiUrl = null;
|
||||
|
||||
function compareFunction(a, b) {
|
||||
return a.Priority[0] - b.Priority[0] || a.TimeCriticality[0] - b.TimeCriticality[0] || b.State[0] - a.State[0] || a.Id - b.Id;
|
||||
}
|
||||
|
||||
function showOne(rowData) {
|
||||
if (rowData == null)
|
||||
return;
|
||||
var data = [];
|
||||
data.push({ name: "Edit in ADO", value: '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + rowData["Id"] + '">Edit in ADO ' + rowData["Id"] + '</a>' });
|
||||
for (const property in rowData) {
|
||||
if (rowData[property] == null)
|
||||
continue;
|
||||
data.push({ name: property, value: rowData[property].toString() });
|
||||
}
|
||||
$("#AllGrid").igGrid({
|
||||
autoGenerateColumns: true,
|
||||
dataSource: data,
|
||||
width: "100%",
|
||||
showHeader: false,
|
||||
});
|
||||
}
|
||||
|
||||
function loadOne() {
|
||||
var selectedRow = $("#HeaderGrid").data("igGridSelection").selectedRow();
|
||||
if (selectedRow == null)
|
||||
return;
|
||||
var rowData = $("#HeaderGrid").data("igGrid").dataSource.dataView()[selectedRow.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function detailSelectionChangedRunInfo(evt, ui) {
|
||||
if (ui.row.index === 0)
|
||||
return;
|
||||
var rowData = ui.owner.grid.dataSource.dataView()[ui.row.index];
|
||||
showOne(rowData);
|
||||
}
|
||||
|
||||
function getState(state) {
|
||||
var result;
|
||||
if (state == null)
|
||||
result = "9-Null";
|
||||
else if (state === "New")
|
||||
result = `1-${state}`;
|
||||
else if (state === "Active")
|
||||
result = `2-${state}`;
|
||||
else if (state === "Resolved")
|
||||
result = `3-${state}`;
|
||||
else if (state === "Closed")
|
||||
result = `4-${state}`;
|
||||
else if (state === "Removed")
|
||||
result = `5-${state}`;
|
||||
else
|
||||
result = `8-${state}`;
|
||||
return result;
|
||||
}
|
||||
|
||||
function getPriority(workItemType, priority) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (priority == null || priority === 0)
|
||||
result = "9-Null";
|
||||
else if (priority === 1)
|
||||
result = `${priority}-High`;
|
||||
else if (priority === 2)
|
||||
result = `${priority}-Med`;
|
||||
else if (priority === 3)
|
||||
result = `${priority}-Low`;
|
||||
else if (priority === 4)
|
||||
result = `${priority}-TBD`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getTimeCriticality(workItemType, timeCriticality) {
|
||||
var result;
|
||||
if (workItemType === "Bug")
|
||||
result = "0-Bug";
|
||||
else if (timeCriticality == null || timeCriticality === 0)
|
||||
result = "9-Null";
|
||||
else if (timeCriticality === 1)
|
||||
result = `${timeCriticality}-QSM`;
|
||||
else if (timeCriticality === 2)
|
||||
result = `${timeCriticality}-Qual`;
|
||||
else if (timeCriticality === 3)
|
||||
result = `${timeCriticality}-Eff`;
|
||||
else
|
||||
result = "8-Not";
|
||||
return result;
|
||||
}
|
||||
|
||||
function getWorkItems(data) {
|
||||
var parent;
|
||||
var workItem;
|
||||
var workItems = [];
|
||||
for (var i = data.length - 1; i > -1; i--) {
|
||||
parent = data[i].Parent;
|
||||
workItem = data[i].WorkItem;
|
||||
if (workItem.WorkItemType !== 'Feature')
|
||||
continue;
|
||||
if (workItem.Tags != null && workItem.Tags.includes("Ignore"))
|
||||
continue;
|
||||
if ((document.title.indexOf('HiRel') > -1 && workItem.AreaPath !== 'ART SPS\\LEO') || (document.title.indexOf('Mesa') > -1 && workItem.AreaPath !== 'ART SPS\\MES'))
|
||||
continue;
|
||||
if (parent === null) {
|
||||
workItem["ParentId"] = null;
|
||||
workItem["ParentTitle"] = null;
|
||||
workItem["ParentState"] = null;
|
||||
}
|
||||
else {
|
||||
workItem["ParentId"] = parent["Id"];
|
||||
workItem["ParentTitle"] = parent["Title"];
|
||||
workItem["ParentState"] = getState(parent["State"]);
|
||||
}
|
||||
workItem["State"] = getState(workItem["State"])
|
||||
workItem["Priority"] = getPriority(workItem["WorkItemType"], workItem["Priority"])
|
||||
workItem["TimeCriticality"] = getTimeCriticality(workItem["WorkItemType"], workItem["TimeCriticality"])
|
||||
workItems.push(workItem);
|
||||
}
|
||||
workItems.sort(compareFunction);
|
||||
return workItems;
|
||||
}
|
||||
|
||||
function setWorkItems(workItems) {
|
||||
var record;
|
||||
var html = "<tr><th>Parent Id</th><th>Parent Title</th><th>Id</th><th>Requester</th><th>Title</th><th>Assigned To</th><th>System(s)</th><th>Value</th></tr>";
|
||||
const element = document.getElementById("HeaderGrid");
|
||||
for (var i = 0; i < workItems.length; i++) {
|
||||
record = workItems[i];
|
||||
html += "<tr><td>" + '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + record.ParentId + '">' + record.ParentId + "</a>" +
|
||||
"</td><td>" + record.Title +
|
||||
"</td><td>" + '<a target="_blank" href="https://tfs.intra.infineon.com/tfs/FactoryIntegration/ART%20SPS/_workitems/edit/' + record.Id + '">' + record.Id + "</a>" +
|
||||
"</td><td>" + record.Requester +
|
||||
"</td><td>" + record.Title +
|
||||
"</td><td>" + record.AssignedTo +
|
||||
"</td><td>" + record.Tags +
|
||||
"</td><td> </td></tr>";
|
||||
}
|
||||
element.innerHTML = html.replaceAll(">null<", "> <");
|
||||
}
|
||||
|
||||
function initIndex(url, apiUrl) {
|
||||
_apiUrl = apiUrl;
|
||||
$.getJSON(url, { _: new Date().getTime() }, function (data) {
|
||||
var workItems = getWorkItems(data);
|
||||
console.log(data.length);
|
||||
if (data.length > 0)
|
||||
console.log(data[0]);
|
||||
setWorkItems(workItems);
|
||||
});
|
||||
$("#HeaderGrid").on("dblclick", "tr", loadOne);
|
||||
}
|
@ -1,65 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>FI Backlog HiRel (Leominster)</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/leo.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/leo.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 20px;">
|
||||
FI Backlog HiRel (Leominster)
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a target="_blank" href="/markdown/Feature.html">Feature(s)</a></li>
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 10px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/json/work-items.json?v=2024-10-07-18-50");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,65 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>FI Backlog Mesa</title>
|
||||
<link href="/styles/bootstrap.min.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<link href="/igniteui/css/themes/bootstrap3/default/infragistics.theme.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/igniteui/css/structure/infragistics.css?v=2024-10-07-18-50" rel="stylesheet" />
|
||||
<link href="/styles/mes.css?no-cache=2024-10-04-08-34" rel="stylesheet" />
|
||||
<script src="/js/jquery-3.6.0.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/jquery-ui.min.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/js/mes.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.core.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.lob.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
<script src="/igniteui/js/infragistics.dv.js?v=2024-10-07-18-50" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<div class="navbar-brand" style="min-width: 20px;">
|
||||
FI Backlog Mes
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a target="_blank" href="/markdown/Feature.html">Feature(s)</a></li>
|
||||
</ul>
|
||||
<p class="navbar-text navbar-right">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container-fluid body-content" style="margin-top: 10px;">
|
||||
|
||||
<div style="height: 550px;" id="HeaderGridDiv">
|
||||
<table id="HeaderGrid"></table>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div id="AllGridDiv">
|
||||
<table id="AllGrid"></table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
initIndex("/json/work-items.json?v=2024-10-07-18-50");
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -1,12 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#HeaderGrid tr td {
|
||||
max-width: 200px;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#HeaderGrid tr td {
|
||||
max-width: 200px;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#HeaderGrid tr td {
|
||||
max-width: 200px;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#HeaderGrid tr td {
|
||||
max-width: 200px;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
#HeaderGridDiv,
|
||||
#DetailsGridDiv {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#HeaderGrid {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#HeaderGrid tr td {
|
||||
max-width: 200px;
|
||||
}
|
||||
|
||||
#AllGrid {
|
||||
font-family: monospace;
|
||||
}
|
@ -26,15 +26,15 @@
|
||||
<DefineConstants>Linux</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="coverlet.collector" Version="6.0.2" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="8.0.8" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.11.0" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="3.5.2" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="3.5.2" />
|
||||
<PackageReference Include="coverlet.collector" Version="6.0.4" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="8.0.12" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="3.7.2" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="3.7.2" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Shared\OI.Metrology.Shared.csproj" />
|
||||
|
10
Wafer-Counter/.vscode/tasks.json
vendored
10
Wafer-Counter/.vscode/tasks.json
vendored
@ -1,6 +1,16 @@
|
||||
{
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
"label": "dotnetRunDebug",
|
||||
"command": "dotnet OI.Metrology.Wafer.Counter.dll",
|
||||
"dependsOn": "build",
|
||||
"problemMatcher": [],
|
||||
"type": "shell",
|
||||
"options": {
|
||||
"cwd": "${workspaceFolder}/bin/Debug/net8.0"
|
||||
}
|
||||
},
|
||||
{
|
||||
"label": "build",
|
||||
"command": "dotnet",
|
||||
|
Loading…
x
Reference in New Issue
Block a user