| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263 |
- @using GreenTree.Nachtragsmanagement.Web.Models.Global
- @{
- Layout = "~/Views/Shared/_FunctionLayout.cshtml";
- }
- <script>
- var deleteId;
- var deleteReplaceId;
- var deleteClaimType;
- var claimTypeTranslation = {
- status: "VA-Status",
- disturbance: "Kategorie",
- kind: "Art"
- };
- $(document).ready(setListBoxHeights);
- $(window).resize(setListBoxHeights);
- function setListBoxHeights() {
- var windowHeight = $(window).height();
- devListBoxStatuses.SetHeight(windowHeight - 40);
- devListBoxDisturbances.SetHeight(windowHeight - 40);
- devListBoxKinds.SetHeight(windowHeight - 40);
- }
- function editClaim(claimType, id) {
- if (!id) return;
- $.ajax({
- url: '@Url.Action("EditClaim", "Deviation")',
- data: { claimType: claimType, Id: id },
- success: function (response) {
- setTimeout(function () {
- $(".claimEditContainer").remove();
- $("body").append(response);
- }, 200);
- },
- error: function () {
- alert("error occured");
- }
- });
- }
- function confirmDelete(claimType, id) {
- if (!id) return;
- deleteId = id;
- deleteClaimType = claimType;
- $.ajax({
- type: "GET",
- url: '@Url.Action("GetClaim", "Deviation")',
- data: { claimType: deleteClaimType, Id: id },
- success: function (response) {
- if (response == "notFound") return;
- var claim = JSON.parse(response);
- $(".deleteValidation").hide();
- var popupControl = MVCxClientPopupControl.Cast(devPopupControlDeleteClaim);
- popupControl.SetHeaderText(popupControl.GetHeaderText().replace("{claim}", claim.Description));
- $(".dialogText").text($(".dialogText").text().replace("{claim}", claim.Description));
- $(".dialogText").text($(".dialogText").text().replace("{claim}", claim.Description));
- $(".dialogText").text($(".dialogText").text().replace("{claimType}", claimTypeTranslation[claimType]));
- devRadioButtonDeleteReplaceClaim
- .SetText(devRadioButtonDeleteReplaceClaim.GetText().replace("{claimType}", claimTypeTranslation[claimType]));
- var comboBox = null;
- devComboBoxClaimDeleteReplaceStatus.SetVisible(false);
- devComboBoxClaimDeleteReplaceDisturbance.SetVisible(false);
- devComboBoxClaimDeleteReplaceKind.SetVisible(false);
- if (deleteClaimType == "status") {
- devComboBoxClaimDeleteReplaceStatus.SetVisible(true);
- comboBox = MVCxClientComboBox.Cast(devComboBoxClaimDeleteReplaceStatus);
- } else if (deleteClaimType == "kind") {
- devComboBoxClaimDeleteReplaceKind.SetVisible(true);
- comboBox = MVCxClientComboBox.Cast(devComboBoxClaimDeleteReplaceStatus);
- }
- comboBox.PerformCallback();
- popupControl.Show();
- }
- });
- }
- function deleteClaim() {
- if (deleteClaimType == "status") {
- deleteReplaceId = devComboBoxClaimDeleteReplaceStatus.GetValue();
- } else if (deleteClaimType == "kind") {
- deleteReplaceId = devComboBoxClaimDeleteReplaceKind.GetValue();
- }
- if (deleteReplaceId == 0) {
- $(".deleteValidation").text("Es muss ein Ersatz ausgewählt werden.");
- $(".deleteValidation").show();
- return;
- }
- if (deleteId == deleteReplaceId) {
- $(".deleteValidation").text("Der Ersatz darf nicht gleich dem zu löschenden Element sein.");
- $(".deleteValidation").show();
- return;
- }
- $.ajax({
- type: "POST",
- url: '@Url.Action("DeleteClaim", "Deviation")',
- data: { claimType: deleteClaimType, Id: deleteId, replaceId: deleteReplaceId },
- success: function (response) {
- var popupControl = MVCxClientPopupControl.Cast(devPopupControlDeleteClaim);
- popupControl.Hide();
- setTimeout(function () {
- if (deleteClaimType == "status") {
- devListBoxStatuses.PerformCallback();
- } else if (deleteClaimType == "disturbance") {
- devListBoxDisturbances.PerformCallback();
- } else if (deleteClaimType == "kind") {
- devListBoxKinds.PerformCallback();
- }
- }, 200);
- },
- error: function () {
- alert("error occured");
- }
- });
- }
- </script>
- <table style="width: 100%">
- <tbody>
- <tr>
- <td style="width: 33%; padding-right: 6px">
- <div class="listHeader">
- <span>Statusse</span>
- <img src='@Url.Content("~/Content/Images/add-24-contrast.png")' onclick='editClaim("status", -1)' title="Neuer Status" />
- </div>
- @Html.Partial("~/Views/Deviations/_StatusListPartial.cshtml", ViewData["AllStatuses"])
- </td>
- <td style="width: 33%; padding: 0 6px">
- <div class="listHeader">
- <span>Kategorien</span>
- <img src='@Url.Content("~/Content/Images/add-24-contrast.png")' onclick='editClaim("disturbance", -1)' title="Neue VA-Kategorie" />
- </div>
- @Html.Partial("~/Views/Deviations/_DisturbanceListPartial.cshtml", ViewData["AllDisturbances"])
- </td>
- <td style="width: 33%; padding-left: 6px">
- <div class="listHeader">
- <span>Arten</span>
- <img src='@Url.Content("~/Content/Images/add-24-contrast.png")' onclick='editClaim("kind", -1)' title="Neue Art" />
- </div>
- @Html.Partial("~/Views/Deviations/_KindListPartial.cshtml", ViewData["AllKinds"])
- </td>
- </tr>
- </tbody>
- </table>
- @Html.DevExpress().PopupControl(s =>
- {
- s.Name = "devPopupControlDeleteClaim";
- s.HeaderText = "\"{claim}\" löschen";
- s.Modal = false;
- s.Width = new Unit(350, UnitType.Pixel);
- s.CloseAction = CloseAction.CloseButton;
- s.PopupHorizontalAlign = PopupHorizontalAlign.WindowCenter;
- s.PopupVerticalAlign = PopupVerticalAlign.WindowCenter;
- s.AllowDragging = false;
- s.AllowResize = false;
- s.ShowFooter = false;
- s.SetContent(() =>
- {
- ViewContext.Writer.Write("<div class='dialogText' style='padding: 12px'>");
- ViewContext.Writer.Write("Falls Sie \"{claim}\" löschen möchten, was soll mit den Vertragsabweichungen geschehen, die bereits \"{claim}\" zugeordnet sind?");
- ViewContext.Writer.Write("</div>");
- ViewContext.Writer.Write("<div style='padding: 0 12px 12px 12px'>");
- Html.DevExpress().RadioButton(rb =>
- {
- rb.Name = "devRadioButtonDeleteReplaceClaim";
- rb.Text = "Eine neue(n) {claimType} zuweisen";
- rb.GroupName = "claimDelete";
- rb.Checked = true;
- }).Render();
- Session.Add("StatusesDeleteComboBoxSettings", new Action<ComboBoxSettings>(a =>
- {
- a.Name = "devComboBoxClaimDeleteReplaceStatus";
- a.Width = new Unit(100, UnitType.Percentage);
- a.Properties.ValueType = typeof(int);
- a.Properties.ValueField = "Id";
- a.Properties.TextField = "Description";
- a.Properties.ClientSideEvents.BeginCallback = "function (s, e) { e.customArgs['excludedIds'] = [ deleteId ]; }";
- a.Properties.ClientSideEvents.EndCallback = "function (s, e) { s.SetSelectedIndex(0); }";
- a.SelectedIndex = 0;
- a.ClientVisible = false;
- a.CallbackRouteValues = new
- {
- Controller = "DataCallback",
- Action = "StatusesComboBoxExcluded",
- SettingsKey = "StatusesDeleteComboBoxSettings"
- };
- }));
- ViewData.Add("StatusesComboBoxSettings", "StatusesDeleteComboBoxSettings");
- Html.RenderPartial("~/Views/Shared/DataEditorTemplates/_StatusesComboBox.cshtml", null, ViewData);
- Session.Add("DisturbancesDeleteComboBoxSettings", new Action<ComboBoxSettings>(a =>
- {
- a.Name = "devComboBoxClaimDeleteReplaceDisturbance";
- a.Width = new Unit(100, UnitType.Percentage);
- a.Properties.ValueType = typeof(int);
- a.Properties.ValueField = "Id";
- a.Properties.TextField = "Description";
- a.Properties.ClientSideEvents.BeginCallback = "function (s, e) { e.customArgs['excludedIds'] = [ deleteId ]; }";
- a.Properties.ClientSideEvents.EndCallback = "function (s, e) { s.SetSelectedIndex(0); }";
- a.SelectedIndex = 0;
- a.ClientVisible = false;
- a.CallbackRouteValues = new
- {
- Controller = "DataCallback",
- Action = "DisturbancesComboBoxExcluded",
- SettingsKey = "DisturbancesDeleteComboBoxSettings"
- };
- }));
- ViewData.Add("DisturbancesComboBoxSettings", "DisturbancesDeleteComboBoxSettings");
- Html.RenderPartial("~/Views/Shared/DataEditorTemplates/_DisturbancesComboBox.cshtml", null, ViewData);
- Session.Add("KindsDeleteComboBoxSettings", new Action<ComboBoxSettings>(a =>
- {
- a.Name = "devComboBoxClaimDeleteReplaceKind";
- a.Width = new Unit(100, UnitType.Percentage);
- a.Properties.ValueType = typeof(int);
- a.Properties.ValueField = "Id";
- a.Properties.TextField = "Description";
- a.Properties.ClientSideEvents.BeginCallback = "function (s, e) { e.customArgs['excludedIds'] = [ deleteId ]; }";
- a.Properties.ClientSideEvents.EndCallback = "function (s, e) { s.SetSelectedIndex(0); }";
- a.SelectedIndex = 0;
- a.ClientVisible = false;
- a.CallbackRouteValues = new
- {
- Controller = "DataCallback",
- Action = "KindsComboBoxExcluded",
- SettingsKey = "KindsDeleteComboBoxSettings"
- };
- }));
- ViewData.Add("KindsComboBoxSettings", "KindsDeleteComboBoxSettings");
- Html.RenderPartial("~/Views/Shared/DataEditorTemplates/_KindsComboBox.cshtml", null, ViewData);
- ViewContext.Writer.Write("<div class=\"deleteValidation\" style=\"display: none\"></div>");
- ViewContext.Writer.Write("</div>");
- Html.RenderPartial(
- "~/Views/Shared/_PopupButtonPanelYesNo.cshtml",
- new YesNoDialogModel
- {
- PopupName = "devPopupControlDeleteClaim",
- YesFunction = "function (s, e) { deleteClaim(); }"
- }
- );
- });
- s.Styles.Content.Paddings.Padding = new Unit(0, UnitType.Pixel);
- }).GetHtml()
|