using System; using System.Collections.Generic; using System.Web.UI.WebControls; using System.Data; using SuperMap.RealEstate.Web.UI.WebControls; using CMB = SuperMap.RealEstate.Coop.Merchant.Business; using HCC = HZQR.Common.Common; namespace SuperMap.RealEstate.ExchangeData.Modules.MachineManage { public partial class ModifyConfig : BasePage { #region 方法 -> 页面加载 protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) return; //初始化下拉框参数 DropDownListLoad(); //加载树复选框勾选事件 FixTreeViewNodeChecked(MyTreeView); //绑定服务区门店树 BindServerPartData(); //设置“统一配置项设置”按钮点击事件 btn_Set.OnClientClick = GetOpenPopDialogClientScript("../MachineInfo/FIELDENUMList.aspx", "FIELDENUMList", 1000, 720); //设置按钮状态 SetControlClientAction(ButtonSave); SetControlClientAction(ButtonSearch); //注册遮罩式窗口关闭脚本 SetControlClosePopDialog(ButtonClose); } #endregion #region 方法 -> 绑定下列表 private void DropDownListLoad() { //绑定参数列表 Parameter.Clear(); string sql = "SELECT FIELDENUM_NAME,FIELDENUM_VALUE FROM HIGHWAY_EXCHANGE.V_FIELDENUM WHERE FIELDENUM_BATCH = 1"; DataTable dataTable = new Business.FIELDENUM(this.Transaction).ExecuteDataTable(sql); foreach (DataRow _DataRow in dataTable.Rows) { ListItemEx _ListItemEx = new ListItemEx(); _ListItemEx.Text = _DataRow["FIELDENUM_NAME"].ToString(); _ListItemEx.Value = _DataRow["FIELDENUM_VALUE"].ToString(); Parameter.Items.Add(_ListItemEx); } } #endregion #region 方法 -> 列表筛选 protected void Parameter_SelectedValueChanged(object sender, EventArgs e) { //初始化属性 TextBoxParameter.Text = ""; DropDownListParameter.Visible = false; TextBoxParameter.Visible = false; TextBoxParameter.ValidType = ValidTypeEnum.NoSet; //string name = Parameter.SelectedItem.Text; #region 根据参数类型判断显示的控件并绑定数据源 Business.FIELDENUM _FIELDENUM = new Business.FIELDENUM(this.Transaction); string sql = "SELECT FIELDENUM_CONTROLTYPE,FIELDENUM_INITIALVALUE FROM HIGHWAY_EXCHANGE.V_FIELDENUM " + "WHERE FIELDENUM_VALUE = '" + Parameter.SelectedValue + "'"; DataTable ControltypeTable = _FIELDENUM.ExecuteDataTable(sql); //根据控件类型判断显示控件 if (ControltypeTable.Rows.Count > 0) { if (ControltypeTable.Rows[0]["FIELDENUM_CONTROLTYPE"].ToString() == "0") { DropDownListParameter.Visible = true; } else if (ControltypeTable.Rows[0]["FIELDENUM_CONTROLTYPE"].ToString() == "1") { TextBoxParameter.Text = ControltypeTable.Rows[0]["FIELDENUM_INITIALVALUE"].ToString(); TextBoxParameter.Visible = true; } } DropDownListParameter.Items.Clear(); //参数值下拉框绑定值 string sqls = @"SELECT FIELDENUM_DESC,FIELDENUM_INITIALVALUE FROM HIGHWAY_EXCHANGE.T_FIELDENUM A WHERE EXISTS (SELECT 1 FROM HIGHWAY_EXCHANGE.T_FIELDENUM B,PLATFORM_DICTIONARY.T_FIELDENUM C WHERE A.FIELDENUM_PID = B.FIELDENUM_ID AND B.FIELDENUM_PID = C.FIELDENUM_ID AND C.FIELDENUM_VALUE = '" + Parameter.SelectedValue + "')"; DataTable dtParameter = _FIELDENUM.ExecuteDataTable(sqls); //获取下拉框默认值并绑定 string _SelectSql = @"SELECT FIELDENUM_OPTION FROM HIGHWAY_EXCHANGE.T_FIELDENUM A WHERE EXISTS (SELECT 1 FROM PLATFORM_DICTIONARY.T_FIELDENUM B WHERE A.FIELDENUM_PID = B.FIELDENUM_ID AND B.FIELDENUM_VALUE = '" + Parameter.SelectedValue + "')"; DataTable dtDefaultValue = _FIELDENUM.ExecuteDataTable(_SelectSql); if (dtParameter.Rows.Count > 0) { foreach (DataRow dr in dtParameter.Rows) { ListItemEx _ListItemEx = new ListItemEx(); _ListItemEx.Text = dr["FIELDENUM_DESC"].ToString(); _ListItemEx.Value = dr["FIELDENUM_INITIALVALUE"].ToString(); if (dtDefaultValue.Rows[0][0].ToString() == dr["FIELDENUM_INITIALVALUE"].ToString()) { _ListItemEx.Selected = true; } DropDownListParameter.Items.Add(_ListItemEx); } } #endregion } #endregion #region 方法 -> 保存 protected void ButtonSave_Click(object sender, EventArgs e) { Business.MACHINECONFIGURATION _MACHINECONFIGURATION = new Business.MACHINECONFIGURATION(this.Transaction); //获取要修改的参数的值 string Parametertxt = ""; if (TextBoxParameter.Visible == true) { Parametertxt = TextBoxParameter.Text; } else { Parametertxt = DropDownListParameter.SelectedValue; } //获取选择的服务区和门店 string ServerpartShopCodeS = ""; List ServerpartShopCodeList = new List(); foreach (TreeNode _TreeNode in MyTreeView.CheckedNodes) { if (_TreeNode.ChildNodes.Count == 0) { ServerpartShopCodeList.Add(_TreeNode.Parent.Text.Split('【')[1].Split('】')[0] + _TreeNode.Text.Split('【')[1].Split('】')[0]); ServerpartShopCodeS += (ServerpartShopCodeS == "" ? "" : ",") + _TreeNode.Parent.Text.Split('【')[1].Split('】')[0] + _TreeNode.Text.Split('【')[1].Split('】')[0]; } } //执行修改和添加 if (ServerpartShopCodeList.Count > 0) { string WhereSQL = HCC.Common.GetInString("B.SERVERPARTCODE || B.SHOPCODE", ServerpartShopCodeList); string _UpdateSql = string.Format(@"UPDATE HIGHWAY_EXCHANGE.T_MACHINECONFIGURATION A SET CONFIGURATION_VALUES = '{0}',CONFIGURATION_DATE = SYSDATE WHERE EXISTS (SELECT 1 FROM HIGHWAY_EXCHANGE.T_MACHINEUSEAG B WHERE A.MACHINEBASEINFO_ID = B.MACHINEBASEINFO_ID AND {1}) AND CONFIGURATION_NAME = '{2}'", Parametertxt, WhereSQL, Parameter.SelectedValue); string _InsertSql = string.Format(@"INSERT INTO HIGHWAY_EXCHANGE.T_MACHINECONFIGURATION ( MACHINECONFIGURATION_ID,MACHINEBASEINFO_ID,MACHINE_MACADDRESS, CONFIGURATION_NAME,CONFIGURATION_VALUES,CONFIGURATION_DATE) SELECT HIGHWAY_EXCHANGE.SEQ_MACHINECONFIGURATION.NEXTVAL, MACHINEBASEINFO_ID,MACHINE_MACADDRESS,'{0}','{1}',SYSDATE FROM HIGHWAY_EXCHANGE.V_MACHINEUSEAG B WHERE MACHINEUSEAG_STATUS = 1 AND {2} AND NOT EXISTS ( SELECT 1 FROM HIGHWAY_EXCHANGE.T_MACHINECONFIGURATION A WHERE B.MACHINEBASEINFO_ID = A.MACHINEBASEINFO_ID AND A.CONFIGURATION_NAME = '{0}')", Parameter.SelectedValue, Parametertxt, WhereSQL); try { _MACHINECONFIGURATION.ExecuteNonQuery(_UpdateSql, null); _MACHINECONFIGURATION.ExecuteNonQuery(_InsertSql, null); //下发“更新机器配置信息”的指令到收银机 HCC.CommonHelper.PostCommandToSocketService(ServerpartShopCodeS, HZQR.Common.WebSocketEnum.DownloadTable.机器参数.ToInt32().ToString(), DateTime.Now.ToString()); Alert("下发成功!", 3); } catch (Exception ex) { Alert("下发失败,请重试!\r\n" + ex.Message, 3); } } else { Alert("请选择,要下发的门店!", 3); } } #endregion #region 方法 -> 绑定树信息 private void BindServerPartData() { MyTreeView.Nodes.Clear(); new CMB.OWNERUNIT(Transaction).BindingTreeView("-1", MyTreeView.Nodes, TextBoxSearch.Text.Trim(), true, "", "", "", true, "Organization", "none", "", true, true, false, " AND OWNERUNIT_PID = -1 AND OWNERUNIT_NATURE = 1000"); } #endregion #region 方法 -> 查询服务区门店树 protected void ButtonSearch_Click(object sender, EventArgs e) { BindServerPartData(); if (!string.IsNullOrWhiteSpace(TextBoxSearch.Text.Trim())) { MyTreeView.ExpandAll(); } } #endregion } }