feat(form):支持导入数据

yun-zuoyi
汪云昊 5 years ago
parent 426a6f2026
commit 206e5f8d20

@ -8,6 +8,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.annotations.ColumnDefault;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
@ -140,6 +141,11 @@ public class BfElement extends BaseBean {
@ApiParam(value = "是否导出")
private Integer isObjectExport;
@ColumnDefault("2")
@Column(name = "IS_OBJECT_IMPORT")
@ApiParam(value = "是否导入")
private Integer isObjectImport;
@Column(name="ELEMENT_SORT_ATTR_ID")
@ApiParam(value ="默认排序属性")
@JsonSerialize(using = ToStringSerializer.class)

@ -3,6 +3,7 @@ package cn.estsh.i3plus.pojo.form.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.BlockFormEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.Api;
@ -87,6 +88,10 @@ public class BfElementProperty extends BaseBean {
@ApiParam(value = "是否必填")
private Integer propertyValueNotNull;
public boolean isPropValNotNull() {
return propertyValueNotNull == null || propertyValueNotNull == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue();
}
@Column(name = "PROPERTY_IS_FIND")
@ApiParam(value = "是否查询条件")
private Integer propertyIsFind;
@ -123,6 +128,14 @@ public class BfElementProperty extends BaseBean {
@ApiParam(value = "显示顺序")
private Integer propertySort;
@Column(name = "IS_SUPPORT_IMPORT")
@ApiParam(value = "是否支持导入")
private Integer isSupportImport;
public boolean isSupportImport() {
return isSupportImport != null && isSupportImport == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue();
}
@Column(name = "PROPERTY_CONTROL_TYPE")
@ApiParam(value = "控件类型")
private Integer propertyControlType;

@ -5,9 +5,9 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
@ -16,12 +16,12 @@ import java.util.List;
* @Description:
**/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Api("mes导入结果model")
public class ExcelImportModel<T> implements Serializable {
private static final long serialVersionUID = 3075276018074690913L;
@ApiParam("结果")
private boolean result;
@ -32,7 +32,7 @@ public class ExcelImportModel<T> implements Serializable {
private int failRowNum;
@ApiParam("错误信息集合")
private List<ImportErrorModel> ImportErrorModels;
private List<ImportErrorModel> importErrorModels;
@ApiParam("错误的行号")
private String errorRows;
@ -46,4 +46,17 @@ public class ExcelImportModel<T> implements Serializable {
@ApiParam("Sheet名称")
private String sheetName;
public ExcelImportModel() {
result = true;
}
public void addErrorMsg(ImportErrorModel errorModel) {
if (importErrorModels == null) {
importErrorModels = new ArrayList<>();
}
importErrorModels.add(errorModel);
result = false;
}
}

@ -21,9 +21,19 @@ import java.io.Serializable;
public class ImportErrorModel implements Serializable {
private static final long serialVersionUID = 1212013821950324792L;
@ApiParam("sheet名称")
private String sheetName;
@ApiParam("错误的行号")
private int rowNum;
@ApiParam("错误的列号")
private int colNum;
@ApiParam("错误的列名")
private String colName;
@ApiParam("错误数量")
private int errorNum;
@ -33,4 +43,58 @@ public class ImportErrorModel implements Serializable {
@ApiParam("错误描述")
private String errorInfo;
public static final class Builder {
private String sheetName;
private int rowNum;
private int colNum;
private String colName;
private String errorInfo;
private Builder() {
}
public static Builder newBuilder() {
return new Builder();
}
public Builder withSheetName(String sheetName) {
this.sheetName = sheetName;
return this;
}
public Builder withRowNum(int rowNum) {
this.rowNum = rowNum;
return this;
}
public Builder withColNum(int colNum) {
this.colNum = colNum;
return this;
}
public Builder withColName(String colName) {
this.colName = colName;
return this;
}
public Builder withErrorInfo(String errorInfo) {
this.errorInfo = errorInfo;
return this;
}
public ImportErrorModel build() {
ImportErrorModel importErrorModel = new ImportErrorModel();
importErrorModel.setSheetName(sheetName);
importErrorModel.setRowNum(rowNum);
importErrorModel.setColNum(colNum);
importErrorModel.setColName(colName);
if(errorInfo== null){
importErrorModel.setErrorInfo("SHEET【" + sheetName + "】中第【" + rowNum + "】行,第【" + colNum + "】列 " +
colName + " 数据为空");
}else {
importErrorModel.setErrorInfo(errorInfo);
}
return importErrorModel;
}
}
}

Loading…
Cancel
Save