alfinete
Power Member
Bom dia
Tenho aqui duas questõe que precissava de ajuda
estou a trabalhar em mvc acho que seja ver 3 com razor
Tenho um control MyDmobile
com index.cshtml e Edit.cshtml
envio o code dos cshtml, mais o do controlo
e o da grid - _Grid.cshtml
questões :
Double click
______________________________
Tem a ver com um double click na lista refernte a div "DvTblrequests"
qua ao realizar o mesmo ele vai ao metodo editMy e traz os dados correctos para esta lista e para uma outra que esta abaixo desta
mas como estamos por ajax no double click do actualiza a lista de cima , a de baixo numva mostra os dados.
na Grid
" <div class="table table-sm table-responsive" style="" id="DvTblrequests">
@Html.Grid(Model.Result).Columns......."
ButtonCLick
_______________________
ao Clicar o link Upload ele passa bem no metodo Edit no controlo
so que não ambre a pagina Edit
fiz esta mesma logica num outro controlo e abriu
na mesma grid do ponto anterior e numa outra imediatamente a seguir a essa
Obrigado aguardo uma AJuda
Edit.cshtml
_______________________________________________________________________________________________________________
Index.cshtml
_______________________________________________________________________________________________________________
COntroller
_________________________________________________________________________________________________________________
_Grid.cshtml
________________________________________________________________________________________________
Tenho aqui duas questõe que precissava de ajuda
estou a trabalhar em mvc acho que seja ver 3 com razor
Tenho um control MyDmobile
com index.cshtml e Edit.cshtml
envio o code dos cshtml, mais o do controlo
e o da grid - _Grid.cshtml
questões :
Double click
______________________________
Tem a ver com um double click na lista refernte a div "DvTblrequests"
qua ao realizar o mesmo ele vai ao metodo editMy e traz os dados correctos para esta lista e para uma outra que esta abaixo desta
mas como estamos por ajax no double click do actualiza a lista de cima , a de baixo numva mostra os dados.
na Grid
" <div class="table table-sm table-responsive" style="" id="DvTblrequests">
@Html.Grid(Model.Result).Columns......."
ButtonCLick
_______________________
ao Clicar o link Upload ele passa bem no metodo Edit no controlo
so que não ambre a pagina Edit
fiz esta mesma logica num outro controlo e abriu
na mesma grid do ponto anterior e numa outra imediatamente a seguir a essa
Obrigado aguardo uma AJuda
Edit.cshtml
_______________________________________________________________________________________________________________
Código:
@using hnb.dmobile.core.Helpers;
@using GridMvc.Html
@using hnb.dmobile.web.ViewModel;
@using hnb.dmobile.web.ViewModel.Admin;
@model hnb.dmobile.web.ViewModel.NewProcessViewModel
@{
ViewBag.PlaceHolderDate = " - - ";
Layout = null;
}
<div class="modal fade" id="editModal" tabindex="-1" role="dialog" aria-labelledby="editModal" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content margin-right-md">
@using (Html.BeginForm("Edit", "MyDmobile", FormMethod.Post, new { @class = "form-horizontal", role = "form", @id = "popupForm" }))
{
<div class="modal-header">
<h3 class="text-primary"><b>@ViewBag.Title </b></h3>
<h5 class="text-info">Registo de Saida do Profissional selecionado</h5>
</div>
<div class="modal-body">
@Html.AntiForgeryToken()
@Html.HiddenFor(m => m.ID)
</div>
<div class="modal-footer">
</div>
}
<br>
</div>
</div>
</div>
<script type="text/javascript">
$(document).ready(function () {
});
</script>
Index.cshtml
_______________________________________________________________________________________________________________
Código:
@using hnb.dmobile.core.Helpers;
@using GridMvc.Html
@using hnb.dmobile.web.ViewModel;
@using hnb.dmobile.web.ViewModel.Admin;
@model ListRequestViewModel
@{
ViewBag.Title = "myDmobile";
ViewBag.ImageSubmeterClass = "fa fa-sign-in text-center fa-lg";
ViewBag.ToolTipSubmeter = "Submeter";
Layout = "~/Views/Shared/_Layout.cshtml";
//Layout = "~/Areas/Admin/Views/Shared/_AdminLayout.cshtml";
}
<div class="py-2">
<div class="container-fluid">
<div class="row">
<div class="col-md-12">
<h2 class="text-secondary" contenteditable="true"><b> @ViewBag.Title</b><br></h2>
</div>
</div>
</div>
</div>
<div class="py-1">
<div class="container">
<div class="row">
<div class="col-md-12">
<input type="hidden" disabled="disabled" class="form-control" id="HfThisRow" />
</div>
</div>
</div>
</div>
<div class="py-0 pt-2">
<div class="container-fluid">
<div class="row">
<div class="col-md-2">
<div class="form-group">
<label class="text-info">Nº Profissional</label>
<input type="text" disabled="disabled" class="form-control" value="@Model.Employee.Number" />
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="text-info">Nome</label>
<input type="text" disabled="disabled" class="form-control text-dark" value="@Model.Employee.Name" />
</div>
</div>
<div class="col-md-2">
<form class="">
<div class="form-group">
<label class="text-info">Estado </label>
<input type="text" disabled="disabled" class="form-control" value="@Model.Employee.EmployeeStatus.Description" />
</div>
</form>
</div>
<div class="col-md-2">
<form class="">
<div class="form-group">
<label class="text-info">Data</label>
<input type="email" disabled="disabled" class="form-control" value="@Model.Employee.InsertDate" />
</div>
</form>
</div>
</div>
</div>
</div>
<div class="py-0">
<div class="container-fluid">
<div class="row">
<div class="col-md-12">
<h5 class="text-muted">Lista de Pedidos</h5>
</div>
</div>
</div>
</div>
<div class="py-1" style="">
<div class="container-fluid">
@*<div class="row">
<div class="col-md-12 pb-3" style="">
<h3 class="text-info"><b>Lista de Pedidos</b></h3>
</div>
</div>*@
<div class="row">
<div class="col-md-12 border-top border-bottom">
<div class="table table-sm table-responsive" style="" id="DvTblrequests">
@Html.Grid(Model.Result).Columns(columns =>
{
columns.Add(i => i.ID);
columns.Add(i => i.RequestType.Description).Sortable(true).Titled("Pedido");
columns.Add(i => i.CardNumber).Sortable(true).Titled("Nº Cartão");
columns.Add(i => i.InternalOperator.Description).Sortable(true).Titled("Operador");
columns.Add(i => i.CardType.Description).Sortable(true).Titled("Actividade");
columns.Add(i => i.Device.Model).Sortable(true).Titled("Tipo");
columns.Add(i => i.ProcurementDate).Format("{0:dd-MM-yyyy}").Sortable(true).Titled("Fidelização");
columns.Add(i => i.RequestStatus.Description).Sortable(true).Titled("Estado");
columns.Add().SetWidth("2%").Encoded(false).Sanitized(false).Titled("CC").Filterable(false).RenderValueAs(c => @<i class="fa fa-id-card-o text-left"></i>);
columns.Add().SetWidth("2%").Encoded(false).Sanitized(false).Titled("N").Filterable(false).RenderValueAs(c => @<i class="fa fa-file-text-o text-left"></i>);
columns.Add().SetWidth("2%").Encoded(false).Sanitized(false).Titled("V").Filterable(false).RenderValueAs(c => @<i class="fa fa-file-pdf-o text-left"></i>);
columns.Add().SetWidth("2%").Encoded(false).Sanitized(false).Titled("TR").Filterable(false).RenderValueAs(c => @<i class="fa fa-file-code-o text-left"></i>);
columns.Add().SetWidth("10%").Encoded(false).Sanitized(false).Titled("").Filterable(false).RenderValueAs(c => @<div></div>);
columns.Add(i => i.RequestStatus.ID).Titled("")
.Encoded(false)
.Sanitized(false)
.RenderValueAs(i => i.RequestStatus.ID == 8 ? "<div class=\"text-right\">"
+ Html.ActionLink(" ",
"EditMy",
new
{
controller = "myDmobile",
id = i.ID,
EditType = "TpSubmeter",
UploadID = 0
},
new
{
@class = @ViewBag.ImageSubmeterClass,
@title = @ViewBag.ToolTipSubmeter
})
+ ("</div>")
: string.Empty);
columns.Add()
.Encoded(false)
.Sanitized(false)
.RenderValueAs(o => @<a href="@Url.Action("Edit", new { id = 9 })" class="dialog"><i class="fa fa-upload text-right text-black text-secondary"></i> Upload</a>);
}).WithPaging(Configurations.PageSize)
<br />
<br />
<table class="table tabletable-borderless table-sm" id="GrdMyDocuments2">
<thead>
<tr class="table-info">
<th scope="col" class="border-bottom table-light"></th>
<th scope="col" class="border-bottom table-light">Tipo de Documento</th>
<th scope="col" class="border-bottom table-light"></th>
<th scope="col" class="border-bottom table-light"></th>
<th scope="col" class="border-bottom table-light"></th>
<th scope="col" class="border-bottom table-light"></th>
</tr>
</thead>
<tbody>
<tr>
<td class="text-left"><i class="fa fa-file-text text-left fa-check fa-file-text fa-file-text text-primary"></i></td>
<td>Proposta de Subscrição NOS (N)</td>
<td class="text-right text-success"><i class="fa-check text-right text-black text-secondary"></i> </td>
<td class="text-right text-success"><i class="fa fa-file-pdf-o text-right text-black text-secondary"></i></td>
<td class="text-right text-success"><i class="fa fa-close text-right text-black text-secondary"></i></td>
<td class="text-right text-success">
<a id="lnkUpload" href="@Url.Action("Edit", new { id = 9})" class="dialog"><i class="fa fa-upload text-right text-black text-secondary"></i> Upload </a>
</td>
</tr>
</tbody>
</table>
<br />
<br />
<div id="DvTblDocumentos">
@Html.Grid(Model.ResultUploads).Columns(columns =>
{
columns.Add(Item => Item.Name).Sortable(true).Titled("Nome");
columns.Add(Item => Item.RequestID).Sortable(true).Titled("RequestID");
}).WithPaging(Configurations.PageSize)
</div>
</div>
div>
</div>
</div>
</div>
<div class="modal fade" id="ModalAwait" tabindex="-1" role="dialog" aria-labelledby="ModalAwait" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-body">
<div class="text-center">
<div class="container text-center">
<div class="row">
<div class="col-md-12 text-center" style=""><img class="img-fluid d-block mx-auto w-25" src="~/Content/Images/rotateGreen.gif"></div>
</div>
</div>
</div>
<div class="text-center pt-3">
<div class="container">
<div class="row">
<div class="col-md-12">
<h5 class="text-primary">a carregar os dados da lista</h5>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
$("#DvTblrequests").children().children().children().attr('id', 'GrdMyDmobile');
$("#DvTblDocumentos").children().children().children().attr('id', 'GrdMyDocuments');
var HfThisRow = $("#HfThisRow");
var ListUpload = $("#DvTabsUplad");
function SetVisibleUpDocs (IsdocumentsVisible) {
ListUpload.removeAttr('style');
if (IsdocumentsVisible == 1)
ListUpload.attr('style', 'display:block;');
else
ListUpload.attr('style', 'display:none;');
}
function removecolorRowGrid(IdTable,IdSelected) {
$('#' + IdTable +' tr').each(function (index, tr) {
var TrID = $(this).find("td").eq(1).html();// tr.cells[1].innerText;
if (IdSelected != '' && TrID != IdSelected) {
$(this).removeAttr('style');
}
else
if (IdSelected != '') {
$(this).removeAttr('style');
}
$(this).attr("style", "color:#000000;");
});
}
$(document).ready(function () {
//SetVisibleUpDocs(0);
$('#choose-file').filestyle({
'text': 'Selecionar Ficheiro',
'htmlIcon': '<i class="fa fa-folder fa-lg text-white"></i> ',
'btnClass': 'btn btn-block btn-success',
'inputClass': 'input-Large',
'size': 'nr',
'input': true,
'badge': false,
'badgeName': 'badge-light',
'buttonBefore': false,
'disabled': false,
'placeholder': 'Escolha um ficheiro e clique em importar',
'onChange': function () { }
})
$('#lnkCloseUploadFiles').click(function () {
//SetVisibleUpDocs(0);
removecolorRowGrid('GrdMyDmobile', HfThisRow.val());
});
$('#GrdMyDmobile tr').dblclick(function (e) {
var $this = $(this);
var $caption = $this.html();// We store the html content of the submit button
//var Id = parseInt($(e.target).closest("table").find("tr >td").eq(1).text());
var Id = $(e.target)[0].textContent;
removecolorRowGrid('GrdMyDmobile', Id);
$.ajax({
data: { RequestID: Id},
url: '@Url.Action("IndexMy", "MyDmobile")',
type: 'POST',
dataType: "json",
async: false,
beforeSend: function () {
$('#ModalAwait').modal('show');
//SetVisibleUpDocs(0);
$this.attr('disabled', true);
},
success: function (result, data, response)
{
$('#ModalAwait').modal('hide');
$this.attr('disabled', false);
//alert(result)
//$('#GrdMyDocuments').html(data);
// $('#GrdMyDocuments').load('@Url.Action("IndexMy", "MyDmobile")');
//$.get(url, function (data) {
// $('#GrdMyDocuments').html(data);
//});
//SetVisibleUpDocs(1);
$this.attr("style", "background-color:#2596be;color:#FFFFFF;");
HfThisRow.val(Id);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
$('#ModalAwait').modal('hide');
// You can put something here if there is an error from submitted request
}
});
});
//$.ajaxSetup({ cache: false });
$("body").on("click", "#confirmExport", function (e) {
$("#WarningExportCSV").modal('hide');
});
$("body").on("click", ".editDialog", function (e) {
e.preventDefault();
var url = $(this).attr('href');
$.get(url, function (data) {
$('#edit').html(data);
$('#editModal').modal('show');
});
return false;
});
$("body").on("click", ".dialog", function (e) {
e.preventDefault();
var url = $(this).attr('href');
$.get(url, function (data) {
$('#wrapDialog').html(data);
$('#editModal').modal('show');
});
return false;
});
})
</script>
COntroller
_________________________________________________________________________________________________________________
Código:
using hnb.dmobile.core.Helpers;
using hnb.dmobile.core.Interfaces;
using hnb.dmobile.entities.Models;
using hnb.dmobile.logging;
using hnb.dmobile.web.Models;
using hnb.dmobile.web.ViewModel;
using hnb.dmobile.web.ViewModel.Admin;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Caching;
using System.Web.Mvc;
using static hnb.dmobile.data.Tipos;
namespace hnb.dmobile.web.Areas.Admin.Controllers
{
public class MyDmobileController : BOBaseController<Request, NewProcessViewModel>
{
public override string CreateViewName { get { return "CreateEdit"; } }
public override string EditViewName { get { return "CreateEdit"; } }
private ListRequestViewModel modelSave { get; set; }
private Cache Ch { get; set; }
private readonly IDocumentUploadService _DocumentUploadService;
private readonly IVw_Teste_DocsService _Vw_Teste_DocsService;
private readonly IEmployeeService _employeeService;
private readonly IAuthServvice _authServvice;
private readonly IUserService _userService;
private readonly IRequestService _requestService;
private readonly IGenericService<CardType> _cardTypeService;
private readonly IListOfItemsService _listOfItemsService;
private readonly IDevice_OperatorService _device_OperatorService;
private readonly IDocumentService _documentService;
private readonly IGenericFunctionsService _GenericFunctionsService;
private readonly ICacheService _CacheService;
private readonly IDocumentExtentionService _DocumentExtentionService;
public MyDmobileController(IDocumentExtentionService DocumentExtentionService, IUserService userService, IAuthServvice authServvice, IEmployeeService employeeService, IRequestService requestService, ILoggerFactory loggeloggerFactory,
IGenericService<CardType> cardTypeService, IListOfItemsService listOfItemsService, IDocumentUploadService DocumentUploadService, IVw_Teste_DocsService Vw_Teste_DocsService,
IDocumentService documentService, IDevice_OperatorService device_OperatorService, IGenericFunctionsService GenericFunctionsService, ICacheService CacheService)
: base(requestService, loggeloggerFactory)
{
_employeeService = employeeService;
_authServvice = authServvice;
_userService = userService;
_requestService = requestService;
_cardTypeService = cardTypeService;
_listOfItemsService = listOfItemsService;
_device_OperatorService = device_OperatorService;
_documentService = documentService;
_GenericFunctionsService = GenericFunctionsService;
_DocumentUploadService = DocumentUploadService;
_Vw_Teste_DocsService = Vw_Teste_DocsService;
_DocumentExtentionService = DocumentExtentionService;
_CacheService = CacheService;
Ch = new Cache();
}
public override ActionResult Index()
{
string fieldToFilter = string.Empty;
string value = string.Empty;
if (Session["PesquisaRequests"] != null)
{
var Model = (ListRequestViewModel)Session["PesquisaRequests"];
fieldToFilter = (fieldToFilter != string.Empty && fieldToFilter != Model.FilterField) ? fieldToFilter : Model.FilterField;
value = (value != string.Empty && value != Model.FilterValue) ? value : Model.FilterValue;
Session["PesquisaRequests"] = null;
}
return IndexFilter(fieldToFilter, value);
}
[HttpPost]
public override ActionResult IndexMy(int RequestID)
{
string fieldToFilter = string.Empty;
string value = string.Empty;
if (Session["PesquisaRequests"] != null)
{
var Model = (ListRequestViewModel)Session["PesquisaRequests"];
fieldToFilter = (fieldToFilter != string.Empty && fieldToFilter != Model.FilterField) ? fieldToFilter : Model.FilterField;
value = (value != string.Empty && value != Model.FilterValue) ? value : Model.FilterValue;
Session["PesquisaRequests"] = null;
}
return IndexFilterMy(fieldToFilter, value,RequestID);
}
public override ActionResult IndexFilter(string fieldToFilter, string value)
{
IEnumerable<Request> data;
string AuxValue = string.Empty;
string empNumber = (HttpContext.User.Identity as DMobileIdentity).EmployeeNumber;
Employee employee = _employeeService.GetByNumber(empNumber);
// Session["PesquisaRequests"] = value;
if (fieldToFilter == null || value == null || fieldToFilter == string.Empty || value == string.Empty)
{
if (Ch["RequestSearch"] != null)
Ch.Remove("RequestSearch");
//Helder
data = _requestService.GetAllRequestsByEmployee(employee.ID);
}
else
{
if (Session["PesquisaRequests"] != null)
{
ListRequestViewModel Model = (ListRequestViewModel)Session["PesquisaRequests"];
fieldToFilter = (fieldToFilter != string.Empty && fieldToFilter != Model.FilterField) ? fieldToFilter : Model.FilterField;
value = (value != string.Empty && value != Model.FilterValue) ? value : Model.FilterValue;
Session["PesquisaRequests"] = null;
}
data = _requestService.GetAllByEmployee(employee.ID, fieldToFilter, value);
}
var result = data.Select(o => AutoMapper.Mapper.Map<Request, RequestViewModel>(o)).ToList();
foreach (var item in result)
{
if (item.RequestType == null) item.RequestType = new RequestTypeViewModel();
if (item.RequestStatus == null) item.RequestStatus = new RequestStatusViewModel();
if (item.Employee == null) item.Employee = new EmployeeViewModel();
if (item.CardType == null) item.CardType = new CardTypeViewModel();
// if (item.MigrationOperator == null) item.MigrationOperator = new OperatorViewModel();
if (item.Device == null) item.Device = new DeviceViewModel();
if (item.Color == null) item.Color = new ColorViewModel();
if (item.Plan_Operator == null) item.Plan_Operator = new Plan_OperatorViewModel();
}
var model = new ListRequestViewModel();
model.Result = result;
model.FilterField = fieldToFilter ?? string.Empty;
model.FilterValue = value ?? string.Empty;
model.FilterFields = new SelectList(new[] {
new KeyValuePair<string,string>("ID","Id"),
new KeyValuePair<string,string>("Employee.Number","Número de Funcionário"),
new KeyValuePair<string,string>("CardNumber","Número de Telemóvel"),
new KeyValuePair<string,string>("CardIMEI","IMEI"),
new KeyValuePair<string,string>("RequestStatus.Description","Estado"),
new KeyValuePair<string,string>("RequestType.Description","Tipo processo")
}, "Key", "Value");
model.Employee = employee;
model.ResultUploads = new List<Vw_Teste_Docs>();
IEnumerable<Vw_Teste_Docs> dataUpload;
Int32 RequestID = 0;
dataUpload = _Vw_Teste_DocsService.GetAllDocsByRequestID(RequestID);
model.RequestID = RequestID;
model.ResultUploads = dataUpload;
Ch.Insert("RequestSearch", model);
Session["PesquisaRequests"] = model;
Ch.Remove("RequestSearch");
return View("Index", model);
}
public override ActionResult IndexFilterMy(string fieldToFilter, string value, int RequestID)
{
IEnumerable<Request> data;
IEnumerable<Vw_Teste_Docs> dataUpload;
string AuxValue = string.Empty;
string empNumber = (HttpContext.User.Identity as DMobileIdentity).EmployeeNumber;
Employee employee = _employeeService.GetByNumber(empNumber);
// Session["PesquisaRequests"] = value;
if (fieldToFilter == null || value == null || fieldToFilter == string.Empty || value == string.Empty)
{
if (Ch["RequestSearch"] != null)
Ch.Remove("RequestSearch");
//Helder
data = _requestService.GetAllRequestsByEmployee(employee.ID);
}
else
{
if (Session["PesquisaRequests"] != null)
{
ListRequestViewModel Model = (ListRequestViewModel)Session["PesquisaRequests"];
fieldToFilter = (fieldToFilter != string.Empty && fieldToFilter != Model.FilterField) ? fieldToFilter : Model.FilterField;
value = (value != string.Empty && value != Model.FilterValue) ? value : Model.FilterValue;
Session["PesquisaRequests"] = null;
}
data = _requestService.GetAllByEmployee(employee.ID, fieldToFilter, value);
}
var result = data.Select(o => AutoMapper.Mapper.Map<Request, RequestViewModel>(o)).ToList();
foreach (var item in result)
{
if (item.RequestType == null) item.RequestType = new RequestTypeViewModel();
if (item.RequestStatus == null) item.RequestStatus = new RequestStatusViewModel();
if (item.Employee == null) item.Employee = new EmployeeViewModel();
if (item.CardType == null) item.CardType = new CardTypeViewModel();
// if (item.MigrationOperator == null) item.MigrationOperator = new OperatorViewModel();
if (item.Device == null) item.Device = new DeviceViewModel();
if (item.Color == null) item.Color = new ColorViewModel();
if (item.Plan_Operator == null) item.Plan_Operator = new Plan_OperatorViewModel();
}
var model = new ListRequestViewModel();
model.Result = result;
model.Employee = employee;
model.IsDocumentsVisible = RequestID == 0 ? 0: 1;
model.ResultUploads = new List<Vw_Teste_Docs>();
if (RequestID > 0)
{
model.ResultUploads = null;
dataUpload = _Vw_Teste_DocsService.GetAllDocsByRequestID(RequestID);
model.RequestID = RequestID;
model.ResultUploads = dataUpload;
}
Ch.Insert("RequestSearch", model);
Session["PesquisaRequests"] = model;
Ch.Remove("RequestSearch");
return View("Index", model);
}
/// <summary>
/// Requests Edit List
/// Lista de Pedidos
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[OutputCache(NoStore = true, Duration = 0, VaryByParam = "None")]
public override ActionResult Edit(int id)
{
var employeeProcess = _requestService.GetById(id);
//var model = AutoMapper.Mapper.Map<Request, NewProcessViewModel>(employeeProcess) ?? new NewProcessViewModel();
var model = new NewProcessViewModel();
//#region list of items
ViewBag.IsEdit = true;
return View( model);
}
[OutputCache(NoStore = true, Duration = 0, VaryByParam = "None")]
public override ActionResult EditMy(int id, string EditType, int UploadID)
{
//var Doc = _DocumentUploadService.GetById(id);
//var model = AutoMapper.Mapper.Map<DocumentUpload, DocumentUploadViewModel>(Doc) ?? new DocumentUploadViewModel();
//var employeeProcess = _requestService.GetById(id);
//var model = AutoMapper.Mapper.Map<Request, NewProcessViewModel>(employeeProcess) ?? new NewProcessViewModel();
ActionResult Action = null;
List<int> Ids = new List<int> { id };
switch (EditType)
{
case EditMyType.TpSubmeter:
_requestService.ChangeRequestStatus(Ids.ToList().ToArray(), REQUESTSTATUSCODE.SUBMETIDO);
Action = IndexFilterMy(null, null, id);
break;
case EditMyType.TpUpload:
//var model = AutoMapper.Mapper.Map<Request, NewProcessViewModel>(employeeProcess) ?? new NewProcessViewModel();
var model = new NewProcessViewModel();
Action = View(model);
break;
}
return Action;
}
[HttpPost]
public void SendEmailPdfs(SelectList ListDocuments)
{
//return _requestService.GetValueOperator(requestTypeId, deviceId, operatorId);
}
[HttpPost]
public decimal GetValue(int requestTypeId, int deviceId)
{
return _requestService.GetValue(requestTypeId, deviceId);
//return _requestService.GetValueOperator(requestTypeId, deviceId, operatorId);
}
[HttpPost]
public decimal GetValueOperator(int requestTypeId, int deviceId, int operatorId)
{
return _requestService.GetValueOperator(requestTypeId, deviceId, operatorId);
}
[HttpPost]
public ActionResult GetOperatorMigration(int cardTypeID)
{
var cardType = _cardTypeService.GetAll()
.FirstOrDefault(ct => ct.ID == cardTypeID) ?? new CardType();
return Json(cardType.OperatorMigration);
}
[HttpPost]
public ActionResult GetDeviceDetails(int deviceId, int operatorId)
{
var details = _device_OperatorService.GetDeviceDetails(deviceId, operatorId);
var model = AutoMapper.Mapper.Map<Device_Operator, Device_OperatorViewModel>(details);
return Json(model);
}
}
}
_Grid.cshtml
________________________________________________________________________________________________
Código:
Snippet@using GridMvc.Columns
@model GridMvc.IGrid
@if (Model == null) { return; }
@if (Model.RenderOptions.RenderRowsOnly)
{
@RenderGridBody();
}
else
{
<div class="grid-mvc" data-lang="@Model.Language" data-gridname="@Model.RenderOptions.GridName" data-selectable="@Model.RenderOptions.Selectable.ToString().ToLower()" data-multiplefilters ="@Model.RenderOptions.AllowMultipleFilters.ToString().ToLower()">
<div class="grid-wrap">
<table class="table table-striped grid-table">
@* Draw grid header *@
<thead>
@RenderGridHeader()
</thead>
<tbody>
@RenderGridBody()
</tbody>
</table>
@RenderGridPager()
</div>
</div>
}
@helper RenderGridBody()
{
if (!Model.ItemsToDisplay.Any())
{
<tr class="grid-empty-text">
<td colspan="@Model.Columns.Count()">
@Model.EmptyGridText
</td>
</tr>
}
else
{
foreach (object item in Model.ItemsToDisplay)
{
<tr class="grid-row @Model.GetRowCssClasses(item)">
@foreach (IGridColumn column in Model.Columns)
{
@column.CellRenderer.Render(column, column.GetCell(item))
}
</tr>
}
}
}
@helper RenderGridHeader()
{
<tr>
@foreach (IGridColumn column in Model.Columns)
{
@column.HeaderRenderer.Render(column)
}
</tr>
}
@helper RenderGridPager()
{
if (Model.EnablePaging && Model.Pager != null)
{
<div class="grid-footer">
@Html.Partial(Model.Pager.TemplateName, Model.Pager)
</div>
}
}
<div class="modal fade" id="deleteModal" tabindex="-1" role="dialog" aria-labelledby="deleteModal" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<form class="form-horizontal" role="form" action="" method="post" id="popupFormDelete">
@Html.AntiForgeryToken()
<div class="modal-header">
<h3>Apagar</h3>
</div>
<div class="modal-body">
Tem a certeza que deseja prosseguir com a operação?
<input type="hidden" name="id" id="idHiddenField" />
</div>
<div class="modal-footer">
<input id="btnPopupConfirmDelete" value="Confirmo"
class="btn btn-lg btn-success btn-sucess" contenteditable="true" />
<button type="button" class="btn btn-default btn-lg" data-dismiss="modal">Fechar</button>
</div>
</form>
</div>
</div>
</div>
<script type="text/javascript">
function gridDeleteItem(url, id) {
$("#deleteModal form:first").attr("action", url);
$('#deleteModal').modal('show');
$("#idHiddenField").val(id);
$("#btnPopupConfirmDelete").click(function (event) {
$("#popupFormDelete").submit();
});
}
function deleteSuccessful() {
}
</script>
<div id="dialog-confirm" style="display:none;" title="Confirm">
<p>
<span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>
Tem a certeza que pretende apagar o registo?
</p>
</div>
Última edição: