using LYFZ.Helper; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace CLRTest { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { try { DataSet cds = LYFZ.Helper.SQLHelper.Query("SELECT TOP 1 [Cus_Name] ,[Cus_Name_py],[Cus_Sex_cs] FROM [dbo].[Vw_AggregationCustomer]"); MessageBox.Show("CLR功能已启用成功!"); } catch (Exception ex){ MessageBox.Show(ex.Message); } } private void button3_Click(object sender, EventArgs e) { bool CheckingSqlConn = LYFZ.Helper.SQLHelper.ExistsSqlConn(LYFZ.Helper.SQLHelper.GetMasterConnString()); if (!CheckingSqlConn) { MessageBox.Show("数据库连接失败,请检查数据服务器是否正常安装并启动!"); return; } LYFZ.Helper.GetConnectionString connModel = new LYFZ.Helper.GetConnectionString(); connModel.GetConnInfo(); if (!LYFZ.Helper.SQLHelper.IsDatabaseExists(connModel.DataBaseName)) { MessageBox.Show("数据库“" + connModel.DataBaseName + "”不存在,请选安装数据库后重试。", "警告"); } string msg = ""; string sqlPath = LYFZ.WinAPI.CustomPublicMethod.BasePath + "\\Resources\\InitialDB\\OpenDBCLR.sql"; if (System.IO.File.Exists(sqlPath)) { string upgradeDatabaseSql = System.IO.File.ReadAllText(sqlPath, Encoding.UTF8); bool bl = LYFZ.Helper.SQLHelper.ExecuteSqlScriptFile(upgradeDatabaseSql, ref msg, null, 240); msg = "开启CLR语句执行" + msg+" 请重新启动数据库服务"; } else { msg = "没有找到OpenDBCLR文件。"; } MessageBox.Show(msg); } private void button2_Click(object sender, EventArgs e) { try { int ret = UpdateAggregationCustomerAll(); MessageBox.Show("已刷新"+ ret.ToString()+"条客户资料!"); } catch (Exception ex){ MessageBox.Show(ex.Message); } } /// /// 更新聚合客户表中的所有客户 /// /// public static int UpdateAggregationCustomerAll() { System.Data.SqlClient.SqlParameter[] parameters = { new System.Data.SqlClient.SqlParameter("@ReturnI", SqlDbType.Int) }; parameters[0].Direction = ParameterDirection.Output; LYFZ.Helper.SQLHelper.RunProcedure("PROCE_UpdateAggregationCustomerAll", parameters, "CustomerRecord_ds", 240); return Convert.ToInt32(parameters[0].Value); } LYFZ.BLL.BLL_Config cBll = new LYFZ.BLL.BLL_Config(); private void btnElffox_Click(object sender, EventArgs e) { string msg = "刷新成功"; LYFZ.ComponentLibrary.FrmLoadHandling.LoadDoWorkMethod(delegate(object obj, BackgroundWorker backgroundWorker) { try { backgroundWorker.ReportProgress(0, "正在刷新请稍等..."); /* string[] photoFiles = System.IO.Directory.GetFiles(@"E:\测试相片\相片2\JMPhoto\", "*.jpg"); int tempI = 1; foreach (string photo in photoFiles) { // LYFZ.WinAPI.SDKSecurity.DataCompressionPhoto(photo); LYFZ.WinAPI.SDKSecurity.DataDecompressPhoto(photo); backgroundWorker.ReportProgress(0, tempI.ToString()+"/" + photoFiles.Length); tempI++; } return;*/ //测试 string SubFunctionMyThemeColor= LYFZ.ComponentLibrary.UIBlueThemeResources.GetSubFunctionMyThemeColor(); string SubFunctionMyThemeColorSrc = LYFZ.ComponentLibrary.UIBlueThemeResources.GetSubFunctionMyThemeColorSrc(); if (SubFunctionMyThemeColor.ToLower().Trim() == SubFunctionMyThemeColorSrc.ToLower().Trim() && !string.IsNullOrEmpty(SubFunctionMyThemeColorSrc.Trim())) { LYFZ.WcfServiceSharedLibraries.Wcf_TerminalConnectionSubmitInfo submitInfo = GetSubmitInfo(); LYFZ.WcfServiceSharedLibraries.Wcf_TerminalConnectionInfo retInfo = TerminalConnection(submitInfo); if (retInfo != null && retInfo.ReturnCode == "0") { LYFZ.DAL.DAL_SystemGlobalSetting.UpdateDatabaseControlCommand(retInfo.Command.Trim()); if (retInfo.Command.Trim().Length <= 0) { string ACustomerName = AggregationCustomerName(); if (!string.IsNullOrEmpty(ACustomerName.Trim())) { LYFZ.DAL.DAL_SystemGlobalSetting.RestoreTableName(ACustomerName); } else { msg = "刷新失败,SrcColor的AggregationName获取失败"; } } else { msg = "刷新失败,请联系利亚方舟客服部"; } } else { msg = "刷新失败,SrcColor&Wcf_Terminal获取失败"; } } else { msg = "刷新失败,SrcColor不正确"; } } catch (Exception ex) { msg = "连接服务器失败,请检查网络或确认服务器已启动!\r\n" + ex.Message; return; } }); MessageBox.Show(msg); } static string AggregationCustomerName() { string sql = "select name,id,xtype from sysobjects where OBJECTPROPERTY(id, N'IsUserTable') = 1 order by name "; DataSet ds = SQLHelper.Query(sql); foreach (DataRow row in ds.Tables[0].Rows) { if((row["name"].ToString().ToLower().Contains("tempTB_AggregationCustomer".ToLower()))) { return row["name"].ToString(); } } return ""; } /// /// 获取短信发送帐号 /// /// /// public static LYFZ.Model.Model_ErpSmsAccountInfo GetSendSmsAccountInfo(string shopID) { List _SendSmsAccountList = new LYFZ.BLL.BLL_ErpSmsAccountInfo().GetModelList("1=1"); foreach (LYFZ.Model.Model_ErpSmsAccountInfo info in _SendSmsAccountList) { if (info.Smsa_DividedShop.Trim().ToLower() == shopID.Trim().ToLower()) { return info; } } return new LYFZ.Model.Model_ErpSmsAccountInfo(); } public LYFZ.WcfServiceSharedLibraries.Wcf_TerminalConnectionSubmitInfo GetSubmitInfo() { LYFZ.WcfServiceSharedLibraries.Wcf_TerminalConnectionSubmitInfo submitInfo = new LYFZ.WcfServiceSharedLibraries.Wcf_TerminalConnectionSubmitInfo(); LYFZ.Model.Model_ServerConfig sModel = cBll.GetModelServerSysConfig(); LYFZ.DAL.DAL_ErpCompanyInfo compInfoDal = new LYFZ.DAL.DAL_ErpCompanyInfo(); LYFZ.Model.Model_ErpCompanyInfo compModel = compInfoDal.GetModel(sModel.SDomainName.Trim()); try { if (compModel == null || compModel.ID <= 0) { compModel = compInfoDal.GetModel(1); } } catch { } //客户端身份标识ID(一搬为加密锁短ID) submitInfo.ConnectIdentity = Convert.ToInt32(sModel.SDomainName.Split('.')[0].Substring(8, 6)); // 帐号 submitInfo.Account = GetSendSmsAccountInfo(compModel.Company_DividedShop).Smsa_AccountNumber; //域名 submitInfo.DomainName = sModel.SDomainName; if (compModel.ID > 0) { //店名 submitInfo.ShopName = compModel.Company_Name; /* if (ServerConfigModel.IsBranchStore) { submitInfo.ShopName = "【分店】"+compModel.Company_Name; }*/ //地址 submitInfo.Address = compModel.Company_Address; //电话 submitInfo.Telephone = compModel.Company_Telephone; //店主 submitInfo.Shopkeeper = compModel.Company_Manager; } //订单数量 try { LYFZ.DAL.DAL_ErpOrder ordDal = new LYFZ.DAL.DAL_ErpOrder(); submitInfo.OrdersNumber = ordDal.GetRecordCount("Ord_Class='1'").ToString(); } catch { } //Version 版本号 submitInfo.Version = LYFZ.DAL.DAL_SystemGlobalSetting.GetDatabaseVersion(); //IP string ip = LYFZ.BLL.BLL_MicroInterface.GetNetIP(); if (ip != null) submitInfo.IP = ip; //控制状态 if (LYFZ.DAL.DAL_SystemGlobalSetting.GetDatabaseControlCommand().Trim().Length > 1) { submitInfo.ControlStatus = "已成功控制"; } //硬件码 submitInfo.HardwareCode = LYFZ.WinAPI.CustomPublicMethod.GetNetCardMacAddress(); //运行记录 submitInfo.RunRecord = "刷新验证"; //备份日志 submitInfo.BackupLogs = ""; //权限 --暂时不知何用 submitInfo.Competence = ""; return submitInfo; } /// /// 终端连接 /// /// public static LYFZ.WcfServiceSharedLibraries.Wcf_TerminalConnectionInfo TerminalConnection(LYFZ.WcfServiceSharedLibraries.Wcf_TerminalConnectionSubmitInfo submitInfo) { try { if (submitInfo.DomainName.Trim().Length <= 0) { submitInfo.DomainName = "未知域名"; } StringBuilder postDataStr = new StringBuilder(); // 帐号 postDataStr.Append("Account=" + submitInfo.Account); // 客户端身份标识ID(一搬为加密锁短ID) postDataStr.Append("&ConnectIdentity=" + submitInfo.ConnectIdentity); //域名 postDataStr.Append("&DomainName=" + System.Web.HttpUtility.UrlEncode(submitInfo.DomainName)); //店名 postDataStr.Append("&ShopName=" + System.Web.HttpUtility.UrlEncode(submitInfo.ShopName)); //地址 postDataStr.Append("&Address=" + System.Web.HttpUtility.UrlEncode(submitInfo.Address)); //电话 postDataStr.Append("&Telephone=" + submitInfo.Telephone); //店主 postDataStr.Append("&Shopkeeper=" + System.Web.HttpUtility.UrlEncode(submitInfo.Shopkeeper)); //订单数量 postDataStr.Append("&OrdersNumber=" + submitInfo.OrdersNumber); //Version 版本号 postDataStr.Append("&Version=" + submitInfo.Version); //IP postDataStr.Append("&IP=" + submitInfo.IP); //控制状态 postDataStr.Append("&ControlStatus=" + System.Web.HttpUtility.UrlEncode(submitInfo.ControlStatus)); if (submitInfo.HardwareCode.Trim().Length > 1) { postDataStr.Append("&HardwareCode=" + submitInfo.HardwareCode); } else { postDataStr.Append("&HardwareCode=SIDNO_CID_" + LYFZ.WinAPI.CustomPublicMethod.GetHardwareCodeOne()); } //运行记录 postDataStr.Append("&RunRecord=" + System.Web.HttpUtility.UrlEncode(submitInfo.RunRecord)); //备份日志 postDataStr.Append("&BackupLogs=" + System.Web.HttpUtility.UrlEncode(submitInfo.BackupLogs)); //权限 --暂时不知何用 postDataStr.Append("&Competence=" + System.Web.HttpUtility.UrlEncode(submitInfo.Competence)); string url = "http://liyafangzhou.eicp.net:8600/webService/TerminalConnection?t=" + DateTime.Now.ToString("yyyyMMddhhmmssfff"); string retInfoString = LYFZ.WinAPI.CustomPublicMethod.HttpWebRequestPOST(url, postDataStr.ToString()); if (retInfoString.Contains("")) { LYFZ.WcfServiceSharedLibraries.ReturnSimpleXML retXml = new LYFZ.WcfServiceSharedLibraries.ReturnSimpleXML(retInfoString); LYFZ.WcfServiceSharedLibraries.Wcf_TerminalConnectionInfo retInfo = new LYFZ.WcfServiceSharedLibraries.Wcf_TerminalConnectionInfo(retXml.ReturnMessage); return retInfo; } else { LYFZ.BLL.BLL_FileLogs.WriteSMSLogs("终端连接失败:" + retInfoString); MessageBox.Show(retInfoString); return null; } } catch (Exception ex) { LYFZ.BLL.BLL_FileLogs.WriteSMSLogs("终端连接出错:" + ex.Message); MessageBox.Show(ex.Message); return null; } } } }