public IHttpActionResult DeleteMultiRoles(DeleteMultiRoleViewModel vm) { if (ModelState.IsValid) { bool isCompleted = false; try { string user = SecurityLabel.GetNameWithLabel(vm.LoginName); IEnumerable <WorkflowRoleDto> k2Roles = vm.Roles.Where(p => p.Type == "K2").ToList(); IEnumerable <WorkflowRoleDto> dbRoles = vm.Roles.Where(p => p.Type == "DB").ToList(); if (k2Roles != null && k2Roles.Count() > 0) { isCompleted = _RoleService.RemoveUserByRoles(user, k2Roles); } if (dbRoles != null && dbRoles.Count() > 0) { isCompleted = _RoleService.RemoveDbUserByRoles(vm.EmpId, dbRoles); } } catch (SmartException ex) { return(BadRequest(ex.Message)); } if (!isCompleted) { return(BadRequest("Remove Role was failed.")); } RecordTransactionHistory(vm); return(Ok(isCompleted)); } return(BadRequest(ModelState)); }
private void RecordTransactionHistory(DeleteMultiRoleViewModel model) { var _transactionHistoryRepository = new TransactionHistoryRepository(); string jsonData = JsonConvert.SerializeObject(model); var transactionHistory = new TransactionHistory() { ObjectType = "ACTIVITY_ROLE", ObjectName = "[BPMDATA].[DEPT_APPROVAL_ROLE]", ObjectId = model.EmpId, JsonData = jsonData, CreatedDate = DateTime.Now, CreatedBy = RequestContext.Principal.Identity.Name }; _transactionHistoryRepository.Add(transactionHistory); _transactionHistoryRepository.Commit(); }