feige
2025-07-08 f1831ec9329d0fb5e424b35064ca8e5f05a7920a
zhang-content/src/main/java/com/ruoyi/service/impl/ZHealthBaseServiceImpl.java
@@ -9,13 +9,20 @@
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.domain.ZHealthBase;
import com.ruoyi.domain.ZHealthNow;
import com.ruoyi.domain.ZInfoUser;
import com.ruoyi.domain.dto.ZHealthBaseDto;
import com.ruoyi.domain.health.AllergyHistory;
import com.ruoyi.domain.health.BloodType;
import com.ruoyi.domain.health.GeneticDisease;
import com.ruoyi.mapper.ZHealthBaseMapper;
import com.ruoyi.service.ZHealthBaseService;
import com.ruoyi.service.ZInfoUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
/**
 * <p>
@@ -27,7 +34,8 @@
 */
@Service
public class ZHealthBaseServiceImpl extends ServiceImpl<ZHealthBaseMapper, ZHealthBase> implements ZHealthBaseService {
    @Autowired
    ZInfoUserService zInfoUserService;
    @Override
    public ZHealthBaseDto selectData() {
        SysUser user = SecurityUtils.getLoginUser().getUser();
@@ -37,6 +45,33 @@
        lqw.eq(ZHealthBase::getUid,userId);
        ZHealthBase zHealthBase = getOne(lqw);
        if(zHealthBase==null)
        {
            //根据userId查询到infouser的uaid
            ZInfoUser zInfoUser = zInfoUserService.getInfoBysysId(userId);
            System.out.println("55555555555555555555");
            //拿到所有的sysid
            List<Long> fms = zInfoUserService.findByUaidToFaid(zInfoUser.getUaid()).stream().map(ZInfoUser::getSysId).collect(Collectors.toList());
            System.out.println(fms.size());
            for(Long id:fms)
            {
                LambdaQueryWrapper<ZHealthBase> lqw1 = new LambdaQueryWrapper<>();
                if(!id.equals(userId))
                {
                    lqw1.eq(ZHealthBase::getUid, id);
                    zHealthBase = getOne(lqw1);
                    break;
                }
            }
        }
        //如果是第一次进来,之前没有这个用户的数据,抛异常让用户先插入数据
        if(zHealthBase == null){
            throw new RuntimeException("第一次进来,请先填写好数据");