From cedaeeed6d401aefebf93ea6ea21cc9e06d5f5db Mon Sep 17 00:00:00 2001
From: zqy <2522236926@qq.com>
Date: 星期二, 02 十二月 2025 10:36:48 +0800
Subject: [PATCH] 新增搜索 模块+同伴+时间
---
zhang-content/src/main/java/com/ruoyi/service/impl/ZHealthInfoServiceImpl.java | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 117 insertions(+), 0 deletions(-)
diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZHealthInfoServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZHealthInfoServiceImpl.java
index 946f4aa..836799c 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZHealthInfoServiceImpl.java
+++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZHealthInfoServiceImpl.java
@@ -1,11 +1,27 @@
package com.ruoyi.service.impl;
+import com.alibaba.fastjson2.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.bean.BeanUtils;
+import com.ruoyi.domain.*;
import com.ruoyi.domain.ZHealthInfo;
+import com.ruoyi.domain.ZHealthInfo;
+import com.ruoyi.domain.dto.ZHealthInfoDto;
+import com.ruoyi.domain.dto.ZHealthInfoDto;
+import com.ruoyi.domain.health.*;
import com.ruoyi.mapper.ZHealthInfoMapper;
import com.ruoyi.service.ZHealthInfoService;
+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>
@@ -17,5 +33,106 @@
*/
@Service
public class ZHealthInfoServiceImpl extends ServiceImpl<ZHealthInfoMapper, ZHealthInfo> implements ZHealthInfoService {
+ @Autowired
+ ZInfoUserService zInfoUserService;
+ @Override
+ public AjaxResult selectData() {
+ SysUser user = SecurityUtils.getLoginUser().getUser();
+ Long userId = user.getUserId();
+ LambdaQueryWrapper<ZHealthInfo> lqw = new LambdaQueryWrapper<>();
+ lqw.eq(ZHealthInfo::getUid,userId);
+ ZHealthInfo zHealthInfo = getOne(lqw);
+
+
+
+ if(zHealthInfo==null)
+ {
+ //鏍规嵁userId鏌ヨ鍒癷nfouser鐨剈aid
+ ZInfoUser zInfoUser = zInfoUserService.getInfoBysysId(userId);
+// System.out.println("sdfsdf999000550");
+
+ //鎷垮埌鎵�鏈夌殑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<ZHealthInfo> lqw1 = new LambdaQueryWrapper<>();
+
+ if(!id.equals(userId))
+ {
+ lqw1.eq(ZHealthInfo::getUid, id);
+ zHealthInfo = getOne(lqw1);
+ break;
+ }
+ }
+
+ }
+ //濡傛灉鏄涓�娆¤繘鏉ワ紝涔嬪墠娌℃湁杩欎釜鐢ㄦ埛鐨勬暟鎹紝鎶涘紓甯歌鐢ㄦ埛鍏堟彃鍏ユ暟鎹�
+ if(zHealthInfo == null){
+ throw new RuntimeException("绗竴娆¤繘鏉�,璇峰厛濉啓濂芥暟鎹�");
+ }
+
+ //灏佽瑕佽繑鍥炵殑鏁版嵁
+ ZHealthInfoDto returnData = new ZHealthInfoDto();
+ BeanUtils.copyProperties(zHealthInfo,returnData);
+
+// returnData.setName(zHealthInfo.getName());
+// returnData.setSex(zHealthInfo.getSex());
+// returnData.setEducationLevel(zHealthInfo.getEducationLevel());
+// returnData.setWork(zHealthInfo.getWork());
+// returnData.setPhone(zHealthInfo.getPhone());
+// returnData.setEmail(zHealthInfo.getEmail());
+// returnData.setMedicine(zHealthInfo.getMedicine());
+// returnData.setBaseDisease(zHealthInfo.getBaseDisease());
+
+ //灏唈son鏁扮粍杞崲鎴愬璞�
+ returnData.setSkinTypeClass(JSON.parseObject(zHealthInfo.getSkinType(), SkinType.class));
+ returnData.setPsychologyTypeClass(JSON.parseObject(zHealthInfo.getPsychologyType(), PsychologyType.class));
+ returnData.setAttitudeClass(JSON.parseObject(zHealthInfo.getAttitude(), AttitudeType.class));
+ returnData.setNutritionClass(JSON.parseObject(zHealthInfo.getNutrition(), NutritionType.class));
+
+ return AjaxResult.success(returnData);
+
+ }
+
+ @Override
+ public AjaxResult saveOrUpdateData(ZHealthInfoDto zHealthInfoDto) {
+ SysUser user = SecurityUtils.getLoginUser().getUser();
+ Long userId = user.getUserId();
+
+ //鑾峰彇鍒板悓涓�鐢ㄦ埛鐨剆ys_userId 鍙瓨鎴栦慨鏀逛竴鏉℃暟鎹�
+ ZInfoUser zInfoUser = zInfoUserService.getInfoBysysId(userId);
+ String uaid = zInfoUser.getUaid();
+ List<ZInfoUser> byUaidToFaid = zInfoUserService.findByUaidToFaid(uaid);
+ List<Long> collect = byUaidToFaid.stream().map(ZInfoUser::getSysId).collect(Collectors.toList());
+
+
+
+ LambdaQueryWrapper<ZHealthInfo> lqw = new LambdaQueryWrapper<>();
+ lqw.in(ZHealthInfo::getUid,collect);
+ ZHealthInfo getResult = getOne(lqw);
+
+ ZHealthInfo zHealthInfo = new ZHealthInfo();
+
+ BeanUtils.copyProperties(zHealthInfoDto,zHealthInfo);
+ zHealthInfo.setUid(userId);
+ zHealthInfo.setSkinType(JSON.toJSONString(zHealthInfoDto.getSkinTypeClass()));
+ zHealthInfo.setPsychologyType(JSON.toJSONString(zHealthInfoDto.getPsychologyTypeClass()));
+ zHealthInfo.setAttitude(JSON.toJSONString(zHealthInfoDto.getAttitudeClass()));
+ zHealthInfo.setNutrition(JSON.toJSONString(zHealthInfoDto.getNutritionClass()));
+
+
+ if(getResult == null){
+ //濡傛灉鏄涓�娆¤繘鏉ワ紝閭d箞鏄柊澧炴暟鎹�
+ save(zHealthInfo);
+ }else {
+ //濡傛灉涓嶆槸绗竴娆★紝閭e氨鏄慨鏀规暟鎹簡
+ zHealthInfo.setId(getResult.getId());
+ updateById(zHealthInfo);
+ }
+
+ return AjaxResult.success();
+ }
}
--
Gitblit v1.9.1