/// <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); } } }
/// <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); }
/// <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}"); } } }