koul 3 лет назад
Родитель
Сommit
04f2f8014c
1 измененных файлов с 31 добавлено и 25 удалено
  1. 31 25
      src/main/java/com/uas/util/FileUtil.java

+ 31 - 25
src/main/java/com/uas/util/FileUtil.java

@@ -88,36 +88,42 @@ public class FileUtil {
 	public static Boolean fileUp(Statement statement, MultipartFile file, String sob){
 		boolean result = false;
 		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-		String path = saveFile(file, "ADMIN");
+		String path = saveFile(file, "FTP");
 		String filename = file.getOriginalFilename().replaceAll(",", ",");
         String originalFilename = file.getOriginalFilename();
 		int size = (int) file.getSize();
-		if(size>0) {
+        if(size>0) {
 			try {
-                ResultSet resultSet = statement.executeQuery("select " + sob + ".EMAILFILEPATH.nextval from dual");
-                if (resultSet.next()) {
-					int id = resultSet.getInt(1);
-					String sql1 =
-							"INSERT INTO " + sob + ".filepath(fp_id,fp_path,fp_size,fp_man,fp_date,fp_name) values(" + id + ",'" + path +
-									"'," + size + ",'" + "管理员" + "'," + "to_date('" + format.format(new Date()) + "','yyyy-mm-dd HH24:mi:ss')" + ",'" + filename + "')";
-					int i = statement.executeUpdate(sql1);
-					if (i > 0) {
-						String substring = null;
-						if (filename.indexOf("-") != -1) {
-							substring = filename.substring(0, filename.indexOf("-"));
-						} else {
-                            substring = filename.substring(0, filename.indexOf("."));
+                ResultSet set = statement.executeQuery("select count(1) from " + sob + ".FTPATTCHTEMP where FT_FILENAME='" + filename + "'");
+                while (set.next()){
+                    int count = set.getInt(1);
+                    if (count==0){
+                        ResultSet resultSet = statement.executeQuery("select " + sob + ".EMAILFILEPATH.nextval from dual");
+                        if (resultSet.next()) {
+                            int id = resultSet.getInt(1);
+                            String sql1 =
+                                    "INSERT INTO " + sob + ".filepath(fp_id,fp_path,fp_size,fp_man,fp_date,fp_name) values(" + id + ",'" + path +
+                                            "'," + size + ",'" + "FTP" + "'," + "to_date('" + format.format(new Date()) + "','yyyy-mm-dd HH24:mi:ss')" + ",'" + filename + "')";
+                            int i = statement.executeUpdate(sql1);
+                            if (i > 0) {
+                                String substring = null;
+                                if (filename.indexOf("-") != -1) {
+                                    substring = filename.substring(0, filename.indexOf("-"));
+                                } else {
+                                    substring = filename.substring(0, filename.indexOf("."));
+                                }
+                                String sql3 = "INSERT INTO " + sob + ".FTPATTCHTEMP(FT_ID,FT_ATTCH,FT_PIINOUTNO,FT_STATUS,FT_INSERTDATE,FT_FILENAME,FT_SOB)values(" + sob + ".FTPATTCHTEMP_SEQ.nextval,'" + id + ";','" + substring + "','GET',to_date('" + format.format(new Date()) + "','yyyy-mm-dd HH24:mi:ss')" + ",'" + filename + "','" + sob + "')";
+                                int i1 = statement.executeUpdate(sql3);
+                                if (i1 > 0) {
+                                    result = true;
+                                }
+                            }
                         }
-						String sql3 = "INSERT INTO " + sob + ".FTPATTCHTEMP(FT_ID,FT_ATTCH,FT_PIINOUTNO,FT_STATUS,FT_INSERTDATE,FT_FILENAME,FT_SOB)values(" + sob + ".FTPATTCHTEMP_SEQ.nextval,'" + id + ";','" + substring + "','GET',to_date('" + format.format(new Date()) + "','yyyy-mm-dd HH24:mi:ss')" + ",'" + filename + "','" + sob + "')";
-						int i1 = statement.executeUpdate(sql3);
-						if (i1 > 0) {
-							result = true;
-						}
-					}
-				}
-				statement.close();
-				return result;
-			} catch (SQLException e) {
+                        statement.close();
+                    }
+                }
+                result=true;
+            } catch (SQLException e) {
 				e.printStackTrace();
 			}
 		}