
edi.rule.model.JSRuleUpload Maven / Gradle / Ivy
package edi.rule.model;
import java.util.Base64;
import com.fasterxml.jackson.annotation.JsonAlias;
import edi.rule.extend.interfaces.IJSRuleActionModel;
import edi.rule.util.ZSIo;
import edi.rule.work.interfaces.IZSFile;
import lombok.Data;
/**
* @author 摩拉克斯
* @date 2022年6月30日 下午2:38:57
* 上传模型,absolutePath、relativePath、base64Data,三个属性通常只有一个有值,如果path不为空,则代表直接从服务器上寻找文件即可,如果为空,则从base64Data属性中提取数据并导入
*/
@Data
public class JSRuleUpload> implements IJSRuleActionModel,IZSFile{
/**
* 文件保存的路径,服务器的绝对路径,别名aPath
* */
@JsonAlias({"aPath"})
public String absolutePath;
/**
*
文件保存的路径,服务器的相对路径,别名rPath
* */
@JsonAlias({"rPath"})
public String relativePath;
/**
*
所要上传的文件数据,别名data,可先将文件或数据通过流转化成二进制字节数组,再用base64编码将字节数组转化成字符串放进该属性中,表示所要上传的文件
* */
@JsonAlias({"data"})
public String base64Data;
@Override
public final Object start(A action) {
ZSIo.bytesToFile(Base64.getMimeDecoder().decode(action.getUploads().getBase64Data()),action.getUploads().getPath());
return null;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy