
cn.schoolwow.quickapi.module.business.apiParameter.flow.parameter.GetByRequestPartAnnotationFlow Maven / Gradle / Ivy
package cn.schoolwow.quickapi.module.business.apiParameter.flow.parameter;
import cn.schoolwow.quickapi.module.business.api.domain.API;
import cn.schoolwow.quickapi.module.business.apiParameter.domain.APIParameter;
import cn.schoolwow.quickflow.domain.FlowContext;
import cn.schoolwow.quickflow.flow.BusinessFlow;
import org.springframework.web.bind.annotation.RequestPart;
import org.springframework.web.multipart.MultipartFile;
import java.lang.reflect.Parameter;
public class GetByRequestPartAnnotationFlow implements BusinessFlow {
@Override
public void executeBusinessFlow(FlowContext flowContext) throws Exception {
API api = (API) flowContext.checkData("api");
Parameter parameter = (Parameter) flowContext.checkData("parameter");
APIParameter apiParameter = (APIParameter) flowContext.checkData("apiParameter");
StringBuilder queryBuilder = (StringBuilder) flowContext.checkData("queryBuilder");
StringBuilder requestBodyBuilder = (StringBuilder) flowContext.checkData("requestBodyBuilder");
RequestPart requestPart = parameter.getAnnotation(RequestPart.class);
if(null==requestPart){
return;
}
apiParameter.required = requestPart.required();
if(MultipartFile.class.getName().equals(parameter.getType().getName())){
requestBodyBuilder.append("["+requestPart.name()+"]-[File]");
}else{
requestBodyBuilder.append("["+requestPart.name()+"]-[Text]");
}
api.contentType = "multipart/form-data";
flowContext.brokenCurrentCompositeBusiness("");
}
@Override
public String name() {
return "通过RequestPart注解获取参数";
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy