diff --git a/BWP.B3_YunKen.Web/BWP.B3_YunKen.Web.csproj b/BWP.B3_YunKen.Web/BWP.B3_YunKen.Web.csproj index 579aa4e..c9cc022 100644 --- a/BWP.B3_YunKen.Web/BWP.B3_YunKen.Web.csproj +++ b/BWP.B3_YunKen.Web/BWP.B3_YunKen.Web.csproj @@ -194,6 +194,7 @@ + diff --git a/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/OrderEdit_Ext.cs b/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/OrderEdit_Ext.cs index 7477209..f761c0e 100644 --- a/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/OrderEdit_Ext.cs +++ b/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/OrderEdit_Ext.cs @@ -1,17 +1,32 @@ using BWP.Web.Pages.B3Sale.Bills.Order_; using BWP.Web.Layout; using TSingSoft.WebControls2; +using BWP.B3_YunKen.Rpcs; +using BWP.B3Sale.BO; +using Forks.EnterpriseServices.DomainObjects2.DQuery; +using Forks.EnterpriseServices.DomainObjects2; +using Forks.EnterpriseServices.BusinessInterfaces; +using BWP.Web.Pages.Utils; namespace BWP.Web.Pages.B3YunKen.Overlays { public class OrderEdit_Ext:OrderEdit { protected override void AddCarDriverInfoConfig(LayoutManager layOutManager, AutoLayoutConfig config) - { + { + layOutManager.Add("Driver_Name", new DFValueLabel()); + layOutManager.Add("DriverCard", new DFValueLabel()); + layOutManager.Add("DriverPhone", new DFValueLabel()); + layOutManager.Add("DriverPhone1", new DFValueLabel()); + layOutManager.Add("EngineNumber", new DFValueLabel()); + layOutManager.Add("VinNO", new DFValueLabel()); + layOutManager.Add("HandcarNumber", new DFValueLabel()); + layOutManager.Add("CellPhone", new DFValueLabel()); config.Add("DriverIDCard"); - config.Add("Driver_ID"); + config.Add("Driver_Name"); config.Add("DriverCard"); config.Add("DriverPhone"); + config.Add("DriverPhone1"); config.Add("Car_ID"); config.Add("EngineNumber"); config.Add("VinNO"); @@ -32,44 +47,55 @@ namespace BWP.Web.Pages.B3YunKen.Overlays base.AddLayOutManagerScript(layoutPanel); var idCard = layoutPanel.EnsureInputControlCreated("DriverIDCard");//司机身份证号下拉 var carid = layoutPanel.EnsureInputControlCreated("Car_ID");//运输车辆下拉 + idCard.AutoPostBack = true; + carid.AutoPostBack = true; //选择司机身份证号带出驾驶证号和司机名字 - if (idCard != null) - { - idCard.OnClientSelected += @"var idCard = this.front.value; -simpleRestCall('/MainSystem/B3_YunKen/Rpcs/DriverRpc/GetDriverInfoByIDCard',[idCard], -function(result){ -if(result.ID != null && result.ID != undefined){ -__DFContainer.getControl('Driver_ID').fill(result.ID,result.Name); -}else{ -__DFContainer.getControl('Driver_ID').fill('',''); -} -if(result.DriverCard != null && result.DriverCard != undefined){ -__DFContainer.setValue('DriverCard',result.DriverCard); -}else{ -__DFContainer.setValue('DriverCard',''); -} -if(result.Telephone != null && result.Telephone != undefined){ -__DFContainer.setValue('DriverPhone',result.Telephone); -}else{ -__DFContainer.setValue('DriverPhone',''); -} -},{ });"; + if (idCard != null) { + idCard.SelectedValueChanged += delegate { + mDFContainer.GetFromUIParitially("DriverIDCard"); + if (!string.IsNullOrEmpty(Dmo.DriverIDCard)) { + var driver = Util.GetDriverInfoByIDCard(Dmo.DriverIDCard); + if (driver != null) { + Dmo.Driver_ID = driver.ID; + Dmo.Driver_Name = driver.Name; + Dmo.DriverCard = driver.DriverCard; + Dmo.DriverPhone = driver.Telephone; + Dmo.DriverPhone1 = driver.LinkTypeOne; + } else { + Dmo.Driver_ID = null; + Dmo.Driver_Name = string.Empty; + Dmo.DriverCard = string.Empty; + Dmo.DriverPhone = string.Empty; + Dmo.DriverPhone1 = string.Empty; + } + AppToUI(); + } + }; } + //选择运输车辆带出发动机号、车架号、挂车车牌号 if (carid!=null) { - carid.OnClientSelected += @"var carid = this.front.value; -simpleRestCall('/MainSystem/B3_YunKen/Rpcs/DriverRpc/GetCarInfoByCarID',[carid], -function(result){ -if(result!=null){ -__DFContainer.setValue('EngineNumber',result.EngineNumber); -__DFContainer.setValue('VinNO',result.VinNO); -__DFContainer.setValue('HandcarNumber',result.HandcarNumber); -} -},{ });"; + carid.SelectedValueChanged += delegate { + mDFContainer.GetFromUIParitially("Car_ID"); + if (Dmo.Car_ID.HasValue) { + var car = Util.GetCarInfoByCarID(Dmo.Car_ID.Value); + if (car != null) { + Dmo.EngineNumber = car.EngineNumber; + Dmo.VinNO = car.VinNO; + Dmo.HandcarNumber = car.HandcarNumber; + } else { + Dmo.EngineNumber = string.Empty; + Dmo.VinNO = string.Empty; + Dmo.HandcarNumber = string.Empty; + } + AppToUI(); + } + }; } } + } } diff --git a/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/SaleOutStoreEdit_Ext.cs b/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/SaleOutStoreEdit_Ext.cs index e2ec86e..4fdc1ec 100644 --- a/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/SaleOutStoreEdit_Ext.cs +++ b/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/SaleOutStoreEdit_Ext.cs @@ -12,17 +12,26 @@ using System.Web.UI.WebControls; using BWP.B3Sale.BO; using BWP.Web.WebControls; using BWP.B3_YunKen; +using BWP.Web.Pages.Utils; namespace BWP.Web.Pages.B3YunKen.Overlays { public class SaleOutStoreEdit_Ext: SaleOutStoreEdit { - protected override void AddCarDriverInfo(LayoutManager layoutManager, AutoLayoutConfig config) + protected override void AddCarDriverInfo(LayoutManager layOutManager, AutoLayoutConfig config) { + layOutManager.Add("Driver_Name", new DFValueLabel()); + layOutManager.Add("DriverCard", new DFValueLabel()); + layOutManager.Add("DriverPhone", new DFValueLabel()); + layOutManager.Add("DriverPhone1", new DFValueLabel()); + layOutManager.Add("EngineNumber", new DFValueLabel()); + layOutManager.Add("VinNO", new DFValueLabel()); + layOutManager.Add("HandcarNumber", new DFValueLabel()); config.Add("DriverIDCard"); - config.Add("Driver_ID"); + config.Add("Driver_Name"); config.Add("DriverCard"); config.Add("DriverPhone"); + config.Add("DriverPhone1"); config.Add("Car_ID"); config.Add("EngineNumber"); config.Add("VinNO"); @@ -63,46 +72,50 @@ namespace BWP.Web.Pages.B3YunKen.Overlays base.AddLayOutManagerScript(layoutPanel); var idCard = layoutPanel.EnsureInputControlCreated("DriverIDCard");//司机身份证号下拉 var carid = layoutPanel.EnsureInputControlCreated("Car_ID");//运输车辆下拉 - - - - + idCard.AutoPostBack = true; + carid.AutoPostBack = true; //选择司机身份证号带出驾驶证号和司机名字 - if (idCard != null) - { - idCard.OnClientSelected += @"var idCard = this.front.value; -simpleRestCall('/MainSystem/B3_YunKen/Rpcs/DriverRpc/GetDriverInfoByIDCard',[idCard], -function(result){ -if(result.ID != null && result.ID != undefined){ -__DFContainer.getControl('Driver_ID').fill(result.ID,result.Name); -}else{ -__DFContainer.getControl('Driver_ID').fill('',''); -} -if(result.DriverCard != null && result.DriverCard != undefined){ -__DFContainer.setValue('DriverCard',result.DriverCard); -}else{ -__DFContainer.setValue('DriverCard',''); -} -if(result.Telephone != null && result.Telephone != undefined){ -__DFContainer.setValue('DriverPhone',result.Telephone); -}else{ -__DFContainer.setValue('DriverPhone',''); -} - -},{ });"; + if (idCard != null) { + idCard.SelectedValueChanged += delegate { + mDFContainer.GetFromUIParitially("DriverIDCard"); + if (!string.IsNullOrEmpty(Dmo.DriverIDCard)) { + var driver = Util.GetDriverInfoByIDCard(Dmo.DriverIDCard); + if (driver != null) { + Dmo.Driver_ID = driver.ID; + Dmo.Driver_Name = driver.Name; + Dmo.DriverCard = driver.DriverCard; + Dmo.DriverPhone = driver.Telephone; + Dmo.DriverPhone1 = driver.LinkTypeOne; + } else { + Dmo.Driver_ID = null; + Dmo.Driver_Name = string.Empty; + Dmo.DriverCard = string.Empty; + Dmo.DriverPhone = string.Empty; + Dmo.DriverPhone1 = string.Empty; + } + AppToUI(); + } + }; } + //选择运输车辆带出发动机号、车架号、挂车车牌号 - if (carid != null) - { - carid.OnClientSelected += @"var carid = this.front.value; -simpleRestCall('/MainSystem/B3_YunKen/Rpcs/DriverRpc/GetCarInfoByCarID',[carid], -function(result){ -if(result!=null){ -__DFContainer.setValue('EngineNumber',result.EngineNumber); -__DFContainer.setValue('VinNO',result.VinNO); -__DFContainer.setValue('HandcarNumber',result.HandcarNumber); -} -},{ });"; + if (carid != null) { + carid.SelectedValueChanged += delegate { + mDFContainer.GetFromUIParitially("Car_ID"); + if (Dmo.Car_ID.HasValue) { + var car = Util.GetCarInfoByCarID(Dmo.Car_ID.Value); + if (car != null) { + Dmo.EngineNumber = car.EngineNumber; + Dmo.VinNO = car.VinNO; + Dmo.HandcarNumber = car.HandcarNumber; + } else { + Dmo.EngineNumber = string.Empty; + Dmo.VinNO = string.Empty; + Dmo.HandcarNumber = string.Empty; + } + AppToUI(); + } + }; } } diff --git a/BWP.B3_YunKen.Web/Pages/Utils/Util.cs b/BWP.B3_YunKen.Web/Pages/Utils/Util.cs new file mode 100644 index 0000000..90ce7cf --- /dev/null +++ b/BWP.B3_YunKen.Web/Pages/Utils/Util.cs @@ -0,0 +1,62 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using BWP.B3Sale.BO; +using Forks.EnterpriseServices.BusinessInterfaces; +using Forks.EnterpriseServices.DomainObjects2; +using Forks.EnterpriseServices.DomainObjects2.DQuery; + +namespace BWP.Web.Pages.Utils +{ + public static class Util + { + public static Driver GetDriverInfoByIDCard(string idCard) + { + Driver driver = null; + var query = new DQueryDom(new JoinAlias(typeof(Driver))); + query.Where.Conditions.Add(DQCondition.EQ("IDCard", idCard)); + query.Columns.Add(DQSelectColumn.Field("ID")); + query.Columns.Add(DQSelectColumn.Field("Name")); + query.Columns.Add(DQSelectColumn.Field("DriverCard")); + query.Columns.Add(DQSelectColumn.Field("Telephone")); + query.Columns.Add(DQSelectColumn.Field("LinkTypeOne")); + using (var context = new TransactionContext()) { + using (var reader = context.Session.ExecuteReader(query)) { + if (reader.Read()) { + driver = new Driver(); + driver.ID = (long)reader[0]; + driver.Name = (string)reader[1]; + driver.DriverCard = (string)reader[2]; + driver.Telephone = (string)reader[3]; + driver.LinkTypeOne = (string)reader[4]; + } + } + } + return driver; + } + + public static Car GetCarInfoByCarID(long carid) + { + Car car = null; + var query = new DQueryDom(new JoinAlias(typeof(Car))); + query.Where.Conditions.Add(DQCondition.EQ("ID", carid)); + query.Columns.Add(DQSelectColumn.Field("ID")); + query.Columns.Add(DQSelectColumn.Field("EngineNumber")); + query.Columns.Add(DQSelectColumn.Field("VinNO")); + query.Columns.Add(DQSelectColumn.Field("HandcarNumber")); + using (var context = new TransactionContext()) { + using (var reader = context.Session.ExecuteReader(query)) { + if (reader.Read()) { + car = new Car(); + car.ID = (long)reader[0]; + car.EngineNumber = (string)reader[1]; + car.VinNO = (string)reader[2]; + car.HandcarNumber = (string)reader[3]; + } + } + } + return car; + } + } +}