【仅供内部供应商使用,不提供对外解答和培训】
...
首先我们要定义我们描述一个文件的对象,我们简单分为,路径/名称/重命名 3个属性,因为这些属性我们都支持公式,也允许单元格扩展填报动态计算,那么我们属性值就都定义成Object3个属性(大家实际开发的时候,具体有多少种属性,属性叫啥自己根据需要定义即可),因为这些属性我们都支持公式,也允许单元格扩展填报动态计算,那么我们属性值就都定义成Object
| Code Block | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
package com.tptj.bridge.hg.file.load.demo;
import com.fr.io.context.info.GetConfig;
import com.fr.stable.FCloneable;
import com.tptj.tools.hg.file.operator.dynamics.Column;
import com.tptj.tools.hg.file.operator.utils.BaseUtils;
import com.tptj.tools.hg.xml.fun.Config;
/**
* @author 秃破天际
* @version 10.0
* Created by 秃破天际 on 2021-01-07
**/
public class FileDefine implements FCloneable {
public static final String KEY_PATH = "path";
public static final String KEY_FILE = "file";
public static final String KEY_RENAME = "rename";
@Config(KEY_PATH)
@Column(title = "路径",idx = 0)
private Object path;
@Config(KEY_FILE)
@Column(title = "文件",idx = 1)
private Object file;
@Config(KEY_RENAME)
@Column(title = "重命名",idx = 2)
private Object rename;
@GetConfig(KEY_PATH)
public Object getPath() {
return path;
}
public void setPath(Object path) {
this.path = path;
}
@GetConfig(KEY_FILE)
public Object getFile() {
return file;
}
public void setFile(Object file) {
this.file = file;
}
@GetConfig(KEY_RENAME)
public Object getRename() {
return rename;
}
public void setRename(Object rename) {
this.rename = rename;
}
@Override
public Object clone() throws CloneNotSupportedException {
FileDefine obj = (FileDefine)super.clone();
obj.file = BaseUtils.clone( file );
obj.path = BaseUtils.clone( path );
obj.rename = BaseUtils.clone( rename );
return obj;
}
}
|
...
它的功能就是,把我们带@Column和@Config注解且实现了FCloneable的对象,转换成支持公式编辑的属性配置界面(后面可以看实际效果)
我们这里除了文件描述以外没有增加任何其他配置,大家开发的时候根据自己的实际需要定义相关配置即可。
下载我们前面说了,需要通过固定的两个接口和一个固定的JS入口,才能实现对移动端的兼容,这里我们JAR里面已经实现好了,大家只需要继承一下即可
...