Browse Source

表单组件扩展的时候遇到联动的问题,改下bug

master
richie 9 years ago
parent
commit
24c4b94d5c
  1. 33
      src/com/fr/plugin/form/widget/core/RHIframe.java
  2. 1
      src/com/fr/plugin/form/widget/core/RHIframeAttr.java

33
src/com/fr/plugin/form/widget/core/RHIframe.java

@ -2,6 +2,7 @@ package com.fr.plugin.form.widget.core;
import com.fr.form.ui.DataControl; import com.fr.form.ui.DataControl;
import com.fr.form.ui.FieldEditor; import com.fr.form.ui.FieldEditor;
import com.fr.form.ui.Interactive;
import com.fr.form.ui.WidgetValue; import com.fr.form.ui.WidgetValue;
import com.fr.general.FRLogger; import com.fr.general.FRLogger;
import com.fr.general.Inter; import com.fr.general.Inter;
@ -29,7 +30,7 @@ import javax.servlet.http.HttpServletRequest;
/** /**
* Created by richie on 15/12/2. * Created by richie on 15/12/2.
*/ */
public class RHIframe extends FieldEditor implements DataControl { public class RHIframe extends FieldEditor implements Interactive {
private static final FunctionProcessor RH = new AbstractFunctionProcessor() { private static final FunctionProcessor RH = new AbstractFunctionProcessor() {
@Override @Override
@ -79,10 +80,6 @@ public class RHIframe extends FieldEditor implements DataControl {
@Override @Override
public JSONObject createJSONConfig(Repository repo, Calculator c, NodeVisitor nodeVisitor) throws JSONException { public JSONObject createJSONConfig(Repository repo, Calculator c, NodeVisitor nodeVisitor) throws JSONException {
FunctionProcessor p = ExtraClassManager.getInstance().getFunctionProcessor();
if (p != null) {
p.recordFunction(RH);
}
JSONObject jo = super.createJSONConfig(repo, c, nodeVisitor); JSONObject jo = super.createJSONConfig(repo, c, nodeVisitor);
attr.mixConfig(jo, c, repo.getHttpServletRequest()); attr.mixConfig(jo, c, repo.getHttpServletRequest());
jo.put("showOverFlowX", overflowX); jo.put("showOverFlowX", overflowX);
@ -151,27 +148,13 @@ public class RHIframe extends FieldEditor implements DataControl {
} }
@Override @Override
public int[] getValueType() { public void mixinReturnData(HttpServletRequest req, Calculator ca, JSONObject jo) throws JSONException {
return new int[0]; if (widgetName != null) {
} RHIframeSource source = attr.getSource();
if (source != null) {
@Override String url = source.getCalculatedUrl(ca, req);
public void setWidgetValue(WidgetValue value) { jo.put(widgetName.toUpperCase(), url);
}
@Override
public WidgetValue getWidgetValue() {
return null;
} }
@Override
public void createValueResult(DataControl widget, Calculator widgetCalculator, JSONObject widgetResult, JSONObject attrSourceCache) {
try {
JSONObject data = JSONObject.create();
widgetResult.put(widgetName.toUpperCase(), data);
} catch (JSONException e) {
FRLogger.getLogger().error(e.getMessage(), e);
} }
} }
} }

1
src/com/fr/plugin/form/widget/core/RHIframeAttr.java

@ -65,6 +65,7 @@ public class RHIframeAttr implements XMLable, DependenceProvider {
String[] dependence = dependence(c); String[] dependence = dependence(c);
if (!ArrayUtils.isEmpty(dependence)) { if (!ArrayUtils.isEmpty(dependence)) {
jo.put("dependence", dependence); jo.put("dependence", dependence);
jo.put("valueDependence", dependence);
} }
} }

Loading…
Cancel
Save