public virtual JObject LoadTask(HttpContext context) { YZRequest request = new YZRequest(context); int taskid = request.GetInt32("TaskID"); JObject rv = new JObject(); using (BPMConnection cn = new BPMConnection()) { cn.WebOpen(); rv[YZJsonProperty.total] = 1; JArray children = new JArray(); rv["children"] = children; BPMTask task = BPMTask.Load(cn, taskid); JObject item = new JObject(); children.Add(item); item["TaskID"] = task.TaskID; item["SerialNum"] = task.SerialNum; item["ProcessName"] = task.ProcessName; item["ProcessVersion"] = task.ProcessVersion.ToString(2); item["OwnerAccount"] = task.OwnerAccount; item["OwnerDisplayName"] = task.OwnerFullName; item["AgentAccount"] = task.AgentAccount; item["AgentDisplayName"] = task.AgentFullName; item["CreateAt"] = task.CreateAt; item["State"] = YZJsonHelper.GetTaskStateJObject(cn, task.TaskState, task.TaskID); item["Description"] = String.IsNullOrEmpty(task.Description) ? Resources.YZStrings.All_None : task.Description; } rv["success"] = true; return(rv); }
public virtual object GetHandoverRequests(HttpContext context) { YZRequest request = new YZRequest(context); string uid = request.GetString("uid"); PageResult result; using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { using (IDbConnection cn = provider.OpenConnection()) { result = TaskListManager.GetHandoverMyRequests(provider, cn, uid, this.GetFilterStringHandoverRequests(request, provider), request.GetSortString("TaskID ASC"), request.Start, request.Limit); } } JArray children = new JArray(); using (BPMConnection cn = new BPMConnection()) { cn.WebOpen(); foreach (DataRow task in result.Table.Rows) { JObject item = new JObject(); children.Add(item); int taskid = YZConvert.ToInt32(task["TaskID"]); string desc = YZConvert.ToString(task["Description"]); string ownerAccount = YZConvert.ToString(task["OwnerAccount"]); string agentAccount = YZConvert.ToString(task["AgentAccount"]); User owner = User.TryGetUser(cn, ownerAccount); User agent = null; if (!String.IsNullOrEmpty(agentAccount)) { agent = User.TryGetUser(cn, agentAccount); } item["TaskID"] = taskid; item["SerialNum"] = YZConvert.ToString(task["SerialNum"]); item["ProcessName"] = YZConvert.ToString(task["ProcessName"]); item["ProcessVersion"] = YZConvert.ToString(task["ProcessVersion"]); item["OwnerAccount"] = ownerAccount; item["OwnerDisplayName"] = owner == null ? ownerAccount : owner.ShortName; item["AgentAccount"] = agentAccount; item["AgentDisplayName"] = agent == null ? agentAccount : agent.ShortName; item["CreateAt"] = YZConvert.ToDateTime(task["CreateAt"]); item["State"] = YZJsonHelper.GetTaskStateJObject(cn, YZConvert.ToEnum <TaskState>(task["State"]), taskid); item["Description"] = String.IsNullOrEmpty(desc) ? Resources.YZStrings.All_None : desc; } } return(new { success = true, total = result.TotalRows, children = children }); }
protected virtual JObject Serialize(BPMConnection cn, BPMTaskListCollection tasks, int rowcount) { JObject rv = new JObject(); //将数据转化为Json集合 rv[YZJsonProperty.total] = rowcount; JArray children = new JArray(); rv[YZJsonProperty.children] = children; foreach (BPMTaskListItem task in tasks) { JObject item = new JObject(); children.Add(item); string stepDisplayName = BPMProcStep.GetStepDisplayName(task.StepName); item["StepID"] = task.StepID; item["TaskID"] = task.TaskID; item["SerialNum"] = task.SerialNum; item["ProcessName"] = task.ProcessName; item["ProcessVersion"] = task.ProcessVersion.ToString(2); item["OwnerAccount"] = task.OwnerAccount; item["OwnerDisplayName"] = task.OwnerFullName; item["OwnerShortName"] = YZStringHelper.GetUserShortName(task.OwnerAccount, task.OwnerFullName); item["AgentAccount"] = task.AgentAccount; item["AgentDisplayName"] = task.AgentFullName; item["CreateAt"] = task.CreateAt; item["NodeName"] = stepDisplayName; item["ReceiveAt"] = task.ReceiveAt; JObject recipient = new JObject(); recipient["account"] = task.RecipientAccount; recipient["displayName"] = task.RecipientFullName; item["Recipient"] = recipient; item["RecipientShortName"] = YZStringHelper.GetUserShortName(task.RecipientAccount, task.RecipientFullName); item["Share"] = task.Share; item["State"] = YZJsonHelper.GetTaskStateJObject(cn, task.TaskState, task.TaskID); item["TimeoutFirstNotifyDate"] = task.TimeoutFirstNotifyDate; item["TimeoutDeadline"] = task.TimeoutDeadline; item["TimeoutNotifyCount"] = task.TimeoutNotifyCount; item["Description"] = String.IsNullOrEmpty(task.Description) ? Resources.YZStrings.All_None : task.Description; if (task.Progress != -1) { item["Progress"] = task.Progress; } JObject perm = new JObject(); item["perm"] = perm; perm["Share"] = task.Share; } return(rv); }
public virtual JObject GetHistoryTasks(HttpContext context) { YZRequest request = new YZRequest(context); GridPageInfo gridPageInfo = new GridPageInfo(context); HistoryTaskType taskType = request.GetEnum <HistoryTaskType>("HistoryTaskType", HistoryTaskType.AllAccessable); string strTaskType = request.GetString("HistoryTaskType"); int year = request.GetString("byYear", "1") == "0" ? -1 : request.GetInt32("Year"); //获得数据 JObject rv = new JObject(); string taskTableFilter; string stepTableFilter; using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { taskTableFilter = this.GetFilterStringHistoryTaskTaskTable(request, provider); stepTableFilter = this.GetFilterStringHistoryTaskStep(request, provider); } using (BPMConnection cn = new BPMConnection()) { cn.WebOpen(); int rowcount; BPMTaskCollection tasks = cn.GetHistoryTasks(year, taskType, taskTableFilter, stepTableFilter, request.GetSortString("TaskID DESC", null, "TaskID DESC"), gridPageInfo.Start, gridPageInfo.Limit, out rowcount); rv[YZJsonProperty.total] = rowcount; JArray children = new JArray(); rv[YZJsonProperty.children] = children; foreach (BPMTask task in tasks) { JObject item = new JObject(); children.Add(item); item["TaskID"] = task.TaskID; item["SerialNum"] = task.SerialNum; item["ProcessName"] = task.ProcessName; item["ProcessVersion"] = task.ProcessVersion.ToString(2); item["OwnerAccount"] = task.OwnerAccount; item["OwnerDisplayName"] = task.OwnerFullName; item["AgentAccount"] = task.AgentAccount; item["AgentDisplayName"] = task.AgentFullName; item["CreateAt"] = task.CreateAt; item["State"] = YZJsonHelper.GetTaskStateJObject(cn, task.TaskState, task.TaskID); item["Description"] = String.IsNullOrEmpty(task.Description) ? Resources.YZStrings.All_None : task.Description; } } return(rv); }
public virtual JObject GetHistoryTasks(HttpContext context) { YZRequest request = new YZRequest(context); HistoryTaskType taskType = request.GetEnum <HistoryTaskType>("HistoryTaskType", HistoryTaskType.AllAccessable); int year = request.GetString("byYear", "1") == "0" ? -1 : request.GetInt32("Year", DateTime.Today.Year); //获得数据 JObject rv = new JObject(); string taskTableFilter; string stepTableFilter; using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { taskTableFilter = this.GetFilterStringHistoryTaskTaskTable(request, provider); stepTableFilter = this.GetFilterStringHistoryTaskStep(request, provider); } using (BPMConnection cn = new BPMConnection()) { cn.WebOpen(); int rowcount; BPMTaskCollection tasks = cn.GetHistoryTasks(year, taskType, taskTableFilter, stepTableFilter, null, request.Start, request.Limit, out rowcount); rv[YZJsonProperty.total] = rowcount; JArray children = new JArray(); rv[YZJsonProperty.children] = children; foreach (BPMTask task in tasks) { JObject item = new JObject(); children.Add(item); item["TaskID"] = task.TaskID; item["SerialNum"] = task.SerialNum; item["ProcessName"] = task.ProcessName; item["ProcessVersion"] = task.ProcessVersion.ToString(2); item["OwnerAccount"] = task.OwnerAccount; item["OwnerDisplayName"] = task.OwnerDisplayName; item["AgentAccount"] = task.AgentAccount; item["AgentDisplayName"] = task.AgentDisplayName; item["CreateAt"] = task.CreateAt; item["State"] = YZJsonHelper.GetTaskStateJObject(cn, task.TaskState, task.TaskID); item["Description"] = task.Description; try { ProcessProperty property = BPMProcess.GetProcessProperty(cn, task.ProcessName, task.ProcessVersion); item["ShortName"] = property.ShortName; item["Color"] = property.Color; if (String.IsNullOrEmpty(property.ShortName)) { item["ShortName"] = YZStringHelper.GetProcessDefaultShortName(task.ProcessName); } } catch (Exception) { item["Color"] = this._deletedProcessColor; item["ShortName"] = YZStringHelper.GetProcessDefaultShortName(task.ProcessName); } } } return(rv); }