protected override void OnFlowEnd(T_Qualification_PostTotal entity, Workflow.Logic.Domain.S_WF_InsTaskExec taskExec, Workflow.Logic.Domain.S_WF_InsDefRouting routing)
        {
            if (entity == null)
            {
                return;
            }
            var sql     = string.Format("select * from  T_Qualification_Postqualificationmanagement where T_Qualification_PostTotalID ='{0}'", entity.ID);
            var dt      = HRSQLDB.ExecuteDataTable(sql);
            var dicList = FormulaHelper.DataTableToListDic(dt);

            foreach (var item in dicList)
            {
                var userid = item.GetValue("Users");
                var quali  = BusinessEntities.Set <S_Qualification_Postqualificationmanagement>().FirstOrDefault(p => p.Users == userid);
                if (quali == null)
                {
                    quali    = new S_Qualification_Postqualificationmanagement();
                    quali.ID = FormulaHelper.CreateGuid();
                    BusinessEntities.Set <S_Qualification_Postqualificationmanagement>().Add(quali);
                }
                UpdateEntity <S_Qualification_Postqualificationmanagement>(quali, item);
            }
            BusinessEntities.SaveChanges();

            sql = string.Format("update T_Qualification_Postqualificationmanagement set IsApprove='True' where T_Qualification_PostTotalID ='{0}'", entity.ID);
            HRSQLDB.ExecuteNonQuery(sql);
        }
        public override bool ExecTaskExec(Workflow.Logic.Domain.S_WF_InsTaskExec taskExec, Workflow.Logic.Domain.S_WF_InsDefRouting routing, string nextExecUserIDs, string nextExecUserNames, string nextExecUserIDsGroup, string nextExecRoleIDs, string nextExecOrgIDs, string execComment)
        {
            var bol = base.ExecTaskExec(taskExec, routing, nextExecUserIDs, nextExecUserNames, nextExecUserIDsGroup, nextExecRoleIDs, nextExecOrgIDs, execComment);

            if (routing.Code == "ToHR")
            {
                var formID = taskExec.S_WF_InsFlow.FormInstanceID;
                //反写流程表单ID至待审批资质
                string updateSql = string.Format("update  T_Qualification_Postqualificationmanagement set T_Qualification_PostTotalID = '{0}' where  isnull(IsApprove,'False')='False' ", formID);
                HRSQLDB.ExecuteNonQuery(updateSql);
            }


            return(bol);
        }
        protected override void OnFlowEnd(T_Trainmanagement_TrainplanApproval entity, Workflow.Logic.Domain.S_WF_InsTaskExec taskExec, Workflow.Logic.Domain.S_WF_InsDefRouting routing)
        {
            if (entity == null)
            {
                return;
            }
            if (string.IsNullOrEmpty(entity.RelateID))
            {
                entity.RelateID = entity.ID;
            }


            var detailList = entity.T_Trainmanagement_TrainplanApproval_Trainplan.ToList();

            if (detailList.Count == 0)
            {
                return;
            }

            HRSQLDB.ExecuteNonQuery("delete from S_Train_CompPlan where FormID ='" + entity.RelateID + "'");

            foreach (var item in detailList)
            {
                S_Train_CompPlan plan = new S_Train_CompPlan();
                plan.ID     = Formula.FormulaHelper.CreateGuid();
                plan.FormID = entity.RelateID;
                BusinessEntities.Set <S_Train_CompPlan>().Add(plan);
                plan.InOrOut = "In";

                //将表单主表数据更新至结果表
                UpdateEntity <S_Train_CompPlan>(plan, entity.ToDic());
                //将表单子表数据更新至结果表
                UpdateEntity <S_Train_CompPlan>(plan, item.ToDic());
            }
            entity.IsNewVersion = "True";
            string sql = string.Format("update T_Trainmanagement_TrainplanApproval set IsNewVersion = 'False' where RelateID='{0}' and ID <>'{1}'", entity.RelateID, entity.ID);

            HRSQLDB.ExecuteNonQuery(sql);

            BusinessEntities.SaveChanges();
        }
        protected override void OnFlowEnd(T_Trainmanagement_Departmenttrainplan entity, Workflow.Logic.Domain.S_WF_InsTaskExec taskExec, Workflow.Logic.Domain.S_WF_InsDefRouting routing)
        {
            if (entity != null)
            {
                if (string.IsNullOrEmpty(entity.RelateID))
                {
                    entity.RelateID = entity.ID;
                }


                var list = entity.T_Trainmanagement_Departmenttrainplan_Trainplan.ToList();

                HRSQLDB.ExecuteNonQuery("delete from S_Train_DeptPlan where FormID ='" + entity.RelateID + "'");
                foreach (var item in list)
                {
                    S_Train_DeptPlan plan = new S_Train_DeptPlan();
                    plan.ID = Formula.FormulaHelper.CreateGuid();

                    //更新主表对应的数据
                    UpdateEntity <S_Train_DeptPlan>(plan, entity.ToDic());
                    //更新子表对应的数据
                    UpdateEntity <S_Train_DeptPlan>(plan, item.ToDic());

                    plan.FormID  = entity.RelateID;
                    plan.InOrOut = "In";
                    BusinessEntities.Set <S_Train_DeptPlan>().Add(plan);
                }
                //更新本年的部门培训通知状态
                var sql = string.Format("update  S_Train_DeptTask set IsSubmit = 'True' where Dept = '{0}' and Trainyears ='{1}'", entity.Putdept, entity.Trainyears);
                HRSQLDB.ExecuteNonQuery(sql);

                entity.IsNewVersion = "True";

                sql = string.Format("update T_Trainmanagement_Departmenttrainplan set IsNewVersion = 'False' where RelateID='{0}' and ID <>'{1}'", entity.RelateID, entity.ID);
                HRSQLDB.ExecuteNonQuery(sql);
                BusinessEntities.SaveChanges();
            }

            base.OnFlowEnd(entity, taskExec, routing);
        }