zqy
5 天以前 b02beccf4567068cb47a3f1181a00039456c872d
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZInfoUserController.java
@@ -1,6 +1,7 @@
package com.ruoyi.web.controller.zhang;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mysql.cj.x.protobuf.MysqlxDatatypes;
import com.ruoyi.common.annotation.Log;
@@ -12,9 +13,8 @@
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.ServletUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.domain.ZInfoUser;
import com.ruoyi.domain.ZfDoctor;
import com.ruoyi.domain.ZfRelation;
import com.ruoyi.common.utils.uuid.UUID;
import com.ruoyi.domain.*;
import com.ruoyi.domain.dto.Genealogy;
import com.ruoyi.domain.dto.GenealogyExportDto;
@@ -23,7 +23,9 @@
import com.ruoyi.service.ZfFamilyService;
import com.ruoyi.service.ZfRoleService;
import com.ruoyi.system.mapper.SysUserMapper;
import com.ruoyi.system.service.ISysUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -48,9 +50,11 @@
@RestController
@RequestMapping("/self/user")
public class ZInfoUserController extends BaseController {
    @Autowired
    private ISysUserService userService;
    @Resource
    private ZInfoUserService zInfoUserService;
    @Resource
    private ZfFamilyService zfFamilyService;
@@ -118,12 +122,25 @@
    public AjaxResult getInfo() {
        SysUser user = SecurityUtils.getLoginUser().getUser();
        Long userId = user.getUserId();
        return AjaxResult.success(zInfoUserService.getInfoById(userId));
        ZInfoUser zInfoUser = zInfoUserService.getInfoById(userId);
        if(zInfoUser!=null)
        {
            return AjaxResult.success(zInfoUser);
        }
        else
            return AjaxResult.success(user);
    }
    @GetMapping("/{id}")
    public AjaxResult getInfoById(@PathVariable("id") Long id) {
      //  SysUser user = SecurityUtils.getLoginUser().getUser();
        //  SysUser user = SecurityUtils.getLoginUser().getUser();
        Long userId = id;
        //查询sys_user表
        //  SysUser sysUser = sysUserService.selectUserById(userId);
        return AjaxResult.success(zInfoUserService.getInfoById(userId));
    }
//
@@ -140,10 +157,62 @@
//        }
        SysUser user = SecurityUtils.getLoginUser().getUser();
        Long userId = user.getUserId();
        zInfoUser.setUserId(userId);
        return toAjax(zInfoUserService.saveOrUpdate(zInfoUser));
        zInfoUser.setSysId(userId);
        LambdaUpdateWrapper<ZInfoUser> uw = new LambdaUpdateWrapper<>();
        uw.eq(ZInfoUser::getSysId,userId).set(ZInfoUser::getSelfIntroduction,zInfoUser.getSelfIntroduction());
        return toAjax(zInfoUserService.update(uw));
        //    saveOrUpdate(zInfoUser));
    }
    @Log(title = "个人详细信息记录", businessType = BusinessType.INSERT)
    @PutMapping("/updateInfo")
    public AjaxResult updateInfo(@RequestBody ZInfoUser zInfoUser) {
//        if (!Pattern.matches("^[\\d]+(?:,[\\d]+)*$",zInfoUser.getFamilyId())) {
//            throw new RuntimeException("请输入只有数字和英文逗号的字符串,且数字和逗号必须交替出现");
//        }
        SysUser user = SecurityUtils.getLoginUser().getUser();
        Long userId = user.getUserId();
        zInfoUser.setSysId(userId);
//        ZInfoUser infoBysysId = zInfoUserService.getInfoBysysId(userId);
//
//
//        zInfoUser.setUserId(infoBysysId.getUserId());
        user.setSex(zInfoUser.getSex()+"");
        user.setUserName(zInfoUser.getOldName());
        user.setPhonenumber(zInfoUser.getPhoneNumber());
        String oriUaid = zInfoUser.getUaid();
        String originalString = zInfoUser.getOldName()+"-"+zInfoUser.getPhoneNumber();
        String uniqueId = UUID.nameUUIDFromBytes(originalString.getBytes()).toString();
        zInfoUser.setUaid(uniqueId);
//
//        us.setUserId(user.getSysId());
//        us.setUserName(user.getUserName());
//        us.setNickName(user.getNickName());
//        us.setRoleId(user.getRoleId());
//        us.setSex(user.getSex());
//        us.setStatus(user.getStatus());
//        us.setRemark(user.getRemark());
        userService.updateUser(user);
        //LambdaUpdateWrapper<ZInfoUser> uw = new LambdaUpdateWrapper<>();
        //修改uaid相同的用户记录
        if(oriUaid!=null) {
            List<ZInfoUser> list = zInfoUserService.findByUaidToFaid(oriUaid);
            for(ZInfoUser zInfoUser1: list)
                zInfoUser1.setUaid(oriUaid);
            return toAjax(zInfoUserService.saveBatch(list));
        }
        else
        // uw.eq(ZInfoUser::getSysId,userId).set(ZInfoUser::getSelfIntroduction,zInfoUser.getSelfIntroduction());
            return toAjax(zInfoUserService.saveOrUpdate(zInfoUser));
        //    saveOrUpdate(zInfoUser));
    }
//    /**
//     * 修改个人详细信息记录
@@ -205,41 +274,8 @@
    /**
     * 根据用户id判断是否是子孙 tpfid:自己id 根据用户id判断是否是异性  不是本家的人选
     */
    @GetMapping("/uidAndUJd/{tpfid}/{sex}")
        public AjaxResult findByUidAndUid(@PathVariable("tpfid")  Long tpfid, @PathVariable("sex")  Integer sex)
        {
//            Integer sex = zInfoUserService.getInfoById(tpfid).getSex();
            //sex == 0 -> 男
            if (sex == 1){
                sex = 0;
            }
            else if (sex == 0){
                sex = 1;
            }
            List<ZInfoUser> zInfoUsers = zInfoUserService.getDataBySex(sex);
            List<HashMap<Long,String>> satisfyIds = new ArrayList<>();
            HashMap<Long,String> bs = new HashMap<>();
            for (ZInfoUser zInfoUser:zInfoUsers) {
                    if (!zInfoUserService.findByuid(zInfoUser.getUserId(), tpfid) && (zInfoUser.getMaritalStatus() == null || zInfoUser.getMaritalStatus() != 1)){
                        bs.put(zInfoUser.getUserId(),zInfoUser.getNickName());
                    }
            }
            satisfyIds.add(bs);
            return AjaxResult.success(satisfyIds);
        }
    /**
     * 根据用户id判断是否是子孙 uid:长辈id,tpfid:我自己的zinfoid
     */
    @GetMapping("/uidUJd/{uid}/{tpfid}")
    public AjaxResult findByUidAndUid2(@PathVariable("uid") Long uid ,@PathVariable("tpfid")  Long tpfid){
        return AjaxResult.success( zInfoUserService.findByuid(uid,tpfid));
    }
    @GetMapping("/sex/{sex}")
    public AjaxResult findBySex(@PathVariable("sex")  Integer sex)
    @GetMapping("/uidAndUJd/{tpfid}/{sex}/{clanId}")
    public AjaxResult findByUidAndUid(@PathVariable("tpfid")  Long tpfid, @PathVariable("sex")  Integer sex, @PathVariable("clanId")  Integer clanId)
    {
//            Integer sex = zInfoUserService.getInfoById(tpfid).getSex();
        //sex == 0 -> 男
@@ -249,13 +285,44 @@
        else if (sex == 0){
            sex = 1;
        }
        List<ZInfoUser> zInfoUsers = zInfoUserService.getDataBySex(sex);
        List<ZInfoUser> zInfoUsers = zInfoUserService.getDataBySex(sex, clanId);
        List<HashMap<Long,String>> satisfyIds = new ArrayList<>();
        HashMap<Long,String> bs = new HashMap<>();
        for (ZInfoUser zInfoUser:zInfoUsers) {
            if (zInfoUser.getMaritalStatus() ==null || zInfoUser.getMaritalStatus() != 1 )
            if (!zInfoUserService.findByuid(zInfoUser.getUserId(), tpfid) && (zInfoUser.getMaritalStatus() == null || zInfoUser.getMaritalStatus() != 1)){
                bs.put(zInfoUser.getUserId(),zInfoUser.getNickName());
            }
        }
        satisfyIds.add(bs);
        return AjaxResult.success(satisfyIds);
    }
    /**
     * 根据用户id判断是否是子孙 uid:长辈id,tpfid:我自己的zinfoid
     */
    @GetMapping("/uidUJd/{uid}/{tpfid}")
    public AjaxResult findByUidAndUid2(@PathVariable("uid") Long uid ,@PathVariable("tpfid")  Long tpfid){
        return AjaxResult.success( zInfoUserService.findByuid(uid,tpfid));
    }
    @GetMapping("/sex/{sex}/{clanId}")
    public AjaxResult findBySex(@PathVariable("sex")  Integer sex, @PathVariable("clanId")  Integer clanId)
    {
//            Integer sex = zInfoUserService.getInfoById(tpfid).getSex();
        //sex == 0 -> 男
        if (sex == 1){
            sex = 0;
        }
        else if (sex == 0){
            sex = 1;
        }
        List<ZInfoUser> zInfoUsers = zInfoUserService.getDataBySex(sex, clanId);
        List<HashMap<Long,String>> satisfyIds = new ArrayList<>();
        HashMap<Long,String> bs = new HashMap<>();
        for (ZInfoUser zInfoUser:zInfoUsers) {
                bs.put(zInfoUser.getUserId(),zInfoUser.getNickName());
        }
        satisfyIds.add(bs);
        return AjaxResult.success(satisfyIds);
@@ -299,10 +366,10 @@
     * 根据家庭成员找到所有人
     */
    @GetMapping("/allFamInfo")
        public AjaxResult listAllFamilyPeople(@PathParam("clanId") Integer clanId)
        {
            return zInfoUserService.listAllFamilyPeople(clanId);
        }
    public AjaxResult listAllFamilyPeople(@PathParam("clanId") Integer clanId)
    {
        return zInfoUserService.listAllFamilyPeople(clanId);
    }
    /**
     * 找到所有的成员
@@ -336,6 +403,10 @@
    public AjaxResult listGenealogy(Genealogy genealogy){
        Integer pageNum = Convert.toInt(ServletUtils.getParameter(PAGE_NUM), 1);
        Integer pageSize = Convert.toInt(ServletUtils.getParameter(PAGE_SIZE), 10);
        SysUser user = SecurityUtils.getLoginUser().getUser();
        Integer clanId = user.getClanId();
        if(clanId != null) genealogy.setClanId(clanId);
        System.out.println("11111111//"+clanId);
        return zInfoUserService.listGenealogy(genealogy,pageNum,pageSize);
    }
@@ -365,6 +436,20 @@
        return zInfoUserService.getInfoByfid(fid);
    }
    /**
     * 分享给其他家族数据,通过输入名字查找所有的同名用户和家族号
     */
    @PostMapping("/byName")
    public AjaxResult listByUserNameDate(@RequestBody SysUser sysUser)
    {
}
        List<SysUser> strings = sysUserMapper.getUserByUserName(sysUser.getUserName());
        List<String> strings1= new ArrayList<>();
        for (SysUser s:strings){
            strings1.add(s.getNickName());
        }
        return zInfoUserService.findUserNameAClan(strings1);
    }
}