/// <summary> /// 编辑所属类型配置 /// </summary> public void UpdateCourseBoundConfigureType(CourseBoundConfigureTypeEditDto input) { //TODO:更新前的逻辑判断,是否允许更新 var entity = _courseBoundConfigureTypeRepository.Get(input.Id.Value); input.MapTo(entity); _courseBoundConfigureTypeRepository.InsertOrUpdateAndGetId(entity); }
/// <summary> /// 新增所属类型配置 /// </summary> public CourseBoundConfigureTypeEditDto CreateCourseBoundConfigureType(CourseBoundConfigureTypeEditDto input) { //TODO:新增前的逻辑判断,是否允许新增 var entity = input.MapTo <CourseBoundConfigureType>(); entity.Id = _courseBoundConfigureTypeRepository.InsertAndGetId(entity); if (input.type == (int)ConfigureType.Class) { SetCourseCount(entity.BusinessId); } return(entity.MapTo <CourseBoundConfigureTypeEditDto>()); }
/// <summary> /// 通过Id获取所属类型配置信息进行编辑或修改 /// </summary> public GetCourseBoundConfigureTypeForEditOutput GetCourseBoundConfigureTypeForEdit(NullableIdDto <long> input) { var output = new GetCourseBoundConfigureTypeForEditOutput(); CourseBoundConfigureTypeEditDto courseBoundConfigureTypeEditDto; if (input.Id.HasValue) { var entity = _courseBoundConfigureTypeRepository.Get(input.Id.Value); courseBoundConfigureTypeEditDto = entity.MapTo <CourseBoundConfigureTypeEditDto>(); } else { courseBoundConfigureTypeEditDto = new CourseBoundConfigureTypeEditDto(); } output.CourseBoundConfigureType = courseBoundConfigureTypeEditDto; 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)); }