/// <summary> /// 学员下订单 /// </summary> public int MakeOrder(int studentId, int courseId) { CourseBll courseBll = new CourseBll(); SchoolBll schoolBll = new SchoolBll(); Yw_Course course = courseBll.GetCourse(courseId); if (course == null || course.Ycs_Status != (int)CourseStatusEnum.已上架) { throw new AbhsException(ErrorCodeEnum.CourseCanNotBuy, AbhsErrorMsg.ConstCourseCanNotBuy); } Bas_School school = schoolBll.GetSchoolByStudent(studentId); if (school == null) { throw new AbhsException(ErrorCodeEnum.StudentNotBindSchool, AbhsErrorMsg.ConstStudentNotBindSchool); } Yw_CoursePrice price = courseBll.GetCoursePrice(courseId, school.Bsl_Level); Yw_StudentOrder order = new Yw_StudentOrder(); order.Yod_CourseId = courseId; order.Yod_OrderNo = GenerateOrderNo(courseId, studentId); order.Yod_OrderTime = DateTime.Now; order.Yod_OrderType = (int)OrderTypeEnum.订单; order.Yod_PayBatchId = 0; order.Yod_ReferOrderId = 0; order.Yod_PayTime = new DateTime(1900, 1, 1); order.Yod_Status = (int)StudentOrderStatus.待支付; order.Yod_StudentId = studentId; order.Yod_UpdateTime = DateTime.Now; order.Yod_Amount = price.Yce_Price; OrderService.Add(order); return order.Yod_Id; }
public DtoSelectCenterOrderResult GetOrderInfoForDetail(int studentId, int orderId) { Yw_StudentOrder order = GetStudentOrder(orderId); if (order.Yod_StudentId.Equals(studentId)) { CourseBll courseBll = new CourseBll(); Yw_Course course = courseBll.GetCourse(order.Yod_CourseId); DtoSelectCenterOrderResult result = new DtoSelectCenterOrderResult(); result.StudentId = order.Yod_StudentId; result.CourseId = course.Ycs_Id; result.CourseName = course.Ycs_Name; result.CourseImage = course.Ycs_CoverImage.ToOssPath(); result.Grade = course.Ycs_Grade; result.CourseType = course.Ycs_CourseType; result.LessonCount = course.Ycs_LessonCount; result.Description = course.Ycs_Description; result.OrderId = order.Yod_Id; result.OrderAmount = order.Yod_Amount; result.PayAmount = order.Yod_PayAmount; result.OrderStatus = order.Yod_Status; result.OrderTime = order.Yod_OrderTime; result.OrderNo = order.Yod_OrderNo; List<DtoStudentOrderPay> orderPayList = Service.GetStudentOrderPay(order.Yod_Id, order.Yod_PayBatchId); result.OrderCashPay = orderPayList.FirstOrDefault(p => p.PayType < 200); result.OrderVoucherPayList = orderPayList.Where(p => p.PayType > 200).ToList(); if (result.OrderCashPay != null) { result.PayType = result.OrderCashPay.PayType - 100; result.PayTime = result.OrderCashPay.PayTime; } return result; } else { throw new AbhsException(ErrorCodeEnum.NoAuthorize, AbhsErrorMsg.ConstNoAuthorizeViewOrder); } }
/// <summary> /// 选课中心订单详情页-支付页 /// </summary> /// <param name="studentId">学生Id</param> /// <param name="orderId">订单Id</param> /// <returns></returns> public DtoSelectCenterOrderResult GetOrderInfoForPayment(int studentId, int orderId) { //获取订单信息 //验证订单是否属于当前登录用户 //根据订单Id查询课程信息(名称、图片、年级、课程类型、课时、描述、教材版本) //课程价格显示订单原始金额 Yw_StudentOrder order = GetStudentOrder(orderId); if (order.Yod_StudentId.Equals(studentId)) { CourseBll courseBll = new CourseBll(); Yw_Course course = courseBll.GetCourse(order.Yod_CourseId); DtoSelectCenterOrderResult result = new DtoSelectCenterOrderResult(); result.StudentId = order.Yod_StudentId; result.CourseId = course.Ycs_Id; result.CourseName = course.Ycs_Name; result.CourseImage = course.Ycs_CoverImage.ToOssPath(); result.Grade = course.Ycs_Grade; result.CourseType = course.Ycs_CourseType; result.LessonCount = course.Ycs_LessonCount; result.Description = course.Ycs_Description; result.OrderId = order.Yod_Id; result.OrderAmount = order.Yod_Amount; result.OrderStatus = order.Yod_Status; result.OrderTime = order.Yod_OrderTime; result.OrderNo = order.Yod_OrderNo; return result; } else { throw new AbhsException(ErrorCodeEnum.NoAuthorize, AbhsErrorMsg.ConstNoAuthorizeViewOrder); } }