Exemplo n.º 1
0
        public async Task <CouponResponse> Post([FromBody] CouponAmountRequest dto)
        {
            dto.CreatorId = base.CurrentUser.UserId;
            CouponService service = new CouponService(dto.SchoolId);

            return(await service.CreateCoupon(dto));
        }
Exemplo n.º 2
0
        /// <summary>
        /// 描述:生成奖学金券
        /// <para>作    者:瞿琦</para>
        /// <para>创建时间:2018-11-2</para>
        /// </summary>
        /// <returns>生成的校长奖学金信息</returns>
        /// <exception cref="AMS.Core.BussinessException">
        /// 异常ID:4, 异常描述:添加校长奖学金失败
        /// 异常ID:5, 异常描述:优惠券号重复
        /// </exception>
        public async Task <CouponResponse> CreateCoupon(CouponAmountRequest dto)
        {
            var couponNo = CreateCouponNo.GetCouponCode();

            if (_tblDctCouponRepository.Value.GetCouponNoByCouponInfo(this._schoolId, couponNo) != null)
            {
                throw new BussinessException(ModelType.Discount, 5);
            }

            var entity = new TblDctCoupon()
            {
                CouponId      = IdGenerator.NextId(),
                SchoolId      = _schoolId,
                CouponNo      = couponNo,
                CouponType    = (int)CouponType.HeadmasterBonus,
                Amount        = dto.Amount,
                Status        = (int)Dto.Enum.CouponStatus.NoUse,
                ExpireTime    = DateTime.Now.AddMonths(6),
                EnrollOrderId = 0,
                IsFreeAll     = dto.IsFreeAll,
                StudentId     = 0,
                UseTime       = null,
                CreateTime    = DateTime.Now,
                FromId        = 0,
                Remark        = string.Empty,
                CreatorId     = dto.CreatorId
            };
            var flag = await _tblDctCouponRepository.Value.AddTask(entity);

            if (!flag)
            {
                throw new BussinessException(ModelType.Discount, 4);
            }
            var        result     = Mapper.Map <CouponResponse>(entity);
            OrgService orgService = new OrgService();
            var        schoolList = orgService.GetAllSchoolList().FirstOrDefault(x => x.SchoolId.Trim() == _schoolId.Trim());

            result.SchoolName = schoolList == null ? "" : schoolList.SchoolName;
            return(result);
        }