diff --git a/bonus-modules/base/src/main/java/com/bonus/base/basic/mapper/TbPeopleMapper.java b/bonus-modules/base/src/main/java/com/bonus/base/basic/mapper/TbPeopleMapper.java index c795174..9e51405 100644 --- a/bonus-modules/base/src/main/java/com/bonus/base/basic/mapper/TbPeopleMapper.java +++ b/bonus-modules/base/src/main/java/com/bonus/base/basic/mapper/TbPeopleMapper.java @@ -59,7 +59,7 @@ public interface TbPeopleMapper { * @param tbPeople * @return */ - TbPeople queryByName(TbPeople tbPeople); + List queryByName(TbPeople tbPeople); /** * 根据工程ID查询人员定位信息 diff --git a/bonus-modules/base/src/main/java/com/bonus/base/basic/service/impl/TbPeopleServiceImpl.java b/bonus-modules/base/src/main/java/com/bonus/base/basic/service/impl/TbPeopleServiceImpl.java index fcc130d..a211c07 100644 --- a/bonus-modules/base/src/main/java/com/bonus/base/basic/service/impl/TbPeopleServiceImpl.java +++ b/bonus-modules/base/src/main/java/com/bonus/base/basic/service/impl/TbPeopleServiceImpl.java @@ -85,6 +85,9 @@ public class TbPeopleServiceImpl implements TbPeopleService { if (StringUtils.isNotBlank(people.getRelPhone())) { people.setRelPhone(Sm4Utils.decode(people.getRelPhone())); } + if (StringUtils.isNotBlank(people.getIdCard())) { + people.setIdCard(Sm4Utils.decode(people.getIdCard())); + } }); } return peopleList; @@ -117,12 +120,24 @@ public class TbPeopleServiceImpl implements TbPeopleService { } } //同名同身份证号判重 - TbPeople people = tbPeopleDao.queryByName(tbPeople); + /*TbPeople people = tbPeopleDao.queryByName(tbPeople); if (people != null) { return AjaxResult.error(ExceptionEnum.ID_CARD_DUPLICATE.getCode(), ExceptionEnum.ID_CARD_DUPLICATE.getMsg()); + }*/ + List peopleList = tbPeopleDao.queryByName(tbPeople); + //对查询的身份证号进行解密处理,然后和新增的进行对比 + if (CollectionUtils.isNotEmpty(peopleList)) { + for (TbPeople people : peopleList) { + if (StringUtils.isNotBlank(people.getIdCard()) && StringUtils.isNotBlank(tbPeople.getIdCard())) { + if (Objects.equals(Sm4Utils.decode(people.getIdCard()), tbPeople.getIdCard())) { + return AjaxResult.error(ExceptionEnum.ID_CARD_DUPLICATE.getCode(), ExceptionEnum.ID_CARD_DUPLICATE.getMsg()); + } + } + } } tbPeople.setCreateUser(SecurityUtils.getUserId()); tbPeople.setRelPhone(Sm4Utils.encode(tbPeople.getRelPhone())); + tbPeople.setIdCard(Sm4Utils.encode(tbPeople.getIdCard())); int result = tbPeopleDao.insert(tbPeople); if (result > 0) { return AjaxResult.success(ExceptionEnum.SUCCESS.getMsg(), result); @@ -183,14 +198,27 @@ public class TbPeopleServiceImpl implements TbPeopleService { } } //同名同身份证号判重 - TbPeople people = tbPeopleDao.queryByName(tbPeople); + /*TbPeople people = tbPeopleDao.queryByName(tbPeople); if (people != null) { if (!Objects.equals(people.getId(), tbPeople.getId())) { return AjaxResult.error(ExceptionEnum.NAME_DUPLICATE.getCode(), ExceptionEnum.NAME_DUPLICATE.getMsg()); } + }*/ + List peopleList = tbPeopleDao.queryByName(tbPeople); + if (CollectionUtils.isNotEmpty(peopleList)) { + for (TbPeople people : peopleList) { + if (StringUtils.isNotBlank(people.getIdCard()) && StringUtils.isNotBlank(tbPeople.getIdCard())) { + if (Objects.equals(Sm4Utils.decode(people.getIdCard()), tbPeople.getIdCard())) { + if (!Objects.equals(people.getId(), tbPeople.getId())) { + return AjaxResult.error(ExceptionEnum.ID_CARD_DUPLICATE.getCode(), ExceptionEnum.ID_CARD_DUPLICATE.getMsg()); + } + } + } + } } tbPeople.setUpdateUser(SecurityUtils.getUserId()); tbPeople.setRelPhone(Sm4Utils.encode(tbPeople.getRelPhone())); + tbPeople.setIdCard(Sm4Utils.encode(tbPeople.getIdCard())); int result = tbPeopleDao.update(tbPeople); //根据人员id去班组表中修改人员信息,先根据人员id去班组表中查询 List tbTeamList = tbTeamDao.selectListById(tbPeople.getId()); @@ -354,29 +382,35 @@ public class TbPeopleServiceImpl implements TbPeopleService { List tbPeopleList = util.importExcel(file.getInputStream()); int result = 0; for (TbPeopleDto tbPeople : tbPeopleList) { - TbPeople people = tbPeopleDao.queryByName(tbPeople); - if (people != null) { - //进行更新操作 - TbPeople dto = new TbPeople(); - dto.setId(people.getId()); - dto.setUpdateUser(SecurityUtils.getUserId()); - dto.setDelFlag(0); - dto.setRelPhone(Sm4Utils.encode(tbPeople.getRelPhone())); - dto.setIdCard(tbPeople.getIdCard()); - dto.setSex(tbPeople.getGender()); - dto.setRelName(tbPeople.getRelName()); - dto.setPostCode(tbPeople.getPostCode()); - result += tbPeopleDao.update(dto); - } else { - //新增操作 - TbPeople dto = new TbPeople(); - dto.setCreateUser(SecurityUtils.getUserId()); - dto.setRelPhone(Sm4Utils.encode(tbPeople.getRelPhone())); - dto.setIdCard(tbPeople.getIdCard()); - dto.setSex(tbPeople.getGender()); - dto.setRelName(tbPeople.getRelName()); - dto.setPostCode(tbPeople.getPostCode()); - result += tbPeopleDao.insert(dto); + List peopleList = tbPeopleDao.queryByName(tbPeople); + if (CollectionUtils.isNotEmpty(peopleList)) { + for (TbPeople people : peopleList) { + if (StringUtils.isNotBlank(people.getIdCard()) && StringUtils.isNotBlank(tbPeople.getIdCard())) { + if (Objects.equals(Sm4Utils.decode(people.getIdCard()), tbPeople.getIdCard())) { + //进行更新操作 + TbPeople dto = new TbPeople(); + dto.setId(people.getId()); + dto.setUpdateUser(SecurityUtils.getUserId()); + dto.setDelFlag(0); + dto.setRelPhone(Sm4Utils.encode(tbPeople.getRelPhone())); + dto.setIdCard(Sm4Utils.encode(tbPeople.getIdCard())); + dto.setSex(tbPeople.getGender()); + dto.setRelName(tbPeople.getRelName()); + dto.setPostCode(tbPeople.getPostCode()); + result += tbPeopleDao.update(dto); + } else { + //新增操作 + TbPeople dto = new TbPeople(); + dto.setCreateUser(SecurityUtils.getUserId()); + dto.setRelPhone(Sm4Utils.encode(tbPeople.getRelPhone())); + dto.setIdCard(Sm4Utils.encode(tbPeople.getIdCard())); + dto.setSex(tbPeople.getGender()); + dto.setRelName(tbPeople.getRelName()); + dto.setPostCode(tbPeople.getPostCode()); + result += tbPeopleDao.insert(dto); + } + } + } } } if (result > 0) { @@ -390,7 +424,15 @@ public class TbPeopleServiceImpl implements TbPeopleService { @Override public List queryPeoplePositionByProId(Integer proId) { - return tbPeopleDao.queryPeoplePositionByProId(proId); + List list = tbPeopleDao.queryPeoplePositionByProId(proId); + if (CollectionUtils.isNotEmpty(list)) { + list.forEach(peoplePositionVo -> { + if (StringUtils.isNotBlank(peoplePositionVo.getIdCard())) { + peoplePositionVo.setIdCard(Sm4Utils.decode(peoplePositionVo.getIdCard())); + } + }); + } + return list; } /** diff --git a/bonus-modules/base/src/main/resources/mapper/base/basic/TbPeopleMapper.xml b/bonus-modules/base/src/main/resources/mapper/base/basic/TbPeopleMapper.xml index f468ea5..2659e1b 100644 --- a/bonus-modules/base/src/main/resources/mapper/base/basic/TbPeopleMapper.xml +++ b/bonus-modules/base/src/main/resources/mapper/base/basic/TbPeopleMapper.xml @@ -62,9 +62,6 @@ tp.sex as sex from tb_people tp where tp.del_flag = '0' - - and tp.id_card = #{idCard} - @@ -157,7 +154,7 @@ diff --git a/bonus-modules/base/src/main/resources/mapper/base/basic/TbTeamMapper.xml b/bonus-modules/base/src/main/resources/mapper/base/basic/TbTeamMapper.xml index 68b70ab..abe1d3f 100644 --- a/bonus-modules/base/src/main/resources/mapper/base/basic/TbTeamMapper.xml +++ b/bonus-modules/base/src/main/resources/mapper/base/basic/TbTeamMapper.xml @@ -78,19 +78,24 @@