From b02beccf4567068cb47a3f1181a00039456c872d Mon Sep 17 00:00:00 2001
From: zqy <2522236926@qq.com>
Date: 星期三, 06 八月 2025 15:37:20 +0800
Subject: [PATCH] 用户修改姓名和电话同步修改uaid

---
 zhang-content/src/main/java/com/ruoyi/service/impl/ZHealthInfoServiceImpl.java |  109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 109 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..a40f734 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,98 @@
  */
 @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();
+
+        LambdaQueryWrapper<ZHealthInfo> lqw = new LambdaQueryWrapper<>();
+        lqw.eq(ZHealthInfo::getUid,userId);
+        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