public async Task <JsonResult> OffExchange(ExchangDto dto)
        {
            var json = new JsonResult(new { succ = true, msg = L("GiftExchange") + L("Success") + "!" });

            var member = _memberRepository.Get(dto.Order.MemberId);

            if (member.Integral < dto.Order.Point)
            {
                json.Value = new { succ = false, msg = L("Member") + L("Usable") + L("Integral") + L("NEnough") + "!" };
                return(json);
            }

            member.Integral -= dto.Order.Point;
            await _memberRepository.UpdateAsync(member);

            //_memAppService.

            var UserInfo = await _sessionAppService.GetCurrentLoginInformations();

            dto.Order.TenantId     = (int)_AbpSession.TenantId;
            dto.Order.Code         = "";
            dto.Order.ChainStoreId = UserInfo.User.ChainStoreId;
            dto.Order.BillNumber   = _comService.GetBillNumber(Enum.OrderNumberType.OFGT);
            dto.Order.ReceiveTime  = DateTime.Now;

            long id = await _Repository.InsertAndGetIdAsync(dto.Order);

            foreach (var item in dto.ItemList)
            {
                item.TenantId    = (int)_AbpSession.TenantId;
                item.GiftOrderId = id;
                await _itemService.CreateAsync(item);
            }

            Entity.IntegralNote note = new Entity.IntegralNote();
            note.Type         = 0;
            note.BillNumber   = dto.Order.BillNumber;
            note.ChainStoreId = dto.Order.ChainStoreId;
            note.MemberId     = dto.Order.MemberId;
            note.Way          = (int)ConsumeType.PointRecharge;
            note.Point        = dto.Order.Point;
            note.Balance      = member.Integral;// - dto.Order.Point;
            note.UserAccount  = UserInfo.User.UserName;
            note.Memo         = "礼品兑换";
            await _noteAppService.CreateAsync(note);

            return(json);
        }
 public async Task CreateAsync(Entity.IntegralNote note)
 {
     await _Repository.InsertAsync(note);
 }