zqy
2024-06-25 f0a74544e0ab2ee3d191a3d46bd82a0274d67b6d
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZInfoUserController.java
@@ -1,6 +1,7 @@
package com.ruoyi.web.controller.zhang;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
@@ -12,11 +13,14 @@
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.domain.ZInfoUser;
import com.ruoyi.domain.ZfRelation;
import com.ruoyi.domain.dto.EmpowerDto;
import com.ruoyi.domain.dto.Genealogy;
import com.ruoyi.domain.dto.GenealogyExportDto;
import com.ruoyi.domain.dto.RelationDto;
import com.ruoyi.service.ZInfoUserService;
import com.ruoyi.service.ZfFamilyService;
import com.ruoyi.service.ZfRoleService;
import com.ruoyi.system.mapper.SysUserMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -24,7 +28,9 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import javax.websocket.server.PathParam;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.regex.Pattern;
@@ -46,6 +52,15 @@
    @Resource
    private ZInfoUserService zInfoUserService;
    @Resource
    private ZfFamilyService zfFamilyService;
    @Resource
    private ZfRoleService zfRoleService;
    @Resource
    private SysUserMapper sysUserMapper;
//    @GetMapping("/all")
//    public AjaxResult  listAll(ZInfoUser zInfoUser){
@@ -104,17 +119,23 @@
    public AjaxResult getInfo() {
        SysUser user = SecurityUtils.getLoginUser().getUser();
        Long userId = user.getUserId();
        return AjaxResult.success(zInfoUserService.getById(userId));
        return AjaxResult.success(zInfoUserService.getInfoById(userId));
    }
    @GetMapping("/{id}")
    public AjaxResult getInfoById(@PathVariable("id") Long id) {
      //  SysUser user = SecurityUtils.getLoginUser().getUser();
        Long userId = id;
        return AjaxResult.success(zInfoUserService.getInfoById(userId));
    }
//
    /**
     * 新增、修改个人详细信息记录
     * 修改个人详细信息记录
     */
//    @PreAuthorize("@ss.hasPermi('system:property:add')")
    @Log(title = "个人详细信息记录", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ZInfoUser zInfoUser) {
    @PutMapping
    public AjaxResult update(@RequestBody ZInfoUser zInfoUser) {
//        if (!Pattern.matches("^[\\d]+(?:,[\\d]+)*$",zInfoUser.getFamilyId())) {
//            throw new RuntimeException("请输入只有数字和英文逗号的字符串,且数字和逗号必须交替出现");
//        }
@@ -123,6 +144,7 @@
        zInfoUser.setUserId(userId);
        return toAjax(zInfoUserService.saveOrUpdate(zInfoUser));
    }
//    /**
//     * 修改个人详细信息记录
@@ -173,15 +195,46 @@
    }
//    /**
//     * 授权
//     */
//    @PostMapping("/empower")
//    public AjaxResult empower(@RequestBody EmpowerDto empowerDto){
//
//        return zInfoUserService.empower(empowerDto);
//    }
    /**
     * 授权
     * 根据用户id判断是否是子孙(uid:辈分高的id,tpfid:辈分低的id)
     */
    @PostMapping("/empower")
    public AjaxResult empower(@RequestBody EmpowerDto empowerDto){
    @GetMapping("/uidAndUJd/{uid}/{tpfid}")
        public AjaxResult findByUidAndUid(@PathVariable("uid")  Long uid,@PathVariable("tpfid")  Long tpfid)
        {
            return AjaxResult.success(zInfoUserService.findByuid(uid, tpfid));
        }
    /**
     * 根据用户id判断是否是异性
     */
        return zInfoUserService.empower(empowerDto);
    }
    @GetMapping("/sex/{uid}/{tpfid}")
        public AjaxResult findBySex(@PathVariable("uid")  Long uid,@PathVariable("tpfid")  Long tpfid)
        {
            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<String> nickName = new ArrayList<>();
            for (ZInfoUser zInfoUser:zInfoUsers) {
                if (!zInfoUserService.findByuid(uid, tpfid)){
                    nickName.add(zInfoUser.getNickName());
                }
            }
            return AjaxResult.success(nickName);
        }
    /**
     * 家根网
     */
@@ -189,7 +242,14 @@
    public AjaxResult listAllPeopleWithTree(@PathParam("depth") Integer depth){
        return zInfoUserService.listWithTree(depth);
    }
    /**
     * 根据家庭成员找到所有人
     */
    @GetMapping("/allFamInfo")
        public AjaxResult listAllFamilyPeople()
        {
            return zInfoUserService.listAllFamilyPeople();
        }
    /**
     * 找到所有的成员
@@ -236,5 +296,22 @@
        util.exportExcel(response,list,"家谱记录数据");
    }
    /**
     * 家谱2.0
     */
    @GetMapping("/list/genealogy2")
    public AjaxResult listGenealogy2(Genealogy genealogy){
        Integer pageNum = Convert.toInt(ServletUtils.getParameter(PAGE_NUM), 1);
        Integer pageSize = Convert.toInt(ServletUtils.getParameter(PAGE_SIZE), 10);
        return zInfoUserService.listGenealogy2(genealogy,pageNum,pageSize);
    }
    @GetMapping("/list/getInfoByfid/{fid}")
    public AjaxResult getInfoByfid(@PathVariable("fid") Long fid)
    {
        return zInfoUserService.getInfoByfid(fid);
    }
}