| | |
| | | import com.panzhihua.common.enums.KeyPersonLabelEnum; |
| | | import com.panzhihua.common.model.dtos.community.ComMngPopulationTagCardNoDTO; |
| | | import com.panzhihua.common.model.dtos.community.KeyPersonInfoDTO; |
| | | import com.panzhihua.common.model.helper.AESUtil; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.service_community.dao.KeyPersonInfoDAO; |
| | | import com.panzhihua.service_community.model.dos.ComMngPopulationDO; |
| | | import com.panzhihua.service_community.model.dos.KeyPersonInfoDO; |
| | | import com.panzhihua.service_community.service.ComMngPopulationService; |
| | | import com.panzhihua.service_community.service.KeyPersonInfoService; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | |
| | | @Resource |
| | | private ComMngPopulationService comMngPopulationService; |
| | | |
| | | @Value("${domain.aesKey:}") |
| | | private String aesKey; |
| | | |
| | | /** |
| | | * description 批量保存重点人群人员信息 |
| | |
| | | public R saveBatchKeyPerson(List<KeyPersonInfoDTO> list) { |
| | | list.forEach(keyPersonInfoDTO -> { |
| | | KeyPersonInfoDO dbKeyPerson = checkExistFromDb(keyPersonInfoDTO); |
| | | ComMngPopulationDO population = comMngPopulationService.getPopulationByCardNo(keyPersonInfoDTO.getCardNo()); |
| | | if (population != null) { |
| | | keyPersonInfoDTO.setUserId(population.getId()); |
| | | } |
| | | if (dbKeyPerson != null) { |
| | | //已经存在数据,进行数据更新操作 |
| | | KeyPersonInfoDO keyPersonInfoDO = new KeyPersonInfoDO(); |
| | |
| | | comMngPopulationTagCardNoDTO.setCardNo(dbKeyPerson.getCardNo()); |
| | | comMngPopulationTagCardNoDTO.setLabel(calculateLabel(dbKeyPerson)); |
| | | comMngPopulationService.editTagPopulationByCardNo(comMngPopulationTagCardNoDTO); |
| | | updateById(keyPersonInfoDO); |
| | | try { |
| | | String aesCardNo = AESUtil.encrypt128(keyPersonInfoDTO.getCardNo(), aesKey); |
| | | String phone = AESUtil.encrypt128(keyPersonInfoDTO.getPhone(), aesKey); |
| | | String guardianPhone = AESUtil.encrypt128(keyPersonInfoDTO.getGuardianPhone(), aesKey); |
| | | keyPersonInfoDO.setCardNo(aesCardNo); |
| | | keyPersonInfoDO.setPhone(phone); |
| | | keyPersonInfoDO.setGuardianPhone(guardianPhone); |
| | | keyPersonInfoDO.setVisiterType(Integer.parseInt(keyPersonInfoDTO.getVisiterType())); |
| | | keyPersonInfoDO.setInvalid(false); |
| | | keyPersonInfoDO.setSubmitDate(new Date()); |
| | | updateById(keyPersonInfoDO); |
| | | } catch (Exception e) { |
| | | log.error("根据身份证查询残疾人群业务-加密证件信息出错"); |
| | | } |
| | | } else { |
| | | KeyPersonInfoDO keyPersonInfoDO = new KeyPersonInfoDO(); |
| | | BeanUtils.copyProperties(keyPersonInfoDTO, keyPersonInfoDO); |
| | | keyPersonInfoDO.setVisiterType(Integer.parseInt(keyPersonInfoDTO.getVisiterType())); |
| | | keyPersonInfoDO.setInvalid(false); |
| | | keyPersonInfoDO.setSubmitDate(new Date()); |
| | | save(keyPersonInfoDO); |
| | | } |
| | | }); |
| | |
| | | } |
| | | |
| | | private KeyPersonInfoDO checkExistFromDb(KeyPersonInfoDTO keyPersonInfoDTO) { |
| | | return baseMapper.selectOne( |
| | | new QueryWrapper<KeyPersonInfoDO>() |
| | | .eq("act_id", keyPersonInfoDTO.getActId()) |
| | | .eq("card_no", keyPersonInfoDTO.getCardNo()) |
| | | .eq("visiter_type", keyPersonInfoDTO.getVisiterType()) |
| | | ); |
| | | try { |
| | | String aesCardNo = AESUtil.encrypt128(keyPersonInfoDTO.getCardNo(), aesKey); |
| | | return baseMapper.selectOne( |
| | | new QueryWrapper<KeyPersonInfoDO>() |
| | | .eq("act_id", keyPersonInfoDTO.getActId()) |
| | | .eq("card_no", aesCardNo) |
| | | .eq("visiter_type", keyPersonInfoDTO.getVisiterType()) |
| | | ); |
| | | } catch (Exception e) { |
| | | log.error("根据身份证查询特殊人群业务-加密证件信息出错"); |
| | | } |
| | | return null; |
| | | } |
| | | } |