コード例 #1
0
        public static WF_WorkFlowInstanceInfo GetWorkFlowInstanceByWfId(string wfid)
        {
            SqlParameter[] parameters =
            {
                new SqlParameter("@WfId", SqlDbType.NVarChar, 100)
            };
            parameters[0].Value = wfid;

            WF_WorkFlowInstanceInfo model = new WF_WorkFlowInstanceInfo();
            DataTable dt = DBHelper.ExecutedProcedure("wf_usp_WorkFlowInstance_GetByWfId", parameters);

            if (dt.Rows.Count > 0)
            {
                return(DataRowToModel(dt.Rows[0]));
            }
            else
            {
                return(null);
            }
        }
コード例 #2
0
ファイル: OA_InstructionOfEToG.cs プロジェクト: zhangwxyc/BPM
    public override Pkurg.PWorldBPM.FinallyDisposeServices.ExecuteResultInfo DoServiceEvent(int k2_workflowId, Pkurg.PWorldBPM.FinallyDisposeServices.SerializableDictionary <string, string> dataFields)
    {
        Logger.logger.DebugFormat("OA_InstructionOfEToG_Params:{0},{1}", k2_workflowId, dataFields["IsReport"] == "1" ? "上报" : "不上报");

        Pkurg.PWorldBPM.FinallyDisposeServices.ExecuteResultInfo info = new Pkurg.PWorldBPM.FinallyDisposeServices.ExecuteResultInfo();
        try
        {
            if (dataFields["IsReport"] == "1")
            {
                Pkurg.PWorldBPM.Business.BIZ.InstructionOfEToGInfo        companyInfo     = new Pkurg.PWorldBPM.Business.BIZ.InstructionOfEToG().GetInfoByWfId(k2_workflowId.ToString());
                Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstanceInfo instanceInfo    = Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstances.GetWorkFlowInstanceByWfId(k2_workflowId.ToString());
                Pkurg.PWorldBPM.Business.Controls.WF_Approval_RecordInfo  flowManagerInfo = Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstances.GetApproval_RecordByIdAndName(instanceInfo.InstanceID, "流程审核员审核");
                if (companyInfo != null)
                {
                    ///增加表单
                    string formId = Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstances.GetSerialNumber("OA_QS_");
                    new Pkurg.PWorldBPM.Business.BIZ.InstructionOfGroup().Insert(new Pkurg.PWorldBPM.Business.BIZ.InstructionOfGroupInfo()
                    {
                        Content       = companyInfo.Content,
                        Title         = companyInfo.Title,
                        SecurityLevel = companyInfo.SecurityLevel,
                        UrgenLevel    = companyInfo.UrgenLevel,
                        Mobile        = companyInfo.Mobile,
                        //UserName = companyInfo.UserName,
                        UserName      = flowManagerInfo.ApproveByUserName,
                        DeptCode      = companyInfo.DeptCode,
                        DeptName      = companyInfo.DeptName,
                        FormID        = formId,
                        RelatedFormID = companyInfo.FormID
                                        //relation
                    });

                    ///增加实例
                    string instanceId = Guid.NewGuid().ToString();
                    Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstances.AddWorkFlowInstance(new Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstanceInfo()
                    {
                        AppID      = "3003",
                        InstanceID = instanceId,

                        FormID    = formId,
                        FormTitle = instanceInfo.FormTitle,
                        WFStatus  = "0",

                        CreateAtTime     = DateTime.Now,
                        CreateByUserCode = flowManagerInfo.ApproveByUserCode,
                        CreateByUserName = flowManagerInfo.ApproveByUserName,
                        UpdateAtTime     = DateTime.Now,
                        UpdateByUserCode = flowManagerInfo.ApproveByUserCode,
                        UpdateByUserName = flowManagerInfo.ApproveByUserName,
                        CreateDeptCode   = instanceInfo.CreateDeptCode,
                        CreateDeptName   = instanceInfo.CreateDeptName,
                        WFInstanceId     = "0"
                    });

                    ///关联流程
                    Pkurg.PWorldBPM.Business.Controls.WF_Relation.AddRelatedFlowInfo(instanceId, instanceInfo.InstanceID, flowManagerInfo.ApproveByUserName);
                    Logger.logger.Debug("上报成功");
                }
            }
            else
            {
                info.ExecException = "无需上报";
            }

            info.IsSuccess = true;
        }
        catch (Exception ex)
        {
            info.ExecException = ex.Message + "\r\n" + ex.StackTrace;
            Logger.logger.DebugFormat("上报失败:{0}\r\n{1}", ex.Message, ex.StackTrace);
        }
        return(info);
    }
コード例 #3
0
    public override Pkurg.PWorldBPM.FinallyDisposeServices.ExecuteResultInfo DoServiceEvent(int k2_workflowId, Pkurg.PWorldBPM.FinallyDisposeServices.SerializableDictionary <string, string> dataFields)
    {
        Logger.logger.DebugFormat("OA_ContractAuditOfEToG_Params:{0},{1}", k2_workflowId, dataFields["IsReport"] == "1" ? "上报" : "不上报");

        Pkurg.PWorldBPM.FinallyDisposeServices.ExecuteResultInfo info = new Pkurg.PWorldBPM.FinallyDisposeServices.ExecuteResultInfo();
        try
        {
            if (dataFields["IsReport"] == "1")
            {
                Pkurg.PWorldBPM.Business.BIZ.OA.ContractAuditOfEToGInfo   companyInfo     = new Pkurg.PWorldBPM.Business.BIZ.OA.ContractAuditOfEToG().GetInfoByWfId(k2_workflowId.ToString());
                Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstanceInfo instanceInfo    = Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstances.GetWorkFlowInstanceByWfId(k2_workflowId.ToString());
                Pkurg.PWorldBPM.Business.Controls.WF_Approval_RecordInfo  flowManagerInfo = Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstances.GetApproval_RecordByIdAndName(instanceInfo.InstanceID, "流程审核员审核");
                if (companyInfo != null)
                {
                    ///增加表单
                    string formId = Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstances.GetSerialNumber("OA_HT_");
                    new Pkurg.PWorldBPM.Business.BIZ.OA.ContractAuditOfGroup().Insert(new Pkurg.PWorldBPM.Business.BIZ.OA.ContractAuditOfGroupInfo()
                    {
                        FormID                   = formId,
                        SecurityLevel            = companyInfo.SecurityLevel,
                        UrgenLevel               = companyInfo.UrgenLevel,
                        DeptName                 = companyInfo.DeptName,
                        DeptCode                 = companyInfo.DeptCode,
                        UserName                 = flowManagerInfo.ApproveByUserName,
                        Mobile                   = companyInfo.Mobile,
                        DateTime                 = companyInfo.DateTime,
                        ContractSum              = companyInfo.ContractSum,
                        IsSupplementProtocol     = companyInfo.IsSupplementProtocol,
                        IsSupplementProtocolText = companyInfo.IsSupplementProtocolText,
                        IsFormatContract         = companyInfo.IsFormatContract,
                        IsNormText               = companyInfo.IsNormText,
                        IsBidding                = companyInfo.IsBidding,
                        IsEstateProject          = companyInfo.IsEstateProject,
                        EstateProjectName        = companyInfo.EstateProjectName,
                        EstateProjectNameText    = companyInfo.EstateProjectNameText,
                        EstateProjectNum         = companyInfo.EstateProjectNum,
                        EstateProjectNumText     = companyInfo.EstateProjectNumText,
                        ContractTitle            = companyInfo.ContractTitle,
                        ContractContent          = companyInfo.ContractContent,
                        LeadersSelected          = "",
                        IsReport                 = "",
                        IsApproval               = "",
                        ContractType1            = companyInfo.ContractType1,
                        ContractTypeName1        = companyInfo.ContractTypeName1,
                        ContractType2            = companyInfo.ContractType2,
                        ContractTypeName2        = companyInfo.ContractTypeName2,
                        ContractType3            = companyInfo.ContractType3,
                        ContractTypeName3        = companyInfo.ContractTypeName3,
                        ContractSubject          = companyInfo.ContractSubject,
                        ContractSubjectName      = companyInfo.ContractSubjectName,
                        ContractSubjectName2     = companyInfo.ContractSubjectName2,
                        ContractSubjectName3     = companyInfo.ContractSubjectName3,
                        ContractSubjectName4     = companyInfo.ContractSubjectName4,
                        RelatedFormID            = companyInfo.FormID
                    });

                    ///增加实例
                    string instanceId = Guid.NewGuid().ToString();
                    Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstances.AddWorkFlowInstance(new Pkurg.PWorldBPM.Business.Controls.WF_WorkFlowInstanceInfo()
                    {
                        AppID      = "3007",
                        InstanceID = instanceId,

                        FormID    = formId,
                        FormTitle = instanceInfo.FormTitle,
                        WFStatus  = "0",

                        CreateAtTime     = DateTime.Now,
                        CreateByUserCode = flowManagerInfo.ApproveByUserCode,
                        CreateByUserName = flowManagerInfo.ApproveByUserName,
                        UpdateAtTime     = DateTime.Now,
                        UpdateByUserCode = flowManagerInfo.ApproveByUserCode,
                        UpdateByUserName = flowManagerInfo.ApproveByUserName,
                        CreateDeptCode   = instanceInfo.CreateDeptCode,
                        CreateDeptName   = instanceInfo.CreateDeptName,
                        WFInstanceId     = "0"
                    });

                    ///关联流程
                    Pkurg.PWorldBPM.Business.Controls.WF_Relation.AddRelatedFlowInfo(instanceId, instanceInfo.InstanceID, flowManagerInfo.ApproveByUserName);
                    Logger.logger.Debug("上报成功");
                }
            }
            else
            {
                info.ExecException = "无需上报";
            }

            info.IsSuccess = true;
        }
        catch (Exception ex)
        {
            info.ExecException = ex.Message + "\r\n" + ex.StackTrace;
            Logger.logger.DebugFormat("上报失败:{0}\r\n{1}", ex.Message, ex.StackTrace);
        }
        return(info);
    }
コード例 #4
0
        public static bool AddWorkFlowInstance(WF_WorkFlowInstanceInfo model)
        {
            try
            {
                SqlParameter[] parameters =
                {
                    new SqlParameter("@InstanceID",       SqlDbType.NVarChar,  100),
                    new SqlParameter("@AppID",            SqlDbType.NVarChar,  100),
                    new SqlParameter("@FormID",           SqlDbType.NVarChar,  200),
                    new SqlParameter("@WFInstanceId",     SqlDbType.NVarChar,  100),
                    //new SqlParameter("@OrderNo", SqlDbType.Int,4),
                    //new SqlParameter("@IsDel", SqlDbType.Int,4),
                    new SqlParameter("@CreateByUserCode", SqlDbType.NVarChar,   50),
                    new SqlParameter("@CreateByUserName", SqlDbType.NVarChar,   50),
                    new SqlParameter("@CreateAtTime",     SqlDbType.DateTime),
                    new SqlParameter("@UpdateByUserCode", SqlDbType.NVarChar,   50),
                    new SqlParameter("@UpdateByUserName", SqlDbType.NVarChar,   50),
                    new SqlParameter("@UpdateAtTime",     SqlDbType.DateTime),
                    new SqlParameter("@CreateDeptCode",   SqlDbType.NVarChar,   50),
                    new SqlParameter("@CreateDeptName",   SqlDbType.NVarChar,   50),
                    //new SqlParameter("@WorkItemCode", SqlDbType.NVarChar,100),
                    //new SqlParameter("@WorkItemName", SqlDbType.NVarChar,200),
                    //new SqlParameter("@WFTaskID", SqlDbType.Int,4),
                    //new SqlParameter("@FinishedTime", SqlDbType.DateTime),
                    //new SqlParameter("@Remark", SqlDbType.NVarChar,500),
                    new SqlParameter("@FormTitle",        SqlDbType.NVarChar,  300),
                    new SqlParameter("@WFStatus",         SqlDbType.NVarChar, 10)
                    //,new SqlParameter("@SumitTime", SqlDbType.DateTime),
                    //new SqlParameter("@FormData", SqlDbType.Xml)
                    //,new SqlParameter("@ProcessName", SqlDbType.NVarChar,200)
                };
                parameters[0].Value = model.InstanceID;
                parameters[1].Value = model.AppID;
                parameters[2].Value = model.FormID;
                parameters[3].Value = model.WFInstanceId;
                //parameters[4].Value = model.OrderNo;
                //parameters[5].Value = model.IsDel;
                parameters[4].Value  = model.CreateByUserCode;
                parameters[5].Value  = model.CreateByUserName;
                parameters[6].Value  = DateTime.Now;
                parameters[7].Value  = model.UpdateByUserCode;
                parameters[8].Value  = model.UpdateByUserName;
                parameters[9].Value  = DateTime.Now;
                parameters[10].Value = model.CreateDeptCode;
                parameters[11].Value = model.CreateDeptName;
                //parameters[14].Value = model.WorkItemCode;
                //parameters[15].Value = model.WorkItemName;
                //parameters[16].Value = model.WFTaskID;
                //parameters[17].Value = model.FinishedTime;
                //parameters[18].Value = model.Remark;
                parameters[12].Value = model.FormTitle;
                parameters[13].Value = model.WFStatus;
                //parameters[21].Value = model.SumitTime;
                //parameters[22].Value = model.FormData;
                // parameters[23].Value = model.ProcessName;

                DBHelper.ExecutedProcedure("wf_usp_WorkFlowInstance_ADD", parameters);
                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
コード例 #5
0
        public static WF_WorkFlowInstanceInfo DataRowToModel(DataRow row)
        {
            WF_WorkFlowInstanceInfo model = new WF_WorkFlowInstanceInfo();

            if (row != null)
            {
                if (row["InstanceID"] != null)
                {
                    model.InstanceID = row["InstanceID"].ToString();
                }
                if (row["AppID"] != null)
                {
                    model.AppID = row["AppID"].ToString();
                }
                if (row["FormID"] != null)
                {
                    model.FormID = row["FormID"].ToString();
                }
                if (row["WFInstanceId"] != null)
                {
                    model.WFInstanceId = row["WFInstanceId"].ToString();
                }
                if (row["OrderNo"] != null && row["OrderNo"].ToString() != "")
                {
                    model.OrderNo = int.Parse(row["OrderNo"].ToString());
                }
                if (row["IsDel"] != null && row["IsDel"].ToString() != "")
                {
                    model.IsDel = int.Parse(row["IsDel"].ToString());
                }
                if (row["CreateByUserCode"] != null)
                {
                    model.CreateByUserCode = row["CreateByUserCode"].ToString();
                }
                if (row["CreateByUserName"] != null)
                {
                    model.CreateByUserName = row["CreateByUserName"].ToString();
                }
                if (row["CreateAtTime"] != null && row["CreateAtTime"].ToString() != "")
                {
                    model.CreateAtTime = DateTime.Parse(row["CreateAtTime"].ToString());
                }
                if (row["UpdateByUserCode"] != null)
                {
                    model.UpdateByUserCode = row["UpdateByUserCode"].ToString();
                }
                if (row["UpdateByUserName"] != null)
                {
                    model.UpdateByUserName = row["UpdateByUserName"].ToString();
                }
                if (row["UpdateAtTime"] != null && row["UpdateAtTime"].ToString() != "")
                {
                    model.UpdateAtTime = DateTime.Parse(row["UpdateAtTime"].ToString());
                }
                if (row["CreateDeptCode"] != null)
                {
                    model.CreateDeptCode = row["CreateDeptCode"].ToString();
                }
                if (row["CreateDeptName"] != null)
                {
                    model.CreateDeptName = row["CreateDeptName"].ToString();
                }
                if (row["WorkItemCode"] != null)
                {
                    model.WorkItemCode = row["WorkItemCode"].ToString();
                }
                if (row["WorkItemName"] != null)
                {
                    model.WorkItemName = row["WorkItemName"].ToString();
                }
                if (row["WFTaskID"] != null && row["WFTaskID"].ToString() != "")
                {
                    model.WFTaskID = int.Parse(row["WFTaskID"].ToString());
                }
                if (row["FinishedTime"] != null && row["FinishedTime"].ToString() != "")
                {
                    model.FinishedTime = DateTime.Parse(row["FinishedTime"].ToString());
                }
                if (row["Remark"] != null)
                {
                    model.Remark = row["Remark"].ToString();
                }
                if (row["FormTitle"] != null)
                {
                    model.FormTitle = row["FormTitle"].ToString();
                }
                if (row["WFStatus"] != null)
                {
                    model.WFStatus = row["WFStatus"].ToString();
                }
                if (row["SumitTime"] != null && row["SumitTime"].ToString() != "")
                {
                    model.SumitTime = DateTime.Parse(row["SumitTime"].ToString());
                }
                //model.FormData=row["FormData"].ToString();
                if (row["ProcessName"] != null)
                {
                    model.ProcessName = row["ProcessName"].ToString();
                }
            }
            return(model);
        }