修改参数

master
bynt 1 year ago
parent 67d821789a
commit 7185cf3db8

@ -24,6 +24,7 @@ import cn.hutool.core.util.StrUtil;
import cn.hutool.poi.excel.BigExcelWriter;
import cn.hutool.poi.excel.ExcelUtil;
import com.baiye.exception.BadRequestException;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.multipart.MultipartFile;
@ -35,9 +36,7 @@ import java.security.MessageDigest;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.time.Instant;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* File hutool
@ -372,4 +371,48 @@ public class FileUtil extends cn.hutool.core.io.FileUtil {
return file;
}
/**
* <h1></h1>
* @param dirFilePath
* @return
*/
public static List<File> getAllFile(String dirFilePath){
if(StringUtils.isBlank(dirFilePath))
return null;
return getAllFile(new File(dirFilePath));
}
/**
* <h1></h1>
* @param dirFile
* @return
*/
public static List<File> getAllFile(File dirFile){
// 如果文件夹不存在或着不是文件夹,则返回 null
if(Objects.isNull(dirFile) || !dirFile.exists() || dirFile.isFile())
return null;
File[] childrenFiles = dirFile.listFiles();
if(Objects.isNull(childrenFiles) || childrenFiles.length == 0)
return null;
List<File> files = new ArrayList<>();
for(File childFile : childrenFiles) {
// 如果时文件,直接添加到结果集合
if(childFile.isFile()) {
files.add(childFile);
}else {
// 如果是文件夹,则将其内部文件添加进结果集合
List<File> cFiles = getAllFile(childFile);
if(Objects.isNull(cFiles) || cFiles.isEmpty()) continue;
files.addAll(cFiles);
}
}
return files;
}
}

@ -57,7 +57,7 @@ public class ClueJpa {
public List<ClueDto> getClueList(ClueQueryCriteria clueQueryCriteria, Pageable pageable) {
StringBuilder sql = new StringBuilder();
sql.append("select c.id as id,c.name as name,c.nid as nid,c.wx as wx,c.origin as origin,c.collect_time as collectTime,c.address as address,c.record_id as recordId," +
"c.create_time as createTime,c.amount as amount,c.platform as platform,c.tag as tag,c.audio_url as audioUrl,c.cast_info as castInfo,c.is_encryption as isEncryption, cm.remark as remark,cm.member_status as memberStatus,cm.organize_id as organizeId,cm.member_id as memberId," +
"cm.create_time as createTime,c.amount as amount,c.platform as platform,c.tag as tag,c.audio_url as audioUrl,c.cast_info as castInfo,c.is_encryption as isEncryption, cm.remark as remark,cm.member_status as memberStatus,cm.organize_id as organizeId,cm.member_id as memberId," +
"cm.optimistic_version as optimisticVersion,cm.source_label as sourceLabel,cm.task_id as taskId,cm.clue_stage as clueStage,cm.clue_call_status as clueCallStatus," +
"cm.newest_call_time as newestCallTime ,cm.turnover_amount as turnoverAmount ,cm.clue_type as clueType " +
"from tb_clue as c LEFT JOIN tb_clue_middle as cm on c.id = cm.clue_id where 1=1 ");
@ -71,7 +71,7 @@ public class ClueJpa {
public List<ClueDto> getTalkClueList(ClueQueryCriteria clueQueryCriteria, Pageable pageable) {
StringBuilder sql = new StringBuilder();
sql.append("select c.id as id,c.name as name,c.nid as nid,c.wx as wx,c.origin as origin,c.collect_time as collectTime,c.address as address,c.record_id as recordId," +
"c.create_time as createTime,c.amount as amount,c.platform as platform,c.tag as tag,c.audio_url as audioUrl,c.cast_info as castInfo,c.is_encryption as isEncryption, cm.remark as remark,cm.member_status as memberStatus,cm.organize_id as organizeId,cm.member_id as memberId," +
"cm.create_time as createTime,c.amount as amount,c.platform as platform,c.tag as tag,c.audio_url as audioUrl,c.cast_info as castInfo,c.is_encryption as isEncryption, cm.remark as remark,cm.member_status as memberStatus,cm.organize_id as organizeId,cm.member_id as memberId," +
"cm.optimistic_version as optimisticVersion,cm.source_label as sourceLabel,cm.task_id as taskId,cm.clue_stage as clueStage,cm.clue_call_status as clueCallStatus," +
"cm.newest_call_time as newestCallTime ,cm.turnover_amount as turnoverAmount ,cm.clue_type as clueType " +
"from tb_clue as c LEFT JOIN tb_clue_talk as cm on c.id = cm.clue_id where 1=1 ");

@ -0,0 +1,64 @@
package com.baiye.task;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.text.StrPool;
import cn.hutool.core.util.ObjectUtil;
import com.baiye.config.properties.DeliveryProperties;
import com.baiye.constant.DefaultNumberConstants;
import com.baiye.constant.FileConstant;
import com.baiye.util.*;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.io.File;
import java.util.concurrent.TimeUnit;
/**
* @author Enzo
* @date : 2023/4/22
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class ZipFileSendMailTask {
private final DeliveryProperties deliveryProperties;
private final RedisUtils redisUtils;
/**
*
*/
@SneakyThrows
@Scheduled(cron = "0 0 1 * * ? ")
@Transactional(rollbackFor = Exception.class)
public void receiveMail() {
String format = DateUtil.format(DateUtil.date(), DatePattern.PURE_DATE_PATTERN);
log.info("");
for (File file : FileUtil.getAllFile("/home/mail")) {
Integer num = (Integer) redisUtils.get(CacheKey.DMP_MANUAL_ID.concat(format));
Integer batch = ObjectUtil.isNull(num) ? DefaultNumberConstants.ONE_NUMBER : num + DefaultNumberConstants.ONE_NUMBER;
String taskImeiName = FileConstant.MM.concat(StrPool.UNDERLINE).concat(format).concat(StrPool.UNDERLINE).concat(String.valueOf(batch));
// 保存文件
String zipPath = file.getPath().replace(".csv", FileConstant.ZIP_FILE_SUB_NAME);
// 设置压缩文件
CompressUtil.decryptionCompression
(zipPath, file.getPath(), deliveryProperties.getZipPassword());
// 发送邮件
MailUtil.sendMail(deliveryProperties.getEmailAddress(),
deliveryProperties.getEmailPassword(), deliveryProperties.getToEmailAddress(), zipPath, taskImeiName);
// 保存批次号
redisUtils.set(CacheKey.DMP_MANUAL_ID.concat(format), batch, DefaultNumberConstants.ONE_NUMBER, TimeUnit.DAYS);
FileUtil.del(file);
FileUtil.del(zipPath);
}
}
}
Loading…
Cancel
Save