Exemplo n.º 1
0
 protected override void ExcuteSelf()
 {
     try
     {
         using (TransactionScope ts = new TransactionScope(TransactionScopeOption.Required))
         {
             _Course.Status = TrainStatusEnum.End;
             _DalTrain.UpdateTrainCourse(_Course);
             List <Skill>           skills      = _Course.Skill;
             List <TrainEmployeeFB> employeeFBs = _Course.TrainFBResult.TrainEmployeeFBs;
             foreach (TrainEmployeeFB fb in employeeFBs)
             {
                 if (fb.FBTime != null)
                 {
                     InsertEmployeeSkill(fb.Trainee.Id, skills);
                 }
             }
             ts.Complete();
         }
     }
     catch
     {
         BllUtility.ThrowException(BllExceptionConst._DbError);
     }
 }
Exemplo n.º 2
0
 /// <summary>
 /// 调用下层的新增课程的方法
 /// </summary>
 protected override void ExcuteSelf()
 {
     try
     {
         //把反馈人信息先删除
         _Course.TrainFBResult.TrainEmployeeFBs.Remove(
             _Course.TrainFBResult.TrainEmployeeFBs.Find(FindTrainEmployeeFB));
         _Course.TrainFBResult.TrainEmployeeFBs.Add(_TrainEmployeeFb);
         using (TransactionScope ts = new TransactionScope(TransactionScopeOption.Required))
         {
             _DalTrain.UpdateTrainCourse(_Course);
             ts.Complete();
         }
     }
     catch
     {
         BllUtility.ThrowException(BllExceptionConst._DbError);
     }
 }
Exemplo n.º 3
0
        /// <summary>
        /// 调用下层的新增课程的方法
        /// </summary>
        protected override void ExcuteSelf()
        {
            //如果反馈表更新了,就重新新增一个课程
            if (_IsFeedBackPaperUpdate)
            {
                new DeleteTrainCourse(_Course.CourseID).Excute();
                new AddTrainCourse(_Course, _Skills, _Employees, _LoginUser).Excute();
                return;
            }
            try
            {
                _Course.Skill = new List <Skill>();
                foreach (Skill skill in _Skills)
                {
                    _Course.Skill.Add(skill);
                }
                _Course.TrainFBResult = new TrainFBResult();
                _Course.TrainFBResult.TrainEmployeeFBs = new List <TrainEmployeeFB>();

                TrainEmployeeFB employeeFb;
                foreach (TrainEmployeeFB fb in GetFbResults())
                {
                    foreach (Account employee in _Employees)
                    {
                        if (fb.Trainee.Id.Equals(employee.Id))
                        {
                            //如果该员工有信息,添加其信息
                            _Course.TrainFBResult.TrainEmployeeFBs.Add(fb);
                            _Employees.Remove(employee);
                            break;
                        }
                    }
                }
                //无信息,未起新建一条数据
                if (_Employees.Count != 0)
                {
                    foreach (Account employee in _Employees)
                    {
                        employeeFb         = new TrainEmployeeFB(null, string.Empty);
                        employeeFb.Trainee = employee;
                        _Course.TrainFBResult.TrainEmployeeFBs.Add(employeeFb);
                    }
                }
                _Course.Coordinator = _ItsCordinator;
                using (TransactionScope ts = new TransactionScope(TransactionScopeOption.Required))
                {
                    _DalTrain.UpdateTrainCourse(_Course);
                    ts.Complete();
                }
                if (_Course.Status == TrainStatusEnum.End)
                {
                    List <Skill>           skills      = _Course.Skill;
                    List <TrainEmployeeFB> employeeFBs = _Course.TrainFBResult.TrainEmployeeFBs;
                    foreach (TrainEmployeeFB fb in employeeFBs)
                    {
                        if (fb.FBTime != null)
                        {
                            new FinishTrainCourse(_Course.CourseID).InsertEmployeeSkill(fb.Trainee.Id, skills);
                        }
                    }
                }
            }
            catch
            {
                BllUtility.ThrowException(BllExceptionConst._DbError);
            }
        }