氚云表单返回审批流程信息

1、功能需求描述

审批流程的审批意见无法直接显示在表单上,为了方便查看审批信息,将流程审批意见返填到表单。

2、后端代码

   /*此方法返回审批流程意见
    *SchemaCode,表单编码
    *objectid,数据ID
    *activityCode 流程节点
    */
    protected string updateOpinion(string SchemaCode, string objectid, string activityCode)
    {
        string str = string.Empty;
        //Participant:任务参与者(审批人 ActivityDisplayName:活动名称 Approval:是否同意(1:同意 0:不同意 -1:审批人还未处理/取消节点) itemcomment:审批意见内容 FinishTime:完成时间
        string sql = @"select b.Participant as Participant, b.ActivityDisplayName as ActivityDisplayName,b.Approval as Approval,b.itemcomment as itemcomment,b.FinishTime
        as FinishTime from I_{0} a inner join H_Workitem b on a.objectid = b.bizobjectid where  b.bizobjectid = '{1}' and b.ActivityDisplayName != '发起节点'
        and b.ActivityCode = '{2}' order by b.FinishTime desc"; 
        System.Data.DataTable dt = this.Request.Engine.Query.QueryTable(string.Format(sql, SchemaCode, objectid, activityCode), null);
        if(dt != null && dt.Rows.Count > 0)
        {
            foreach(System.Data.DataRow dataRow in dt.Rows)
            {
                str += dataRow["itemcomment"] + string.Empty + " " + H_User(dataRow["Participant"] + string.Empty) + " " + dataRow["FinishTime"] + string.Empty + "\n";
            }
        }
        return str;
    }

    /**
     * 根据用户ID获取用户名
     */
    protected string H_User(string userObjectid)
    {
        string userName = "";
        string sql = string.Format("select name from H_User where objectid='{0}'", userObjectid);
        System.Data.DataTable dt = this.Request.Engine.Query.QueryTable(sql, null);
        if(dt != null && dt.Rows.Count > 0)
        {
            userName = dt.Rows[0]["name"] + string.Empty;
        }
        return userName;
    }
posted @ 2021-08-24 15:03  岁末年初  阅读(551)  评论(0)    收藏  举报