private void AddSkipProcess(string workId, FlowNodeEntity node, IRepositoryBase db) { if (node != null && !string.IsNullOrEmpty(node.Id)) { ApprovalProcessEntity appproEntity = new ApprovalProcessEntity(); appproEntity.Create(); appproEntity.WorkId = workId; appproEntity.ApprovalStatus = (int)ApprovalStatus.Pass; appproEntity.NodeId = node.Id; appproEntity.NodeName = node.Name; appproEntity.Description = string.Empty; appproEntity.IsStart = false; appproEntity.IsEnd = false; appproEntity.IsSkip = true; var LoginInfo = OperatorProvider.Provider.GetCurrent(); if (LoginInfo != null) { appproEntity.ApprovalUserId = LoginInfo.UserId; appproEntity.ApprovalUserName = LoginInfo.UserName; } db.Insert(appproEntity); } else { throw new Exception("当前节点异常!"); } }
private bool IsSkipLastNode(string workId, string lastNodeId) { bool bResult = false; using (var db = new RepositoryBase()) { ApprovalProcessEntity approvalProcessEntity = db.IQueryable <ApprovalProcessEntity>(m => m.WorkId == workId && m.NodeId == lastNodeId && m.DeleteMark != true).FirstOrDefault(); if (approvalProcessEntity != null && !string.IsNullOrWhiteSpace(approvalProcessEntity.Id)) { bResult = approvalProcessEntity.IsSkip; } } return(bResult); }
private string GetApplyUserByNode(FlowNodeEntity node, string workId) { string userId = string.Empty; if (node != null && !string.IsNullOrWhiteSpace(node.Id)) { using (var db = new RepositoryBase()) { ApprovalProcessEntity approvalProcessEntity = db.IQueryable <ApprovalProcessEntity>(m => m.WorkId == workId && m.DeleteMark != true && m.EnabledMark == true && m.NodeId == node.Id).OrderByDescending(m => m.CreatorTime).FirstOrDefault(); userId = approvalProcessEntity?.ApprovalUserId; } } return(userId); }
private void AddEndApproProcess(string workId, FlowNodeEntity node, IRepositoryBase db) { ApprovalProcessEntity appproEntity = new ApprovalProcessEntity(); appproEntity.Create(); appproEntity.WorkId = workId; appproEntity.ApprovalStatus = (int)ApprovalStatus.Pass; appproEntity.NodeId = node.Id; appproEntity.NodeName = node.Name; appproEntity.IsStart = false; appproEntity.IsEnd = true; var LoginInfo = OperatorProvider.Provider.GetCurrent(); if (LoginInfo != null) { appproEntity.ApprovalUserId = LoginInfo.UserId; appproEntity.ApprovalUserName = LoginInfo.UserName; } db.Insert(appproEntity); }