/// <summary> /// 编辑课程人员绑定表 /// </summary> public void UpdateCourseBoundPersonnel(CourseBoundPersonnelEditDto input) { //TODO:更新前的逻辑判断,是否允许更新 var entity = _courseBoundPersonnelRepository.Get(input.Id.Value); input.MapTo(entity); _courseBoundPersonnelRepository.Update(entity); }
/// <summary> /// 新增课程人员绑定表 /// </summary> public CourseBoundPersonnelEditDto CreateCourseBoundPersonnel(CourseBoundPersonnelEditDto input) { //TODO:新增前的逻辑判断,是否允许新增 var entity = input.MapTo <CourseBoundPersonnel>(); entity.Id = _courseBoundPersonnelRepository.InsertAndGetId(entity); SetEnrollment(input.CourseId); return(entity.MapTo <CourseBoundPersonnelEditDto>()); }
public ActionResult CancellBount(int courseId, int typeId, int businId) { var result = new resultData(); result.status = "-1"; var boundDataAll = configureTypeService.GetCTypeByCId(courseId); //绑定关系的数据 var boundData = configureTypeService.GetCTypeByCourseIdOrTypeId(courseId, typeId, businId); //绑定的唯一数据 var courseDate = courseInfoService.GetCourseInfoById(new EntityDto <long>() { Id = courseId }); //课程数据 if (boundData != null) { //删除关系 string sqlcc = "delete from px_course_bound_configure where Id=" + boundData.Id; var rcc = _sqlExecuter.Execute(sqlcc); if (rcc > 0 && typeId == (int)ConfigureType.Class) { configureTypeService.SetCourseCountReduce(boundData.BusinessId); } result.msg = ""; //获取课程下的所有人员 var coursePersom = cbPersonnelService.GetCouPerByCourseAll(courseId); if (coursePersom.Any()) { //删除课程下的所有人员 string deleteIds = string.Join(",", coursePersom.Select(v => v.Id).ToList()); string sqlcp = "delete from px_course_bound_personnel where Id in(" + deleteIds + ")"; var rcp = _sqlExecuter.Execute(sqlcp); } var bound = boundDataAll.Where(c => c.BusinessId != businId).ToList(); if (bound.Any()) { var resultDate = AddUser(bound, courseId); if (resultDate.Any()) { //插入剩余关系下的所有用户 foreach (var itemuser in resultDate) { CourseBoundPersonnelEditDto cbp = new CourseBoundPersonnelEditDto(); cbp.CourseId = courseId; cbp.CourseName = courseDate.CourseName; cbp.AccountSysNo = itemuser.SysNO; cbp.AccountUserName = itemuser.DisplayName; cbPersonnelService.CreateCourseBoundPersonnel(cbp); } } } result.status = "0"; } return(Content(Serialize(result))); }
/// <summary> /// 通过Id获取课程人员绑定表信息进行编辑或修改 /// </summary> public GetCourseBoundPersonnelForEditOutput GetCourseBoundPersonnelForEdit(NullableIdDto <long> input) { var output = new GetCourseBoundPersonnelForEditOutput(); CourseBoundPersonnelEditDto courseBoundPersonnelEditDto; if (input.Id.HasValue) { var entity = _courseBoundPersonnelRepository.Get(input.Id.Value); courseBoundPersonnelEditDto = entity.MapTo <CourseBoundPersonnelEditDto>(); } else { courseBoundPersonnelEditDto = new CourseBoundPersonnelEditDto(); } output.CourseBoundPersonnel = courseBoundPersonnelEditDto; return(output); }
public ActionResult SetBoundCourseByType(int courseId, int typeId, int typeCaseId) { var result = new resultData(); result.status = "-1"; var courseDate = courseInfoService.GetCourseInfoById(new EntityDto <long>() { Id = courseId }); //课程数据 if (courseDate.Status != (int)CourseStatus.Pending) { return(Content(Serialize(new resultData() { status = "-2", msg = "当前课程状态为:待审核,才能添加人员" }))); } if (typeId == (int)ConfigureType.Class && courseDate != null && courseDate.Status != (int)CourseStatus.Completed && typeCaseId > 0) { var configure = configureTypeService.GetCTypeByClassIdOrType(typeCaseId, typeId); //班级的数据 var configureByCourseId = configureTypeService.GetCTypeByCourseIdOrType(courseId, typeId); //课程和班级数量 if ((configure != null && configure.Count > 0) || (configureByCourseId != null && configureByCourseId.Count > 0)) { return(Content(Serialize(new resultData() { status = "-1", msg = "班级和课程只能关联一次,不允许添加" }))); } } if (courseDate != null && typeId >= 0 && typeCaseId > 0) { var create = new CourseBoundConfigureTypeEditDto(); //实例化对象Bound对象 var boundData = configureTypeService.GetCTypeByCourseIdOrTypeId((int)courseDate.Id, typeId, typeCaseId); //绑定的数据 if (boundData == null) //如果没就增加 { create.CourseId = (int)courseDate.Id; create.CourseName = courseDate.CourseName; create.type = typeId; switch (typeId)//类型 { case (int)ConfigureType.Department: #region 部门操作 var department = departmentService.GetAllDepartmentInfos().FirstOrDefault(v => v.DepartmentId == typeCaseId); //获取部门唯一数据 if (department != null) { var createDataDUser = cbPersonnelService.GetUserDateByDepartment((int)courseDate.Id, department); foreach (var itemD in createDataDUser) //循环遍历插入 { CourseBoundPersonnelEditDto cbp = new CourseBoundPersonnelEditDto(); cbp.CourseId = (int)courseDate.Id; cbp.CourseName = courseDate.CourseName; cbp.AccountSysNo = itemD.SysNO; cbp.AccountUserName = itemD.DisplayName; cbPersonnelService.CreateCourseBoundPersonnel(cbp); } create.BusinessId = department.DepartmentId; create.BusinessName = department.DisplayName; } #endregion break; case (int)ConfigureType.Post: #region 岗位操作 var post = jobService.GetJobPostById(new EntityDto <long>() { Id = typeCaseId }); //获取唯一岗位 if (post != null) { var creatDataPUser = cbPersonnelService.GetUserDateByJobPost((int)courseDate.Id, post); foreach (var itemP in creatDataPUser) //循环遍历插入 { CourseBoundPersonnelEditDto cbp = new CourseBoundPersonnelEditDto(); cbp.CourseId = (int)courseDate.Id; cbp.CourseName = courseDate.CourseName; cbp.AccountSysNo = itemP.SysNO; cbp.AccountUserName = itemP.DisplayName; cbPersonnelService.CreateCourseBoundPersonnel(cbp); } create.BusinessId = (int)post.Id; create.BusinessName = post.Name; } #endregion break; case (int)ConfigureType.Class: #region 班级操作 var classes = classService.GetClassesInfoById(new EntityDto <long>() { Id = typeCaseId }); //获取唯一课程数据 if (classes != null) { var creatUserDate = cbPersonnelService.GetUserDateByClasses((int)courseDate.Id, classes); foreach (var itemC in creatUserDate) //循环遍历插入 { CourseBoundPersonnelEditDto cbp = new CourseBoundPersonnelEditDto(); cbp.CourseId = (int)courseDate.Id; cbp.CourseName = courseDate.CourseName; cbp.AccountSysNo = itemC.SysNO; cbp.AccountUserName = itemC.DisplayName; cbPersonnelService.CreateCourseBoundPersonnel(cbp); } create.BusinessId = (int)classes.Id; create.BusinessName = classes.ClassesName; } #endregion break; default: break; } configureTypeService.CreateCourseBoundConfigureType(create); result.msg = ""; } else { result.msg = boundData.BusinessName; } result.status = "0"; } return(Content(Serialize(result))); }
public ActionResult SetBoundCourseByUser(int courseId, string userIds) { var result = new resultData(); result.status = "-1"; var userListId = userIds.Split(',').ToList();//用户的Id var list = new List <string>(); var listLraen = new List <string>(); var courseDate = courseInfoService.GetCourseInfoById(new EntityDto <long>() { Id = courseId }); //课程数据 if (courseDate != null && userListId != null && userListId.Any()) { if (courseDate.Status != (int)CourseStatus.Pending) { return(Content(Serialize(new resultData() { status = "-1", msg = "当前课程状态为:待审核,才能添加人员" }))); } foreach (var id in userListId) { var userData = userAccountService.GetUserAccountById(new EntityDto <long>() { Id = Convert.ToInt32(id) }); //用户数据 var boundData = courseBoundService.GetCourseBoundByUserIdOrCourseId(userData.SysNO, Convert.ToInt32(courseDate.Id)); //绑定数据 if (boundData == null) //如果没就增加 { //增加人员 var create = new CourseBoundPersonnelEditDto(); create.AccountSysNo = userData.SysNO; create.AccountUserName = userData.DisplayName; create.CourseId = Convert.ToInt32(courseDate.Id); create.CourseName = courseDate.CourseName; courseBoundService.CreateCourseBoundPersonnel(create); } else { list.Add(userData.DisplayName); } var configu = configureTypeService.GetCTypeByCIdOrType((int)courseDate.Id, (int)ConfigureType.Personal, userData.SysNO); //增加关系 if (configu == null) { var createConfigure = new CourseBoundConfigureTypeEditDto(); createConfigure.CourseId = (int)courseDate.Id; createConfigure.CourseName = courseDate.CourseName; createConfigure.type = (int)ConfigureType.Personal; createConfigure.BusinessId = userData.SysNO; createConfigure.BusinessName = userData.DisplayName; configureTypeService.CreateCourseBoundConfigureType(createConfigure); } } result.status = "0"; result.msg = string.Join(",", list); } return(Content(Serialize(result))); }
public JsonResult SingleUpCourse(int courseId) { //课程对像 var courseDate = _courseInfoAppService.GetCourseInfoById(new EntityDto <long>() { Id = courseId }); //课程数据 if (courseDate != null) { int userId = int.Parse(CookieHelper.GetCookieValue("UserId").ToString()); var user = _userAccountService.GetUserAccountBySysNo(userId); //查询用户数据 var boundData = _courseBoundPersonnelAppService.GetCourseBoundByUserIdOrCourseId(user.SysNO, Convert.ToInt32(courseDate.Id)); //绑定数据 if (boundData == null) { //增加人员 var create = new CourseBoundPersonnelEditDto(); create.AccountSysNo = user.SysNO; create.AccountUserName = user.DisplayName; create.CourseId = Convert.ToInt32(courseDate.Id); create.CourseName = courseDate.CourseName; _courseBoundPersonnelAppService.CreateCourseBoundPersonnel(create); } var configu = _courseBoundConfigureTypeAppService.GetCTypeByCIdOrType((int)courseDate.Id, (int)ConfigureType.Personal, user.SysNO); //增加关系 if (configu == null) { var createConfigure = new CourseBoundConfigureTypeEditDto(); createConfigure.CourseId = (int)courseDate.Id; createConfigure.CourseName = courseDate.CourseName; createConfigure.type = (int)ConfigureType.Personal; createConfigure.BusinessId = user.SysNO; createConfigure.BusinessName = user.DisplayName; _courseBoundConfigureTypeAppService.CreateCourseBoundConfigureType(createConfigure); } //如果是线个考试则把人员配置到班级中 if (courseDate.Type == 4) { //查到线下培训课程所对就的班级 configu = _courseBoundConfigureTypeAppService.GetCTypeByCIdOrByType((int)courseDate.Id, (int)ConfigureType.Class); if (configu != null) { //班级人员关联关系数据添加 var classUser = new ClassUserEditDto(); classUser.ClassId = configu.BusinessId; classUser.UserId = userId; _classUserAppService.CreateClassUser(classUser); //把人员添加到班级中 var classInfo = _classesInfoAppService.GetClassesInfoForEdit(new NullableIdDto <long>() { Id = configu.BusinessId }); classInfo.ClassesInfo.MemberCount++; _classesInfoAppService.UpdateClassesInfoAsync(classInfo.ClassesInfo); } } } return(Json(courseDate, JsonRequestBehavior.AllowGet)); }