public static Coupons CourseCouponDto2CouponEntity(this CourseCouponDTO dto) { return(new Coupons { CourseId = dto.CourseId , CouponName = dto.CouponName , CouponTypeId = (byte)dto.Type , CouponTypeAmount = (double?)(dto.Amount ?? 0) , ExpirationDate = dto.ExpirationDate , AutoGenerate = dto.AutoGeneration , SubscriptionMonths = dto.SubscriptionMonths , AddOn = DateTime.Now , CreatedBy = DtoExtensions.CurrentUserId }); }
/// <summary> /// save course coupon /// </summary> /// <param name="dto"></param> /// <param name="error"></param> /// <returns></returns> public bool SaveCourseCoupon(ref CourseCouponDTO dto, out string error) { if (dto.CourseId == null) { error = "courseId missing"; return(false); } if (!IsCourseCouponNameValid(dto.CouponId, (int)dto.CourseId, dto.CouponName, out error)) { error = String.IsNullOrEmpty(error) ? "Coupon Name already exists" : error; return(false); } //if (!IsCouponCodeValid(dto.CouponCode, dto.CouponId, out error)) //{ // error = String.IsNullOrEmpty(error) ? "Coupon code already exists" : error; // return false; //} try { if (dto.CouponId < 0) //new course { var entity = dto.CourseCouponDto2CouponEntity(); CouponRepository.Add(entity); if (!CouponRepository.UnitOfWork.CommitAndRefreshChanges(out error)) { return(false); } dto.CouponId = entity.Id; } else { var entity = CouponRepository.GetById(dto.CouponId); if (entity == null) { error = "Course entity not found"; return(false); } entity.UpdateCouponEntity(dto); if (!CouponRepository.UnitOfWork.CommitAndRefreshChanges(out error)) { return(false); } } return(SaveCouponInstance(dto, out error)); } catch (Exception ex) { error = Utils.FormatError(ex); Logger.Error("save course coupon dto", dto.CourseId ?? -1, ex, CommonEnums.LoggerObjectTypes.Coupon); return(false); } }