initial add

This commit is contained in:
Jonathan Ouellette
2022-09-27 14:10:30 -07:00
parent 91fd8a50a9
commit 580e90f6a2
3941 changed files with 954648 additions and 19 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,8 @@
@model Fab2ApprovalSystem.ViewModels.CloseToQDBOptionViewModel
@(Html.Kendo().DropDownListFor(m => m)
.DataValueField("CloseToQDBOptionID")
.DataTextField("CloseToQDBOption")
.BindTo((System.Collections.IEnumerable)ViewData["CloseToQDBOptions"])
)

View File

@ -0,0 +1,3 @@
@model DateTime?
@(Html.Kendo().DatePickerFor(m => m))

View File

@ -0,0 +1,30 @@
@model Fab2ApprovalSystem.Models.MRB
<table cellpadding="3" cellspacing="3" border="1">
<tr bgcolor="#777777" color="#ffffff">
<td width="20%" align="center">
Name
</td>
<td width="50%" align="center">
Address
</td>
<td width="30%" align="center">
Place
</td>
</tr>
<tr>
<td>
@Model.MRBNumber
</td>
<td>
@Model.IssueStartDate
</td>
<td>
@Model.Title
</td>
</tr>
</table>

View File

@ -0,0 +1,268 @@

<div class="modal fade" id="DispositionForm" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static">
<div class="modal-dialog">
<div class="modal-content" style="width: 600px">
<div class="modal-header" style="background-color: #e4daa1; font-size: 15px;">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title" id="myModalLabel">Disposition:</h4>
</div>
<div class="modal-body" style="background-color: #75adc6; font-size: 12px;">
<table width="100%">
<tr>
<td width="100%">
<table class="table-condensed" border="0" width="100%">
<tr>
<td width="25%">
<label for="DispoType">Disposition Type:</label>
</td>
<td width="75%">
@Html.TextBox("txtDispoType", null, new { @class = "k-textbox", style = "width:100%" })
</td>
</tr>
<tr>
<td width="25%">
<label for="DispoDescription">Dispo Description:</label>
</td>
<td width="75%">
@Html.TextBox("txtDispoName", null, new { @class = "k-textbox", style = "width:100%" })
</td>
</tr>
<tr>
<td width="25%">
<label for="dropCloseToQDB">MRB Flag to SPN:</label>
</td>
<td width="75%">
@(Html.Kendo().DropDownList()
.Name("dropCloseToQDB")
.DataTextField("Text")
.DataValueField("Value")
.BindTo(new List<SelectListItem>()
{
new SelectListItem()
{
Text = "Yes",
Value = "1"
},
new SelectListItem()
{
Text = "No",
Value = "0"
}
}
)
.Value("0")
)
</td>
</tr>
<tr>
<td width="25%">
<label for="txtDispositonNotes">Dispositon Notes:</label>
</td>
<td width="75%">
@Html.TextArea("txtDispositonNotes", "", 5, 20, new { @class = "k-textbox", style = "width:100%" })
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<div class="modal-footer" style="background-color: #e4daa1; font-size: 15px;">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-primary" id="SaveDisposition">Save</button>
</div>
</div>
</div>
</div>
<script language="javascript" type="text/javascript">
var dispositionOperation = "Edit";
var dispositionID;
function EditDisposition(e) {
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
dispositionID = dataItem.DispositionID;
var mrbNumber = dataItem.MRBNumber;
var dispositionType = dataItem.DispositionType;
var dispositionName = dataItem.DispositionName;
var closeToQDBOptionString = dataItem.CloseToQDBOptionString;
var dispositionNotes = dataItem.DispositionNotes
dispositionOperation = 'Edit';
clearDispositionForm();
// if the dispotype is only between A and I then execute the if clause
var result = /^[A-Ia-i]/.test(dispositionType);
if (result) {
$('#txtDispoType').attr("disabled", true);
$("#txtDispoName").attr("disabled", true);
//$("#dropCloseToQDB").data("kendoDropDownList").enable(false);
}
else {
$('#txtDispoType').attr("disabled", false);
$("#txtDispoName").attr("disabled", false);
//$("#dropCloseToQDB").data("kendoDropDownList").enable(true);
}
$("#txtDispoType").val(dispositionType);
$("#txtDispoName").val(dispositionName);
$("#dropCloseToQDB").data("kendoDropDownList").text(closeToQDBOptionString);
$("#txtDispositonNotes").val(dispositionNotes)
e.preventDefault();
$("#DispositionForm").modal("show");
}
$('#SaveDisposition').on('click', function () {
var objectData = ReturnDispositionObject();
var url = "";
if (dispositionOperation == 'Add') {
url = "/MRB/InsertDisposition";
if (checkIfDispositionTypeExists(objectData.DispositionType))
return;
}
else {
url = "/MRB/UpdateDisposition";
}
$.ajax({
url: url,
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(objectData),
success: function (objdata) {
var grid = $("#Dispositions").data("kendoGrid");
grid.dataSource.read($("@Model.MRBNumber").val());
$("#DispositionForm").modal("hide");
},
error: function (result) {
alert("Failed " + result);
$("#DispositionForm").modal("hide");
}
});
})
function ReturnDispositionObject() {
var closeToQDBOption = {
CloseToQDBOptionID: $("#dropCloseToQDB").data("kendoDropDownList").value(),
CloseToQDBOption: $("#dropCloseToQDB").data("kendoDropDownList").text()
};
if (dispositionOperation == 'Add') {
var objectData = {
DispositionID: 0,
MRBNumber: "@Model.MRBNumber",
DispositionType: $("#txtDispoType").val().toUpperCase().trim(),
DispositionName: $("#txtDispoName").val(),
DispositionNotes: $("#txtDispositonNotes").val(),
CloseToQDBOption: closeToQDBOption
}
}
else {
var objectData = {
DispositionID: dispositionID,
MRBNumber: "@Model.MRBNumber",
DispositionType: $("#txtDispoType").val().toUpperCase().trim(),
DispositionName: $("#txtDispoName").val(),
DispositionNotes: $("#txtDispositonNotes").val(),
CloseToQDBOption: closeToQDBOption
}
}
return objectData;
}
function DeleteDisposition(e) {
e.preventDefault();
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
var dispositionType = dataItem.DispositionType;
var dispositionID = dataItem.DispositionID;
// if the dispotype is only between A and I then execute the if clause
var result = /^[A-Ia-i]/.test(dispositionType);
if (result) {
alert('Cannot delete the default Disposition')
}
else {
e.preventDefault();
if (confirm("Are you sure you want to delete this Disposition?")) {
$.ajax({
url: "/MRB/DeleteDisposition", //TODO
type: "POST",
datatype: "json",
data: {
DispositionID: dispositionID
},
success: function (data) {
var grid = $("#Dispositions").data("kendoGrid");
grid.dataSource.read($('@Model.MRBNumber').val());
},
error: function (result) {
alert("Failed " + result);
}
});
}
}
}
$('#AddDisposition').on('click', function () {
// enable all the controls
$('#txtDispoType').attr("disabled", false);
$("#txtDispoName").attr("disabled", false);
$("#dropCloseToQDB").data("kendoDropDownList").enable(true);
dispositionOperation = 'Add';
clearDispositionForm();
$("#DispositionForm").modal("show");
e.preventDefault();
})
function clearDispositionForm() {
$("#txtDispoType").val("");
$("#txtDispoName").val("");
$("#dropCloseToQDB").data("kendoDropDownList").text("No");
$("#txtDispositonNotes").val("");
}
function checkIfDispositionTypeExists(dispositionType) {
var dispositionGrid = $("#Dispositions").data("kendoGrid");
var i;
//Getting grid items
var items = dispositionGrid.dataSource.data();
for (i = 0; i < items.length; i++) {
var item = items[i];
if (item.DispositionType == dispositionType) {
alert("Disposition Type already exist");
return true;
}
}
return false;
}
</script>

View File

@ -0,0 +1,58 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>@ViewBag.Title - Mesa Approval</title>
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/kendo")
@Styles.Render("~/Content/kendo/css")
@Styles.Render("~/Content/css")
@Scripts.Render("~/Content/jqw/jq")
@Styles.Render("~/Content/jqw/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/bootstrap")
</head>
<body class="navbar-inner">
<div class=" navbar navbar-inverse navbar-fixed-top">
<div>
<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>
@*@Html.ActionLink("My Tasks", "Index", "Home", new { tabName = "MyTasks" }, new { @class = "navbar-brand" })
@Html.ActionLink("All Tasks", "Index", "Home", new { tabName = "AllTasks" }, new { @class = "navbar-brand" })*@
@Html.ActionLink("My Tasks", "MyTasks", "Home", null, new { @class = "navbar-brand" })
@Html.ActionLink("All Documents", "AllDocuments", "Home", null, new { @class = "navbar-brand" })
@Html.ActionLink("Special Work Request", "SpecialWorkRequestList", "Home", null, new { @class = "navbar-brand" })
</div>
<div class="navbar-collapse collapse">
@Html.Partial("_LoginPartial")
</div>
</div>
</div>
<div>
@RenderBody()
@*<hr />*@
<footer>
<p>&copy; @DateTime.Now.Year - Infineon Technologies</p>
</footer>
</div>
@RenderSection("scripts", required: false)
</body>
</html>