Commit 4ba74664 authored by 刘文胜's avatar 刘文胜

kolon sftp

parent d06ee7e4
...@@ -9,9 +9,7 @@ import java.util.Date; ...@@ -9,9 +9,7 @@ import java.util.Date;
import java.util.List; import java.util.List;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.commons.net.ftp.FTPClient;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -25,7 +23,9 @@ import com.hdp.pi.repository.kolon.KolonMemberPreassignSnRepository; ...@@ -25,7 +23,9 @@ import com.hdp.pi.repository.kolon.KolonMemberPreassignSnRepository;
import com.hdp.pi.repository.kolon.KolonMemberRepository; import com.hdp.pi.repository.kolon.KolonMemberRepository;
import com.hdp.pi.repository.kolon.ProductRepository; import com.hdp.pi.repository.kolon.ProductRepository;
import com.hdp.pi.repository.kolon.SaleRepository; import com.hdp.pi.repository.kolon.SaleRepository;
import com.hdp.pi.utils.kolon.FtpUtil; import com.hdp.pi.utils.kolon.FtpMemberUtil;
import com.hdp.pi.utils.kolon.FtpProductUtil;
import com.hdp.pi.utils.kolon.FtpSaleUtil;
import com.hdp.pi.utils.kolon.Util; import com.hdp.pi.utils.kolon.Util;
/** /**
...@@ -35,22 +35,13 @@ import com.hdp.pi.utils.kolon.Util; ...@@ -35,22 +35,13 @@ import com.hdp.pi.utils.kolon.Util;
public class KolonMemberServiceImpl implements KolonMemberService { public class KolonMemberServiceImpl implements KolonMemberService {
@Autowired @Autowired
private FtpUtil ftpUtil; private FtpMemberUtil ftpMemberUtil;
@Value("${kolon.property.ftp.getFileName}") @Autowired
private String memberFileName; private FtpProductUtil ftpProductUtil;
@Value("${kolon.property.ftp.saleFileName}")
private String saleFileName;
@Value("${kolon.property.ftp.productFileName}")
private String productFileName;
/** @Autowired
* FTP获取文件目录 private FtpSaleUtil ftpSaleUtil;
*/
@Value("${kolon.property.ftp.getFileDir}")
private String getFileDir;
@Autowired @Autowired
private KolonMemberRepository kolonMemberRepository; private KolonMemberRepository kolonMemberRepository;
...@@ -159,28 +150,23 @@ public class KolonMemberServiceImpl implements KolonMemberService { ...@@ -159,28 +150,23 @@ public class KolonMemberServiceImpl implements KolonMemberService {
@Override @Override
public void syncMemberData() { public void syncMemberData() {
FTPClient ftpClient = ftpUtil.getFTPClient(); String[] listNames = ftpMemberUtil.listNames();
try { for(String name : listNames){
String[] listNames = ftpClient.listNames(getFileDir); String sortName = name.substring(name.lastIndexOf("/") + 1, name.length());
for(String name : listNames){ if(ftpMemberUtil.contains(sortName)){
String sortName = name.substring(name.lastIndexOf("/") + 1, name.length()); List<String[]> list = ftpMemberUtil.readCSVFile(sortName);
if(sortName.contains(memberFileName)){ if (list != null) {
List<String[]> list = ftpUtil.readCSVFile(sortName); boolean firstRow = true;
if (list != null) { for (String[] row : list) {
boolean firstRow = true; if (firstRow) {
for (String[] row : list) { firstRow = false;
if (firstRow) { } else {
firstRow = false; this.matchData(row);
} else {
this.matchData(row);
}
} }
} }
ftpUtil.moveFile(sortName);
} }
ftpMemberUtil.moveFile(sortName);
} }
} catch (IOException e) {
e.printStackTrace();
} }
} }
...@@ -258,42 +244,53 @@ public class KolonMemberServiceImpl implements KolonMemberService { ...@@ -258,42 +244,53 @@ public class KolonMemberServiceImpl implements KolonMemberService {
@Override @Override
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void syncProductData() { public void syncProductData(){
List<String[]> list = ftpUtil.readCSVFile(productFileName); String[] listNames = ftpProductUtil.listNames();
if (list != null) { for(String name : listNames){
boolean firstRow = true; String sortName = name.substring(name.lastIndexOf("/") + 1, name.length());
for (String[] row : list) { if(ftpProductUtil.contains(sortName)){
if (firstRow) { List<String[]> list = ftpProductUtil.readCSVFile(sortName);
firstRow = false; if (list != null) {
} else { boolean firstRow = true;
saveProductAbsentIf(newProduct(row)); for (String[] row : list) {
if (firstRow) {
firstRow = false;
} else {
saveProductAbsentIf(newProduct(row));
}
}
} }
ftpProductUtil.moveFile(sortName);
} }
} }
ftpUtil.moveFile(productFileName);
} }
@Override @Override
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void syncSaleData() { public void syncSaleData() {
List<String[]> list = ftpUtil.readCSVFile(saleFileName); String[] listNames = ftpSaleUtil.listNames();
if (list != null) { for(String name : listNames){
boolean firstRow = true; String sortName = name.substring(name.lastIndexOf("/") + 1, name.length());
for (String[] row : list) { if(ftpSaleUtil.contains(sortName)){
if (firstRow) { List<String[]> list = ftpSaleUtil.readCSVFile(sortName);
firstRow = false; if (list != null) {
} else { boolean firstRow = true;
saveSale(newSale(row)); for (String[] row : list) {
if (firstRow) {
firstRow = false;
} else {
saveSale(newSale(row));
}
}
} }
ftpSaleUtil.moveFile(sortName);
} }
} }
ftpUtil.moveFile(saleFileName);
} }
@Override @Override
public Date sendData(Date time) { public Date sendData(Date time) {
Date lastSendDate = time; Date lastSendDate = time;
//获取记录 //获取记录
List<KolonMember> kolonMembers = kolonMemberRepository.findByJoinTimeGreaterThanOrUpdateTimeGreaterThan(time, time); List<KolonMember> kolonMembers = kolonMemberRepository.findByJoinTimeGreaterThanOrUpdateTimeGreaterThan(time, time);
...@@ -313,13 +310,12 @@ public class KolonMemberServiceImpl implements KolonMemberService { ...@@ -313,13 +310,12 @@ public class KolonMemberServiceImpl implements KolonMemberService {
} }
} }
CSVWriter addWriter = ftpUtil.getCSVWriter(1); CSVWriter addWriter = ftpMemberUtil.getCSVWriter(1);
writeDataToFile(addWriter, addData); writeDataToFile(addWriter, addData);
CSVWriter updateWriter = ftpUtil.getCSVWriter(2); CSVWriter updateWriter = ftpMemberUtil.getCSVWriter(2);
writeDataToFile(updateWriter, updateData); writeDataToFile(updateWriter, updateData);
//上传文件 //上传文件
uploadFile(); ftpMemberUtil.uploadFile();
return lastSendDate; return lastSendDate;
} }
...@@ -338,9 +334,5 @@ public class KolonMemberServiceImpl implements KolonMemberService { ...@@ -338,9 +334,5 @@ public class KolonMemberServiceImpl implements KolonMemberService {
e.printStackTrace(); e.printStackTrace();
} }
} }
public void uploadFile(){
ftpUtil.uploadFile();
}
} }
...@@ -2,12 +2,10 @@ package com.hdp.pi.utils.kolon; ...@@ -2,12 +2,10 @@ package com.hdp.pi.utils.kolon;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter; import java.io.FileWriter;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.InputStreamReader; import java.io.InputStreamReader;
import java.net.SocketException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
...@@ -25,68 +23,71 @@ import org.springframework.beans.factory.annotation.Value; ...@@ -25,68 +23,71 @@ import org.springframework.beans.factory.annotation.Value;
import au.com.bytecode.opencsv.CSVReader; import au.com.bytecode.opencsv.CSVReader;
import au.com.bytecode.opencsv.CSVWriter; import au.com.bytecode.opencsv.CSVWriter;
public class FtpUtil { public class FtpMemberUtil {
private static final Logger logger = LoggerFactory.getLogger(FtpUtil.class); private static final Logger logger = LoggerFactory.getLogger(FtpMemberUtil.class);
@Value("${kolon.property.ftp.server}") @Value("${kolon.property.member.ftp.server}")
private String ftpServer; private String ftpServer;
@Value("${kolon.property.ftp.port}") @Value("${kolon.property.member.ftp.port}")
private Integer ftpPort; private Integer ftpPort;
@Value("${kolon.property.ftp.userName}") @Value("${kolon.property.member.ftp.userName}")
private String ftpUserName; private String ftpUserName;
@Value("${kolon.property.ftp.password}") @Value("${kolon.property.member.ftp.password}")
private String ftpPassword; private String ftpPassword;
/** /**
* FTP获取文件目录 * FTP获取文件目录
*/ */
@Value("${kolon.property.ftp.getFileDir}") @Value("${kolon.property.member.ftp.getFileDir}")
private String getFileDir; private String getFileDir;
@Value("${kolon.property.member.ftp.getFileName}")
private String fileNameFormat;
/** /**
* FTP获取存放历史文件目录 * FTP获取存放历史文件目录
*/ */
@Value("${kolon.property.ftp.getFileHistoryDir}") @Value("${kolon.property.member.ftp.getFileHistoryDir}")
private String getFileHistoryDir; private String getFileHistoryDir;
/** /**
* 临时路径 * 临时路径
*/ */
@Value("${kolon.property.ftp.tempFileDir}") @Value("${kolon.property.member.ftp.tempFileDir}")
private String tempFileDir; private String tempFileDir;
/** /**
* 临时存放生成的新注册用户文件路径 * 临时存放生成的新注册用户文件路径
*/ */
@Value("${kolon.property.ftp.tempAddFileName}") @Value("${kolon.property.member.ftp.tempAddFileName}")
private String tempAddFileName; private String tempAddFileName;
/** /**
* 临时存放生成的更新用户文件路径 * 临时存放生成的更新用户文件路径
*/ */
@Value("${kolon.property.ftp.tempUpdateFileName}") @Value("${kolon.property.member.ftp.tempUpdateFileName}")
private String tempUpdateFileName; private String tempUpdateFileName;
/** /**
* FTP上传文件目录 * FTP上传文件目录
*/ */
@Value("${kolon.property.ftp.putFileDir}") @Value("${kolon.property.member.ftp.putFileDir}")
private String putFileDir; private String putFileDir;
/** /**
* FTP上传新注册用户的文件名称 * FTP上传新注册用户的文件名称
*/ */
@Value("${kolon.property.ftp.putAddFileName}") @Value("${kolon.property.member.ftp.putAddFileName}")
private String putAddFileName; private String putAddFileName;
/** /**
* FTP上传更新用户的文件名称 * FTP上传更新用户的文件名称
*/ */
@Value("${kolon.property.ftp.putUpdateFileName}") @Value("${kolon.property.member.ftp.putUpdateFileName}")
private String putUpdateFileName; private String putUpdateFileName;
/** /**
...@@ -106,15 +107,14 @@ public class FtpUtil { ...@@ -106,15 +107,14 @@ public class FtpUtil {
if (!FTPReply.isPositiveCompletion(reply)) { if (!FTPReply.isPositiveCompletion(reply)) {
logger.error("FTP server refused connection."); logger.error("FTP server refused connection.");
System.err.println("FTP server refused connection."); System.err.println("FTP server refused connection.");
System.exit(1); throw new RuntimeException("FTP server refused connection.");
} }
} catch (Throwable e) { } catch (Throwable e) {
e.printStackTrace(); throw new RuntimeException(e);
logger.error(e.toString());
} }
return ftpClient; return ftpClient;
} }
/** /**
* 读取文件数据 * 读取文件数据
*/ */
...@@ -136,7 +136,7 @@ public class FtpUtil { ...@@ -136,7 +136,7 @@ public class FtpUtil {
list = csvReader.readAll(); list = csvReader.readAll();
csvReader.close(); csvReader.close();
} catch (Throwable e) { } catch (Throwable e) {
e.printStackTrace(); throw new RuntimeException(e);
} finally{ } finally{
if(ftpClient!=null){ if(ftpClient!=null){
try { try {
...@@ -156,7 +156,6 @@ public class FtpUtil { ...@@ -156,7 +156,6 @@ public class FtpUtil {
FTPClient ftpClient = null; FTPClient ftpClient = null;
try { try {
ftpClient = this.getFTPClient(); ftpClient = this.getFTPClient();
// 新的文件名 // 新的文件名
String suffix = fileName.substring(fileName.lastIndexOf(".")); String suffix = fileName.substring(fileName.lastIndexOf("."));
String name = fileName String name = fileName
...@@ -166,7 +165,7 @@ public class FtpUtil { ...@@ -166,7 +165,7 @@ public class FtpUtil {
ftpClient.rename(getFileDir + fileName, getFileHistoryDir ftpClient.rename(getFileDir + fileName, getFileHistoryDir
+ newFileName); + newFileName);
} catch (Throwable e) { } catch (Throwable e) {
e.printStackTrace(); throw new RuntimeException(e);
}finally{ }finally{
if(ftpClient!=null){ if(ftpClient!=null){
try { try {
...@@ -197,7 +196,7 @@ public class FtpUtil { ...@@ -197,7 +196,7 @@ public class FtpUtil {
} }
} catch (Throwable e) { } catch (Throwable e) {
e.printStackTrace(); throw new RuntimeException(e);
} }
return writer; return writer;
} }
...@@ -219,8 +218,7 @@ public class FtpUtil { ...@@ -219,8 +218,7 @@ public class FtpUtil {
ftpClient.storeFile(putAddFileName.replace("YYYY-MM-dd",sdf.format(new Date())), addInputStream); ftpClient.storeFile(putAddFileName.replace("YYYY-MM-dd",sdf.format(new Date())), addInputStream);
ftpClient.storeFile(putUpdateFileName.replace("YYYY-MM-dd",sdf.format(new Date())), updateInputStream); ftpClient.storeFile(putUpdateFileName.replace("YYYY-MM-dd",sdf.format(new Date())), updateInputStream);
} catch (Throwable e) { } catch (Throwable e) {
e.printStackTrace(); throw new RuntimeException(e);
logger.error(e.toString());
} }
} }
...@@ -239,4 +237,27 @@ public class FtpUtil { ...@@ -239,4 +237,27 @@ public class FtpUtil {
} }
} }
public String[] listNames(){
String[] list = new String[0];
FTPClient ftpClient = null;
try {
ftpClient = this.getFTPClient();
list = ftpClient.listNames(getFileDir);
} catch (Throwable e) {
throw new RuntimeException(e);
} finally{
if(ftpClient!=null){
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return list;
}
public boolean contains(String name){
return name.contains(fileNameFormat);
}
} }
package com.hdp.pi.utils.kolon;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;
import org.apache.commons.net.ftp.FTPSClient;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import au.com.bytecode.opencsv.CSVReader;
public class FtpProductUtil {
private static final Logger logger = LoggerFactory.getLogger(FtpProductUtil.class);
@Value("${kolon.property.product.ftp.server}")
private String ftpServer;
@Value("${kolon.property.product.ftp.port}")
private Integer ftpPort;
@Value("${kolon.property.product.ftp.userName}")
private String ftpUserName;
@Value("${kolon.property.product.ftp.password}")
private String ftpPassword;
/**
* FTP获取文件目录
*/
@Value("${kolon.property.product.ftp.getFileDir}")
private String getFileDir;
@Value("${kolon.property.product.ftp.fileName}")
private String fileNameFormat;
/**
* FTP获取存放历史文件目录
*/
@Value("${kolon.property.product.ftp.getFileHistoryDir}")
private String getFileHistoryDir;
/**
* 获取ftp链接
*
* @return ftpClient
* */
public FTPClient getFTPClient() {
FTPSClient ftpClient = null;
try {
ftpClient = new FTPSClient();
ftpClient.connect(ftpServer, ftpPort);
ftpClient.enterLocalPassiveMode();
ftpClient.login(ftpUserName, ftpPassword);
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
int reply = ftpClient.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
logger.error("FTP server refused connection.");
System.err.println("FTP server refused connection.");
throw new RuntimeException("FTP server refused connection.");
}
} catch (Throwable e) {
throw new RuntimeException(e);
}
return ftpClient;
}
/**
* 读取文件数据
*/
public List<String[]> readCSVFile(String fileName) {
List<String[]> list = new ArrayList<String[]>();
FTPClient ftpClient = null;
try {
ftpClient = this.getFTPClient();
InputStream csv = ftpClient.retrieveFileStream(getFileDir
+ fileName);
if (csv == null) {
logger.warn("kolon数据同步失败,没有找到【" + getFileDir + fileName
+ "】数据文件");
return null;
}
InputStreamReader inputStreamReader = new InputStreamReader(csv,
"UTF-8");
CSVReader csvReader = new CSVReader(inputStreamReader);
list = csvReader.readAll();
csvReader.close();
} catch (Throwable e) {
throw new RuntimeException(e);
} finally{
if(ftpClient!=null){
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return list;
}
/**
* 移动文件
*/
public void moveFile(String fileName) {
FTPClient ftpClient = null;
try {
ftpClient = this.getFTPClient();
// 新的文件名
String suffix = fileName.substring(fileName.lastIndexOf("."));
String name = fileName
.substring(0, fileName.lastIndexOf("."));
String newFileName = name + "_" + getTime() + suffix;
ftpClient.rename(getFileDir + fileName, getFileHistoryDir
+ newFileName);
} catch (Throwable e) {
throw new RuntimeException(e);
}finally{
if(ftpClient!=null){
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
private String getTime() {
DateTimeFormatter formatter = DateTimeFormatter
.ofPattern("yyyy-MM-dd_HHmmss");
LocalDateTime dateTime = LocalDateTime.now();
String formattedDateTime = dateTime.format(formatter);
return formattedDateTime;
}
public void createdDirIfNotExist(String path) {
File file = new File(path);
if (!file.exists() && !file.isDirectory()) {
file.mkdir();
}
}
public String[] listNames(){
String[] list = new String[0];
FTPClient ftpClient = null;
try {
ftpClient = this.getFTPClient();
list = ftpClient.listNames(getFileDir);
} catch (Throwable e) {
throw new RuntimeException(e);
} finally{
if(ftpClient!=null){
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return list;
}
public boolean contains(String name){
return name.contains(fileNameFormat);
}
}
package com.hdp.pi.utils.kolon;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;
import org.apache.commons.net.ftp.FTPSClient;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import au.com.bytecode.opencsv.CSVReader;
public class FtpSaleUtil {
private static final Logger logger = LoggerFactory.getLogger(FtpSaleUtil.class);
@Value("${kolon.property.sale.ftp.server}")
private String ftpServer;
@Value("${kolon.property.sale.ftp.port}")
private Integer ftpPort;
@Value("${kolon.property.sale.ftp.userName}")
private String ftpUserName;
@Value("${kolon.property.sale.ftp.password}")
private String ftpPassword;
/**
* FTP获取文件目录
*/
@Value("${kolon.property.sale.ftp.getFileDir}")
private String getFileDir;
@Value("${kolon.property.sale.ftp.fileName}")
private String fileNameFormat;
/**
* FTP获取存放历史文件目录
*/
@Value("${kolon.property.sale.ftp.getFileHistoryDir}")
private String getFileHistoryDir;
/**
* 获取ftp链接
*
* @return ftpClient
* */
public FTPClient getFTPClient() {
FTPSClient ftpClient = null;
try {
ftpClient = new FTPSClient();
ftpClient.connect(ftpServer, ftpPort);
ftpClient.enterLocalPassiveMode();
ftpClient.login(ftpUserName, ftpPassword);
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
int reply = ftpClient.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
logger.error("FTP server refused connection.");
System.err.println("FTP server refused connection.");
throw new RuntimeException("FTP server refused connection.");
}
} catch (Throwable e) {
throw new RuntimeException(e);
}
return ftpClient;
}
/**
* 读取文件数据
*/
public List<String[]> readCSVFile(String fileName) {
List<String[]> list = new ArrayList<String[]>();
FTPClient ftpClient = null;
try {
ftpClient = this.getFTPClient();
InputStream csv = ftpClient.retrieveFileStream(getFileDir
+ fileName);
if (csv == null) {
logger.warn("kolon数据同步失败,没有找到【" + getFileDir + fileName
+ "】数据文件");
return null;
}
InputStreamReader inputStreamReader = new InputStreamReader(csv,
"UTF-8");
CSVReader csvReader = new CSVReader(inputStreamReader);
list = csvReader.readAll();
csvReader.close();
} catch (Throwable e) {
throw new RuntimeException(e);
} finally{
if(ftpClient!=null){
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return list;
}
/**
* 移动文件
*/
public void moveFile(String fileName) {
FTPClient ftpClient = null;
try {
ftpClient = this.getFTPClient();
// 新的文件名
String suffix = fileName.substring(fileName.lastIndexOf("."));
String name = fileName
.substring(0, fileName.lastIndexOf("."));
String newFileName = name + "_" + getTime() + suffix;
ftpClient.rename(getFileDir + fileName, getFileHistoryDir
+ newFileName);
} catch (Throwable e) {
throw new RuntimeException(e);
}finally{
if(ftpClient!=null){
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
private String getTime() {
DateTimeFormatter formatter = DateTimeFormatter
.ofPattern("yyyy-MM-dd_HHmmss");
LocalDateTime dateTime = LocalDateTime.now();
String formattedDateTime = dateTime.format(formatter);
return formattedDateTime;
}
public void createdDirIfNotExist(String path) {
File file = new File(path);
if (!file.exists() && !file.isDirectory()) {
file.mkdir();
}
}
public String[] listNames(){
String[] list = new String[0];
FTPClient ftpClient = null;
try {
ftpClient = this.getFTPClient();
list = ftpClient.listNames(getFileDir);
} catch (Throwable e) {
throw new RuntimeException(e);
} finally{
if(ftpClient!=null){
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return list;
}
public boolean contains(String name){
return name.contains(fileNameFormat);
}
}
...@@ -11,4 +11,35 @@ spring.jpa.show-sql=true ...@@ -11,4 +11,35 @@ spring.jpa.show-sql=true
dubbo.register=172.18.5.201:3181 dubbo.register=172.18.5.201:3181
kolon.property.businessCode = 100001 kolon.property.businessCode = 100001
\ No newline at end of file
kolon.property.member.ftp.server = 112.124.57.138
kolon.property.member.ftp.port = 21
kolon.property.member.ftp.userName = mark
kolon.property.member.ftp.password = yang19821123
kolon.property.member.ftp.getFileDir = /SCRM/export/
kolon.property.member.ftp.getFileHistoryDir = /SCRM/history/
kolon.property.member.ftp.getFileName = Wechat_export
kolon.property.member.ftp.tempFileDir = /temp
kolon.property.member.ftp.tempAddFileName = /temp/tempAddContact.csv
kolon.property.member.ftp.tempUpdateFileName = /temp/tempUpdateContact.csv
kolon.property.member.ftp.putFileDir = /SCRM/
kolon.property.member.ftp.putAddFileName = newContact_YYYY-MM-dd.csv
kolon.property.member.ftp.putUpdateFileName = updateContact_YYYY-MM-dd.csv
kolon.property.product.ftp.server = 112.124.57.138
kolon.property.product.ftp.port = 21
kolon.property.product.ftp.userName = mark
kolon.property.product.ftp.password = yang19821123
kolon.property.product.ftp.getFileDir = /SCRM/export/
kolon.property.product.ftp.getFileHistoryDir = /SCRM/history/
kolon.property.product.ftp.getFileName = products
kolon.property.sale.ftp.server = 112.124.57.138
kolon.property.sale.ftp.port = 21
kolon.property.sale.ftp.userName = mark
kolon.property.sale.ftp.password = yang19821123
kolon.property.sale.ftp.getFileDir = /SCRM/export/
kolon.property.sale.ftp.getFileHistoryDir = /SCRM/history/
kolon.property.sale.ftp.getFileName = sales
\ No newline at end of file
...@@ -12,3 +12,33 @@ spring.jpa.show-sql=false ...@@ -12,3 +12,33 @@ spring.jpa.show-sql=false
dubbo.register=10.173.227.160:2181,10.173.224.92:2181,10.173.226.96:2181 dubbo.register=10.173.227.160:2181,10.173.224.92:2181,10.173.226.96:2181
kolon.property.businessCode = 100073 kolon.property.businessCode = 100073
kolon.property.member.ftp.server = 112.124.57.138
kolon.property.member.ftp.port = 21
kolon.property.member.ftp.userName = mark
kolon.property.member.ftp.password = yang19821123
kolon.property.member.ftp.getFileDir = /SCRM/export/
kolon.property.member.ftp.getFileHistoryDir = /SCRM/history/
kolon.property.member.ftp.getFileName = Wechat_export
kolon.property.member.ftp.tempFileDir = /temp
kolon.property.member.ftp.tempAddFileName = /temp/tempAddContact.csv
kolon.property.member.ftp.tempUpdateFileName = /temp/tempUpdateContact.csv
kolon.property.member.ftp.putFileDir = /SCRM/
kolon.property.member.ftp.putAddFileName = newContact_YYYY-MM-dd.csv
kolon.property.member.ftp.putUpdateFileName = updateContact_YYYY-MM-dd.csv
kolon.property.product.ftp.server = 112.124.57.138
kolon.property.product.ftp.port = 21
kolon.property.product.ftp.userName = mark
kolon.property.product.ftp.password = yang19821123
kolon.property.product.ftp.getFileDir = /SCRM/export/
kolon.property.product.ftp.getFileHistoryDir = /SCRM/history/
kolon.property.product.ftp.getFileName = products
kolon.property.sale.ftp.server = 112.124.57.138
kolon.property.sale.ftp.port = 21
kolon.property.sale.ftp.userName = mark
kolon.property.sale.ftp.password = yang19821123
kolon.property.sale.ftp.getFileDir = /SCRM/export/
kolon.property.sale.ftp.getFileHistoryDir = /SCRM/history/
kolon.property.sale.ftp.getFileName = sales
...@@ -18,42 +18,3 @@ kolon.dubbo.port=21896 ...@@ -18,42 +18,3 @@ kolon.dubbo.port=21896
kolon.property.variableTypeName = KOLON_PROPERTY kolon.property.variableTypeName = KOLON_PROPERTY
kolon.property.variableCode = LAST_SEND_TIME kolon.property.variableCode = LAST_SEND_TIME
#kolon.property.ftp.server = kolon-report.emarsyshk.com
#kolon.property.ftp.port = 21
#kolon.property.ftp.userName = wechat@kolon-report.emarsyshk.com
#kolon.property.ftp.password = p&}e^MLPcNBI
kolon.property.ftp.server = 112.124.57.138
kolon.property.ftp.port = 21
kolon.property.ftp.userName = mark
kolon.property.ftp.password = yang19821123
kolon.property.ftp.getFileDir = /SCRM/export/
kolon.property.ftp.getFileHistoryDir = /SCRM/history/
kolon.property.ftp.getFileName = Wechat_export
kolon.property.ftp.saleFileName = sales.csv
kolon.property.ftp.productFileName = products.csv
kolon.property.ftp.tempFileDir = /temp
kolon.property.ftp.tempAddFileName = /temp/tempAddContact.csv
kolon.property.ftp.tempUpdateFileName = /temp/tempUpdateContact.csv
kolon.property.ftp.putFileDir = /SCRM/
kolon.property.ftp.putAddFileName = newContact_YYYY-MM-dd.csv
kolon.property.ftp.putUpdateFileName = updateContact_YYYY-MM-dd.csv
#test dev
#kolon.property.ftp.server = 172.18.8.202
#kolon.property.ftp.port = 21
#kolon.property.ftp.userName = ftpuser
#kolon.property.ftp.password = 1234
#kolon.property.ftp.tempAddFileName = E:/FTP/SCRM/temp/tempAddContact.csv
#kolon.property.ftp.tempUpdateFileName = E:/FTP/SCRM/temp/tempUpdateContact.csv
...@@ -12,3 +12,34 @@ spring.jpa.show-sql=false ...@@ -12,3 +12,34 @@ spring.jpa.show-sql=false
dubbo.register=115.29.165.17:2181 dubbo.register=115.29.165.17:2181
kolon.property.businessCode = 100051 kolon.property.businessCode = 100051
kolon.property.member.ftp.server = 112.124.57.138
kolon.property.member.ftp.port = 21
kolon.property.member.ftp.userName = mark
kolon.property.member.ftp.password = yang19821123
kolon.property.member.ftp.getFileDir = /SCRM/export/
kolon.property.member.ftp.getFileHistoryDir = /SCRM/history/
kolon.property.member.ftp.getFileName = Wechat_export
kolon.property.member.ftp.tempFileDir = /temp
kolon.property.member.ftp.tempAddFileName = /temp/tempAddContact.csv
kolon.property.member.ftp.tempUpdateFileName = /temp/tempUpdateContact.csv
kolon.property.member.ftp.putFileDir = /SCRM/
kolon.property.member.ftp.putAddFileName = newContact_YYYY-MM-dd.csv
kolon.property.member.ftp.putUpdateFileName = updateContact_YYYY-MM-dd.csv
kolon.property.product.ftp.server = 112.124.57.138
kolon.property.product.ftp.port = 21
kolon.property.product.ftp.userName = mark
kolon.property.product.ftp.password = yang19821123
kolon.property.product.ftp.getFileDir = /SCRM/export/
kolon.property.product.ftp.getFileHistoryDir = /SCRM/history/
kolon.property.product.ftp.getFileName = products
kolon.property.sale.ftp.server = 112.124.57.138
kolon.property.sale.ftp.port = 21
kolon.property.sale.ftp.userName = mark
kolon.property.sale.ftp.password = yang19821123
kolon.property.sale.ftp.getFileDir = /SCRM/export/
kolon.property.sale.ftp.getFileHistoryDir = /SCRM/history/
kolon.property.sale.ftp.getFileName = sales
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment