public virtual ActionResult Edit(int autoApprovalId, string docTypeCode) { AutoApproval autoApproval = new AutoApproval(); IList <AutoApproval> autoApprovals = new List <AutoApproval>(); if (autoApprovalId > 0) { autoApproval = this._autoApprovalService.GetAutoApproval(autoApprovalId); } else { autoApprovals = this._autoApprovalService.GetAutoApprovals(docTypeCode); } var docTypes = _docTypeService.GetDocTypes(); var subDocTypes = this._subDocTypeService.GetSubDocTypes(); var manCos = _manCoService.GetManCos(); var model = new EditAutoApprovalViewModel(); if (autoApprovalId > 0) { model.ManCoId = autoApproval.ManCoId; model.DocTypeId = autoApproval.DocTypeId; model.SubDocTypeId = autoApproval.SubDocTypeId; } else { model.ManCoId = autoApprovals.First().ManCoId; model.DocTypeId = autoApprovals.First().DocTypeId; model.SubDocTypeId = -1; } model.DocTypeCode = docTypeCode; model.AddManCos(manCos); model.AddDocTypes(docTypes); model.AddSubDocTypes(subDocTypes); model.SubDocTypes = model.SubDocTypes.FindAll(x => x.DocTypeViewModel.Id == model.DocTypeId); model.SubDocTypes.Insert(0, new SubDocTypeViewModel() { Code = "All", Id = -1 }); return(this.View(model)); }