12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- using Applications.FDC;
- using Edge.Core.Database;
- using Edge.Core.Processor;
- using Edge.Core.IndustryStandardInterface.Pump;
- using Microsoft.Extensions.Logging;
- using System;
- using System.Collections.Generic;
- using System.Data;
- using Microsoft.Data.SqlClient;
- using System.Linq;
- using System.Threading.Tasks;
- using Wayne.FDCPOSLibrary;
- using Edge.Core.Processor.Dispatcher.Attributes;
- using System.Threading;
- namespace Applications.PumpInfoToSinoChemPosSqlServerOrMySql
- {
- [MetaPartsDescriptor(
- "lang-zh-cn:加油机信息转发代理 SqlServerlang-en-us:Pump Info Agent to SqlServer",
- "lang-zh-cn:用于将加油机的状态和交易数据插入至 SqlServer 目标数据库中" +
- "lang-en-us:Used for proxing pump state and trx to target SqlServer database",
- new[] { "lang-zh-cn:中化lang-en-us:SinoChem" })]
- public class AppSqlServer : AppBase, IAppProcessor
- {
- public string MetaConfigName { get; set; }
- /// <summary>
- ///
- /// </summary>
- /// <param name="appConfig"></param>
- /// <param name="services"></param>
- [ParamsJsonSchemas("appCtorParamsJsonSchema")]
- public AppSqlServer(AppConfigV1 appConfig, IServiceProvider services) : base(appConfig, services)
- {
- }
- public void Init(IEnumerable<IProcessor> processors)
- {
- base.fdcServerHostApp = processors.OfType<FdcServerHostApp>().First();
- base.HandlePumpStateChangeToDatabase(
- () => new SqlConnection(base.appConfig.DatabaseConnStr),
- () => new SqlCommand());
- }
- public Task<bool> Start()
- {
- return Task.FromResult(
- base.ReCreatePumpLayoutToDatabase(
- () => new SqlConnection(base.appConfig.DatabaseConnStr),
- () => new SqlCommand()));
- }
- public Task<bool> Stop()
- {
- return Task.FromResult(true);
- }
- }
- }
|