using DevExpress.XtraEditors;
|
using HStation.PBS;
|
using PBS.Model;
|
using PBS.Vmo;
|
using Yw.WinFrmUI;
|
|
namespace PBS.WinFrmUI
|
{
|
public partial class EditPlaceDlg : DevExpress.XtraEditors.XtraForm
|
{
|
public EditPlaceDlg()
|
{
|
InitializeComponent();
|
this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
|
this.generalOkAndCancelCtrl1.OkEvent += GeneralOkAndCancelCtrl1_OkEvent; ;
|
}
|
|
private Vmo.PlaceVmo _placeVmo;
|
|
private ePlaceType _sign;
|
|
private BuildWizardForm _buildWizard;
|
private HospitalWizardForm _hospitalWizard;
|
private SchoolWizardForm _schoolWizard;
|
private ShopWizardForm _shopWizard;
|
|
public event Func<Vmo.PlaceVmo, Task<bool>> ReloadDataEvent;
|
|
public async void SetBindingData(PlaceVmo placeVmo)
|
{
|
_placeVmo = placeVmo;
|
var list = await new Yw.BLL.Division().GetAll();
|
this.treeList1.DataSource = list;
|
this.txtEditName.EditValue = _placeVmo.Name;
|
this.txtEditRegion.EditValue = _placeVmo.RegionID;
|
this.textEditAddress.EditValue = _placeVmo.Address;
|
switch (_placeVmo.PlaceType)
|
{
|
case ePlaceType.Build:
|
_buildWizard = new BuildWizardForm();
|
_buildWizard.Dock = DockStyle.Fill;
|
_buildWizard.SetData(Yw.JsonHelper.Json2Object<PlaceBuildParasInfo>(_placeVmo.PlaceInfo));
|
this.panelControl1.Controls.Add(_buildWizard);
|
break;
|
|
case ePlaceType.Hospital:
|
_hospitalWizard = new HospitalWizardForm();
|
_hospitalWizard.Dock = DockStyle.Fill;
|
_hospitalWizard.SetData(Yw.JsonHelper.Json2Object<PlaceHospitalParasInfo>(_placeVmo.PlaceInfo));
|
this.panelControl1.Controls.Add(_hospitalWizard);
|
break;
|
|
case ePlaceType.Shop:
|
_shopWizard = new ShopWizardForm();
|
_shopWizard.Dock = DockStyle.Fill;
|
_shopWizard.SetData(Yw.JsonHelper.Json2Object<PlaceShopParasInfo>(_placeVmo.PlaceInfo));
|
this.panelControl1.Controls.Add(_shopWizard);
|
break;
|
|
case ePlaceType.School:
|
_schoolWizard = new SchoolWizardForm();
|
_schoolWizard.Dock = DockStyle.Fill;
|
_schoolWizard.SetData(Yw.JsonHelper.Json2Object<PlaceSchoolParasInfo>(_placeVmo.PlaceInfo));
|
this.panelControl1.Controls.Add(_schoolWizard);
|
break;
|
}
|
/* if (list != null && list.Count > 0)
|
{
|
foreach (var item in list)
|
{
|
var vm = new DivisionViewModel(item);
|
_allBindingList.Add(vm);
|
}
|
}
|
this.divisionViewModelBindingSource.DataSource = _allBindingList;*/
|
}
|
|
private bool Valid()
|
{
|
bool isExist = true;
|
this.dxErrorProvider1.ClearErrors();
|
if (string.IsNullOrEmpty(this.txtEditName.Text.Trim()))
|
{
|
this.dxErrorProvider1.SetError(this.txtEditName, "必填项");
|
isExist = false;
|
}
|
return isExist;
|
}
|
|
/// <summary>
|
/// 确定
|
/// </summary>
|
private async void GeneralOkAndCancelCtrl1_OkEvent()
|
{
|
if (!Valid())
|
return;
|
switch (_sign)
|
{
|
case ePlaceType.Build:
|
_placeVmo.PlaceInfo = Yw.JsonHelper.Object2Json(_buildWizard.GetData());
|
break;
|
|
case ePlaceType.Shop:
|
_placeVmo.PlaceInfo = Yw.JsonHelper.Object2Json(_shopWizard.GetData());
|
break;
|
|
case ePlaceType.Hospital:
|
_placeVmo.PlaceInfo = Yw.JsonHelper.Object2Json(_hospitalWizard.GetData());
|
break;
|
|
case ePlaceType.School:
|
_placeVmo.PlaceInfo = Yw.JsonHelper.Object2Json(_schoolWizard.GetData());
|
break;
|
}
|
_placeVmo.Name = txtEditName.Text.Trim();
|
_placeVmo.Address = textEditAddress.Text.Trim();
|
_placeVmo.UseStatus = Yw.Vmo.eUseStatus.Enable;
|
if (this.txtEditRegion.EditValue != null)
|
{
|
_placeVmo.RegionID = Convert.ToInt64(this.txtEditRegion.EditValue);
|
}
|
if (await ReloadDataEvent.Invoke(_placeVmo))
|
{
|
TipFormHelper.ShowSucceed("修改成功!");
|
}
|
else
|
{
|
TipFormHelper.ShowError("修改失败!");
|
}
|
this.Close();
|
}
|
}
|
}
|