package tqq9.lc123.cloud.app.api.plugin; import kd.bos.logging.Log; import kd.bos.logging.LogFactory; import kd.bos.openapi.api.plugin.ApiSerializerPlugin; import kd.bos.openapi.api.plugin.SerializerResult; import kd.bos.openapi.common.result.OpenApiResult; import tqq9.lc123.cloud.app.api.model.WMSXmlReturn; import java.util.HashMap; import java.util.Map; public class WMSApiSerializerPlugin implements ApiSerializerPlugin { private final static Log logger = LogFactory.getLog(WMSApiSerializerPlugin.class); @Override public SerializerResult serialize(Object response, String accept, String contentTyp){ if (contentTyp.contains("xml")) { OpenApiResult openApiResult = (OpenApiResult) response; Object data = openApiResult.getData(); if(data!=null){ String errorCode = openApiResult.getErrorCode(); if(data instanceof Map){ HashMap data1 = (HashMap) data; logger.info("WMSApiSerializerPlugin map"+data1.toString()); HashMap response1 = (HashMap) data1.get("response"); StringBuilder sb = new StringBuilder(); // 构建 XML 格式的字符串 sb.append("\n"); sb.append("\n"); sb.append("").append(response1.get("flag").toString()).append("\n"); sb.append("").append(response1.get("code").toString()).append("\n"); sb.append("").append(response1.get("message").toString()).append("\n"); sb.append(""); logger.info("WMSApiSerializerPlugin map"+sb.toString()); SerializerResult serializerResult = new SerializerResult(contentTyp,sb.toString()); return serializerResult; }else{ WMSXmlReturn wmsXmlReturn = (WMSXmlReturn) data; WMSXmlReturn.Response response1 = wmsXmlReturn.getResponse(); response1.setCode(errorCode); SerializerResult serializerResult = new SerializerResult(contentTyp,response1.toString()); logger.info("WMSApiSerializerPlugin map"+response1.toString()); return serializerResult; } } } return null; } }