У меня есть страница редактирования счета-фактуры в asp.net mvc 3, которая выглядит примерно так:
На этой странице «сохранить» - это обычная кнопка «Почта», в которой будут сохранены все изменения, внесенные в счет на этом экране. Однако следующая кнопка с надписью «Sumbmit for Approval» динамически отображается на странице и зависит от текущей стадии рабочего процесса счета-фактуры. Поскольку этот счет находится на начальном этапе, поэтому у нас есть кнопка «Отправить на утверждение».
Я хочу выполнить некоторые действия рабочего процесса, которые будут выполняться при нажатии этой кнопки, а также обновлять данные счета-фактуры. Без рабочего процесса мое действие Post является стандартным и выглядит примерно так:
[HttpPost]
public ActionResult editsales(EFModel.VMSale sale,string save)
{
EFModel.SalesRepository _salesRepository = new EFModel.SalesRepository();
EFModel.VoucherRepository _voucherRepository = new EFModel.VoucherRepository();
EFModel.scmSale oldSaleObj = _salesRepository.GetSaleObjBySaleID(sale.SaleID);
if (ModelState.IsValid)
{
Mapper.CreateMap<EFModel.VMSaleLine, UserManagement.EFModel.scmSalesLine>();
Mapper.CreateMap<UserManagement.EFModel.VMSale, UserManagement.EFModel.scmSale>();
var newSaleObj = Mapper.Map<UserManagement.EFModel.VMSale, UserManagement.EFModel.scmSale>(sale);
_salesRepository.UpdateSaleInvoice(newSaleObj, oldSaleObj);
_salesRepository.Save();
return RedirectToAction("listinvoice");
}
Мне также нужно было бы получить некоторые связанные с рабочим процессом поля из пользовательского интерфейса (описание, forwardTo и т. Д.). Более того, описание и пересылка в поля должны быть обработаны и сохранены в db с помощью workFlow. В настоящее время я немного запутался в том, как решить эту проблему.