public async Task <ApiResult <GetShopUserAddressOutput> > Get([FromUri] string id, CancellationToken cancelToken) { if (Authorization == null) { return(new ApiResult <GetShopUserAddressOutput>(APIResultCode.Unknown, new GetShopUserAddressOutput { }, APIResultMessage.TokenNull)); } var user = _tokenRepository.GetUser(Authorization); if (user == null) { return(new ApiResult <GetShopUserAddressOutput>(APIResultCode.Unknown, new GetShopUserAddressOutput { }, APIResultMessage.TokenError)); } if (string.IsNullOrWhiteSpace(id)) { throw new NotImplementedException("地址Id信息为空!"); } var data = await _shopUserAddressRepository.GetIncludeAsync(id, cancelToken); return(new ApiResult <GetShopUserAddressOutput>(APIResultCode.Success, new GetShopUserAddressOutput { Id = data.Id.ToString(), Name = data.ReceiverName, //Address = data.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.State + data.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.City + //data.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.Region + data.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.Name + data.Industry.BuildingUnit.Building.SmallDistrict.Community.Name + data.Industry.BuildingUnit.Building.SmallDistrict.Name, Phone = data.ReceiverPhone, IsDefault = data.IsDefault, State = data.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.State, City = data.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.City, Region = data.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.Region, StreetOfficeId = data.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOfficeId.ToString(), StreetOfficeName = data.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.Name, CommunityId = data.Industry.BuildingUnit.Building.SmallDistrict.CommunityId.ToString(), CommunityName = data.Industry.BuildingUnit.Building.SmallDistrict.Community.Name, SmallDistrictId = data.Industry.BuildingUnit.Building.SmallDistrictId.ToString(), SmallDistrictName = data.Industry.BuildingUnit.Building.SmallDistrict.Name, BuildingId = data.Industry.BuildingUnit.BuildingId.ToString(), BuildingName = data.Industry.BuildingUnit.Building.Name, BuildingUnitId = data.Industry.BuildingUnitId.ToString(), BuildingUnitName = data.Industry.BuildingUnit.UnitName, NumberOfLayers = data.Industry.NumberOfLayers, IndustryId = data.IndustryId.ToString(), IndustryName = data.Industry.Name })); }
public async Task <ApiResult <AddOrderOutput> > Add([FromBody] AddOrderInput input, CancellationToken cancelToken) { if (Authorization == null) { return(new ApiResult <AddOrderOutput>(APIResultCode.Unknown, new AddOrderOutput { }, APIResultMessage.TokenNull)); } //if (string.IsNullOrWhiteSpace(input.ApplicationRecordId)) //{ // throw new NotImplementedException("业主认证Id为空!"); //} if (string.IsNullOrWhiteSpace(input.AddressId)) { throw new NotImplementedException("用户地址Id为空!"); } if (string.IsNullOrWhiteSpace(input.ShopId)) { throw new NotImplementedException("商铺Id为空!"); } var user = _tokenRepository.GetUser(Authorization); if (user == null) { return(new ApiResult <AddOrderOutput>(APIResultCode.Unknown, new AddOrderOutput { }, APIResultMessage.TokenError)); } //var ownerCertificationRecord = await _industryRepository.GetIncludeAsync(input.i, cancelToken); ////if (ownerCertificationRecord == null) ////{ //// throw new NotImplementedException("业主认证信息不正确!"); ////} var shopUserAddress = await _shopUserAddressRepository.GetIncludeAsync(input.AddressId, cancelToken); if (shopUserAddress == null) { throw new NotImplementedException("收货地址信息不正确!"); } if (shopUserAddress.Industry.BuildingUnit.Building.SmallDistrict.PropertyCompany == null) { throw new NotImplementedException("当前小区未配置服务物业不能进行下单!"); } var entity = await _orderRepository.AddAsync(new OrderDto { ShopId = input.ShopId, DeliveryPhone = shopUserAddress.Industry.BuildingUnit.Building.SmallDistrict.PropertyCompany.Phone, DeliveryName = shopUserAddress.Industry.BuildingUnit.Building.SmallDistrict.PropertyCompany.Name, OrderStatusValue = OrderStatus.Unpaid.Value, OrderStatusName = OrderStatus.Unpaid.Name, //OwnerCertificationRecordId = input.ApplicationRecordId, ReceiverName = shopUserAddress.ReceiverName, ReceiverPhone = shopUserAddress.ReceiverPhone, Address = shopUserAddress.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.State + shopUserAddress.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.City + shopUserAddress.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.Region + shopUserAddress.Industry.BuildingUnit.Building.SmallDistrict.Community.StreetOffice.Name + shopUserAddress.Industry.BuildingUnit.Building.SmallDistrict.Community.Name + shopUserAddress.Industry.BuildingUnit.Building.SmallDistrict.Name + shopUserAddress.Industry.BuildingUnit.Building.Name + shopUserAddress.Industry.BuildingUnit.UnitName + shopUserAddress.Industry.NumberOfLayers + "," + shopUserAddress.Industry.Name, IndustryId = shopUserAddress.IndustryId.ToString(), Number = GenerateCode(""), OperationTime = DateTimeOffset.Now, OperationUserId = user.Id.ToString() }, cancelToken); //try //{ // var shopUserList = await _userRepository.GetByShopIdAsync(entity.ShopId.ToString(), cancelToken); // foreach (var item in shopUserList) // { // SignalR("2", entity.ShopId.ToString(), item.Id.ToString(), entity); // } //} //catch (Exception) //{ //} return(new ApiResult <AddOrderOutput>(APIResultCode.Success, new AddOrderOutput { Id = entity.Id.ToString() })); }