Skip to content

Commit 26d637b

Browse files
committed
#2275 add usecase for time and date absed on seed data types
1 parent 95baa88 commit 26d637b

File tree

2 files changed

+29
-6
lines changed

2 files changed

+29
-6
lines changed

Components/JSON/BEXIS.JSON.Helpers/MetadataStructureConverter.cs

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -179,11 +179,21 @@ private JSchema addMetadataAttrUsage(BaseUsage usage, JSchema schema, out bool r
179179
// set json schema type based on datatype input
180180
currentText.Type = convertToJSchemaType(type.DataType);
181181

182-
//if Datatype is datetime, jsosn schema use type string
183-
// but need to set a format
184-
if (type.DataType.SystemType == "datetime")
182+
////if Datatype is datetime, jsosn schema use type string
183+
//// but need to set a format
184+
//if (type.DataType.SystemType.ToLower() == "datetime")
185+
//{
186+
// currentText.Format = "date";
187+
//}
188+
189+
if (type.DataType.SystemType.ToLower() == "datetime")
185190
{
186-
currentText.Format = "date";
191+
currentText.Format = type.DataType.Name.ToLower(); // set datetime, date or time in format
192+
}
193+
194+
if (type.DataType.SystemType.ToLower() == "string" && type.DataType.Name.ToLower() == "text")
195+
{
196+
currentText.Format = type.DataType.Name.ToLower();
187197
}
188198

189199
//Contraints

Components/XML/BExIS.Xml.Helpers/Mapping/XmlSchemaManager.cs

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2135,14 +2135,27 @@ private DataType GetDataType(string dataTypeAsString, string typeCodeName)
21352135
{
21362136
if (!dataTypeAsString.ToLower().Equals("Object"))
21372137
{
2138+
21382139
TypeCode typeCode = ConvertStringToSystemType(dataTypeAsString);
21392140
DataType dataType = null;
21402141
// if datatime - need to check typeCodeName for date, time , datetime
21412142

2142-
2143+
21432144
TypeCode c = DataTypeHelper.GetMaxTypeCode(typeCode);
21442145
string label = DataTypeHelper.GetLabel(typeCode);
21452146

2147+
// in case of time or date, there is no system type for it so we need to set it
2148+
if (typeCodeName.ToLower().Equals("time"))
2149+
{
2150+
c = TypeCode.DateTime;
2151+
label = "Time";
2152+
}
2153+
else if(typeCodeName.ToLower().Equals("date"))
2154+
{
2155+
c = TypeCode.DateTime;
2156+
label = "Date";
2157+
}
2158+
21462159
if (dataTypeAsString.Equals(TypeCode.DateTime.ToString()))
21472160
{
21482161

@@ -2158,7 +2171,7 @@ private DataType GetDataType(string dataTypeAsString, string typeCodeName)
21582171
dataType =
21592172
dataTypeManager.Repo.Query()
21602173
.Where(
2161-
d =>
2174+
d =>
21622175
d.Name.ToLower().Equals(label.ToString().ToLower()))
21632176
.FirstOrDefault();
21642177

0 commit comments

Comments
 (0)