|
|
|
@ -64,6 +64,14 @@ public class QrCodeServiceImpl implements QrCodeService { |
|
|
|
LinkedHashMap<String, QrCodeDetailsResponseEntity> result = new LinkedHashMap<String, QrCodeDetailsResponseEntity>(); |
|
|
|
QRCodeUtil qrCodeUtil = new QRCodeUtil(); |
|
|
|
String basicQrCodeStr = ""; |
|
|
|
String toSelectName = (String)settings.get("name"); |
|
|
|
ArrayList<String> toSelectDataTitleList = (ArrayList<String>) settings.get("dataTitle"); |
|
|
|
ArrayList<String> toSelectDataTitleList1 = new ArrayList<>(); |
|
|
|
for (int i = 0; i < toSelectDataTitleList.size(); i++) { |
|
|
|
String[] a = toSelectDataTitleList.get(i).split(":"); |
|
|
|
System.out.println(a); |
|
|
|
toSelectDataTitleList1.add(i, "`" + a[a.length-1] + "`"); |
|
|
|
} |
|
|
|
//String basicQrCodeStr = "https://wab.hxgk.group/#/form_table/taskListPage? id=112&key=287135214646333440&formid=116&formKey=287145907965661184&title=t2&state=1";
|
|
|
|
String prefixLocal = "http://localhost:9998/#/form_table/taskListPage?"; |
|
|
|
String prefixout = "https://wab.hxgk.group/#/form_table/taskListPage?"; |
|
|
|
@ -122,6 +130,11 @@ public class QrCodeServiceImpl implements QrCodeService { |
|
|
|
result.put(id,qrCodeDetailsResponseEntity); |
|
|
|
} |
|
|
|
}else{ |
|
|
|
|
|
|
|
List<TreeMap<String, Object>> dataTitleMapList = fieldRecordMapper.getDataTitlesByIds(toSelectName,toSelectDataTitleList1,ids); |
|
|
|
|
|
|
|
Integer b = dataTitleMapList.get(0).size(); |
|
|
|
//非表格图片
|
|
|
|
for (String id:ids) { |
|
|
|
QrCodeDetailsResponseEntity qrCodeDetailsResponseEntity = new QrCodeDetailsResponseEntity(); |
|
|
|
String currentQrCodeStr = basicQrCodeStr+"&qrDetailId="+id; |
|
|
|
@ -134,7 +147,19 @@ public class QrCodeServiceImpl implements QrCodeService { |
|
|
|
//当前id的二维码base64图片
|
|
|
|
String currentBase64 = qrCodeUtil.bufferedImageToBase64(currentBufferedImage); |
|
|
|
//LinkedHashMap<String,String> currentFieldsMap = new LinkedHashMap<>();
|
|
|
|
if(b>1){ |
|
|
|
String dataTitle = ""; |
|
|
|
for (TreeMap<String,Object> treeMap: dataTitleMapList) { |
|
|
|
String cfdsa = String.valueOf(treeMap.get("value")); |
|
|
|
if(cfdsa.equals(id)){ |
|
|
|
dataTitle = process(treeMap,toSelectDataTitleList1); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
qrCodeDetailsResponseEntity.setDataTitle(dataTitle); |
|
|
|
}else{ |
|
|
|
qrCodeDetailsResponseEntity.setDataTitle(id); |
|
|
|
} |
|
|
|
qrCodeDetailsResponseEntity.setBufferedImage(currentBase64); |
|
|
|
qrCodeDetailsResponseEntity.setGroupName((String)appAndGroupNameMap.get("groupName")); |
|
|
|
qrCodeDetailsResponseEntity.setAppName((String)appAndGroupNameMap.get("appName")); |
|
|
|
@ -224,5 +249,21 @@ public class QrCodeServiceImpl implements QrCodeService { |
|
|
|
} |
|
|
|
return b; |
|
|
|
} |
|
|
|
public String process(TreeMap<String, Object> map, ArrayList<String> list) { |
|
|
|
StringBuilder result = new StringBuilder(); |
|
|
|
for (String element : list) { |
|
|
|
String key = element.substring(1, element.length() - 1); |
|
|
|
if (!"value".equals(key)) { |
|
|
|
Object value = map.get(key); |
|
|
|
if (value != null) { |
|
|
|
result.append(value).append(" "); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (result.length() > 0) { |
|
|
|
result.setLength(result.length() - 1); |
|
|
|
} |
|
|
|
return result.toString(); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|