package service import ( "fmt" "hospital-admin-api/api/dao" "hospital-admin-api/api/responses/userShipAddressResponse" ) type UserShipAddressService struct { } // GetUserShipAddressByUserId 获取用户收货地址-用户id func (r *UserShipAddressService) GetUserShipAddressByUserId(userId int64) (u []*userShipAddressResponse.UserShipAddress, err error) { userShipAddressDao := dao.UserShipAddressDao{} orderProductLogistics, err := userShipAddressDao.GetUserShipAddressListByOrderUserId(userId) if len(orderProductLogistics) == 0 { return nil, nil } // 处理返回值 items := make([]*userShipAddressResponse.UserShipAddress, len(orderProductLogistics)) if len(orderProductLogistics) > 0 { for i, v := range orderProductLogistics { // 将原始结构体转换为新结构体 item := &userShipAddressResponse.UserShipAddress{ AddressId: fmt.Sprintf("%d", v.AddressId), UserId: fmt.Sprintf("%d", v.AddressId), ProvinceId: fmt.Sprintf("%d", v.AddressId), Province: v.Province, CityId: fmt.Sprintf("%d", v.CityId), City: v.City, CountyId: fmt.Sprintf("%d", v.CountyId), County: v.County, ConsigneeTownId: fmt.Sprintf("%d", v.ConsigneeTownId), ConsigneeTown: v.ConsigneeTown, Address: v.Address, AddressMask: v.AddressMask, ConsigneeName: v.ConsigneeName, ConsigneeNameMask: v.ConsigneeNameMask, ConsigneeTel: v.ConsigneeTel, ConsigneeTelMask: v.ConsigneeTelMask, ConsigneeZipCode: v.ConsigneeZipCode, IsDefault: &v.IsDefault, Tag: &v.Tag, CreatedAt: v.CreatedAt, UpdatedAt: v.UpdatedAt, } // 将转换后的结构体添加到新切片中 items[i] = item } } return items, nil }