453 lines
20 KiB
Plaintext
453 lines
20 KiB
Plaintext
@model Fab2ApprovalSystem.Models.LTLotTravelerHeaderViewModel
|
|
@{
|
|
ViewBag.Title = "LotTraveler - Readonly";
|
|
}
|
|
@{
|
|
Layout = "_LotTravelerLayout.cshtml";
|
|
}
|
|
<link rel="stylesheet" href="/Content/kendo/kendo.blueopal.min.css" />
|
|
<style>
|
|
.k-header .k-link {
|
|
text-align: center;
|
|
}
|
|
</style>
|
|
@using (Html.BeginForm())
|
|
{
|
|
<input type="hidden" id="LTWorkRequestID" value="@Model.LTWorkRequestID" />
|
|
<input type="hidden" id="ReturnURL" value="@Url.Action("LotTravelerReadonly", "LotTraveler", new { ltLotID = Model.ID, revisionNumber = Model.LotTravCurrentRevision })" />
|
|
|
|
@Html.AntiForgeryToken()
|
|
<div class="panel panel-default" style="font-size: 10px">
|
|
<div class="panel-body bg-warning">
|
|
<div class="row">
|
|
@*<div class="col-sm-4">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
|
|
</div>
|
|
<div class="col-sm-3">
|
|
|
|
</div>
|
|
<div class="col-sm-6">
|
|
|
|
</div>
|
|
</div>
|
|
</div>*@
|
|
<div class="col-sm-12">
|
|
<div class="row">
|
|
<div class="col-sm-12 text-center">
|
|
<font style="color:crimson">
|
|
<label id="RevNumber" style="font-size: large; font-weight: bold; color: blue; ">
|
|
Fab2 Electronic Lot Traveler - Lot# @Model.LotNumber
|
|
Rev @Model.LotTravCurrentRevision
|
|
[Mode : Readonly]
|
|
</label>
|
|
@*<font style="color: blue; font-weight:bold">@Model.LotNumber</font> <font style="color: green; font-weight:bold; font-style:italic">Rev @Model.LotTravCurrentRevision</font><font style="color: red; font-weight:bold;" > [Mode : Readonly]</font>*@
|
|
</font>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
</div>
|
|
<div class="col-sm-3">
|
|
|
|
</div>
|
|
<div class="col-sm-6">
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="panel panel-default" style="font-size: 10px">
|
|
<div class="panel-body bg-warning">
|
|
<div class="row">
|
|
<div class="col-sm-12">
|
|
<input type="button" value="Print PDF" class="btn btn-warning btn-xs" id="PrintTravelerPDF" style="font-size: 10px" />
|
|
<input type="button" value="Back to Work Request" class="btn btn-warning btn-xs" id="BackToRequestID" style="font-size: 10px" />
|
|
|
|
<label class="control-label">Lot Numbers:</label>
|
|
@(Html.Kendo().DropDownList()
|
|
.Name("LotList")
|
|
.BindTo(new SelectList(ViewBag.LotList, "LotID", "LotNumber"))
|
|
.OptionLabel("Select")
|
|
)
|
|
<input type="button" value="Display Traveler" class="btn btn-warning btn-xs" id="GetTraveler" style="font-size: 10px" />
|
|
|
|
<label class="control-label">Revisions:</label>
|
|
@(Html.Kendo().DropDownList()
|
|
.Name("Revisions")
|
|
.BindTo(new SelectList(ViewBag.LotTravRevisionList, "ID", "RevisionNumber"))
|
|
.OptionLabel("Select")
|
|
)
|
|
<input type="button" value="Display Revision" class="btn btn-warning btn-xs" id="GetRevision" style="font-size: 10px" />
|
|
|
|
<input type="button" value="Revision History" class="btn btn-warning btn-xs" id="RevisionHistoryData" style=" font-size: 10px" />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="panel panel-default" style="font-size: 10px">
|
|
<div class="panel-body bg-warning">
|
|
<div class="row">
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">SWR #:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.SWRNumber, new { @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">Last Update:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.LastUpdate, new { id = "txtLastUpdate", @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">Title</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.Title, new { @class = "k-textbox", Readonly = "Readonly" })
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">Closed Reason:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.TravelerClosedReason, new { @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">Closed By:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.TravelerClosedBy, new { @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">Closed Date:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.TravelerClosedDate, new { @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">Originator:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.Originator, new { @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
|
|
@if (GlobalVars.IsAdminValueNotNull(Session))
|
|
{
|
|
<a href="javascript:undefined" id="lnkReassignOriginator" class="linkbutton edit" title="Re-assign Originator"></a>
|
|
}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">Updated By:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.LastUpdatedBy, new { id = "txtUpdatedBy", @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">WIP PN#:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.WIPPartNumber, new { @class = "k-textbox", Readonly = "Readonly"})
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">Part Desc:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.PartDescription, new { @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue;width:100%" })
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">Base Flow:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.BaseFlow, new { id = "txtProcessFlow", @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-2">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<label class="control-label pull-right">ITAR:</label>
|
|
</div>
|
|
<div class="col-sm-9">
|
|
@Html.TextBoxFor(model => model.IsITAR, new { @class = "k-textbox", Readonly = "Readonly", style = "background-color:lightblue" })
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-sm-1">
|
|
<label class="control-label pull-right">Purpose Of Lot/Change Description:</label>
|
|
</div>
|
|
<div class="col-sm-11">
|
|
@Html.TextAreaFor(model => model.PurposeOfRequest, 5, 100, new { @class = "k-textbox", Readonly = "Readonly", style = "width:100%" })
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="panel panel-default" style="font-size: 10px">
|
|
<!-- NEW PANEL ===============================================================-->
|
|
<div class="panel-body bg-info">
|
|
<h5>
|
|
<font style="color:crimson; font-weight:bold">
|
|
OLHold Steps
|
|
</font>
|
|
<a class="btn btn-xs pull-right alert-danger" id="aSection2" role="button" data-toggle="collapse" href="#collapseSection2" aria-expanded="true" aria-controls="collapseExample">
|
|
Expand/Collpase
|
|
</a>
|
|
|
|
</h5>
|
|
</div>
|
|
|
|
<div class="collapse" id="collapseSection2">
|
|
|
|
<div class="panel-body bg-warning">
|
|
<div class="col-sm-offset-0">
|
|
|
|
|
|
@(Html.Kendo().Grid<Fab2ApprovalSystem.Models.LTLotTravelerHoldSteps>()
|
|
.Name("HoldSteps")
|
|
.Columns(columns =>
|
|
{
|
|
columns.Bound(a => a.ID).Visible(false);
|
|
columns.Bound(a => a.LotTravelerRevisionID).Visible(false);
|
|
columns.Bound(a => a.Location).Width("50px");
|
|
columns.Bound(a => a.Operation).Width("50px");
|
|
columns.Bound(a => a.OperationDescription).Width("100px");
|
|
columns.Bound(a => a.ChangeInstructions).ClientTemplate("#=changeNewLine(ChangeInstructions)#").Width("250px");
|
|
columns.Bound(a => a.FileNames).ClientTemplate("#=buildLinks(FileNames, SWRNumber)#").Width("100px");
|
|
columns.Bound(a => a.ExecutionTaskComments).ClientTemplate("#=changeNewLine(ExecutionTaskComments)#").Width("250px");
|
|
columns.Bound(a => a.SignedOffByName).Width("50px");
|
|
columns.Bound(a => a.SignOffTime).Format("{0:MM/dd/yy hh:mm:ss}").Width("50px");
|
|
columns.Bound(a => a.Completed).ClientTemplate("<input type='checkbox' disabled #= Completed ? checked='checked':'' # class='chkbx' />").Width("50px");
|
|
})
|
|
.Resizable(e => e.Columns(true))
|
|
.Events(e => e.DataBound("onHoldStepsDataBound"))
|
|
.Sortable()
|
|
.Scrollable()
|
|
.HtmlAttributes(new { style = "height:250; width:100%; font-size: 10px" })
|
|
.DataSource(dataSource => dataSource
|
|
.Ajax()
|
|
.ServerOperation(false)
|
|
|
|
.Model(model =>
|
|
{
|
|
model.Id(p => p.ID);
|
|
})
|
|
.PageSize(50)
|
|
.Read(read => read.Action("GetLotTravHoldStepsByRevision", "LotTraveler", new { LotID = Model.ID, revisionNumber = Model.LotTravCurrentRevision }))
|
|
)
|
|
|
|
)
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
}
|
|
|
|
<div class="modal fade" id="RevisionHistoryWin" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h4 class="modal-title" id="myModalLabel">Revision History</h4>
|
|
</div>
|
|
<div class="modal-body">
|
|
@(Html.Kendo().Grid<Fab2ApprovalSystem.Models.RevisionHistory>()
|
|
.Name("RevisionHistory")
|
|
.Columns(columns =>
|
|
{
|
|
columns.Bound(a => a.ID).Visible(false);
|
|
columns.Bound(a => a.RevisionedBy);
|
|
columns.Bound(a => a.Comments);
|
|
columns.Bound(a => a.RevisionCreateDate).Format("{0:MM/dd/yy hh:mm:ss}");
|
|
|
|
})
|
|
|
|
.Sortable()
|
|
.Scrollable()
|
|
.HtmlAttributes(new { style = "height:300px; width:100%; font-size: 12px" })
|
|
.DataSource(dataSource => dataSource
|
|
.Ajax()
|
|
.ServerOperation(false)
|
|
.Model(model =>
|
|
{
|
|
model.Id(p => p.ID);
|
|
})
|
|
.PageSize(50)
|
|
.Read(read => read.Action("GetLotTravelerRevisionHistory", "LotTraveler", new { lotID = Model.ID }))
|
|
)
|
|
)
|
|
</div>
|
|
<div class="modal-footer">
|
|
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
@Html.Partial("_LTReassignOriginator")
|
|
|
|
<script type="text/javascript">
|
|
var holdStepOperation;
|
|
var currentHoldStepID;
|
|
var currentLotTravRevisionID;
|
|
var newSession = true;
|
|
$(document).ready(function () {
|
|
|
|
|
|
$('#collapseSection2').collapse({
|
|
toggle: true
|
|
})
|
|
|
|
})
|
|
|
|
function onHoldStepsDataBound(arg) {
|
|
var myElem = document.getElementById('trParentHeader');
|
|
if (myElem == null) {
|
|
$("#HoldSteps").find("th.k-header").parent().before("<tr id='trParentHeader'> <th align='center' colspan='3' class='k-header' style='color:red'></th> <th align='center' colspan='2' class='k-header' style='font-size:12px;color:red'><strong>Change Instructions/File </strong></th> </th> <th align='center' colspan='4' class='k-header' style='font-size:12px;color:red'><strong>Execution </strong></th></tr>");
|
|
}
|
|
}
|
|
|
|
function buildLinks(fileNames, swrNumber) {
|
|
var template = "";
|
|
|
|
//var fileName = 4;
|
|
|
|
//alert(workRequestID);
|
|
|
|
if (fileNames != null) {
|
|
var tempValue = fileNames.split(',');
|
|
for (var i = 0; i < tempValue.length; i++) {
|
|
var tempValue2 = tempValue[i].split('~');
|
|
|
|
var fileName = tempValue2[0];
|
|
var fileGuid = tempValue2[1];
|
|
|
|
var tempFile = fileName.split('.');
|
|
var fileExtension = tempFile[tempFile.length - 1];
|
|
|
|
//template += "<a href='@GlobalVars.AttachmentUrl" + "LotTraveler/" + swrNumber + "/" + fileGuid + "." + fileExtension + "'>" + fileName + "</a><BR>" + " ";
|
|
template += "<a href='/LotTraveler/DownloadFile?fileGuid=" + fileGuid + "&swrNumber=" + @Model.SWRNumber + "&typeOfDoc=2" + "'>" + fileName + "</a><BR>" + " ";
|
|
|
|
}
|
|
|
|
}
|
|
return template;
|
|
}
|
|
|
|
|
|
$("#GetRevision").on('click', function (e) {
|
|
e.preventDefault();
|
|
var revid = $("#Revisions").data("kendoDropDownList").text();
|
|
if (revid != "Select") {
|
|
|
|
var url = "@Html.Raw(@Url.Action("LotTravelerReadonly", "LotTraveler", new { ltLotID = "__id__", revisionNumber = "__revID__" }))";
|
|
url = url.replace('__revID__', revid);
|
|
url = url.replace('amp;', '');
|
|
window.location.href = url.replace('__id__', '@Model.ID');
|
|
}
|
|
else {
|
|
alert('Please select a Revision Number');
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
$("#GetTraveler").on('click', function () {
|
|
|
|
var lotid = $("#LotList").data("kendoDropDownList").value();
|
|
|
|
var url = "@Html.Raw(@Url.Action("LotTravelerUpdate", "LotTraveler", new { ltLotID = "__id__" }))";
|
|
//url = url.replace('amp;', '');
|
|
window.location.href = url.replace('__id__', lotid);
|
|
|
|
|
|
})
|
|
|
|
$("#PrintTravelerPDF").on('click', function (e) {
|
|
e.preventDefault();
|
|
var url = "@Html.Raw(@Url.Action("DisplayLotTravlerPdf", "LotTraveler", new { ltLotID = "__id__", revisionNumber = "__revid__" }))";
|
|
url = url.replace("__revid__", '@Model.LotTravCurrentRevision')
|
|
window.open(url.replace('__id__', '@Model.ID', '_blank'));
|
|
})
|
|
|
|
|
|
$("#BackToRequestID").on('click', function (e) {
|
|
|
|
e.preventDefault();
|
|
var url = "@Html.Raw(@Url.Action("Edit", "LotTraveler", new { IssueID = "__id__"}))";
|
|
|
|
window.location.href = url.replace('__id__', $("#LTWorkRequestID").val());
|
|
})
|
|
|
|
$('#RevisionHistoryData').on('click', function () {
|
|
$("#RevisionHistoryWin").modal('show');
|
|
return false;
|
|
})
|
|
|
|
|
|
function changeNewLine(text) {
|
|
if (text != null) {
|
|
var regexp = new RegExp('\n', 'g');
|
|
return text.replace(regexp, '<br>');
|
|
}
|
|
else
|
|
return '';
|
|
}
|
|
|
|
|
|
|
|
</script> |