Beispiel #1
0
    protected void lbSave_Click(object sender, EventArgs e)
    {
        FromControl.SaveFormData();
        if (_BPMContext.ProcInst == null)
        {
            _BPMContext.ProcID   = Guid.NewGuid().ToString();
            _BPMContext.ProcInst = new Pkurg.BPM.Services.WorkFlowInstanceService().Save(new Pkurg.BPM.Entities.WorkFlowInstance()
            {
                WfStatus         = "0",
                FormTitle        = FromControl.ProcName,
                InstanceId       = _BPMContext.ProcID,
                AppId            = AppInfo.AppId,
                FormId           = FromControl.SerialNumber,
                CreateByUserCode = _BPMContext.CurrentPWordUser.EmployeeCode,
                CreateByUserName = _BPMContext.CurrentPWordUser.EmployeeName,
                CreateDeptCode   = _BPMContext.CurrentPWordUser.DepartCode,
                CreateDeptName   = _BPMContext.CurrentPWordUser.DepartName,
                CreateAtTime     = DateTime.Now
            }).ToContextInfo();
        }
        else
        {
            //
            _BPMContext.ProcInst.ProcName = FromControl.ProcName;
        }

        _BPMContext.Save();

        ScriptManager.RegisterClientScriptBlock(this, typeof(string), "1", "alert('保存完成')", true);
    }
Beispiel #2
0
    //protected void lbUnAgree_Click(object sender, EventArgs e)
    //{
    //    Execute(1);
    //}
    //protected void lbAgree_Click(object sender, EventArgs e)
    //{
    //    Execute(0);
    //}

    //private void Execute(int option)
    //{
    //    Employee currentUserInfo = _BPMContext.CurrentPWordUser;

    //    FromControl.AppendParams();

    //    WorklistItem item = WorkflowHelper.GetWorklistItemWithSN(_BPMContext.Sn, _BPMContext.CurrentUser.LoginId);
    //    bool isSuccess = WorkflowHelper.ApproveProcess(_BPMContext.Sn, item.Actions[option].Name, _BPMContext.CurrentUser.LoginId);

    //    if (isSuccess)
    //    {
    //        new Pkurg.BPM.Services.ApprovalRecordService().Save(new Pkurg.BPM.Entities.ApprovalRecord()
    //        {
    //            InstanceId = _BPMContext.ProcInst.ProcId,
    //            ApproveByUserCode = currentUserInfo.EmployeeCode,
    //            ApproveByUserName = currentUserInfo.EmployeeName,
    //            ApproveAtTime = DateTime.Now,
    //            FinishedTime = DateTime.Now,
    //             ApprovalID = Guid.NewGuid().ToString(),
    //            CurrentActiveName = item.ActivityInstanceDestination.Name,
    //            Opinion = FromControl.ApprovalText
    //        });

    //        FromControl.Save();

    //        if (WorkflowHelper.GetProcessInstance(int.Parse(_BPMContext.ProcInst.WorkflowId)).Status1 == ProcessInstance.Status.Completed)
    //        {
    //            _BPMContext.ProcInst.Status = "2";
    //            _BPMContext.ProcInst.EndTime = DateTime.Now;
    //        }

    //        if (option == 1)
    //        {
    //            _BPMContext.ProcInst.Status = "4";
    //        }

    //        _BPMContext.Save();
    //    }
    //    ScriptManager.RegisterClientScriptBlock(this, typeof(string), "1", "alert('审批完成'); window.close();", true);
    //}

    protected void btnDoAction_Click(object sender, EventArgs e)
    {
        string actionName = hf_ActionName.Value;

        if (string.IsNullOrEmpty(actionName))
        {
            return;
        }
        string Opinion       = FromControl.ApprovalText;
        string ApproveResult = actionName;
        string OpinionType   = "";
        string IsSign        = "0";//

        var appRecord = new Pkurg.PWorldBPM.Business.Sys.WF_Approval_Record()
        {
            ApprovalID        = Guid.NewGuid().ToString(),
            WFTaskID          = K2_TaskItem.ID,
            FormID            = _BPMContext.ProcInst.FormId,
            InstanceID        = _BPMContext.ProcInst.ProcId,
            Opinion           = Opinion,
            ApproveAtTime     = DateTime.Now,
            ApproveByUserCode = _BPMContext.CurrentPWordUser.EmployeeCode,
            ApproveByUserName = _BPMContext.CurrentPWordUser.EmployeeName,
            ApproveResult     = ApproveResult,
            OpinionType       = OpinionType,
            CurrentActiveName = K2_TaskItem.ActivityInstanceDestination.Name,
            ISSign            = IsSign,
            CurrentActiveID   = K2_TaskItem.ActivityInstanceDestination.ID.ToString(),
            DelegateUserName  = "",
            DelegateUserCode  = "",
            CreateAtTime      = DateTime.Now,
            CreateByUserCode  = _BPMContext.CurrentPWordUser.EmployeeCode,
            CreateByUserName  = _BPMContext.CurrentPWordUser.EmployeeName,
            UpdateAtTime      = DateTime.Now,
            UpdateByUserCode  = _BPMContext.CurrentPWordUser.EmployeeCode,
            UpdateByUserName  = _BPMContext.CurrentPWordUser.EmployeeName
        };

        //审批前设置参数
        FromControl.AppendParams();

        bool isSuccess = false;

        if ("addSignback" == actionName)//加签提交
        {
            isSuccess = WorkflowHelper.BackToPreApprover(_BPMContext.Sn, _BPMContext.CurrentUser.LoginId);
            IsSign    = "2";//
        }
        //转签提交【是否需要】
        else if ("changeSignback" == actionName)
        {
            isSuccess = WorkflowHelper.BackToNextApprover(_BPMContext.Sn, _BPMContext.CurrentUser.LoginId);
            IsSign    = "3";
        }
        else
        {
            //普通审批
            isSuccess = WorkflowHelper.ApproveProcess(_BPMContext.Sn, actionName, _BPMContext.CurrentUser.LoginId);
        }

        if (isSuccess)
        {
            new BFApprovalRecord().AddApprovalRecord(appRecord);

            ///保存数据(主要是流程审核人数据)
            FromControl.SaveFormData();

            new WF_WorkFlowInstance().UpdateStatus(
                _BPMContext.WorkflowId,
                actionName == "不同意" ? "4" : "1",//更新流程状态
                K2_TaskItem.ActivityInstanceDestination.ID.ToString(),
                K2_TaskItem.ActivityInstanceDestination.Name,
                K2_TaskItem.ID,
                null,
                _BPMContext.CurrentPWordUser);

            ///更新流程状态
            //if (actionName == "不同意")
            //{
            //    _BPMContext.ProcInst.Status = "4";
            //}
            _BPMContext.Save();

            ScriptManager.RegisterClientScriptBlock(this, typeof(string), "1", "alert('审批完成'); window.close();", true);
        }
        else
        {
            ScriptManager.RegisterClientScriptBlock(this, typeof(string), "1", "alert('操作失败,请重试'); ", true);
        }
    }
Beispiel #3
0
    protected void lbSubmit_Click(object sender, EventArgs e)
    {
        int procId = 0;

        FromControl.AppendParams();

        //未发起
        if (_BPMContext.ProcInst == null || _BPMContext.ProcInst.Status == "0")
        {
            WorkflowHelper.CurrentUser = _BPMContext.CurrentUser.LoginId;
            bool isSuccess = WorkflowHelper.StartProcess(AppInfo.WorkFlowName, DateTime.Now.ToString(), FromControl.FlowParams.WorkflowFieldDatas, ref procId);

            if (!isSuccess)
            {
                return;
            }

            FromControl.SaveFormData();


            if (_BPMContext.ProcInst == null)
            {
                _BPMContext.ProcID   = Guid.NewGuid().ToString();
                _BPMContext.ProcInst = new Pkurg.BPM.Services.WorkFlowInstanceService().Save(new Pkurg.BPM.Entities.WorkFlowInstance()
                {
                    FormTitle        = FromControl.ProcName,
                    InstanceId       = _BPMContext.ProcID,
                    AppId            = AppInfo.AppId,
                    FormId           = FromControl.SerialNumber,
                    CreateByUserCode = _BPMContext.CurrentPWordUser.EmployeeCode,
                    CreateByUserName = _BPMContext.CurrentPWordUser.EmployeeName,
                    CreateDeptCode   = _BPMContext.CurrentPWordUser.DepartCode,
                    CreateDeptName   = _BPMContext.CurrentPWordUser.DepartName,
                    CreateAtTime     = DateTime.Now
                }).ToContextInfo();
            }

            _BPMContext.ProcInst.WorkflowId = procId.ToString();
            _BPMContext.ProcInst.Status     = "1";
            _BPMContext.ProcInst.StartTime  = DateTime.Now;


            new Pkurg.BPM.Services.ApprovalRecordService().Save(new Pkurg.BPM.Entities.ApprovalRecord()
            {
                InstanceId        = _BPMContext.ProcInst.ProcId,
                ApproveByUserCode = _BPMContext.CurrentPWordUser.EmployeeCode,
                ApproveByUserName = _BPMContext.CurrentUser.Name,
                ApproveAtTime     = DateTime.Now,
                FinishedTime      = DateTime.Now,
                ApprovalId        = Guid.NewGuid().ToString()
            });


            _BPMContext.Save();
        }
        else if (_BPMContext.ProcInst.Status == "4")
        {
            WorklistItem item      = WorkflowHelper.GetWorklistItemWithSN(_BPMContext.Sn, _BPMContext.CurrentUser.LoginId);
            bool         isSuccess = WorkflowHelper.ApproveProcess(_BPMContext.Sn, item.Actions[0].Name, _BPMContext.CurrentUser.LoginId);

            if (isSuccess)
            {
                new Pkurg.BPM.Services.ApprovalRecordService().Save(new Pkurg.BPM.Entities.ApprovalRecord()
                {
                    InstanceId        = _BPMContext.ProcInst.ProcId,
                    ApproveByUserCode = _BPMContext.CurrentUser.Id,
                    ApproveByUserName = _BPMContext.CurrentUser.Name,
                    ApproveAtTime     = DateTime.Now,
                    FinishedTime      = DateTime.Now,
                    ApprovalId        = Guid.NewGuid().ToString(),
                    CurrentActiveName = item.ActivityInstanceDestination.Name,
                    Opinion           = "重新发起"
                });

                FromControl.SaveFormData();
                _BPMContext.ProcInst.Status = "1";
                _BPMContext.Save();
            }
        }

        ScriptManager.RegisterClientScriptBlock(this, typeof(string), "1", "alert('提交成功'); window.close();", true);
    }