提交 90fc9dc0 authored 作者: inroi's avatar inroi

微调

上级 54669429
package com.system.api;
import com.system.constants.Constants;
import com.system.transfer.form.FormFieldMappingDetailOutVoRecords;
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* @author Inori
*/
public class CommonApi {
public static Map<String, Object> purchaseData(Map<String, String> config, List<Map<String, Object>> dataList, List<FormFieldMappingDetailOutVoRecords> fieldList) {
Map<String, Object> request = new LinkedHashMap<>(2);
List<Map<String, Object>> tempList = new ArrayList<>();
for (Map<String, Object> data : dataList) {
Map<String, Object> temp = new LinkedHashMap<>();
for (FormFieldMappingDetailOutVoRecords records : fieldList) {
if (Constants.IS_ENTRY_CODE.equals(records.getIsEntryField())) {
purchaseFieldData(data, temp, records);
} else {
purchaseFieldData(data, request, records);
}
}
if (!CollectionUtils.isEmpty(temp)) {
tempList.add(temp);
}
}
if (!CollectionUtils.isEmpty(tempList)) {
request.put("children", tempList);
}
return request;
}
private static void purchaseFieldData(Map<String, Object> temp, Map<String, Object> data, FormFieldMappingDetailOutVoRecords records) {
String fieldType = records.getFieldType();
String fieldBeforeMapping = records.getFieldBeforeMapping();
String fieldAfterMapping = records.getFieldAfterMapping();
if (Constants.INT_NAME.equals(fieldType)) {
try {
data.put(fieldAfterMapping, Integer.valueOf(String.valueOf(temp.get(fieldBeforeMapping))));
} catch (NumberFormatException e) {
data.put(fieldAfterMapping, temp.get(fieldBeforeMapping));
}
} else if (Constants.BIG_DECIMAL_NAME.equals(fieldType)) {
try {
data.put(fieldAfterMapping, new BigDecimal(String.valueOf(temp.get(fieldBeforeMapping))));
} catch (NumberFormatException e) {
data.put(fieldAfterMapping, temp.get(fieldBeforeMapping));
}
} else {
data.put(fieldAfterMapping, temp.get(fieldBeforeMapping));
}
}
}
...@@ -15,13 +15,13 @@ import java.util.stream.Collectors; ...@@ -15,13 +15,13 @@ import java.util.stream.Collectors;
* @author Inori * @author Inori
*/ */
@Component @Component
public class CommonHttpApi { public class CommonGetApi {
@Autowired @Autowired
private ThirdPartyLogUtil thirdPartyLogUtil; private ThirdPartyLogUtil thirdPartyLogUtil;
public String commonSend(String requestAddress, String json, Map<String, String> config, String queueId) { public String commonGet(Map<String, String> config, String json, String queueId) {
String result = ""; String result = "";
try { try {
if (StringUtil.isNotBlank(json)) { if (StringUtil.isNotBlank(json)) {
...@@ -38,40 +38,13 @@ public class CommonHttpApi { ...@@ -38,40 +38,13 @@ public class CommonHttpApi {
Map<String, Object> map = JsonUtil.toMap(result, String.class, Object.class); Map<String, Object> map = JsonUtil.toMap(result, String.class, Object.class);
if (!CollectionUtils.isEmpty(map)) { if (!CollectionUtils.isEmpty(map)) {
if (Constants.SUCCESS_CODE.equals(String.valueOf(map.get(Constants.SUCCESS_NAME)))) { if (Constants.SUCCESS_CODE.equals(String.valueOf(map.get(Constants.SUCCESS_NAME)))) {
List<FormFieldMappingDetailOutVoRecords> recordsList = FormFieldMappingUtil.purchaseMapping(config.get("formFieldMappingDetail"));
List<Map<String, Object>> dataList = new ArrayList<>();
List<Object> objectList = JsonUtil.toList(JsonUtil.toString(map.get("data")), Object.class); List<Object> objectList = JsonUtil.toList(JsonUtil.toString(map.get("data")), Object.class);
List<Map<String, Object>> tempList = objectList.stream().map(m -> JsonUtil.toMap(JsonUtil.toString(m), String.class, Object.class)).collect(Collectors.toList()); List<Map<String, Object>> dataList = objectList.stream().map(m -> JsonUtil.toMap(JsonUtil.toString(m), String.class, Object.class)).collect(Collectors.toList());
for (Map<String, Object> temp : tempList) {
Map<String, Object> data = new LinkedHashMap<>(recordsList.size());
for (FormFieldMappingDetailOutVoRecords records : recordsList) {
if (Constants.STRING_NAME.equals(records.getFieldType())) {
if (temp.containsKey(records.getFieldBeforeMapping())) {
data.put(records.getFieldAfterMapping(), String.valueOf(temp.get(records.getFieldBeforeMapping())));
} else {
data.put(records.getFieldAfterMapping(), "");
}
} else if (Constants.INT_NAME.equals(records.getFieldType())) {
if (temp.containsKey(records.getFieldBeforeMapping())) {
try {
data.put(records.getFieldAfterMapping(), Integer.valueOf(String.valueOf(temp.get(records.getFieldBeforeMapping()))));
} catch (NumberFormatException e) {
data.put(records.getFieldAfterMapping(), String.valueOf(temp.get(records.getFieldBeforeMapping())));
}
} else {
data.put(records.getFieldAfterMapping(), "");
}
} else {
data.put(records.getFieldAfterMapping(), temp.get(records.getFieldBeforeMapping()));
}
}
dataList.add(data);
}
flag = 1; List<FormFieldMappingDetailOutVoRecords> fieldList = FormFieldMappingUtil.purchaseMapping(config.get("formFieldMappingDetail"));
response.put("data", dataList); response.put("data", CommonApi.purchaseData(config, dataList, fieldList));
response.put("success", true); response.put("success", true);
flag = 1;
} }
} else if (!Constants.SUCCESS_CODE.equals(String.valueOf(map.get(Constants.SUCCESS_NAME))) && map.containsKey(Constants.ERROR_MESSAGE)) { } else if (!Constants.SUCCESS_CODE.equals(String.valueOf(map.get(Constants.SUCCESS_NAME))) && map.containsKey(Constants.ERROR_MESSAGE)) {
response.put("message", map.get(Constants.ERROR_MESSAGE)); response.put("message", map.get(Constants.ERROR_MESSAGE));
...@@ -81,6 +54,7 @@ public class CommonHttpApi { ...@@ -81,6 +54,7 @@ public class CommonHttpApi {
response.put("success", false); response.put("success", false);
} }
System.out.println(response);
thirdPartyLogUtil.thirdPartyLogCreate(config.get("name"), config.get("docType"), queueId, config.get("configureDirection"), StringUtil.isNotBlank(json) ? json : config.get("requestAddress"), result, flag); thirdPartyLogUtil.thirdPartyLogCreate(config.get("name"), config.get("docType"), queueId, config.get("configureDirection"), StringUtil.isNotBlank(json) ? json : config.get("requestAddress"), result, flag);
return JsonUtil.toString(response); return JsonUtil.toString(response);
} }
......
package com.system.api;
import com.system.constants.Constants;
import com.system.transfer.form.FormFieldMappingDetailOutVoRecords;
import com.system.utils.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author Inori
*/
@Component
public class CommonPostApi {
@Autowired
private ThirdPartyLogUtil thirdPartyLogUtil;
public String commonPost(Map<String, String> config, List<Map<String, Object>> dataList, String queueId) {
int flag = 0;
Map<String, Object> response = new HashMap<>(3);
try {
List<FormFieldMappingDetailOutVoRecords> fieldList = FormFieldMappingUtil.purchaseMapping(config.get("formFieldMappingDetail"));
Map<String, Object> data = CommonApi.purchaseData(config, dataList, fieldList);
String result = HttpClientUtil.sendPost(config.get(""), JsonUtil.toString(data));
Map<String, Object> map = JsonUtil.toMap(result, String.class, Object.class);
if (!CollectionUtils.isEmpty(map)) {
if (Constants.SUCCESS_CODE.equals(String.valueOf(map.get(Constants.SUCCESS_NAME)))) {
flag = 1;
response.put("success", true);
}
} else if (!Constants.SUCCESS_CODE.equals(String.valueOf(map.get(Constants.SUCCESS_NAME))) && map.containsKey(Constants.ERROR_MESSAGE)) {
response.put("success", false);
response.put("message", map.get(Constants.ERROR_MESSAGE));
} else {
response.put("message", "");
response.put("success", false);
}
thirdPartyLogUtil.thirdPartyLogCreate(config.get("name"), config.get("docType"), queueId, config.get("configureDirection"), JsonUtil.toString(data), result, flag);
return JsonUtil.toString(response);
} catch (IOException e) {
response.put("message", e.getMessage());
response.put("success", false);
return JsonUtil.toString(response);
}
}
}
...@@ -17,6 +17,12 @@ public interface Constants { ...@@ -17,6 +17,12 @@ public interface Constants {
String VERIFICATION_INTERVAL = "verificationInterval"; String VERIFICATION_INTERVAL = "verificationInterval";
Integer ROOT_MENU_CODE = -1;
Integer IS_ENTRY_CODE = 1;
String SUCCESS_NAME = "success"; String SUCCESS_NAME = "success";
...@@ -32,4 +38,7 @@ public interface Constants { ...@@ -32,4 +38,7 @@ public interface Constants {
String INT_NAME = "数值"; String INT_NAME = "数值";
String BIG_DECIMAL_NAME = "浮点数值";
} }
package com.system.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author Inori
*/
@RestController
@RequestMapping("/api")
public class CommonHttpController {
}
package com.system.serivce;
/**
* @author Inori
*/
public interface ICommonHttpService {
}
package com.system.serivce.impl;
import com.system.serivce.ICommonHttpService;
import org.springframework.stereotype.Service;
/**
* @author Inori
*/
@Service
public class ICommonHttpServiceImpl implements ICommonHttpService {
}
package com.system.serivce.impl; package com.system.serivce.impl;
import com.google.common.util.concurrent.ThreadFactoryBuilder; import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.system.api.CommonHttpApi; import com.system.api.CommonGetApi;
import com.system.constants.CommonGetConstants; import com.system.constants.CommonGetConstants;
import com.system.constants.Constants; import com.system.constants.Constants;
import com.system.dao.SynchronizationOperationMapper; import com.system.dao.SynchronizationOperationMapper;
import com.system.serivce.IDockingDistributionService;
import com.system.serivce.IDockingShoppingMallService;
import com.system.serivce.ISynchronizationService; import com.system.serivce.ISynchronizationService;
import com.system.utils.JsonUtil; import com.system.utils.JsonUtil;
import com.system.utils.SnowFlakeIdUtil; import com.system.utils.SnowFlakeIdUtil;
...@@ -35,19 +33,13 @@ public class SynchronizationServiceImpl implements ISynchronizationService { ...@@ -35,19 +33,13 @@ public class SynchronizationServiceImpl implements ISynchronizationService {
new ThreadPoolExecutor.AbortPolicy()); new ThreadPoolExecutor.AbortPolicy());
@Autowired @Autowired
private IDockingShoppingMallService dockingShoppingMallService;
@Autowired
private IDockingDistributionService dockingDistributionService;
@Autowired
private SynchronizationOperationMapper synchronizationOperationMapper; private SynchronizationOperationMapper synchronizationOperationMapper;
@Autowired @Autowired
private CommonGetConstants commonGetConstants; private CommonGetConstants commonGetConstants;
@Autowired @Autowired
private CommonHttpApi commonHttpApi; private CommonGetApi commonGetApi;
@Override @Override
...@@ -57,12 +49,11 @@ public class SynchronizationServiceImpl implements ISynchronizationService { ...@@ -57,12 +49,11 @@ public class SynchronizationServiceImpl implements ISynchronizationService {
threadPool.execute(() -> { threadPool.execute(() -> {
Map<String, String> config = commonGetConstants.get(String.valueOf(temp.get("doc_type"))); Map<String, String> config = commonGetConstants.get(String.valueOf(temp.get("doc_type")));
String queueId = SnowFlakeIdUtil.generateId().toString(); String queueId = SnowFlakeIdUtil.generateId().toString();
String result = commonHttpApi.commonSend(config.get("requestAddress"), "", config, queueId); String result = commonGetApi.commonGet(config, "", queueId);
Map<String, Object> map = JsonUtil.toMap(result, String.class, Object.class); Map<String, Object> map = JsonUtil.toMap(result, String.class, Object.class);
if (!CollectionUtils.isEmpty(map) && Constants.SUCCESS_CODE.equals(String.valueOf(map.get(Constants.SUCCESS_NAME)))) { if (!CollectionUtils.isEmpty(map) && Constants.SUCCESS_CODE.equals(String.valueOf(map.get(Constants.SUCCESS_NAME)))) {
List<Object> objectList = JsonUtil.toList(JsonUtil.toString(map.get("data")), Object.class); commonGetApi.commonSendBySync(config, JsonUtil.toString(JsonUtil.toMap(JsonUtil.toString(map.get("data")), String.class, Object.class)), queueId);
commonHttpApi.commonSendBySync(config, JsonUtil.toString(JsonUtil.toMap(JsonUtil.toString(objectList.get(0)), String.class, Object.class)), queueId);
} }
}); });
} }
......
...@@ -9,24 +9,6 @@ import lombok.Data; ...@@ -9,24 +9,6 @@ import lombok.Data;
public class FormFieldMappingDetailOutVoRecords { public class FormFieldMappingDetailOutVoRecords {
/** /**
* ID
*/
private Integer id;
/**
* 父id(顶级为-1)
*/
private Integer fid;
/**
* 自定义表单配置id
*/
private Integer customFormConfigId;
/**
* 映射前字段 * 映射前字段
*/ */
private String fieldBeforeMapping; private String fieldBeforeMapping;
...@@ -47,7 +29,7 @@ public class FormFieldMappingDetailOutVoRecords { ...@@ -47,7 +29,7 @@ public class FormFieldMappingDetailOutVoRecords {
/** /**
* 是否是分录字段 * 是否是分录字段
*/ */
private Integer fieldIsEntry; private Integer isEntryField;
/** /**
......
...@@ -15,5 +15,17 @@ public class FormFieldMappingUtil { ...@@ -15,5 +15,17 @@ public class FormFieldMappingUtil {
return objectList.stream().map(m -> JsonUtil.toBean(JsonUtil.toString(m), FormFieldMappingDetailOutVoRecords.class)).collect(Collectors.toList()); return objectList.stream().map(m -> JsonUtil.toBean(JsonUtil.toString(m), FormFieldMappingDetailOutVoRecords.class)).collect(Collectors.toList());
} }
/*private static List<Map<String, Object>> recursively(List<Map<String, Object>> dataList, Map<String, Object> data) {
List<Map<String, Object>> tempList = dataList.stream().filter(m ->
m.get("pid").equals(data.get("id"))).collect(Collectors.toList()
);
for (Map<String, Object> temp : tempList) {
temp.put("children", recursively(dataList, temp));
}
return tempList;
}*/
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论