123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- using DW5S.Entity;
- using DW5S.Repostory;
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.Linq;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using XdCxRhDW5S.ViewModel;
- namespace DW5S.App.UserControl
- {
- public partial class CtrlCDBSat : DevExpress.XtraEditors.XtraUserControl
- {
- readonly List<SatViewModel> list = new List<SatViewModel>();
- public CtrlCDBSat()
- {
- InitializeComponent();
- }
- private async void CtrlSat_Load(object sender, EventArgs e)
- {
- try
- {
- gridCDBSat.UseDefault(list).UseMultiSelect().UseRowNumber()
- .HideColumn(nameof(SatViewModel.SatLon))
- .UseAddAsync(Add)
- .UseEditAsync<SatViewModel>(Edit)
- .UseDeleteAsync<SatViewModel>(Delete);
- var unitOfWork = IocContainer.UnitOfWork;
- var reps = unitOfWork.Of<SatInfo>();
- var items = await reps.FindAsync(p => p.EnumSatType == EnumSatType.CdbSat);
- list.AddRange(items.OrderBy(p=>p.SatName).To<List<SatViewModel>>());
- }
- catch (Exception ex)
- {
- IocContainer.Logger.Error("查询地面站卫星信息异常", ex);
- DxHelper.MsgBoxHelper.ShowError("查询地面站卫星信息异常");
- }
- }
- private async Task<SatViewModel> Add()
- {
- try
- {
- CDBSatEditor frm = new CDBSatEditor();
- if (frm.ShowDialog() != DialogResult.OK) return null;
- var addItem = frm.info;
- var unitOfWork = IocContainer.UnitOfWork;
- var repsSat = unitOfWork.Of<SatInfo>();
- var satInfo = await repsSat.AddOrUpdateAsync(addItem.To<SatInfo>());
- await unitOfWork.SaveAsync(typeof(SatInfo));
- addItem.Id = satInfo.Id;
- return addItem;
- }
- catch (Exception ex)
- {
- IocContainer.Logger.Error("添加地面站卫星信息异常", ex);
- DxHelper.MsgBoxHelper.ShowError("添加地面站卫星信息异常");
- return null;
- }
- }
- private async Task<SatViewModel> Edit(SatViewModel editItem)
- {
- try
- {
- CDBSatEditor frm = new CDBSatEditor(editItem);
- if (frm.ShowDialog() != DialogResult.OK) return null;
- editItem = frm.info;
- var unitOfWork = IocContainer.UnitOfWork;
- var repsSat = unitOfWork.Of<SatInfo>();
- await repsSat.AddOrUpdateAsync(editItem.To<SatInfo>());
- await unitOfWork.SaveAsync(typeof(SatInfo));
- return editItem;
- }
- catch (Exception ex)
- {
- IocContainer.Logger.Error("保存地面站卫星信息异常", ex);
- DxHelper.MsgBoxHelper.ShowError("保存地面站卫星信息异常");
- return null;
- }
- }
- private async Task<bool> Delete(List<SatViewModel> list)
- {
- try
- {
- var ids = list.Select(p => p.Id);
- var unitOfWork = IocContainer.UnitOfWork;
- var repsSat = unitOfWork.Of<SatInfo>();
- await repsSat.DeleteAsync(list.To<List<SatInfo>>());
- await unitOfWork.SaveAsync(typeof(SatInfo));
- return true;
- }
- catch (Exception ex)
- {
- IocContainer.Logger.Error("删除地面站卫星信息异常", ex);
- DxHelper.MsgBoxHelper.ShowError("删除地面站卫星信息异常");
- return false;
- }
- }
- }
- }
|