| | |
| | | package com.ruoyi.web.controller.zhang; |
| | | |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import com.mysql.cj.x.protobuf.MysqlxDatatypes; |
| | | import com.ruoyi.common.annotation.Log; |
| | | import com.ruoyi.common.core.controller.BaseController; |
| | | import com.ruoyi.common.core.domain.AjaxResult; |
| | |
| | | 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.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; |
| | |
| | | import javax.annotation.Resource; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import javax.websocket.server.PathParam; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | import java.util.*; |
| | | import java.util.regex.Pattern; |
| | | |
| | | import static com.ruoyi.common.core.page.TableSupport.PAGE_NUM; |
| | |
| | | |
| | | @Resource |
| | | private ZInfoUserService zInfoUserService; |
| | | |
| | | @Resource |
| | | private ZfFamilyService zfFamilyService; |
| | | |
| | | @Resource |
| | | private ZfRoleService zfRoleService; |
| | | |
| | | @Resource |
| | | private SysUserMapper sysUserMapper; |
| | | |
| | | // @GetMapping("/all") |
| | | // public AjaxResult listAll(ZInfoUser zInfoUser){ |
| | |
| | | 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) { |
| | | if (!Pattern.matches("^[\\d]+(?:,[\\d]+)*$",zInfoUser.getFamilyId())) { |
| | | throw new RuntimeException("请输入只有数字和英文逗号的字符串,且数字和逗号必须交替出现"); |
| | | } |
| | | @PutMapping |
| | | public AjaxResult update(@RequestBody ZInfoUser zInfoUser) { |
| | | // if (!Pattern.matches("^[\\d]+(?:,[\\d]+)*$",zInfoUser.getFamilyId())) { |
| | | // throw new RuntimeException("请输入只有数字和英文逗号的字符串,且数字和逗号必须交替出现"); |
| | | // } |
| | | SysUser user = SecurityUtils.getLoginUser().getUser(); |
| | | Long userId = user.getUserId(); |
| | | zInfoUser.setUserId(userId); |
| | | return toAjax(zInfoUserService.saveOrUpdate(zInfoUser)); |
| | | } |
| | | |
| | | |
| | | // /** |
| | | // * 修改个人详细信息记录 |
| | |
| | | } |
| | | |
| | | |
| | | // /** |
| | | // * 授权 |
| | | // */ |
| | | // @PostMapping("/empower") |
| | | // public AjaxResult empower(@RequestBody EmpowerDto empowerDto){ |
| | | // |
| | | // return zInfoUserService.empower(empowerDto); |
| | | // } |
| | | /** |
| | | * 授权 |
| | | * 根据用户id判断是否是子孙 tpfid:自己id 根据用户id判断是否是异性 不是本家的人选 |
| | | */ |
| | | @PostMapping("/empower") |
| | | public AjaxResult empower(@RequestBody EmpowerDto empowerDto){ |
| | | @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 -> 男 |
| | | 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) { |
| | | if (!zInfoUserService.findByuid(zInfoUser.getUserId(), tpfid) && (zInfoUser.getMaritalStatus() == null || zInfoUser.getMaritalStatus() != 1)){ |
| | | bs.put(zInfoUser.getUserId(),zInfoUser.getNickName()); |
| | | |
| | | return zInfoUserService.empower(empowerDto); |
| | | } |
| | | |
| | | } |
| | | 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) { |
| | | if (zInfoUser.getMaritalStatus() ==null || zInfoUser.getMaritalStatus() != 1 ) |
| | | bs.put(zInfoUser.getUserId(),zInfoUser.getNickName()); |
| | | |
| | | } |
| | | satisfyIds.add(bs); |
| | | return AjaxResult.success(satisfyIds); |
| | | } |
| | | /** |
| | | * 根据用户id判断是否是异性 |
| | | */ |
| | | |
| | | // /** |
| | | // * 根据用户id判断是否是子孙(uid:?,tpfid:自己id) 根据用户id判断是否是异性 不是本家的人选 |
| | | // */ |
| | | // @GetMapping("/uidAndUJd/{uid}/{tpfid}/{sex}") |
| | | // public AjaxResult findByUidAndUid(@PathVariable("uid") Long uid,@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<String> nickName = new ArrayList<>(); |
| | | // for (ZInfoUser zInfoUser:zInfoUsers) { |
| | | // if (!zInfoUserService.findByuid(uid, tpfid)){ |
| | | // if (zInfoUser.getIsMyFamily() == 1) |
| | | // nickName.add(zInfoUser.getNickName()); |
| | | // } |
| | | // } |
| | | // return AjaxResult.success(nickName); |
| | | // } |
| | | /** |
| | | * 家根网 |
| | | */ |
| | | @GetMapping("/root") |
| | | public AjaxResult listAllPeopleWithTree(@PathParam("depth") Integer depth){ |
| | | return zInfoUserService.listWithTree(depth); |
| | | public AjaxResult listAllPeopleWithTree(@PathParam("depth") Integer depth,@PathParam("clanId") Integer clanId){ |
| | | return zInfoUserService.listWithTree(depth, clanId); |
| | | } |
| | | |
| | | /** |
| | | * 根据家庭成员找到所有人 |
| | | */ |
| | | @GetMapping("/allFamInfo") |
| | | public AjaxResult listAllFamilyPeople(@PathParam("clanId") Integer clanId) |
| | | { |
| | | return zInfoUserService.listAllFamilyPeople(clanId); |
| | | } |
| | | |
| | | /** |
| | | * 找到所有的成员 |
| | |
| | | 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); |
| | | } |
| | | |
| | | |
| | | } |
| | | |