package MetadataDAO import ( "dsSupport/MyModel/MySwagger" "dsSupport/Utils/DbUtil" "dsSupport/Utils/ErrorConst" "dsSupport/Utils/LogUtil" "dsSupport/models" "fmt" ) //数据库 var db = DbUtil.Engine func GetMetadataResults(query MySwagger.MetadataQuery) (bool, string, int, []map[string]interface{}, error) { sql := "SELECT * FROM t_dataex_metadata WHERE 1 = 1" + query.Conditions + " ORDER BY create_time DESC, change_time DESC" //接收传入参数 var limit = 100 var offset = (query.Page - 1) * limit //条件查询语句 conditionSql := fmt.Sprintf("%s", " limit ? offset ? ") //分页的语句 pageSql := fmt.Sprintf("%s %s", sql, conditionSql) //数据条数 count, _ := DbUtil.Engine.SQL(sql).Query().Count() //分页数据 list, err := DbUtil.Engine.SQL(pageSql, limit, offset).Query().List() if list != nil { return true, "数据获取成功", count, list, err } else { return false, "数据获取失败,数据源不存在", count, nil, nil } } func CreateMetadata(model *models.TDataexMetadata) (bool, string, error) { _, err := db.Insert(model) if err != nil { LogUtil.Error(ErrorConst.SqlUpdateError, "接入系统authToken Update,数据库操作发生严重错误:"+err.Error()) return false, "数据库操作失败", err } return true, "创建成功!", nil } func CreateMetadataBatch(model []models.TDataexMetadata) (bool, string, error) { _, err := db.Insert(model) if err != nil { LogUtil.Error(ErrorConst.SqlUpdateError, "接入系统authToken Update,数据库操作发生严重错误:"+err.Error()) return false, "数据库操作失败", err } return true, "创建成功!", nil } func UpdateMetadata(id string, model *models.TDataexMetadata) (bool, string, error) { _, err := db.Where(" id = ?", id).Update(model) if err != nil { LogUtil.Error(ErrorConst.SqlUpdateError, "接入系统authToken Update,数据库操作发生严重错误:"+err.Error()) return false, "数据库操作失败", err } return true, "修改成功!", nil } func RemoveMetadata(id string, model *models.TDataexMetadata) (bool, string, error) { _, err := db.Where(" id = ?", id).Update(model) if err != nil { LogUtil.Error(ErrorConst.SqlUpdateError, "接入系统authToken Update,数据库操作发生严重错误:"+err.Error()) return false, "数据库操作失败", err } return true, "删除成功!", nil } func GetMetadataCountByDatasourceCode(datasourceCode string) int64 { business := new(models.TDataexMetadata) total, err := db.Where("datasource_id =?", datasourceCode).Count(business) if err != nil { LogUtil.Error(ErrorConst.SqlQueryError, "数据库操作发生严重错误:"+err.Error()) } return total } func IsMetadataExistsByDatasourceCode(datasourceCode string) bool { if GetMetadataCountByDatasourceCode(datasourceCode) > 0 { return true } return false } func DeleteMetadataByDatasourceCode(datasourceCode string) (bool, string, error) { _, err := db.Exec("DELETE FROM t_dataex_metadata WHERE datasource_id = ?", datasourceCode) if err != nil { LogUtil.Error(ErrorConst.SqlQueryError, "数据库操作发生严重错误:"+err.Error()) return false, "数据库操作失败", err } return true, "删除成功!", nil }