| | |
| | | throw new ValidationException("接收号码类型不能为空"); |
| | | } |
| | | |
| | | if ((Constants.SMS_RECEIVE_TYPE.INPUT.name().equals(smsTaskDTO.getType()) || Constants.SMS_RECEIVE_TYPE.SELECT.name().equals(smsTaskDTO.getType())) && StringUtils.isEmpty(smsTaskDTO.getPhones())) { |
| | | if (Constants.SMS_RECEIVE_TYPE.INPUT.name().equals(smsTaskDTO.getType()) && StringUtils.isEmpty(smsTaskDTO.getPhones())) { |
| | | throw new ValidationException("手机号不能为空"); |
| | | } |
| | | |
| | |
| | | throw new ValidationException("导入文件不能为空"); |
| | | } |
| | | |
| | | if (Constants.SMS_RECEIVE_TYPE.INPUT.name().equals(smsTaskDTO.getType()) ) { |
| | | |
| | | //解析手机号,包含不同平台的换行符 |
| | | String text = smsTaskDTO.getPhones(); |
| | | |
| | | // 使用正则表达式匹配所有类型的换行符 |
| | | String[] lines = text.split("\\r?\\n|\\r"); |
| | | |
| | | // 将数组转换为 List |
| | | List<String> lineList = Arrays.asList(lines); |
| | | lineList.forEach(l -> { |
| | | boolean validPhoneNumber = isValidPhoneNumber(l); |
| | | if (!validPhoneNumber) { |
| | | throw new ValidationException(l + "不是合法的手机号"); |
| | | } |
| | | }); |
| | | smsTaskDTO.setNum((long) lineList.size()); |
| | | } |
| | | |
| | | if(!smsTaskDTO.getFileUrl().equals(smsTaskDO.getFileUrl())){ |
| | | dealImportExcel(smsTaskDTO); |
| | | } |
| | | List<SmsUserDTO> smsUserDTOS = smsTaskDTO.getSmsUserDTOS(); |
| | | if(!CollectionUtils.isEmpty(smsUserDTOS)){ |
| | | List<String> userIds = smsUserDTOS.stream() |
| | | .map(SmsUserDTO::getUserId) |
| | | .collect(Collectors.toList()); |
| | | |
| | | BeanUtils.copyProperties(smsTaskDTO, smsTaskDO); |
| | | List<String> userPhones = smsUserDTOS.stream() |
| | | .map(SmsUserDTO::getUserPhone) |
| | | .collect(Collectors.toList()); |
| | | if(!CollectionUtils.isEmpty(userPhones)){ |
| | | String phones = userPhones.stream() |
| | | .map(Object::toString) // 确保每个元素都转换为字符串 |
| | | .collect(Collectors.joining("\n")); // 使用换行符连接字符串 |
| | | smsTaskDTO.setPhones(phones); // 假设有一个setPhones方法用于设置phones字段 |
| | | } |
| | | if (!CollectionUtils.isEmpty(userIds)) { |
| | | String userIdInfos = userIds.stream().map(Object::toString) // 确保每个元素都转换为字符串 |
| | | .collect(Collectors.joining(";")); // 使用换行符连接字符串 |
| | | smsTaskDO.setUserIds(userIdInfos); |
| | | } |
| | | } |
| | | BeanUtils.copyProperties(smsTaskDTO, smsTaskDO,"userIds"); |
| | | smsTaskDO.update(SecurityUtils.getUserId()); |
| | | smsTaskDO.setPhones(smsTaskDTO.getPhones()); |
| | | smsTaskMapper.updateById(smsTaskDO); |