package com.ruoyi.web.controller.zhang; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.text.Convert; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.ServletUtils; import com.ruoyi.domain.ZInfoUser; import com.ruoyi.domain.ZfAncestor; import com.ruoyi.domain.ZfClan; import com.ruoyi.service.ZInfoUserService; import com.ruoyi.service.ZfAncestorService; import com.ruoyi.system.domain.SysUserRole; import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.mapper.SysUserRoleMapper; import com.ruoyi.system.service.ISysUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; import static com.ruoyi.common.core.page.TableSupport.*; @RestController @RequestMapping("/ZfAncestor") public class ZfAncestorController { @Autowired ZfAncestorService zfAncestorService; @Autowired private ISysUserService userService; @Autowired private SysUserMapper userMapper; @Resource ZInfoUserService zInfoUserService; @Resource private SysUserRoleMapper sysUserRoleMapper; @GetMapping("/all/{clanId}") public AjaxResult listAll(@PathVariable Integer clanId){ Integer pageNo = Convert.toInt(ServletUtils.getParameter(PAGE_NO), 1); Integer pageSize = Convert.toInt(ServletUtils.getParameter(PAGE_SIZE), 10); return zfAncestorService.selectDataList(clanId, pageNo, pageSize); } public Long addAncestor(ZfAncestor zfAncestor){ SysUser us = new SysUser(); us.setNickName(zfAncestor.getName()); us.setStatus(String.valueOf(zfAncestor.getStatus())); us.setSex(String.valueOf(zfAncestor.getSex())); us.setPassword("123456"); us.setUserName(zfAncestor.getName()); // us.setUserId(Long.valueOf(zfAncestor.getSysId())); if (!userService.checkUserNameUnique(us)) { throw new RuntimeException("新增祖先'" + us.getUserName() + "'失败,登录账号已存在"); } // ZInfoUser myself = zInfoUserService.getMyself(); // us.setCreateBy(myself.getNickName()); us.setPassword(SecurityUtils.encryptPassword(us.getPassword())); userService.insertUser(us); SysUserRole sysUserRole = new SysUserRole(); sysUserRole.setUserId(us.getUserId()); sysUserRole.setRoleId(102L); List sysUserRoles = new ArrayList<>(); sysUserRoles.add(sysUserRole); sysUserRoleMapper.batchUserRole(sysUserRoles); ZInfoUser infoUser = new ZInfoUser(); infoUser.setClanId(zfAncestor.getClanId()); infoUser.setSex(zfAncestor.getSex()); infoUser.setNickName(zfAncestor.getName()); infoUser.setSysId(us.getUserId()); infoUser.setRoleId(zfAncestor.getRoleId().longValue()); infoUser.setIsMyFamily(zfAncestor.getSex() == 0?1:0); infoUser.setSpouseId(zfAncestor.getSpouseId().longValue()); zInfoUserService.save(infoUser); if(zfAncestor.getSpouseId()!=null) { ZInfoUser zu = new ZInfoUser(); zu.setUserId(Long.valueOf(zfAncestor.getSpouseId())); zu.setSpouseId(infoUser.getUserId()); zInfoUserService.updateById(zu); } return us.getUserId(); } public void updateAncestor(ZfAncestor zfAncestor){ SysUser us = new SysUser(); Long userId = zInfoUserService.getInfoBysysId(zfAncestor.getSysId()).getUserId(); us.setUserId(zfAncestor.getSysId()); us.setUserName(zfAncestor.getName()); us.setNickName(zfAncestor.getName()); us.setSex(String.valueOf(zfAncestor.getSex())); // us.setRemark(zfAncestor.getRemark()); userService.updateUser(us); Long userId1 = zfAncestor.getSysId(); SysUserRole sysUserRole=sysUserRoleMapper.selectUserById(userId1); // System.out.println(user.getFamilyId()); // System.out.println("[[[[]]]]]]"); ZInfoUser infoUser = new ZInfoUser(); infoUser.setUserId(userId); infoUser.setOldName(zfAncestor.getName()); infoUser.setNickName(zfAncestor.getName()); infoUser.setSex(zfAncestor.getSex()); // infoUser.setFamilyId(user.getFamilyId()); infoUser.setSysId(zfAncestor.getSysId()); zInfoUserService.updateById(infoUser); } /** * 修改祖先信息 */ @Log(title = "祖先", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody ZfAncestor zfAncestor) { ZfAncestor spouseSex = zfAncestorService.update(zfAncestor); updateAncestor(zfAncestor); if (spouseSex.getId() != null) updateAncestor(spouseSex); return AjaxResult.success(); } /** * 新增祖先 */ @Log(title = "祖先", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody ZfAncestor zfAncestor) { Long sysId = zfAncestorService.addData(zfAncestor); zfAncestor.setSpouseId(sysId.intValue()); zfAncestor.setSysId(addAncestor(zfAncestor)); zfAncestorService.updateById(zfAncestor); return AjaxResult.success(); } // /** // * 批量删除家族成员 // */ // @Log(title = "家族管理", businessType = BusinessType.DELETE) // @DeleteMapping("/{clanId}/{id}") // public AjaxResult remove(@PathVariable Integer id, @PathVariable Integer clanId) { // return zfAncestorService.deleteData(clanId,id); // } }