zoule 4 ay önce
ebeveyn
işleme
a0b27a478c
48 değiştirilmiş dosya ile 146 ekleme ve 130 silme
  1. 1 0
      DW5S.App/CorTools/ResampleForm.cs
  2. 2 0
      DW5S.App/CorTools/XlCalculateForm.cs
  3. 1 0
      DW5S.App/EditForms/CdbEditor.cs
  4. 1 0
      DW5S.App/EditForms/CxEditor.cs
  5. 1 0
      DW5S.App/EditForms/EditorTar.cs
  6. 1 0
      DW5S.App/EditForms/FixedStationEditor.cs
  7. 1 0
      DW5S.App/EditForms/RecEditor.cs
  8. 1 0
      DW5S.App/EditForms/RefEditor.cs
  9. 1 0
      DW5S.App/EditForms/SatEditor.cs
  10. 2 0
      DW5S.App/EditForms/SigDelayEditor.cs
  11. 1 0
      DW5S.App/EditForms/SigEditor.cs
  12. 1 0
      DW5S.App/EditForms/TargetEditor.cs
  13. 3 0
      DW5S.App/EditForms/TaskEditor.cs
  14. 2 1
      DW5S.App/EditForms/TaskEditorSignal.cs
  15. 3 0
      DW5S.App/EditForms/X1D1DTOParamEditor.cs
  16. 2 0
      DW5S.App/EditForms/X2D1DTOParamEditor.cs
  17. 2 0
      DW5S.App/EditForms/X2DTOParamEditor.cs
  18. 2 0
      DW5S.App/EditForms/X3DTOParamEditor.cs
  19. 2 0
      DW5S.App/EditForms/X3DfoParamEditor.cs
  20. 5 3
      DW5S.App/MainForm.cs
  21. 3 0
      DW5S.App/PopupControl/ShowCgCtrl.cs
  22. 2 0
      DW5S.App/PopupControl/ShowCheckCtrl.cs
  23. 2 0
      DW5S.App/PopupControl/ShowCxCtrl.cs
  24. 4 3
      DW5S.App/UserControl/CtrlCdbTx.cs
  25. 3 0
      DW5S.App/UserControl/CtrlCgRes.cs
  26. 4 0
      DW5S.App/UserControl/CtrlCxTx.cs
  27. 4 0
      DW5S.App/UserControl/CtrlFixedStation.cs
  28. 13 9
      DW5S.App/UserControl/CtrlHome.cs
  29. 9 11
      DW5S.App/UserControl/CtrlRecTx.cs
  30. 5 6
      DW5S.App/UserControl/CtrlRefTx.cs
  31. 5 6
      DW5S.App/UserControl/CtrlSat.cs
  32. 9 5
      DW5S.App/UserControl/CtrlSignal.cs
  33. 1 3
      DW5S.App/UserControl/CtrlSvrLog.cs
  34. 1 0
      DW5S.App/UserControl/CtrlSvrs.cs
  35. 3 6
      DW5S.App/UserControl/CtrlSysSettings.cs
  36. 5 6
      DW5S.App/UserControl/CtrlTarget.cs
  37. 3 6
      DW5S.App/UserControl/CtrlTx.cs
  38. 7 7
      DW5S.App/UserControl/CtrlXl.cs
  39. 3 8
      DW5S.App/UserControl/X1D1GDOPParam.cs
  40. 3 5
      DW5S.App/UserControl/X2D1GDOPParam.cs
  41. 3 5
      DW5S.App/UserControl/X2DFGDOPParam.cs
  42. 3 5
      DW5S.App/UserControl/X3DFGDOPParam .cs
  43. 3 5
      DW5S.App/UserControl/X3GDOPParam.cs
  44. 6 17
      DW5S.Controller/TaskController.cs
  45. 2 1
      DW5S.Repostory/04.DW5S.Repostory.csproj
  46. 1 11
      DW5S.Repostory/IocContainer.cs
  47. 2 1
      DW5S.Repostory/UnitOfWork.cs
  48. 2 0
      DW5S.WebApi/WebApiHelper.cs

+ 1 - 0
DW5S.App/CorTools/ResampleForm.cs

@@ -80,6 +80,7 @@ namespace DW5S.App.CorTools
             {
 
                 layoutControl1.Enabled = false;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSys = unitOfWork.Of<SysSetings>();
                 var settings = await repsSys.FirstOrDefaultAsync();
                 if (settings == null)

+ 2 - 0
DW5S.App/CorTools/XlCalculateForm.cs

@@ -32,6 +32,7 @@ namespace DW5S.App.CorTools
         {
             InitializeComponent();
             this.itemTle.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
+            var unitOfWork = IocContainer.UnitOfWork;
             var list1 = unitOfWork.Of<SatInfo>().GetAllAsync(p => p.SatCode).Result;
             var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
             var list2 = repsXl.GetAllSat().Result;//所有卫星
@@ -111,6 +112,7 @@ namespace DW5S.App.CorTools
             listEph.Clear();
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 if (!string.IsNullOrEmpty(txtEndTime.Text) && !string.IsNullOrEmpty(txtSpanSeconds.Text))
                 {

+ 1 - 0
DW5S.App/EditForms/CdbEditor.cs

@@ -49,6 +49,7 @@ namespace DW5S.App.EditForms
                 this.txtRemark.EditValue = info.Remark;
             }
             infos = new List<CdbTxInfo>();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsCdb = unitOfWork.Of<CdbTxInfo>();
             var res = await repsCdb.GetAllAsync(p => p.Name);
             infos.AddRange(res);

+ 1 - 0
DW5S.App/EditForms/CxEditor.cs

@@ -49,6 +49,7 @@ namespace DW5S.App.EditForms
                 this.txtRemark.EditValue = info.Remark;
             }
             infos = new List<CxTxInfo>();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsCx = unitOfWork.Of<CxTxInfo>();
             var res = await repsCx.GetAllAsync(p => p.Name);
             infos.AddRange(res);

+ 1 - 0
DW5S.App/EditForms/EditorTar.cs

@@ -35,6 +35,7 @@ namespace DW5S.App.EditForms
         private async void SatEditor_Load(object sender, EventArgs e)
         {
             infos = new List<TargetInfo>();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsTar = unitOfWork.Of<TargetInfo>();
             var res = await repsTar.GetAllAsync(p => p.TargetName);
             infos.AddRange(res);

+ 1 - 0
DW5S.App/EditForms/FixedStationEditor.cs

@@ -41,6 +41,7 @@ namespace DW5S.App.EditForms
         private async void SatEditor_Load(object sender, EventArgs e)
         {
             infos = new List<FixedStation>();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsFixed = unitOfWork.Of<FixedStation>();
             var res = await repsFixed.GetAllAsync();
             infos.AddRange(res);

+ 1 - 0
DW5S.App/EditForms/RecEditor.cs

@@ -49,6 +49,7 @@ namespace DW5S.App.EditForms
                 this.txtRemark.EditValue = info.Remark;
             }
             infos = new List<RecTxInfo>();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsRec = unitOfWork.Of<RecTxInfo>();
             var res = await repsRec.GetAllAsync(p => p.Name);
             infos.AddRange(res);

+ 1 - 0
DW5S.App/EditForms/RefEditor.cs

@@ -48,6 +48,7 @@ namespace DW5S.App.EditForms
                 this.txtRemark.EditValue = info.Remark;
             }
             infos = new List<RefTxInfo>();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsRef = unitOfWork.Of<RefTxInfo>();
             var res = await repsRef.GetAllAsync();
             infos.AddRange(res);

+ 1 - 0
DW5S.App/EditForms/SatEditor.cs

@@ -41,6 +41,7 @@ namespace DW5S.App.EditForms
         }
         private async void SatEditor_Load(object sender, EventArgs e)
         {
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
             var listXl = await repsXl.GetAllSat();
             this.searchLookUpEdit1.UseDefault().SetData(listXl, nameof(XlInfo.Sat)).UseDoubleClickToSelectAll();

+ 2 - 0
DW5S.App/EditForms/SigDelayEditor.cs

@@ -45,6 +45,7 @@ namespace DW5S.App.EditForms
         }
         private async void SatEditor_Load(object sender, EventArgs e)
         {
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSat = unitOfWork.Of<SatInfo>();
             var sats = await repsSat.GetAllAsync();
             this.txtSat.UseDefault().SetData(sats, nameof(SatInfo.Sat)).UseDoubleClickToSelectAll();
@@ -76,6 +77,7 @@ namespace DW5S.App.EditForms
                 }
                 var satInfo = (SatInfo)txtSat.EditValue;
 
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSigDelay = unitOfWork.Of<SigDelay>();
 
                 var list = await repsSigDelay.FindAsync(w => w.SigInfoId == sigId);

+ 1 - 0
DW5S.App/EditForms/SigEditor.cs

@@ -60,6 +60,7 @@ namespace DW5S.App.EditForms
                 }
             }
             infos = new List<SigInfo>();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSig = unitOfWork.Of<SigInfo>();
             var res = await repsSig.GetAllAsync();
             infos.AddRange(res);

+ 1 - 0
DW5S.App/EditForms/TargetEditor.cs

@@ -49,6 +49,7 @@ namespace DW5S.App.EditForms
                 this.txtTarColor.EditValue = clolrRes;
             }
             infos = new List<TargetInfo>();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsTarget = unitOfWork.Of<TargetInfo>();
             var res = await repsTarget.GetAllAsync();
             infos.AddRange(res);

+ 3 - 0
DW5S.App/EditForms/TaskEditor.cs

@@ -68,6 +68,7 @@ namespace DW5S.App.EditForms
 
         private async void TaskEditor_Load(object sender, EventArgs e)
         {
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSat = unitOfWork.Of<SatInfo>();
             var sats = await repsSat.GetAllAsync();
             this.txtMainSat.UseDefault().SetData(sats, nameof(SatInfo.Sat)).UseDoubleClickToSelectAll();
@@ -108,6 +109,7 @@ namespace DW5S.App.EditForms
 
                 if (this.Text == "添加任务")
                 {
+                    var unitOfWork = IocContainer.UnitOfWork;
                     var repsTask = unitOfWork.Of<TaskInfo>();
                     if (await repsTask.FirstOrDefaultAsync(p => p.TaskName == txtTaskName.Text) != null)
                     {
@@ -117,6 +119,7 @@ namespace DW5S.App.EditForms
                 }
                 else
                 {
+                    var unitOfWork = IocContainer.UnitOfWork;
                     var repsTask = unitOfWork.Of<TaskInfo>();
                     if (await repsTask.FirstOrDefaultAsync(p => p.Id != info.Id && p.TaskName == txtTaskName.Text) != null)
                     {

+ 2 - 1
DW5S.App/EditForms/TaskEditorSignal.cs

@@ -61,7 +61,8 @@ namespace DW5S.App.EditForms
             try
             {
                 gridTaskSignal.UseDefault(listSigInfo).UseMultiSelect().UseRowNumber().DrawGridColumnHeaderCheckBox();
-               var repsFixed= unitOfWork.Of<FixedStation>();
+                var unitOfWork = IocContainer.UnitOfWork;
+                var repsFixed= unitOfWork.Of<FixedStation>();
                 var fixedStations = await repsFixed.FindAsync(p => p.Enable);
 
                 var repsSig = unitOfWork.Of<SigInfo>();

+ 3 - 0
DW5S.App/EditForms/X1D1DTOParamEditor.cs

@@ -35,6 +35,7 @@ namespace DW5S.App.EditForms
         {
             InitializeComponent();
             this.info = info;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSys = unitOfWork.Of<SysSetings>();
             var settings = repsSys.FirstOrDefaultAsync().Result;
             itemSigTime.Text = $"{itemSigTime.Text}({settings.TimeZoneUTC})";
@@ -47,6 +48,7 @@ namespace DW5S.App.EditForms
         private async void X1D1DTOParamEditor_Load(object sender, EventArgs e)
         {
             this.layoutControl1.BestFit();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSat = unitOfWork.Of<SatInfo>();
             listSat.AddRange(await repsSat.GetAllAsync());
             var repsCg = unitOfWork.Of<CgRes>();
@@ -227,6 +229,7 @@ namespace DW5S.App.EditForms
             try
             {
                 var mainCode = ucEphXYZMain.GetSatCode();
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 var mainxlInfo = await repsXl.GetLatestAsync(mainCode, sigTime);
                 if (mainxlInfo == null)

+ 2 - 0
DW5S.App/EditForms/X2D1DTOParamEditor.cs

@@ -48,6 +48,7 @@ namespace DW5S.App.EditForms
         {
             this.layoutControl1.BestFit();
             StationRes station = null;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSat = unitOfWork.Of<SatInfo>();
             listSat.AddRange(await repsSat.GetAllAsync());
 
@@ -274,6 +275,7 @@ namespace DW5S.App.EditForms
             var sigTime = this.txtSigTime.DateTime;
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 var mainxlInfo = await repsXl.GetLatestAsync(cg.MainCode.Value, sigTime);
                 if (mainxlInfo == null)

+ 2 - 0
DW5S.App/EditForms/X2DTOParamEditor.cs

@@ -36,6 +36,7 @@ namespace DW5S.App.EditForms
         private async void X2DTOParamEditor_Load(object sender, EventArgs e)
         {
             this.layoutControl1.BestFit();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSat = unitOfWork.Of<SatInfo>();
             listSat.AddRange(await repsSat.GetAllAsync());
 
@@ -345,6 +346,7 @@ namespace DW5S.App.EditForms
             var sigTime = txtSigTime.DateTime;
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 var mainxlInfo = await repsXl.GetLatestAsync(cg.MainCode.Value, sigTime);
                 if (mainxlInfo == null)

+ 2 - 0
DW5S.App/EditForms/X3DTOParamEditor.cs

@@ -38,6 +38,7 @@ namespace DW5S.App.EditForms
             this.layoutControl1.BestFit();
             StationRes station = null;
 
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSat = unitOfWork.Of<SatInfo>();
             listSat.AddRange(await repsSat.GetAllAsync());
 
@@ -208,6 +209,7 @@ namespace DW5S.App.EditForms
             var sigTime = this.sigTime.DateTime;
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 var xlInfo = await repsXl.GetLatestAsync(cg.MainCode.Value, sigTime);
                 if (xlInfo == null)

+ 2 - 0
DW5S.App/EditForms/X3DfoParamEditor.cs

@@ -37,6 +37,7 @@ namespace DW5S.App.EditForms
         private async void X3DTOParamEditor_Load(object sender, EventArgs e)
         {
             this.layoutControl1.BestFit();
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSat = unitOfWork.Of<SatInfo>();
             listSat.AddRange(await repsSat.GetAllAsync());
 
@@ -288,6 +289,7 @@ namespace DW5S.App.EditForms
             var sigTime = this.sigTime.DateTime;
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
 
                 var xlInfo = await repsXl.GetLatestAsync(cg.MainCode.Value, sigTime);

+ 5 - 3
DW5S.App/MainForm.cs

@@ -44,9 +44,6 @@ namespace DW5S
 {
     public partial class MainForm : DevExpress.XtraBars.Ribbon.RibbonForm
     {
-        
-        
-
         Dictionary<string, Type> ctrlTypes = new Dictionary<string, Type>();
         public MainForm()
         {
@@ -130,6 +127,7 @@ namespace DW5S
             while (true)
             {
                 await Task.Delay(10000);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSys = unitOfWork.Of<SysSetings>();
                 var settings = await repsSys.FirstOrDefaultAsync();
                 if (settings == null
@@ -215,6 +213,7 @@ namespace DW5S
             {
                 try
                 {
+                    var unitOfWork = IocContainer.UnitOfWork;
                     var repsXl = unitOfWork.Of<XlInfo>();
                     DateTime dt = DateTime.Now.AddYears(-1);
                     await repsXl.DeleteAsync(p => p.UpdateTime < dt);
@@ -243,6 +242,7 @@ namespace DW5S
                 {
                     List<XlInfo> calcItems = null;
                     List<SatInfo> satInfo = null;
+                    var unitOfWork = IocContainer.UnitOfWork;
                     var repsXl = unitOfWork.Of<XlInfo>();
                     var repsSat = unitOfWork.Of<SatInfo>();
 
@@ -349,6 +349,7 @@ namespace DW5S
         {
             while (true)
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsLogRes = unitOfWork.Of<LogRes>();
                 try
                 {
@@ -440,6 +441,7 @@ namespace DW5S
                 KillProcess();
                 Process pro = new Process();
                 var servicesDir = Directory.GetDirectories(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Service\\"), "*", SearchOption.TopDirectoryOnly);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSys = unitOfWork.Of<SysSetings>();
                 var settings = await repsSys.FirstOrDefaultAsync();
                 foreach (var item in servicesDir)

+ 3 - 0
DW5S.App/PopupControl/ShowCgCtrl.cs

@@ -14,6 +14,7 @@ using DW5S.App.Model;
 using DW5S.Entity;
 using DW5S.Repostory;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.PopupControl
 {
@@ -41,6 +42,7 @@ namespace DW5S.App.PopupControl
         private async void ShowCgCtrl_Load(object sender, EventArgs e)
         {
             List<SatInfo> sats = null;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSat = unitOfWork.Of<SatInfo>();
 
             sats = (await repsSat.GetAllAsync()).ToList();
@@ -131,6 +133,7 @@ namespace DW5S.App.PopupControl
             var cgItem = e.Row as ModelCg;
             if (cgItem != null)
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCgXgf = unitOfWork.Of<CgXgfRes>();
 
                 var data = await repsCgXgf.FindAsync(p => p.CgResID == cgItem.Id && p.CgType == cgItem.CgType);

+ 2 - 0
DW5S.App/PopupControl/ShowCheckCtrl.cs

@@ -14,6 +14,7 @@ using DW5S.App.Model;
 using DW5S.Entity;
 using DW5S.Repostory;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.PopupControl
 {
@@ -38,6 +39,7 @@ namespace DW5S.App.PopupControl
         {
             if (posItem.CheckResID == null)//没有检测结果
                 return;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsCheck = unitOfWork.Of<CheckRes>();
             var items = await repsCheck.FindAsync(p => p.Id == posItem.CheckResID);
             this.list.AddRange(items);

+ 2 - 0
DW5S.App/PopupControl/ShowCxCtrl.cs

@@ -14,6 +14,7 @@ using DW5S.App.Model;
 using DW5S.Entity;
 using DW5S.Repostory;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.PopupControl
 {
@@ -36,6 +37,7 @@ namespace DW5S.App.PopupControl
         }
         private async void ShowCxCtrl_Load(object sender, EventArgs e)
         {
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsCx = unitOfWork.Of<CxRes>();
             var items =await repsCx.FindAsync(p => p.Id == posItem.CxResID);
             this.list.AddRange(items);

+ 4 - 3
DW5S.App/UserControl/CtrlCdbTx.cs

@@ -15,9 +15,6 @@ namespace DW5S.App.UserControl
 {
     public partial class CtrlCdbTx : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
         readonly List<CdbTxInfo> list = new List<CdbTxInfo>();
         public CtrlCdbTx()
         {
@@ -31,6 +28,7 @@ namespace DW5S.App.UserControl
                     .UseAddAsync(Add)
                     .UseEditAsync<CdbTxInfo>(Edit)
                     .UseDeleteAsync<CdbTxInfo>(Delete);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCdbTx = unitOfWork.Of<CdbTxInfo>();
                 var items = await repsCdbTx.GetAllAsync(p => p.Name);
                 list.AddRange(items);
@@ -51,6 +49,7 @@ namespace DW5S.App.UserControl
                 CdbEditor frm = new CdbEditor();
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 var addItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCdbTx = unitOfWork.Of<CdbTxInfo>();
                 await repsCdbTx.AddOrUpdateAsync(addItem);
                 await unitOfWork.SaveAsync();
@@ -72,6 +71,7 @@ namespace DW5S.App.UserControl
                 CdbEditor frm = new CdbEditor(editItem);
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 editItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCdbTx = unitOfWork.Of<CdbTxInfo>();
                 var find = await repsCdbTx.FirstOrDefaultAsync(p => p.Id == editItem.Id);
                 find.Name = editItem.Name;
@@ -97,6 +97,7 @@ namespace DW5S.App.UserControl
         {
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCdbTx = unitOfWork.Of<CdbTxInfo>();
                 await repsCdbTx.DeleteAsync(list);
                 await unitOfWork.SaveAsync();

+ 3 - 0
DW5S.App/UserControl/CtrlCgRes.cs

@@ -49,6 +49,7 @@ namespace DW5S.App.UserControl
             try
             {
                 List<TaskInfo> tskList = new List<TaskInfo>();
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsTask = unitOfWork.Of<TaskInfo>();
                 tskList.AddRange(await repsTask.GetAllAsync(p => p.UpdateTime));
                 this.txtTask.UseDefault().SetData(tskList, nameof(TaskInfo.TaskName)).UseDoubleClickToSelectAll();
@@ -67,6 +68,7 @@ namespace DW5S.App.UserControl
         {
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCg = unitOfWork.Of<CgRes>();
                 await repsCg.DeleteAsync(selectedRes);
                 await unitOfWork.SaveAsync();
@@ -138,6 +140,7 @@ namespace DW5S.App.UserControl
         {
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCg = unitOfWork.Of<CgRes>();
                 DateTime start = DateTime.MinValue;
                 DateTime end = DateTime.MinValue;

+ 4 - 0
DW5S.App/UserControl/CtrlCxTx.cs

@@ -30,6 +30,7 @@ namespace DW5S.App.UserControl
                     .UseAddAsync(Add)
                     .UseEditAsync<CxTxInfo>(Edit)
                     .UseDeleteAsync<CxTxInfo>(Delete);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCxTx = unitOfWork.Of<CxTxInfo>();
                 var items = await repsCxTx.GetAllAsync(p => p.Name);
                 list.AddRange(items);
@@ -49,6 +50,7 @@ namespace DW5S.App.UserControl
                 CxEditor frm = new CxEditor();
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 var addItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCxTx = unitOfWork.Of<CxTxInfo>();
                 await repsCxTx.AddOrUpdateAsync(addItem);
                 await unitOfWork.SaveAsync();
@@ -70,6 +72,7 @@ namespace DW5S.App.UserControl
                 CxEditor frm = new CxEditor(editItem);
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 editItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCxTx = unitOfWork.Of<CxTxInfo>();
                 var find = await repsCxTx.FirstOrDefaultAsync(p => p.Id == editItem.Id);
                 find.Name = editItem.Name;
@@ -94,6 +97,7 @@ namespace DW5S.App.UserControl
         {
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsCxTx = unitOfWork.Of<CxTxInfo>();
                 await repsCxTx.DeleteAsync(list);
                 await unitOfWork.SaveAsync();

+ 4 - 0
DW5S.App/UserControl/CtrlFixedStation.cs

@@ -32,6 +32,7 @@ namespace DW5S.App.UserControl
                     .UseAddAsync(Add)
                     .UseEditAsync<FixedStation>(Edit)
                     .UseDeleteAsync<FixedStation>(Delete).SetDisplayText(nameof(FixedStation.Value), val => $"{val}秒");
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsFix = unitOfWork.Of<FixedStation>();
                 var items = await repsFix.GetAllAsync(p => p.StationName);
                 list.AddRange(items);
@@ -50,6 +51,7 @@ namespace DW5S.App.UserControl
                 FixedStationEditor frm = new FixedStationEditor();
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 var addItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsFix = unitOfWork.Of<FixedStation>();
                 await repsFix.AddOrUpdateAsync(addItem);
                 await unitOfWork.SaveAsync();
@@ -70,6 +72,7 @@ namespace DW5S.App.UserControl
                 FixedStationEditor frm = new FixedStationEditor(editItem);
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 editItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsFix = unitOfWork.Of<FixedStation>();
 
                 var find = (await repsFix.FirstOrDefaultAsync(p => p.Id == editItem.Id));
@@ -97,6 +100,7 @@ namespace DW5S.App.UserControl
             try
             {
                 var ids = list.Select(p => p.Id);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSat = unitOfWork.Of<SatInfo>();
                 await repsSat.DeleteAsync(p => ids.Contains(p.Id));
                 await unitOfWork.SaveAsync();

+ 13 - 9
DW5S.App/UserControl/CtrlHome.cs

@@ -40,12 +40,6 @@ namespace DW5S.App.UserControl
 {
     public partial class CtrlHome : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
-
         List<TaskInfo> list = new List<TaskInfo>();
         TaskInfo tsk;
         List<CancellationTokenSource> listCts = new List<CancellationTokenSource>();
@@ -72,7 +66,7 @@ namespace DW5S.App.UserControl
             {
                 var find = list.FirstOrDefault(p => p.Id == id);
                 if (find == null) return;
-
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsTask = unitOfWork.Of<TaskInfo>();
                 var item = await repsTask.FirstOrDefaultAsync(p => p.Id == id);
                 if (item == null) return;
@@ -133,6 +127,7 @@ namespace DW5S.App.UserControl
             {
                 mapControl1.UseCluster();
             }
+            var unitOfWork = IocContainer.UnitOfWork;
             var settings = await unitOfWork.Of<SysSetings>().FirstOrDefaultAsync();
             if (settings == null)
             {
@@ -367,7 +362,7 @@ namespace DW5S.App.UserControl
                 this.gridHomePosRes.DataSource = listPos;
                 mapControl1.SetPosDataSource(listPos);
             }
-
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSat = unitOfWork.Of<SatInfo>();
             var sat1 = await repsSat.FirstOrDefaultAsync(p => p.SatCode == tsk.MainSat);
             var sat2 = await repsSat.FirstOrDefaultAsync(p => p.SatCode == tsk.Adja1Sat);
@@ -411,6 +406,7 @@ namespace DW5S.App.UserControl
             mapControl1.DelFixedImg("Tx");
             var posItem = (e.Row as ModelPosRes);
             if (posItem == null) return;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsStation = unitOfWork.Of<StationRes>();
             var station = await repsStation.FirstOrDefaultAsync(p => p.Id == posItem.StationResID);
             if (station != null)
@@ -478,6 +474,7 @@ namespace DW5S.App.UserControl
                     {
                         addItem.Adja2Sat = null;
                     }
+                    var unitOfWork = IocContainer.UnitOfWork;
                     var repsTask = unitOfWork.Of<TaskInfo>();
                     var taskInfo = await repsTask.AddOrUpdateAsync(addItem);
 
@@ -513,6 +510,7 @@ namespace DW5S.App.UserControl
                 {
                     var editItem = gridView1.GetFocusedRow() as TaskInfo;
                     if (editItem == null) return;
+                    var unitOfWork = IocContainer.UnitOfWork;
                     var repsTaskSig = unitOfWork.Of<TaskSig>();
                     var sigs = await repsTaskSig.AsQueryable().Include(p => p.SigInfo).Where(p => p.TaskInfoID == editItem.Id).Select(p => p.SigInfo).ToListAsync();
                     var repsSig = unitOfWork.Of<SigInfo>();
@@ -583,6 +581,7 @@ namespace DW5S.App.UserControl
                     if (tsk == null) return;
                     if (!DxHelper.MsgBoxHelper.ShowConfirm($"删除任务[{tsk.TaskName}]?"))
                         return;
+                    var unitOfWork = IocContainer.UnitOfWork;
                     var repsTask = unitOfWork.Of<TaskInfo>();
                     await repsTask.DeleteAsync(p => p.Id == tsk.Id);
                     var repsTaskSig = unitOfWork.Of<TaskSig>();
@@ -604,6 +603,7 @@ namespace DW5S.App.UserControl
         private async void btn_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
             var tsk = gridView1.GetFocusedRow() as TaskInfo;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsTask = unitOfWork.Of<TaskInfo>();
             var repsTaskSig = unitOfWork.Of<TaskSig>();
             if (e.Item.Caption == "启动任务")
@@ -950,7 +950,7 @@ namespace DW5S.App.UserControl
             try
             {
                 var ids = items.Select(m => m.Id).ToList();
-
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsPos = unitOfWork.Of<PosRes>();
                 await repsPos.DeleteAsync(p => ids.Contains(p.Id));
                 mapControl1.DelPosItem<PosRes>(p => ids.Contains(p.Id));
@@ -1096,6 +1096,7 @@ namespace DW5S.App.UserControl
         {
             Task.Run(async () =>
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 foreach (var item in items)
                 {
                     double[] res = new double[6];
@@ -1388,6 +1389,7 @@ namespace DW5S.App.UserControl
             {
                 if (items.Count == 0) return;
                 long? targetID = 0;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsPos = unitOfWork.Of<PosRes>();
                 var idRes = items.First().Id;
                 var target = await repsPos.FirstOrDefaultAsync(p => p.Id == idRes);
@@ -1470,6 +1472,7 @@ namespace DW5S.App.UserControl
             {
                 if (!MsgBoxHelper.ShowConfirm($"确认使用镜像点?共{items.Count}条记录")) return;
                 var ids = items.Select(p => p.Id);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsPos = unitOfWork.Of<PosRes>();
                 var updateItems = await repsPos.FindAsync(p => ids.Contains(p.Id));
                 UseMirror(updateItems);
@@ -1499,6 +1502,7 @@ namespace DW5S.App.UserControl
             {
                 if (!MsgBoxHelper.ShowConfirm($"确认删除定位点?共{items.Count}条记录")) return;
                 var ids = items.Select(p => p.Id);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsPos = unitOfWork.Of<PosRes>();
                 await repsPos.DeleteAsync(p => ids.Contains(p.Id));
                 await unitOfWork.SaveAsync();

+ 9 - 11
DW5S.App/UserControl/CtrlRecTx.cs

@@ -9,17 +9,12 @@ using DW5S.App.EditForms;
 using DW5S.Entity;
 using DW5S.Repostory;
 using Microsoft.Extensions.Logging;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class CtrlRecTx : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
-
         readonly List<RecTxInfo> list = new List<RecTxInfo>();
         public CtrlRecTx()
         {
@@ -33,6 +28,7 @@ namespace DW5S.App.UserControl
                      .UseAddAsync(Add)
                      .UseEditAsync<RecTxInfo>(Edit)
                      .UseDeleteAsync<RecTxInfo>(Delete);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsRecTx = unitOfWork.Of<RecTxInfo>();
                 var items = await repsRecTx.GetAllAsync(p => p.Name);
                 list.AddRange(items);
@@ -40,7 +36,7 @@ namespace DW5S.App.UserControl
             catch (Exception ex)
             {
                 string msg = "查询接收站信息异常";
-                IocContainer.Logger.LogError(ex, msg);
+                IocContainer.Logger.Error(ex, msg);
                 DxHelper.MsgBoxHelper.ShowError(msg);
             }
 
@@ -53,6 +49,7 @@ namespace DW5S.App.UserControl
                 RecEditor frm = new RecEditor();
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 var addItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsRecTx = unitOfWork.Of<RecTxInfo>();
                 await repsRecTx.AddOrUpdateAsync(addItem);
                 await unitOfWork.SaveAsync();
@@ -61,7 +58,7 @@ namespace DW5S.App.UserControl
             catch (Exception ex)
             {
                 string msg = "添加接收站信息异常";
-                IocContainer.Logger.LogError(ex, msg);
+                IocContainer.Logger.Error(ex, msg);
                 DxHelper.MsgBoxHelper.ShowError(msg);
                 return null;
             }
@@ -74,6 +71,7 @@ namespace DW5S.App.UserControl
                 RecEditor frm = new RecEditor(editItem);
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 editItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsRecTx = unitOfWork.Of<RecTxInfo>();
                 var find = await repsRecTx.FirstOrDefaultAsync(p => p.Id == editItem.Id);
                 find.Name = editItem.Name;
@@ -88,7 +86,7 @@ namespace DW5S.App.UserControl
             catch (Exception ex)
             {
                 string msg = "保存接收站信息异常";
-                IocContainer.Logger.LogError(ex, msg);
+                IocContainer.Logger.Error(ex, msg);
                 DxHelper.MsgBoxHelper.ShowError(msg);
                 return null;
             }
@@ -98,6 +96,7 @@ namespace DW5S.App.UserControl
         {
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsTx = unitOfWork.Of<RecTxInfo>();
                 await repsTx.DeleteAsync(list);
                 await unitOfWork.SaveAsync();
@@ -105,9 +104,8 @@ namespace DW5S.App.UserControl
             }
             catch (Exception ex)
             {
-
                 string msg = "删除接收站信息异常";
-                IocContainer.Logger.LogError(ex, msg);
+                IocContainer.Logger.Error(ex, msg);
                 DxHelper.MsgBoxHelper.ShowError(msg);
                 return false;
             }

+ 5 - 6
DW5S.App/UserControl/CtrlRefTx.cs

@@ -2,6 +2,7 @@
 using DW5S.App.EditForms;
 using DW5S.Entity;
 using DW5S.Repostory;
+using DW5S.Service;
 using Serilog;
 using System;
 using System.Collections.Generic;
@@ -14,12 +15,6 @@ namespace DW5S.App.UserControl
 {
     public partial class CtrlRefTx : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
-
         readonly List<RefTxInfo> list = new List<RefTxInfo>();
         public CtrlRefTx()
         {
@@ -33,6 +28,7 @@ namespace DW5S.App.UserControl
                     .UseAddAsync(Add)
                     .UseEditAsync<RefTxInfo>(Edit)
                     .UseDeleteAsync<RefTxInfo>(Delete);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsRefTx = unitOfWork.Of<RefTxInfo>();
                 var items = await repsRefTx.GetAllAsync(p => p.Name);
                 list.AddRange(items);
@@ -52,6 +48,7 @@ namespace DW5S.App.UserControl
                 RefEditor frm = new RefEditor();
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 var addItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsRefTx = unitOfWork.Of<RefTxInfo>();
                 await repsRefTx.AddOrUpdateAsync(addItem);
                 await unitOfWork.SaveAsync();
@@ -74,6 +71,7 @@ namespace DW5S.App.UserControl
                 RefEditor frm = new RefEditor(editItem);
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 editItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsRefTx = unitOfWork.Of<RefTxInfo>();
                 var find = await repsRefTx.FirstOrDefaultAsync(p => p.Id == editItem.Id);
                 find.Name = editItem.Name;
@@ -98,6 +96,7 @@ namespace DW5S.App.UserControl
         {
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsRefTx = unitOfWork.Of<RefTxInfo>();
                 await repsRefTx.DeleteAsync(list);
                 await unitOfWork.SaveAsync();

+ 5 - 6
DW5S.App/UserControl/CtrlSat.cs

@@ -9,18 +9,13 @@ using DevExpress.XtraBars.Customization;
 using DW5S.App.EditForms;
 using DW5S.Entity;
 using DW5S.Repostory;
+using DW5S.Service;
 using Serilog;
 
 namespace DW5S.App.UserControl
 {
     public partial class CtrlSat : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
-
         readonly List<SatInfo> list = new List<SatInfo>();
         public CtrlSat()
         {
@@ -34,6 +29,7 @@ namespace DW5S.App.UserControl
                     .UseAddAsync(Add)
                     .UseEditAsync<SatInfo>(Edit)
                     .UseDeleteAsync<SatInfo>(Delete);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSat = unitOfWork.Of<SatInfo>();
                 var items = await repsSat.GetAllAsync(p => p.SatName);
                 list.AddRange(items);
@@ -53,6 +49,7 @@ namespace DW5S.App.UserControl
                 SatEditor frm = new SatEditor();
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 var addItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSat = unitOfWork.Of<SatInfo>();
                 await repsSat.AddOrUpdateAsync(addItem);
                 await unitOfWork.SaveAsync();
@@ -74,6 +71,7 @@ namespace DW5S.App.UserControl
                 SatEditor frm = new SatEditor(editItem);
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 editItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSat = unitOfWork.Of<SatInfo>();
                 var find = await repsSat.FirstOrDefaultAsync(p => p.Id == editItem.Id);
                 find.SatName = editItem.SatName;
@@ -99,6 +97,7 @@ namespace DW5S.App.UserControl
             try
             {
                 var ids = list.Select(p => p.Id);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSat = unitOfWork.Of<SatInfo>();
                 var delItems = await repsSat.FindAsync(p => ids.Contains(p.Id));
                 await repsSat.DeleteAsync(delItems);

+ 9 - 5
DW5S.App/UserControl/CtrlSignal.cs

@@ -15,16 +15,12 @@ using DW5S.Entity;
 using DW5S.Repostory;
 using Serilog;
 using DevExpress.XtraBars.Customization;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class CtrlSignal : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
         readonly List<SigInfo> listSigInfo = new List<SigInfo>();
         readonly List<SigDelay> listSigDelay = new List<SigDelay>();
         public CtrlSignal()
@@ -45,6 +41,7 @@ namespace DW5S.App.UserControl
                    .UseEditAsync<SigDelay>(EditSigDelay)
                    .UseDeleteAsync<SigDelay>(DeleteSigDelay);
 
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSig = unitOfWork.Of<SigInfo>();
                 var items = await repsSig.GetAllAsync(p => p.FreqUp);
                 listSigInfo.AddRange(items);
@@ -76,6 +73,7 @@ namespace DW5S.App.UserControl
                 SigEditor frm = new SigEditor();
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 var addItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSig = unitOfWork.Of<SigInfo>();
                 var sig = await repsSig.AddOrUpdateAsync(addItem);
                 await unitOfWork.SaveAsync();
@@ -95,6 +93,7 @@ namespace DW5S.App.UserControl
                 SigEditor frm = new SigEditor(editItem);
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 editItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSig = unitOfWork.Of<SigInfo>();
                 var find = await repsSig.FirstOrDefaultAsync(p => p.Id == editItem.Id);
                 find.FreqUp = editItem.FreqUp;
@@ -120,6 +119,7 @@ namespace DW5S.App.UserControl
             try
             {
                 var ids = list.Select(p => p.Id);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSigDelay = unitOfWork.Of<SigDelay>();
                 var delayItems = await repsSigDelay.FindAsync(p => ids.Contains(p.SigInfoId));
                 await repsSigDelay.DeleteAsync(delayItems);
@@ -146,6 +146,7 @@ namespace DW5S.App.UserControl
                 SigDelayEditor frm = new SigDelayEditor(sigInfoId.Id);
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 var addItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSigDelay = unitOfWork.Of<SigDelay>();
                 addItem.SigInfoId = sigInfoId.Id;
                 var sig = repsSigDelay.AddOrUpdateAsync(addItem);
@@ -169,6 +170,7 @@ namespace DW5S.App.UserControl
                 SigDelayEditor frm = new SigDelayEditor(editItem, sigInfoId.Id);
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 editItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSigDelay = unitOfWork.Of<SigDelay>();
                 var find = await repsSigDelay.FirstOrDefaultAsync(p => p.Id == editItem.Id);
                 find.SigInfoId = editItem.SigInfoId;
@@ -190,6 +192,7 @@ namespace DW5S.App.UserControl
             try
             {
                 var ids = list.Select(p => p.Id);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSigDelay = unitOfWork.Of<SigDelay>();
                 var delItems = await repsSigDelay.FindAsync(p => ids.Contains(p.Id));
                 await repsSigDelay.DeleteAsync(delItems);
@@ -210,6 +213,7 @@ namespace DW5S.App.UserControl
             listSigDelay.Clear();
             var sigInfoId = gridViewSignal.GetFocusedRow() as SigInfo;
             if (sigInfoId == null) return;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSigDelay = unitOfWork.Of<SigDelay>();
             var repsSat = unitOfWork.Of<SatInfo>();
             var delayItems = await repsSigDelay.FindAsync(w => w.SigInfoId == sigInfoId.Id, p => p.SatInfo.SatName);

+ 1 - 3
DW5S.App/UserControl/CtrlSvrLog.cs

@@ -22,14 +22,12 @@ using DW5S.App.Model;
 using DW5S.DTO;
 using DW5S.Repostory;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class CtrlSvrLog : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
         List<LogInfo> list = new List<LogInfo>();
         public CtrlSvrLog()
         {

+ 1 - 0
DW5S.App/UserControl/CtrlSvrs.cs

@@ -53,6 +53,7 @@ namespace DW5S.App.UserControl
             this.list.AddRange(ServerContext.Instance.GetAll().To<List<ModelSvr>>());
             gridView1.RefreshData();
             Messenger.Defalut.Sub<List<ModelSvr>>("服务集合改变", RefreshSvr);
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsSys = unitOfWork.Of<SysSetings>();
             var settings = await repsSys.FirstOrDefaultAsync();
             if (settings != null)

+ 3 - 6
DW5S.App/UserControl/CtrlSysSettings.cs

@@ -26,17 +26,12 @@ using DevExpress.Utils.About;
 using DW5S.DTO;
 using System.Configuration;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class CtrlSysSettings : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
-
         public CtrlSysSettings()
         {
             InitializeComponent();
@@ -52,6 +47,7 @@ namespace DW5S.App.UserControl
                 txtLayer.Items.RemoveAt(0);
                 txtWmtsSource.SelectedIndex = 0;
                 txtLayer.SelectedIndex = 0;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var settings = await unitOfWork.Of<SysSetings>().FirstOrDefaultAsync();
                 if (settings != null)
                 {
@@ -109,6 +105,7 @@ namespace DW5S.App.UserControl
                     DxHelper.MsgBoxHelper.ShowError("系统时区错误!");
                     return;
                 }
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSys = unitOfWork.Of<SysSetings>();
                 var res = await repsSys.FirstOrDefaultAsync();
                 if (res == null) res = new SysSetings();

+ 5 - 6
DW5S.App/UserControl/CtrlTarget.cs

@@ -17,17 +17,12 @@ using DW5S.App.EditForms;
 using DW5S.Entity;
 using DW5S.Repostory;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class CtrlTarget : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
-
         readonly List<TargetInfo> list = new List<TargetInfo>();
         public CtrlTarget()
         {
@@ -40,6 +35,7 @@ namespace DW5S.App.UserControl
                 gridTar.UseDefault(list).UseMultiSelect().UseRowNumber()
                     .UseAddAsync(Add).UseEditAsync<TargetInfo>(Edit).UseDeleteAsync<TargetInfo>(Del);
 
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsTarget = unitOfWork.Of<TargetInfo>();
                 var res = await repsTarget.GetAllAsync(p => p.TargetName);
                 list.AddRange(res);
@@ -60,6 +56,7 @@ namespace DW5S.App.UserControl
                 TargetEditor frm = new TargetEditor();
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 var addItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsTarget = unitOfWork.Of<TargetInfo>();
                 await repsTarget.AddOrUpdateAsync(addItem);
                 await unitOfWork.SaveAsync();
@@ -80,6 +77,7 @@ namespace DW5S.App.UserControl
                 TargetEditor frm = new TargetEditor(editItem);
                 if (frm.ShowDialog() != DialogResult.OK) return null;
                 editItem = frm.info;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsTarget = unitOfWork.Of<TargetInfo>();
                 var find = await repsTarget.FirstOrDefaultAsync(p => p.Id == editItem.Id);
                 find.TargetName = editItem.TargetName;
@@ -102,6 +100,7 @@ namespace DW5S.App.UserControl
             try
             {
                 var ids = list.Select(p => p.Id);
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsTarget = unitOfWork.Of<TargetInfo>();
                 await repsTarget.DeleteAsync(list);
                 await unitOfWork.SaveAsync();

+ 3 - 6
DW5S.App/UserControl/CtrlTx.cs

@@ -14,17 +14,12 @@ using ExtensionsDev;
 using DW5S.Entity;
 using DW5S.Repostory;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class CtrlTx : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
-
         List<TxInfo> list = new List<TxInfo>();
 
         public CtrlTx()
@@ -42,6 +37,7 @@ namespace DW5S.App.UserControl
             try
             {
 
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSys = unitOfWork.Of<TxInfo>();
                 list = (await repsSys.GetAllAsync()).ToList();
                 var recTx = list.Find(p => p.TxType == EnumTxType.Rec);
@@ -135,6 +131,7 @@ namespace DW5S.App.UserControl
                 txRef.Lat = refLat;
                 tmp.Add(txRef);
 
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsSys = unitOfWork.Of<TxInfo>();
                 foreach (var item in tmp)
                 {

+ 7 - 7
DW5S.App/UserControl/CtrlXl.cs

@@ -15,18 +15,12 @@ using DW5S.Entity;
 using DW5S.Repostory;
 using Serilog;
 using static DevExpress.Xpo.Helpers.AssociatedCollectionCriteriaHelper;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class CtrlXl : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
-
-
         List<XlInfo> list = new List<XlInfo>();
         int maxCount = 0;
         int maxPage = 0;
@@ -44,6 +38,7 @@ namespace DW5S.App.UserControl
         {
             var sat = txtSat.EditValue as SatInfo;
             satCode = sat?.SatCode;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
             this.maxCount = await repsXl.GetCount(satCode);
             var countPerPage = Convert.ToInt32(txtCountPerPage.Text);
@@ -58,6 +53,7 @@ namespace DW5S.App.UserControl
 
         private async void CtrlXl_Load(object sender, EventArgs e)
         {
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
             var sat = await repsXl.GetAllSat();
             txtSat.UseDefault("不限制", true).SetData(sat, nameof(SatInfo.Sat));
@@ -96,6 +92,7 @@ namespace DW5S.App.UserControl
         {
             try
             {
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 this.maxCount = await repsXl.GetCount(satCode);
                 var countPerPage = Convert.ToInt32(txtCountPerPage.Text);
@@ -113,6 +110,7 @@ namespace DW5S.App.UserControl
         }
         private async Task LoadPageData(int currentPage)
         {
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
             var dtResult = await repsXl.GetPageAsync(currentPage, Convert.ToInt32(txtCountPerPage.Text), satCode);
             list.Clear();
@@ -180,6 +178,7 @@ namespace DW5S.App.UserControl
             try
             {
                 this.Enabled = false;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>();
                 await repsXl.DeleteAsync(list);
                 await unitOfWork.SaveAsync();
@@ -203,6 +202,7 @@ namespace DW5S.App.UserControl
             try
             {
                 this.Enabled = false;
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>();
                 await repsXl.DeleteAsync(list);
                 await unitOfWork.SaveAsync();

+ 3 - 8
DW5S.App/UserControl/X1D1GDOPParam.cs

@@ -14,19 +14,12 @@ using DW5S.DTO;
 using System.Configuration;
 using Serilog;
 using DevExpress.Utils.About;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class X1D1GDOPParam : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
-
-
-
         public MapControl mapControl1;
         public GDOP星地一星一地接口 Model => new GDOP星地一星一地接口()
         {
@@ -53,6 +46,7 @@ namespace DW5S.App.UserControl
             this.txtSatLocErr1.EditValue = 10000;
             this.txtCxErr.EditValue = 0.001;
             PosResType = item.PosResType;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsCg = unitOfWork.Of<CgRes>();
             var repsStation = unitOfWork.Of<StationRes>();
             var cg = repsCg.FirstOrDefaultAsync(m => m.Id == item.CgResID).Result;
@@ -154,6 +148,7 @@ namespace DW5S.App.UserControl
             try
             {
                 var mainCode = ucEphXYZMain.GetSatCode();
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 var mainxlInfo = await repsXl.GetLatestAsync(mainCode, sigTime);
                 if (mainxlInfo == null)

+ 3 - 5
DW5S.App/UserControl/X2D1GDOPParam.cs

@@ -14,17 +14,13 @@ using DevExpress.XtraEditors.DXErrorProvider;
 using DW5S.DTO;
 using System.Configuration;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class X2D1GDOPParam : DevExpress.XtraEditors.XtraUserControl
     {
         
-        
-
-        
-        
-
         public MapControl mapControl1;
         public GDOP星地两星一地接口 Model => new GDOP星地两星一地接口()
         {
@@ -53,6 +49,7 @@ namespace DW5S.App.UserControl
             {
                 layoutControlItem14.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
             }
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsCg = unitOfWork.Of<CgRes>();
             var repsStation = unitOfWork.Of<StationRes>();
             var cg = repsCg.FirstOrDefaultAsync(m => m.Id == item.CgResID).Result;
@@ -155,6 +152,7 @@ namespace DW5S.App.UserControl
             {
                 var mainCode = ucEphXYZMain.GetSatCode();
                 var adjaCode = ucEphXYZAdja.GetSatCode();
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 var mainxlInfo = await repsXl.GetLatestAsync(mainCode, sigTime);
                 if (mainxlInfo == null)

+ 3 - 5
DW5S.App/UserControl/X2DFGDOPParam.cs

@@ -15,16 +15,12 @@ using DW5S.Entity;
 
 using DW5S.Repostory;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class X2DFGDOPParam : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
         public MapControl mapControl1;
         public X2DFGDOP接口 Model => new X2DFGDOP接口()
         {
@@ -52,6 +48,7 @@ namespace DW5S.App.UserControl
             this.txtDfoErr1.EditValue = 0.01;
             this.txtDtousErr1.EditValue = 1;
             PosResType = item.PosResType;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsCg = unitOfWork.Of<CgRes>();
             var repsStation = unitOfWork.Of<StationRes>();
             var cg = repsCg.FirstOrDefaultAsync(m => m.Id == item.CgResID).Result;
@@ -169,6 +166,7 @@ namespace DW5S.App.UserControl
             {
                 var mainCode = ucEphXYZMain.GetSatCode();
                 var adjaCode = ucEphXYZAdja.GetSatCode();
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 var mainxlInfo = await repsXl.GetLatestAsync(mainCode, sigTime);
                 if (mainxlInfo == null)

+ 3 - 5
DW5S.App/UserControl/X3DFGDOPParam .cs

@@ -13,16 +13,12 @@ using DW5S.Entity;
 
 using DW5S.Repostory;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class X3DFGDOPParam : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
         public MapControl mapControl1;
         public X3DFGDOP接口 Model => new X3DFGDOP接口()
         {
@@ -49,6 +45,7 @@ namespace DW5S.App.UserControl
             this.txtEphVelErr1.EditValue = 0.1;
             this.txtDfoErr1.EditValue = 0.01;
             PosResType = item.PosResType;
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsCg = unitOfWork.Of<CgRes>();
             var repsStation = unitOfWork.Of<StationRes>();
             var cg = repsCg.FirstOrDefaultAsync(m => m.Id == item.CgResID).Result;
@@ -165,6 +162,7 @@ namespace DW5S.App.UserControl
                 var mainCode = ucEphXYZMain.GetSatCode();
                 var adja1Code = ucEphXYZAdja1.GetSatCode();
                 var adja2Code = ucEphXYZAdja2.GetSatCode();
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 var mainxlInfo = await repsXl.GetLatestAsync(mainCode, sigTime);
                 if (mainxlInfo == null)

+ 3 - 5
DW5S.App/UserControl/X3GDOPParam.cs

@@ -13,16 +13,12 @@ using DevExpress.XtraEditors.DXErrorProvider;
 using DW5S.DTO;
 using System.Configuration;
 using Serilog;
+using DW5S.Service;
 
 namespace DW5S.App.UserControl
 {
     public partial class X3GDOPParam : DevExpress.XtraEditors.XtraUserControl
     {
-        
-        
-
-        
-        
         public MapControl mapControl1;
         public X3GDOP星地接口 Model => new X3GDOP星地接口()
         {
@@ -49,6 +45,7 @@ namespace DW5S.App.UserControl
             {
                 layoutControlItem14.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
             }
+            var unitOfWork = IocContainer.UnitOfWork;
             var repsCg = unitOfWork.Of<CgRes>();
             var repsStation = unitOfWork.Of<StationRes>();
             var cg = repsCg.FirstOrDefaultAsync(m => m.Id == item.CgResID).Result;
@@ -150,6 +147,7 @@ namespace DW5S.App.UserControl
                 var mainCode = ucEphXYZMain.GetSatCode();
                 var adja1Code = ucEphXYZAdja1.GetSatCode();
                 var adja2Code = ucEphXYZAdja2.GetSatCode();
+                var unitOfWork = IocContainer.UnitOfWork;
                 var repsXl = unitOfWork.Of<XlInfo>() as XlRepository;
                 var mainxlInfo = await repsXl.GetLatestAsync(mainCode, sigTime);
                 if (mainxlInfo == null)

+ 6 - 17
DW5S.Controller/TaskController.cs

@@ -27,14 +27,6 @@ namespace DW5S.App.Controllers
 
         IUnitOfWork unitOfWork { get; set; }
 
-        TestService ts { get; set; }
-
-        TestService ss;
-        public TaskController()
-        {
-        }
-
-
         /// <summary>
         /// 获取客户端IP地址
         /// </summary>
@@ -44,16 +36,13 @@ namespace DW5S.App.Controllers
         {
             try
             {
-                var dd1=IocContainer.UnitOfWork;
-                var dd2=IocContainer.UnitOfWork;
-                //var qq = logger.ToString();
                 var ip = RemoteIp;
                 return Success(ip);
             }
             catch (Exception ex)
             {
                 string error = "获取客户端IP出错";
-                //logger.Error(ex, error);
+                logger.Error(ex, error);
                 return Error<string>(error);
             }
         }
@@ -80,16 +69,16 @@ namespace DW5S.App.Controllers
                 await repsTask.AddOrUpdateAsync(item);
                 await unitOfWork.SaveAsync();
                 Messenger.Defalut.Pub("任务状态改变", dto.ID);
-                //if (dto.StopType == EnumTaskStopType.Properly)
-                //logger.Information($"任务停止完成,ID={dto.ID},停止原因={dto.StopReason}");
-                //else
-                //logger.Error($"任务停止完成,ID={dto.ID},停止原因={dto.StopReason}");
+                if (dto.StopType == EnumTaskStopType.Properly)
+                    logger.Information($"任务停止完成,ID={dto.ID},停止原因={dto.StopReason}");
+                else
+                    logger.Error($"任务停止完成,ID={dto.ID},停止原因={dto.StopReason}");
                 return Success();
             }
             catch (Exception ex)
             {
                 string msg = $"任务停止异常.ID={dto.ID}";
-                //logger.Error(ex, msg);
+                logger.Error(ex, msg);
                 return Error(msg);
             }
         }

+ 2 - 1
DW5S.Repostory/04.DW5S.Repostory.csproj

@@ -1,10 +1,11 @@
-<Project Sdk="Microsoft.NET.Sdk">
+<Project Sdk="Microsoft.NET.Sdk">
 	<PropertyGroup>
 		<TargetFramework>net7.0</TargetFramework>
 		<ImplicitUsings>enable</ImplicitUsings>
 		<Nullable>disable</Nullable>
 	</PropertyGroup>
 	<ItemGroup>
+		<PackageReference Include="Autofac" Version="8.1.1" />
 		<PackageReference Include="EFCore.NamingConventions" Version="7.0.2" />
 		<PackageReference Include="Microsoft.EntityFrameworkCore" Version="7.0.20" />
 		<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.20">

+ 1 - 11
DW5S.Service/IocContainer.cs → DW5S.Repostory/IocContainer.cs

@@ -1,5 +1,4 @@
 using Autofac;
-using DW5S.Repostory;
 using Microsoft.AspNetCore.Http;
 using Serilog;
 using System;
@@ -8,17 +7,8 @@ using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
 
-namespace DW5S.Service
+namespace DW5S.Repostory
 {
-    public class TestService
-    {
-        public ILogger Logger { get; set; }
-
-        public IUnitOfWork DD { get; set; }
-        public TestService()
-        {
-        }
-    }
     public static class IocContainer
     {
         public static void Init(ILifetimeScope container)

+ 2 - 1
DW5S.Repostory/UnitOfWork.cs

@@ -18,7 +18,8 @@ namespace DW5S.Repostory
 
         public IRepository<TEntity> Of<TEntity>() where TEntity : BaseEntity
         {
-            throw new NotImplementedException();
+            var reps = IocContainer.GetService<IRepository<TEntity>>();
+            return reps;
         }
 
         public UnitOfWork(OracleContext ctx)

+ 2 - 0
DW5S.WebApi/WebApiHelper.cs

@@ -174,6 +174,8 @@ namespace DW5S.WebApi
             var hostBuilder = builder.Host.ConfigureContainer<Autofac.ContainerBuilder>(builder =>
             {
                 //注入IRepository
+                builder.RegisterGeneric(typeof(Repository<>)).As(typeof(IRepository<>))
+                    .InstancePerLifetimeScope();
                 builder.RegisterAssemblyTypes(assemblies)
                     .Where(t => t.Name.Contains("Repository"))
                     .AsClosedTypesOf(typeof(IRepository<>))