| | |
| | | import com.ruoyi.account.dto.ApplyForAdmissionDTO; |
| | | import com.ruoyi.account.mapper.AppUserMapper; |
| | | import com.ruoyi.account.mapper.ApplyForAdmissionMapper; |
| | | import com.ruoyi.account.service.AppUserService; |
| | | import com.ruoyi.account.service.UserApplyForAdmissionService; |
| | | import com.ruoyi.account.util.tencentMap.TencentMapUtil; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.service.TokenService; |
| | | import com.ruoyi.other.api.domain.Region; |
| | | import com.ruoyi.other.api.feignClient.RegionClient; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.StringUtils; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.time.LocalDateTime; |
| | | |
| | | @Slf4j |
| | |
| | | private TokenService tokenService; |
| | | @Autowired |
| | | private ApplyForAdmissionMapper userApplyForAdmissionMapper; |
| | | @Autowired |
| | | private AppUserService appUserService; |
| | | @Resource |
| | | private RegionClient regionClient; |
| | | |
| | | /** |
| | | * 申请入驻 |
| | | */ |
| | | @Override |
| | | public void apply(ApplyForAdmissionDTO applyForAdmissionDTO) { |
| | | public R apply(ApplyForAdmissionDTO applyForAdmissionDTO) { |
| | | Long userid = tokenService.getLoginUserApplet().getUserid(); |
| | | AppUser appUser = appUserService.getOne(new LambdaQueryWrapper<AppUser>().eq(AppUser::getDelFlag, 0).ne(AppUser::getStatus, 3) |
| | | .eq(AppUser::getPhone, applyForAdmissionDTO.getPhone())); |
| | | if (appUser == null){ |
| | | return R.fail("该手机号未注册"); |
| | | } |
| | | ApplyForAdmission applyForAdmission = new ApplyForAdmission(); |
| | | BeanUtils.copyProperties(applyForAdmissionDTO, applyForAdmission); |
| | | applyForAdmission.setCreateTime(LocalDateTime.now()); |
| | | applyForAdmission.setApplyUserId(userid); |
| | | applyForAdmission.setStatus(0); |
| | | String city = TencentMapUtil.inverseGeographicalAnalysis(applyForAdmission.getLongitude(), applyForAdmission.getLatitude(), false); |
| | | if(!StringUtils.hasLength(city)){ |
| | | city = "510100"; |
| | | } |
| | | applyForAdmission.setProvinceCode(city.substring(0, 2) + "0000"); |
| | | Region provinceRegion = regionClient.getRegionBiCode(applyForAdmission.getProvinceCode()).getData(); |
| | | applyForAdmission.setCityCode(city.substring(0, 4) + "00"); |
| | | Region cityRegion = regionClient.getRegionBiCode(applyForAdmission.getCityCode()).getData(); |
| | | applyForAdmission.setDistrictCode(city); |
| | | Region districtRegion = regionClient.getRegionBiCode(applyForAdmission.getDistrictCode()).getData(); |
| | | |
| | | applyForAdmission.setProvince(provinceRegion.getName()); |
| | | applyForAdmission.setCity(cityRegion.getName()); |
| | | applyForAdmission.setDistrict(districtRegion.getName()); |
| | | |
| | | this.save(applyForAdmission); |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | |
| | | @Override |
| | | public ApplyForAdmission read() { |
| | | Long userid = tokenService.getLoginUserApplet().getUserid(); |
| | | return userApplyForAdmissionMapper.selectOne(new LambdaQueryWrapper<ApplyForAdmission>().eq(ApplyForAdmission::getApplyUserId, userid)); |
| | | return userApplyForAdmissionMapper |
| | | .selectOne(new LambdaQueryWrapper<ApplyForAdmission>() |
| | | .eq(ApplyForAdmission::getApplyUserId, userid) |
| | | .orderByDesc(ApplyForAdmission::getCreateTime) // 按申请日期降序 |
| | | .last("LIMIT 1")); |
| | | } |
| | | } |