|
@@ -30,11 +30,14 @@ import org.apache.poi.ss.usermodel.Sheet;
|
|
|
import org.apache.poi.ss.usermodel.Workbook;
|
|
|
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
|
|
import org.jeecg.common.api.vo.Result;
|
|
|
+import org.jeecg.common.util.DateUtils;
|
|
|
import org.jeecg.common.util.MD5Util;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
+import java.io.IOException;
|
|
|
import java.text.DecimalFormat;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.ArrayList;
|
|
@@ -42,6 +45,7 @@ import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.UUID;
|
|
|
|
|
|
/**
|
|
|
* 项目绑定的应用
|
|
@@ -70,7 +74,8 @@ public class KuaishouAppPackageServiceImpl extends ServiceImpl<KuaishouAppPackag
|
|
|
private IKuaiShouImageGetService imageGetService;
|
|
|
@Autowired
|
|
|
private IKuaiShouMaterialUploadService uploadService;
|
|
|
-
|
|
|
+ @Value("${zip.local.download-path}")
|
|
|
+ private String downloadPath;
|
|
|
@Override
|
|
|
public Result<Object> importExcel(MultipartFile file, Long projectId, Integer platform, String imageUrl) throws Exception {
|
|
|
JSONObject returnJson = new JSONObject();
|
|
@@ -92,6 +97,16 @@ public class KuaishouAppPackageServiceImpl extends ServiceImpl<KuaishouAppPackag
|
|
|
if (rows == 0) {
|
|
|
throw new Exception("请填写数据");
|
|
|
}
|
|
|
+ String newFileUrl = getDownloadPath(imageUrl);
|
|
|
+ if (Check.isNull(newFileUrl)) {
|
|
|
+ return Result.error("本地下载文件失败,路径:" + imageUrl);
|
|
|
+ }
|
|
|
+ String md5 = null;
|
|
|
+ try {
|
|
|
+ md5 = LoadFileUtil.getMD5(newFileUrl);
|
|
|
+ } catch (IOException e) {
|
|
|
+ log.error("获取MD5签名失败", e);
|
|
|
+ }
|
|
|
//查询项目下的应用标记(同一账户下应用标记不能重复),在此视为同一项目不可重复
|
|
|
List<String> appVersions = appPackageMapper.queryAppVersions(projectId);
|
|
|
StringBuffer errAppVersions = new StringBuffer();
|
|
@@ -129,14 +144,14 @@ public class KuaishouAppPackageServiceImpl extends ServiceImpl<KuaishouAppPackag
|
|
|
appPackage.setAppIconUrl(imageUrl);
|
|
|
appPackage.setPackageName(packageName);
|
|
|
appPackage.setPlatform(platform);
|
|
|
- appPackage.setImageMd5(LoadFileUtil.getMD5(imageUrl));
|
|
|
+ appPackage.setImageMd5(md5);
|
|
|
appPackage.setTrackUrl(trackUrl);
|
|
|
appPackage.setAppPrivacyUrl(appPrivacyUrl);
|
|
|
appPackage.setDataStatus(1);//有效
|
|
|
appPackage.setUrl(url);
|
|
|
- String md5 = MD5Util.getMd5(url);
|
|
|
- if (!Check.isNull(md5)) {
|
|
|
- appPackage.setAppMd5(md5);
|
|
|
+ String appmd5 = MD5Util.getMd5(url);
|
|
|
+ if (!Check.isNull(appmd5)) {
|
|
|
+ appPackage.setAppMd5(appmd5);
|
|
|
}
|
|
|
if (!Check.isNull(useSdk)) {
|
|
|
appPackage.setUseSdk(Integer.valueOf(useSdk));
|
|
@@ -144,6 +159,7 @@ public class KuaishouAppPackageServiceImpl extends ServiceImpl<KuaishouAppPackag
|
|
|
appList.add(appPackage);
|
|
|
}
|
|
|
}
|
|
|
+ LoadFileUtil.delFile(newFileUrl);
|
|
|
String errVersion = errAppVersions.toString();
|
|
|
if (!Check.isNull(errVersion)) {
|
|
|
return Result.error("数据异常,重复的应用标记:" + errVersion.substring(0, errVersion.length() - 1));
|
|
@@ -152,6 +168,15 @@ public class KuaishouAppPackageServiceImpl extends ServiceImpl<KuaishouAppPackag
|
|
|
return Result.ok("文件导入成功");
|
|
|
}
|
|
|
|
|
|
+ public String getDownloadPath(String url) {
|
|
|
+ StringBuffer path = new StringBuffer();
|
|
|
+ path.append(downloadPath).append(DateUtils.getNowDate(DateUtils.WEB_FORMAT)).append("/").append(UUID.randomUUID().toString()).append("/");
|
|
|
+ if (!url.contains("http")) {
|
|
|
+ url = "https:".concat(url);
|
|
|
+ }
|
|
|
+ return LoadFileUtil.downLoadFromUrl(url, path.toString());
|
|
|
+ }
|
|
|
+
|
|
|
private String getCellValue(Cell cell) {
|
|
|
String value = "";
|
|
|
if (cell != null) {
|