public JsonResultModel TableList(string dbName) { JsonResultModel response = new JsonResultModel(); List <DesignTableEntity> tableEntityList = null; using (var savoryDesignDB = new SavoryDesignDBContext()) { tableEntityList = (from table in savoryDesignDB.DesignTable where table.DBName.Equals(dbName) select table).ToList(); } if (tableEntityList != null && tableEntityList.Count > 0) { List <TableVo> tableVoList = new List <TableVo>(); foreach (var tableEntity in tableEntityList) { var tableVo = new TableVo(); tableVo.TableName = tableEntity.TableName; tableVo.Description = tableEntity.Description; tableVo.SchemaVersion = tableEntity.SchemaVersion; tableVo.CreateTime = tableEntity.CreateTime; tableVo.LastUpdateTime = tableEntity.LastUpdateTime; tableVoList.Add(tableVo); } response.Data = tableVoList; } return(response); }
public JsonResultModel CreateDB(string dbName) { JsonResultModel response = new JsonResultModel(); System.Threading.Thread.Sleep(15 * 1000); try { using (var savoryDesignDB = new SavoryDesignDBContext()) { var designDB = new DesignDatabaseEntity(); designDB.DBName = dbName; designDB.DBType = 1; designDB.Description = "this is a test"; designDB.DataStatus = 1; designDB.CreateUser = "******"; designDB.CreateTime = DateTime.Now; designDB.LastUpdateUser = "******"; designDB.LastUpdateTime = DateTime.Now; savoryDesignDB.DesignDatabase.Add(designDB); savoryDesignDB.SaveChanges(); } response.Status = 1; } catch (Exception) { response.Message = "操作失败"; } return(response); }
public List <DatabaseVo> DBList() { List <DatabaseVo> returnValue = new List <DatabaseVo>(); List <DesignDatabaseEntity> entityList = null; using (var savoryDesignDB = new SavoryDesignDBContext()) { entityList = savoryDesignDB.DesignDatabase.ToList(); } if (entityList != null && entityList.Count > 0) { foreach (var entity in entityList) { var db = new DatabaseVo(); db.Id = entity.Id; db.Name = entity.DBName; returnValue.Add(db); } } return(returnValue); }
private CreateTableResult RealCreateTable(string dbName, TableVo tableVo) { if (string.IsNullOrWhiteSpace(dbName)) { return(CreateTableResult.DBNameRequired); } if (tableVo == null) { return(CreateTableResult.RequestBodyRequired); } if (string.IsNullOrWhiteSpace(tableVo.TableName)) { return(CreateTableResult.TableNameRequired); } if (string.IsNullOrWhiteSpace(tableVo.Description)) { return(CreateTableResult.DescriptionRequired); } using (var savoryDesignDB = new SavoryDesignDBContext()) { var existingTable = savoryDesignDB.DesignTable.FirstOrDefault(v => v.DBName.Equals(dbName, StringComparison.OrdinalIgnoreCase) && v.TableName.Equals(tableVo.TableName, StringComparison.OrdinalIgnoreCase) && v.DataStatus == 1); if (existingTable != null) { return(CreateTableResult.TableExisted); } var designTable = new DesignTableEntity(); designTable.DBName = "dbname"; designTable.DBName = dbName; designTable.TableName = tableVo.TableName; designTable.Description = tableVo.Description; designTable.SchemaVersion = 0; designTable.DataStatus = 1; designTable.CreateUser = "******"; designTable.CreateTime = DateTime.Now; designTable.LastUpdateUser = "******"; designTable.LastUpdateTime = DateTime.Now; savoryDesignDB.DesignTable.Add(designTable); savoryDesignDB.SaveChanges(); } return(CreateTableResult.Success); }
public JsonResultModel FieldList(string dbName, string tableName) { JsonResultModel response = new JsonResultModel(); using (var savoryDesignDB = new SavoryDesignDBContext()) { var items = (from table in savoryDesignDB.DesignTable join schema in savoryDesignDB.TableSchema on table.SchemaVersion equals schema.SchemaVersion where table.DBName.Equals(dbName) && table.TableName.Equals(tableName) select schema).ToList(); if (items != null && items.Count > 0) { var schemaContent = items[0].SchemaContent; response.Data = JsonConvert.DeserializeObject <List <FieldVo> >(schemaContent); } savoryDesignDB.TableSchema.Where(v => v.TableName.Equals(tableName)).ToList(); } return(response); }
public UpdateTableSchemaResponse UpdateTableSchema(UpdateTableSchemaRequest request) { if (request == null) { return(UpdateTableSchemaResult.RequestBodyRequired); } if (string.IsNullOrEmpty(request.DBName)) { return(UpdateTableSchemaResult.DBNameRequired); } if (string.IsNullOrEmpty(request.TableName)) { return(UpdateTableSchemaResult.TableNameRequired); } if (request.FieldList == null || request.FieldList.Count == 0) { return(UpdateTableSchemaResult.FieldListRequired); } using (var savoryDesignDB = new SavoryDesignDBContext()) { var currentTableList = (from table in savoryDesignDB.DesignTable where table.DBName.Equals(request.DBName) && table.TableName.Equals(request.TableName) && table.DataStatus == 1 select table).ToList(); if (currentTableList == null || currentTableList.Count == 0) { return(UpdateTableSchemaResult.TableNotFound); } var tableToUpdate = currentTableList[0]; if (tableToUpdate.SchemaVersion != request.SchemaVersion) { return(UpdateTableSchemaResult.CurrentVersionNotMatch); } DateTime now = DateTime.Now; long newSchemaVersion = long.Parse(now.ToString("yyyyMMddHHmmss")); var schemaEntity = new TableSchemaEntity(); schemaEntity.DBName = request.DBName; schemaEntity.TableName = request.TableName; schemaEntity.SchemaContent = JsonConvert.SerializeObject(request.FieldList); schemaEntity.SchemaVersion = newSchemaVersion; schemaEntity.DataStatus = 1; schemaEntity.Description = "this is a test"; schemaEntity.CreateUser = "******"; schemaEntity.CreateTime = now; schemaEntity.LastUpdateUser = "******"; schemaEntity.LastUpdateTime = now; savoryDesignDB.TableSchema.Add(schemaEntity); tableToUpdate.SchemaVersion = newSchemaVersion; tableToUpdate.LastUpdateTime = now; savoryDesignDB.SaveChanges(); } return(UpdateTableSchemaResult.Success); }