public async Task <Result> Create([FromBody] CustomerAddressCreateRequest request) { var address = new AdminAddress { AreaCode = request.AreaCode, CityCode = request.CityCode, Createat = DateTime.Now, DetailInfo = request.DetailInfo, IsDefault = request.IsDefault, PostalCode = request.PostalCode, ProvinceCode = request.ProvinceCode, TelNumber = request.TelNumber, UserName = request.UserName }; if (request.IsDefault) { var defaultAddress = await _addressRepository.Query().FirstOrDefaultAsync(e => e.IsDefault); if (defaultAddress != null) { defaultAddress.IsDefault = false; await _addressRepository.UpdateProperyAsync(defaultAddress, nameof(defaultAddress.IsDefault)); } } await _addressRepository.InsertAsync(address); return(Result.Ok()); }
public async Task <Result> Create([FromBody] CustomerAddressCreateRequest request) { var userId = HttpContext.GetUserId(); var userAddress = new CustomerAddress(userId, request.IsDefault, request.PostalCode, request.ProvinceCode, request.CityCode, request.AreaCode, request.DetailInfo, request.TelNumber, request.UserName); var defaultAddress = await _customerAddressRepository.Query().FirstOrDefaultAsync(e => e.CustomerId == userId && e.IsDefault); if (defaultAddress != null) { defaultAddress.IsDefault = false; await _customerAddressRepository.UpdateAsync(defaultAddress); } await _customerAddressRepository.InsertAsync(userAddress, false); return(Result.Ok()); }