|
@@ -100,11 +100,8 @@ public class OnlineLogDbService
|
|
|
await dbConn.ExecuteAsync(sqlString, parameters);
|
|
|
}
|
|
|
|
|
|
- private async Task<BundleHandlerResult<EVSEOnlineRecord>> BundleUpdateWithDapper(IEnumerable<EVSEOnlineRecord> records)
|
|
|
+ private async Task BundleUpdateWithDapper(BundleHandlerData<EVSEOnlineRecord> bundleHandlerData)
|
|
|
{
|
|
|
- List<EVSEOnlineRecord> comtpetedRecords = new();
|
|
|
- Exception exception = null;
|
|
|
-
|
|
|
string sqlString = """
|
|
|
UPDATE dbo.EVSEOnlineRecord
|
|
|
SET OfflineTime=@OfflineTime
|
|
@@ -116,57 +113,34 @@ public class OnlineLogDbService
|
|
|
)
|
|
|
""";
|
|
|
|
|
|
- try
|
|
|
- {
|
|
|
- using var dbConn = await connectionFactory.CreateAsync();
|
|
|
- foreach (var record in records)
|
|
|
- {
|
|
|
- var parameters = new DynamicParameters();
|
|
|
- parameters.Add("@ChargeBoxId", record.ChargeBoxId, System.Data.DbType.String, System.Data.ParameterDirection.Input, 36);
|
|
|
- parameters.Add("@OfflineTime", record.OfflineTime, System.Data.DbType.DateTime);
|
|
|
- //parameters.Add("@Id", record.Id, System.Data.DbType.Int64);
|
|
|
- await dbConn.ExecuteAsync(sqlString, parameters);
|
|
|
- comtpetedRecords.Add(record);
|
|
|
- }
|
|
|
- }
|
|
|
- catch (Exception e)
|
|
|
+ using var dbConn = await connectionFactory.CreateAsync();
|
|
|
+ foreach (var record in bundleHandlerData.Datas)
|
|
|
{
|
|
|
- exception = e;
|
|
|
+ var parameters = new DynamicParameters();
|
|
|
+ parameters.Add("@ChargeBoxId", record.ChargeBoxId, System.Data.DbType.String, System.Data.ParameterDirection.Input, 36);
|
|
|
+ parameters.Add("@OfflineTime", record.OfflineTime, System.Data.DbType.DateTime);
|
|
|
+ //parameters.Add("@Id", record.Id, System.Data.DbType.Int64);
|
|
|
+ await dbConn.ExecuteAsync(sqlString, parameters);
|
|
|
+ bundleHandlerData.AddCompletedData(record);
|
|
|
}
|
|
|
-
|
|
|
- return new BundleHandlerResult<EVSEOnlineRecord>(comtpetedRecords, exception);
|
|
|
}
|
|
|
|
|
|
- private async Task<BundleHandlerResult<EVSEOnlineRecord>> BundleInsertWithDapper(IEnumerable<EVSEOnlineRecord> records)
|
|
|
+ private async Task BundleInsertWithDapper(BundleHandlerData<EVSEOnlineRecord> bundleHandlerData)
|
|
|
{
|
|
|
- List<EVSEOnlineRecord> completedDatas = new();
|
|
|
- Exception exception = null;
|
|
|
-
|
|
|
string sqlString = """
|
|
|
INSERT INTO dbo.EVSEOnlineRecord ("ChargeBoxId","OnlineTime","OfflineTime")
|
|
|
VALUES( @ChargeBoxId, @OnlineTime, @OfflineTime);
|
|
|
""";
|
|
|
- try
|
|
|
- {
|
|
|
- using var dbConn = await connectionFactory.CreateAsync();
|
|
|
- foreach (var record in records)
|
|
|
- {
|
|
|
- var parameters = new DynamicParameters();
|
|
|
- parameters.Add("@ChargeBoxId", record.ChargeBoxId, System.Data.DbType.String, System.Data.ParameterDirection.Input, 36);
|
|
|
- parameters.Add("@OnlineTime", record.OnlineTime, System.Data.DbType.DateTime);
|
|
|
- parameters.Add("@OfflineTime", DefaultSetting.DefaultNullTime, System.Data.DbType.DateTime);
|
|
|
- await dbConn.ExecuteAsync(sqlString, parameters);
|
|
|
- completedDatas.Add(record);
|
|
|
- }
|
|
|
- }
|
|
|
- catch (Exception e)
|
|
|
- {
|
|
|
- logger.LogError(e.Message);
|
|
|
- logger.LogError(e.StackTrace);
|
|
|
|
|
|
- exception = e;
|
|
|
+ using var dbConn = await connectionFactory.CreateAsync();
|
|
|
+ foreach (var record in bundleHandlerData.Datas)
|
|
|
+ {
|
|
|
+ var parameters = new DynamicParameters();
|
|
|
+ parameters.Add("@ChargeBoxId", record.ChargeBoxId, System.Data.DbType.String, System.Data.ParameterDirection.Input, 36);
|
|
|
+ parameters.Add("@OnlineTime", record.OnlineTime, System.Data.DbType.DateTime);
|
|
|
+ parameters.Add("@OfflineTime", DefaultSetting.DefaultNullTime, System.Data.DbType.DateTime);
|
|
|
+ await dbConn.ExecuteAsync(sqlString, parameters);
|
|
|
+ bundleHandlerData.AddCompletedData(record);
|
|
|
}
|
|
|
-
|
|
|
- return new BundleHandlerResult<EVSEOnlineRecord>(completedDatas, exception);
|
|
|
}
|
|
|
}
|