|
@@ -1849,37 +1849,55 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
- if (dataIn.size() >= 1) {
|
|
|
- Map<String, Object> mysqlData = dataIn.get(0);
|
|
|
- for (String key : mysqlData.keySet()) {
|
|
|
- String tabVal = mysqlData.get(key) + "";
|
|
|
+ if (dataIn.size() >= 1) {
|
|
|
+ Map<String, Object> mysqlData = dataIn.get(0);
|
|
|
+ for (String key : mysqlData.keySet()) {
|
|
|
+ String tabVal = mysqlData.get(key) + "";
|
|
|
|
|
|
- // 时间段处理
|
|
|
- if (StringUtils.isNotEmpty(tabVal) && !tabVal.equals("null")) {
|
|
|
- if (tabVal.contains("T") && tabVal.contains(".000Z]")) {
|
|
|
- String[] tabData = tabVal.split("_\\^_");
|
|
|
+ if (tabVal.contains("BG-") || tabVal.contains("JL-")) {
|
|
|
+ //重新生成自己的编号,不引用旧编号
|
|
|
+ continue;
|
|
|
+ }
|
|
|
|
|
|
- if (reData.containsKey("pickerKey")) {
|
|
|
- String pickerKey = reData.get("pickerKey") + "," + key + "__" + tabData[1];
|
|
|
- reData.put("pickerKey", pickerKey);
|
|
|
- } else {
|
|
|
- reData.put("pickerKey", key + "__" + tabData[1]);
|
|
|
- }
|
|
|
+ // 时间段处理
|
|
|
+ if (StringUtils.isNotEmpty(tabVal) && !tabVal.equals("null")) {
|
|
|
+ if (tabVal.contains("T") && tabVal.contains(".000Z]")) {
|
|
|
+ String[] tabData = tabVal.split("_\\^_");
|
|
|
|
|
|
- String sql = tabData[0];
|
|
|
- sql = sql.replaceAll("\\[", "['");
|
|
|
- sql = sql.replaceAll("]", "']");
|
|
|
- sql = sql.replaceAll("000Z,", "000Z',");
|
|
|
- sql = sql.replaceAll(", 20", ", '20");
|
|
|
- // sql = sql.replaceAll("'", "");
|
|
|
- if (StringUtils.isNotEmpty(tabData[0])) {
|
|
|
- reData.put(key + "__" + tabData[1], sql);
|
|
|
- }
|
|
|
- } else if (tabVal.indexOf("T") >= 0 && tabVal.indexOf(".000Z") >= 0) {//时间
|
|
|
- // 时间和字符串合作
|
|
|
- if (tabVal.indexOf("☆") >= 0) {
|
|
|
+ if (reData.containsKey("pickerKey")) {
|
|
|
+ String pickerKey = reData.get("pickerKey") + "," + key + "__" + tabData[1];
|
|
|
+ reData.put("pickerKey", pickerKey);
|
|
|
+ } else {
|
|
|
+ reData.put("pickerKey", key + "__" + tabData[1]);
|
|
|
+ }
|
|
|
+
|
|
|
+ String sql = tabData[0];
|
|
|
+ sql = sql.replaceAll("\\[", "['");
|
|
|
+ sql = sql.replaceAll("]", "']");
|
|
|
+ sql = sql.replaceAll("000Z,", "000Z',");
|
|
|
+ sql = sql.replaceAll(", 20", ", '20");
|
|
|
+ // sql = sql.replaceAll("'", "");
|
|
|
+ if (StringUtils.isNotEmpty(tabData[0])) {
|
|
|
+ reData.put(key + "__" + tabData[1], sql);
|
|
|
+ }
|
|
|
+ } else if (tabVal.indexOf("T") >= 0 && tabVal.indexOf(".000Z") >= 0) {//时间
|
|
|
+ // 时间和字符串合作
|
|
|
+ if (tabVal.indexOf("☆") >= 0) {
|
|
|
+ String[] mysql = tabVal.split("☆");
|
|
|
+ for (String data : mysql) {
|
|
|
+ String[] tabData = data.split("_\\^_");
|
|
|
+ if (StringUtils.isNotEmpty(tabData[0])) {
|
|
|
+ reData.put(key + "__" + tabData[1], tabData[0]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ String[] tabData = tabVal.split("_\\^_");
|
|
|
+ if (StringUtils.isNotEmpty(tabData[0])) {
|
|
|
+ reData.put(key + "__" + tabData[1], tabData[0]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else if (tabVal.indexOf("☆") >= 0) {
|
|
|
String[] mysql = tabVal.split("☆");
|
|
|
for (String data : mysql) {
|
|
|
String[] tabData = data.split("_\\^_");
|
|
@@ -1887,38 +1905,23 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
|
|
|
reData.put(key + "__" + tabData[1], tabData[0]);
|
|
|
}
|
|
|
}
|
|
|
- } else {
|
|
|
+ } else if (tabVal.indexOf("_^_") >= 0) {
|
|
|
String[] tabData = tabVal.split("_\\^_");
|
|
|
if (StringUtils.isNotEmpty(tabData[0])) {
|
|
|
- reData.put(key + "__" + tabData[1], tabData[0]);
|
|
|
- }
|
|
|
- }
|
|
|
- } else if (tabVal.indexOf("☆") >= 0) {
|
|
|
- String[] mysql = tabVal.split("☆");
|
|
|
- for (String data : mysql) {
|
|
|
- String[] tabData = data.split("_\\^_");
|
|
|
- if (StringUtils.isNotEmpty(tabData[0])) {
|
|
|
- reData.put(key + "__" + tabData[1], tabData[0]);
|
|
|
- }
|
|
|
- }
|
|
|
- } else if (tabVal.indexOf("_^_") >= 0) {
|
|
|
- String[] tabData = tabVal.split("_\\^_");
|
|
|
- if (StringUtils.isNotEmpty(tabData[0])) {
|
|
|
- if (tabVal.contains("[") && tabVal.contains("年")) {
|
|
|
- String[] strings = StringUtils.strip(tabData[0], "[]").split(",");
|
|
|
- reData.put(key + "__" + tabData[1], strings);
|
|
|
- } else {
|
|
|
- reData.put(key + "__" + tabData[1], tabData[0]);
|
|
|
+ if (tabVal.contains("[") && tabVal.contains("年")) {
|
|
|
+ String[] strings = StringUtils.strip(tabData[0], "[]").split(",");
|
|
|
+ reData.put(key + "__" + tabData[1], strings);
|
|
|
+ } else {
|
|
|
+ reData.put(key + "__" + tabData[1], tabData[0]);
|
|
|
+ }
|
|
|
}
|
|
|
+ } else {
|
|
|
+ reData.put(key, tabVal);
|
|
|
}
|
|
|
- } else {
|
|
|
- reData.put(key, tabVal);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- } catch (FileNotFoundException e) {
|
|
|
- e.printStackTrace();
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
@@ -1987,15 +1990,6 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
|
|
|
elementMap = jdbcTemplate.query(eleSql, new BeanPropertyRowMapper<>(WbsFormElement.class)).stream().collect(Collectors.toMap(WbsFormElement::getEKey, Function.identity()));
|
|
|
}
|
|
|
|
|
|
- // 匹配关联
|
|
|
- try {
|
|
|
- File file1 = ResourceUtil.getFile(wbsTreePrivate.getHtmlUrl());
|
|
|
- String htmlString = IoUtil.readToString(new FileInputStream(file1));
|
|
|
- Document doc = Jsoup.parse(htmlString);
|
|
|
- } catch (FileNotFoundException e) {
|
|
|
- e.printStackTrace();
|
|
|
- }
|
|
|
-
|
|
|
if (dataIn.size() >= 1) {
|
|
|
Map<String, Object> mysqlData = dataIn.get(0);
|
|
|
for (String key : mysqlData.keySet()) {
|
|
@@ -2275,12 +2269,24 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
|
|
|
myData = StringUtil.format("{}年{}月{}日", dataStr[0], dataStr[1], Integer.parseInt(dataStr[2]));
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ if (myData.contains("lang.String")) {
|
|
|
+ Object obj = DataInfo.get(val);
|
|
|
+ if (obj instanceof String[]) {
|
|
|
+ String[] dataDate = (String[]) obj;
|
|
|
+ myData = dataDate[0] + "-" + dataDate[1].trim();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
//https:bladex-test-info.oss-cn-chengdu.aliyuncs.com//upload/20220819/b53cb6700db369381e3b03d7737bcdec.jpg__16_1
|
|
|
- if (myData.contains("https") && myData.contains("aliyuncs")) {
|
|
|
+ //http:bladex-test-info.oss-cn-chengdu.aliyuncs.com//upload/20220819/b53cb6700db369381e3b03d7737bcdec.jpg__16_1 可能是http
|
|
|
+ if (myData.contains("http") && myData.contains("aliyuncs")) {
|
|
|
InputStream imageIn = CommonUtil.getOSSInputStream(myData);
|
|
|
- byte[] bytes = IOUtils.toByteArray(imageIn);
|
|
|
+ byte[] byteNew = IOUtils.toByteArray(imageIn);
|
|
|
+ byte[] bytesNew = CommonUtil.compressImage(byteNew);
|
|
|
+
|
|
|
// 这里根据实际需求选择图片类型
|
|
|
- int pictureIdx = workbook.addPicture(bytes, 6);
|
|
|
+ int pictureIdx = workbook.addPicture(bytesNew, 6);
|
|
|
|
|
|
CreationHelper helper = workbook.getCreationHelper();
|
|
|
ClientAnchor anchor = helper.createClientAnchor();
|
|
@@ -2288,7 +2294,7 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
|
|
|
anchor.setCol2(x2);
|
|
|
anchor.setRow1(y1); // param2是行号
|
|
|
anchor.setRow2(y2); // param2是行号
|
|
|
- //
|
|
|
+
|
|
|
Drawing<?> drawing = sheet.createDrawingPatriarch();
|
|
|
anchor.setAnchorType(ClientAnchor.AnchorType.MOVE_AND_RESIZE);
|
|
|
// 插入图片
|