public WDBField AddField( int col, string name, string desc, string type, string platform, string defaultContent, string validation) { if (string.IsNullOrEmpty(type)) { throw new WDBFieldTypeEmptyException(col, name); } WDBField field = WDBFieldFactory.CreateField(col, type); field.Name = name; field.Desc = desc; field.Platform = platform; field.DefaultContent = defaultContent; field.Validation = validation; fields.Add(field); return(field); }
private static WDBField ReadFieldFromSheet(ISheet sheet, int fieldColumn) { sm_LogHandler?.Invoke(LogType.Info, LogMessage.INFO_START_READ_FIELD); IRow typeRow = sheet.GetRow(sm_Style.RowStartIndex + WDBConst.FieldTypeOffset); ICell typeCell = typeRow.GetCell(fieldColumn); string typeCellValue = GetCellValue(typeCell); if (string.IsNullOrEmpty(typeCellValue)) { sm_LogHandler?.Invoke(LogType.Warning, LogMessage.WARN_EMPTY_TYPE_FIELD); return(null); } WDBField field = WDBFieldFactory.CreateField(fieldColumn, typeCellValue); if (field == null) { sm_LogHandler?.Invoke(LogType.Warning, string.Format(LogMessage.WARN_INVALID_TYPE_FIELD, typeCellValue)); return(null); } IRow nameRow = sheet.GetRow(sm_Style.RowStartIndex + WDBConst.FieldNameOffset); field.Name = GetCellValue(nameRow.GetCell(fieldColumn)); IRow descRow = sheet.GetRow(sm_Style.RowStartIndex + WDBConst.FieldDescOffset); field.Desc = GetCellValue(descRow.GetCell(fieldColumn)); IRow platformRow = sheet.GetRow(sm_Style.RowStartIndex + WDBConst.FieldPlatformOffset); field.Platform = GetCellValue(platformRow.GetCell(fieldColumn)); IRow defaultRow = sheet.GetRow(sm_Style.RowStartIndex + WDBConst.FieldDefaultOffset); if (defaultRow != null) { field.DefaultContent = GetCellValue(defaultRow.GetCell(fieldColumn)); } IRow validationRow = sheet.GetRow(sm_Style.RowStartIndex + WDBConst.FieldValidationOffset); if (validationRow != null) { field.Validation = GetCellValue(validationRow.GetCell(fieldColumn)); } sm_LogHandler?.Invoke(LogType.Info, string.Format(LogMessage.INFO_CREATE_FIELD, field.ToString())); sm_LogHandler?.Invoke(LogType.Info, LogMessage.INFO_END_READ_FIELD); return(field); }