/// <summary> /// 创建运行sql信息 /// </summary> /// <param name="runtimeSqlModel"></param> /// <returns></returns> private async Task <RuntimeSqlInfo> CreateAsync(RuntimeSqlModel runtimeSqlModel) { var runtimeSqlInfo = new RuntimeSqlInfo { FCreateTime = DateTimeUtil.Now, FExecutedTime = runtimeSqlModel.FExecutedTime, FIsDeleted = false, FIsSuccess = runtimeSqlModel.FIsSuccess, FProjectName = runtimeSqlModel.FProjectName, FRequestGuid = runtimeSqlModel.FRequestGuid, FServicerMac = runtimeSqlModel.FServerMac, FSqlDbType = runtimeSqlModel.FSqlDbType, FSqlText = runtimeSqlModel.FSqlText, FTimeElapsed = runtimeSqlModel.FTimeElapsed, FMemberName = runtimeSqlModel.FMemberName, FSource = runtimeSqlModel.FSource, FDatabaseName = runtimeSqlModel.FDatabaseName }; if (runtimeSqlInfo.FProjectName.IsNotNullAndNotEmptyWhiteSpace()) { runtimeSqlInfo.FProjectID = await _projectDomainService.GetProjectIDAsync(runtimeSqlInfo.FProjectName); } if (runtimeSqlInfo.FServicerMac.IsNotNullAndNotEmptyWhiteSpace()) { runtimeSqlInfo.FServicerID = await _servicerDomainService.GetServerIDAsync(runtimeSqlInfo.FServicerMac); } if (runtimeSqlModel.FDatabaseName.IsNotNullAndNotEmptyWhiteSpace()) { runtimeSqlInfo.FDatabeseID = await _databaseDomainService.GetDatabaseIDAsync(runtimeSqlModel.FDatabaseName, runtimeSqlModel.FSqlDbType); } return(runtimeSqlInfo); }
/// <summary> /// 添加运行sql信息 /// </summary> /// <param name="runtimeSqlModel"></param> /// <returns>操作结果</returns> public Task <OperateResult> AddRuntimeSqlAsync(RuntimeSqlModel runtimeSqlModel) { return(OperateUtil.ExecuteAsync(async() => { var runtimeSqlInfo = await _runtimeSqlDomainService.AddRuntimeSqlAsync(runtimeSqlModel); await _runtimeSqlDomainService.AnalysisRuntimeSqlAsync(runtimeSqlInfo); }, callMemberName: "RuntimeSqlApplication-AddRuntimeSqlAsync")); }
/// <summary> /// 添加运行sql信息 /// </summary> /// <param name="runtimeSqlModel"></param> /// <returns></returns> public async Task <RuntimeSqlInfo> AddRuntimeSqlAsync(RuntimeSqlModel runtimeSqlModel) { runtimeSqlModel.NotNull("运行SQL不能为空"); var runtimeSqlInfo = await CreateAsync(runtimeSqlModel); var runtimeSqlID = (await _runtimeSqlRepository.InsertOneAsync(runtimeSqlInfo, keyName: "FID", ignoreFields: FID)).ToSafeInt32(0); runtimeSqlInfo.FID = runtimeSqlID; var sqlParameterList = CreateSqlParameterList(runtimeSqlModel, runtimeSqlID); if (sqlParameterList.IsNotEmpty()) { await _sqlParameterRepository.BulkInsertAsync(sqlParameterList); } return(runtimeSqlInfo); }
/// <summary> /// 创建sql参数信息 /// </summary> /// <param name="runtimeSqlModel"></param> /// <param name="sqlID"></param> /// <returns></returns> private List <SqlParameterInfo> CreateSqlParameterList(RuntimeSqlModel runtimeSqlModel, int sqlID) { var paramList = new List <SqlParameterInfo>(); if (runtimeSqlModel != null && runtimeSqlModel.ParameterList.IsNotEmpty()) { foreach (var item in runtimeSqlModel.ParameterList) { paramList.Add(new SqlParameterInfo { FCreateTime = DateTimeUtil.Now, FIsDeleted = false, FName = item.FName, FRuntimeSqlID = sqlID, FValue = item.FValue, FSize = item.FSize }); } } return(paramList); }