/// <summary>
        /// 增加教育培训明细信息
        /// </summary>
        /// <param name="trainDetail">教育培训明细信息实体</param>
        public static void AddTrainDetail(Model.EduTrain_TrainRecordDetail trainDetail)
        {
            Model.SUBHSSEDB db       = Funs.DB;
            string          newKeyID = SQLHelper.GetNewID(typeof(Model.EduTrain_TrainRecordDetail));

            Model.EduTrain_TrainRecordDetail newTrainDetail = new Model.EduTrain_TrainRecordDetail
            {
                TrainDetailId = newKeyID,
                TrainingId    = trainDetail.TrainingId,
                PersonId      = trainDetail.PersonId,
                CheckScore    = trainDetail.CheckScore,
                CheckResult   = trainDetail.CheckResult
            };

            db.EduTrain_TrainRecordDetail.InsertOnSubmit(newTrainDetail);
            db.SubmitChanges();

            var rainRecord = EduTrain_TrainRecordService.GetTrainingByTrainingId(trainDetail.TrainingId);

            if (rainRecord != null)
            {
                rainRecord.TrainPersonNum += 1;
                EduTrain_TrainRecordService.UpdateTraining(rainRecord);
            }
            ///// 培训考试 通过 更新卡号
            if (newTrainDetail.CheckResult)
            {
                var getPerson = PersonService.GetPersonById(trainDetail.PersonId);
                if (getPerson != null && string.IsNullOrEmpty(getPerson.CardNo))
                {
                    getPerson.CardNo = SQLHelper.RunProcNewId("SpGetNewNumber", "SitePerson_Person", "CardNo", rainRecord.ProjectId, UnitService.GetUnitCodeByUnitId(getPerson.UnitId));
                }
            }
        }
 /// <summary>
 /// 修改教育培训明细信息
 /// </summary>
 /// <param name="trainDetail">教育培训明细信息</param>
 public static void UpdateTrainDetail(Model.EduTrain_TrainRecordDetail trainDetail)
 {
     Model.SUBHSSEDB db = Funs.DB;
     Model.EduTrain_TrainRecordDetail newTrainRecordDetail = db.EduTrain_TrainRecordDetail.FirstOrDefault(e => e.TrainDetailId == trainDetail.TrainDetailId);
     if (newTrainRecordDetail != null)
     {
         newTrainRecordDetail.CheckResult = trainDetail.CheckResult;
         newTrainRecordDetail.CheckScore  = trainDetail.CheckScore;
         db.SubmitChanges();
     }
 }
        /// <summary>
        /// 根据主键删除培训记录
        /// </summary>
        /// <param name="trainingId"></param>
        public static void DeleteTrainDetailByTrainDetail(string trainDetailId)
        {
            Model.SUBHSSEDB db = Funs.DB;
            Model.EduTrain_TrainRecordDetail trainDetails = Funs.DB.EduTrain_TrainRecordDetail.FirstOrDefault(e => e.TrainDetailId == trainDetailId);
            if (trainDetails != null)
            {
                db.EduTrain_TrainRecordDetail.DeleteOnSubmit(trainDetails);
                db.SubmitChanges();

                var rainRecord = EduTrain_TrainRecordService.GetTrainingByTrainingId(trainDetails.TrainingId);
                if (rainRecord != null)
                {
                    rainRecord.TrainPersonNum -= 1;
                    BLL.EduTrain_TrainRecordService.UpdateTraining(rainRecord);
                }
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 插入培训人员 3
        /// </summary>
        /// <param name="projectId"></param>
        /// <param name="arr"></param>
        public static bool AddTrainRecordPerson(string projectId, JArray arr, Model.Sys_User user)
        {
            Model.SUBHSSEDB db   = Funs.DB;
            bool            isOk = true;

            try
            {
                foreach (var item in arr)
                {
                    string trainingId     = null; ////培训记录ID
                    var    getTrainRecord = db.EduTrain_TrainRecord.FirstOrDefault(x => x.FromRecordId == item["RecordId"].ToString());
                    if (getTrainRecord != null)
                    {
                        trainingId = getTrainRecord.TrainingId;
                    }

                    string personId  = null; ///人员信息ID
                    var    getPerson = db.SitePerson_Person.FirstOrDefault(x => x.IdentityCard == item["IdentifyId"].ToString());
                    if (getPerson != null)
                    {
                        personId = getPerson.PersonId;
                    }
                    bool checkResult = false;
                    if (item["IsPass"].ToString() == "1")
                    {
                        checkResult = true;
                    }
                    if (!string.IsNullOrEmpty(trainingId) && !string.IsNullOrEmpty(personId))
                    {
                        Model.EduTrain_TrainRecordDetail newTrainRecordDetail = new Model.EduTrain_TrainRecordDetail
                        {
                            TrainingId  = trainingId,
                            PersonId    = personId,
                            CheckScore  = Funs.GetNewDecimal(item["Score"].ToString()),
                            CheckResult = checkResult,
                        };

                        var getTrainRecordDetail = db.EduTrain_TrainRecordDetail.FirstOrDefault(x => x.TrainingId == trainingId && x.PersonId == personId);
                        if (getTrainRecordDetail == null)
                        {
                            EduTrain_TrainRecordDetailService.AddTrainDetail(newTrainRecordDetail);
                        }
                        else
                        {
                            getTrainRecordDetail.CheckScore  = newTrainRecordDetail.CheckScore;
                            getTrainRecordDetail.CheckResult = newTrainRecordDetail.CheckResult;
                            EduTrain_TrainRecordDetailService.UpdateTrainDetail(getTrainRecordDetail);
                        }
                    }
                    else
                    {
                        isOk = false;
                    }
                }
            }
            catch (Exception ex)
            {
                isOk = false;
                ErrLogInfo.WriteLog(string.Empty, ex);
            }
            return(isOk);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 根据考生计划结束时 将相关培训考生内容 写培训记录归档
        /// </summary>
        /// <param name="getTestPlan"></param>

        public static void InsertTrainRecord(Model.Training_TestPlan getTestPlan)
        {
            using (Model.SUBHSSEDB db = new Model.SUBHSSEDB(Funs.ConnString))
            {
                ////获取培训计划
                var getTrainingPlan = db.Training_Plan.FirstOrDefault(e => e.PlanId == getTestPlan.PlanId);
                var getTrainRecord  = db.EduTrain_TrainRecord.FirstOrDefault(x => x.PlanId == getTestPlan.PlanId);
                if (getTrainingPlan != null && getTrainRecord == null)
                {
                    getTrainingPlan.States = "3";
                    db.SubmitChanges();

                    Model.EduTrain_TrainRecord newTrainRecord = new Model.EduTrain_TrainRecord
                    {
                        TrainingId     = SQLHelper.GetNewID(),
                        TrainingCode   = getTrainingPlan.PlanCode,
                        ProjectId      = getTrainingPlan.ProjectId,
                        TrainTitle     = getTrainingPlan.PlanName,
                        TrainContent   = getTrainingPlan.TrainContent,
                        TrainStartDate = getTrainingPlan.TrainStartDate,
                        TeachHour      = getTrainingPlan.TeachHour,
                        TrainEndDate   = getTrainingPlan.TrainEndDate,
                        TeachMan       = getTrainingPlan.TeachMan,
                        TeachAddress   = getTrainingPlan.TeachAddress,
                        Remark         = "来源:培训计划",
                        TrainTypeId    = getTrainingPlan.TrainTypeId,
                        TrainLevelId   = getTrainingPlan.TrainLevelId,
                        UnitIds        = getTrainingPlan.UnitIds,
                        States         = Const.State_2,
                        WorkPostIds    = getTrainingPlan.WorkPostId,
                        PlanId         = getTrainingPlan.PlanId,
                    };
                    newTrainRecord.CompileMan = UserService.GetUserNameByUserId(getTrainingPlan.DesignerId);
                    ///获取培训人员
                    var getTrainingTasks = from x in db.Training_Task where x.PlanId == getTrainingPlan.PlanId
                                           select x;
                    newTrainRecord.TrainPersonNum = getTrainingTasks.Count();
                    ///新增培训记录
                    db.EduTrain_TrainRecord.InsertOnSubmit(newTrainRecord);
                    db.SubmitChanges();

                    ////及格分数
                    int passScore = 80;
                    var testRule  = db.Sys_TestRule.FirstOrDefault();
                    if (testRule != null)
                    {
                        passScore = testRule.PassingScore;
                    }

                    foreach (var item in getTrainingTasks)
                    {
                        decimal gScores = 0;
                        bool    result  = false;
                        ////获取 考生试卷
                        var getTestRecord = db.Training_TestRecord.Where(x => x.TestPlanId == getTestPlan.TestPlanId && x.TestManId == item.UserId);
                        foreach (var itemR in getTestRecord)
                        {
                            if (itemR.TestScores > gScores)
                            {
                                gScores = itemR.TestScores ?? 0;
                            }
                        }

                        if (gScores >= passScore)
                        {
                            result = true;
                        }

                        Model.EduTrain_TrainRecordDetail newDetail = new Model.EduTrain_TrainRecordDetail
                        {
                            TrainDetailId = SQLHelper.GetNewID(),
                            TrainingId    = newTrainRecord.TrainingId,
                            PersonId      = item.UserId,
                            CheckScore    = gScores,
                            CheckResult   = result,
                        };
                        db.EduTrain_TrainRecordDetail.InsertOnSubmit(newDetail);
                        db.SubmitChanges();

                        ///// 培训考试 通过 更新卡号
                        if (result)
                        {
                            var getPerson = db.SitePerson_Person.FirstOrDefault(e => e.PersonId == newDetail.PersonId);
                            if (getPerson != null && string.IsNullOrEmpty(getPerson.CardNo))
                            {
                                getPerson.CardNo = SQLHelper.RunProcNewId("SpGetNewNumber", "SitePerson_Person", "CardNo", getPerson.ProjectId, UnitService.GetUnitCodeByUnitId(getPerson.UnitId));
                                db.SubmitChanges();
                            }
                        }
                    }

                    ////增加一条编码记录
                    CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(Const.ProjectTrainRecordMenuId, newTrainRecord.ProjectId, null, newTrainRecord.TrainingId, newTrainRecord.TrainStartDate);
                    CommonService.btnSaveData(newTrainRecord.ProjectId, Const.ProjectTrainRecordMenuId, newTrainRecord.TrainingId, getTrainingPlan.DesignerId, true, newTrainRecord.TrainTitle, "../EduTrain/TrainRecordView.aspx?TrainingId={0}");
                }
            }
        }