¶Ô±ÈÐÂÎļþ |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Configuration; |
| | | using System.Data; |
| | | using System.Data.SqlClient; |
| | | using System.IO; |
| | | using System.Net; |
| | | using System.Net.Http; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using System.Windows.Forms; |
| | | using DevExpress.XtraEditors; |
| | | using Gs.DevApp.ToolBox; |
| | | using Newtonsoft.Json; |
| | | using Oracle.ManagedDataAccess.Client; |
| | | |
| | | namespace Gs.DevApp.DevFrm.Sys |
| | | { |
| | | public partial class EasyCode : XtraForm |
| | | { |
| | | private readonly string oracleCon = |
| | | "User Id=system;Password=admin110;Data Source=localhost:1521/MYTEST2;"; |
| | | |
| | | //this.txt_sqlconn.Text = "Data Source=2kn4sh70028.vicp.fun,26144;Initial Catalog=gs_Mes;User ID=sa;Password =admin110"; |
| | | private readonly string sqlCon = |
| | | "Data Source=192.168.1.146;Initial Catalog=GS_MES;User ID=sa;Password =qixi123"; |
| | | |
| | | public EasyCode() |
| | | { |
| | | InitializeComponent(); |
| | | getTable(); |
| | | btnPathSelect.Click += (s, e) => |
| | | { |
| | | var _GetfilePath = FileSelector.BrowseFilePathForSave(); |
| | | txtPath.Text = _GetfilePath; |
| | | }; |
| | | btnUpSelect.Click += BtnUpSelect_Click; |
| | | btnUp.Click += BtnUp_Click; |
| | | } |
| | | |
| | | #region æ¹é读å |
| | | |
| | | private void btnTable_Click(object sender, EventArgs e) |
| | | { |
| | | using (var connection = new OracleConnection(oracleCon)) |
| | | { |
| | | try |
| | | { |
| | | connection.Open(); |
| | | using (var command = connection.CreateCommand()) |
| | | { |
| | | command.CommandText = |
| | | "SELECT * FROM " + txtTable1.Text.Trim(); |
| | | using (var oracleDataReader = command.ExecuteReader()) |
| | | { |
| | | using (var bulkCopy = new SqlBulkCopy(sqlCon)) |
| | | { |
| | | bulkCopy.DestinationTableName = |
| | | txtTable1.Text.Trim(); |
| | | bulkCopy.WriteToServer(oracleDataReader); |
| | | } |
| | | } |
| | | } |
| | | |
| | | MsgHelper.ShowInformation("æç¤ºï¼æä½æåï¼"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Console.WriteLine(ex.Message); |
| | | MsgHelper.ShowError("æç¤ºï¼" + ex.Message); |
| | | } |
| | | finally |
| | | { |
| | | if (connection.State != ConnectionState.Closed) |
| | | connection.Close(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region æ¹éåå¤ |
| | | |
| | | private void btnRemark_Click(object sender, EventArgs e) |
| | | { |
| | | if (txtTable2.Text.Trim().Length <= 0) |
| | | { |
| | | MessageBox.Show("请è¾å
¥è¡¨å"); |
| | | return; |
| | | } |
| | | |
| | | using (var conn = new SqlConnection(sqlCon)) |
| | | { |
| | | using (var cmd = new SqlCommand("[tmp_property]", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new SqlParameter("@tabname", txtTable2.Text.Trim()), |
| | | new SqlParameter("@com", txtOracleDec.Text.Trim()) |
| | | }; |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | cmd.ExecuteNonQuery(); |
| | | MsgHelper.ShowInformation("æç¤ºï¼æä½æåï¼"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | MsgHelper.ShowError("æç¤ºï¼" + ex.Message); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 代ç çæ |
| | | |
| | | /// <summary> |
| | | /// ç¡®å®çæ |
| | | /// </summary> |
| | | /// <param name="sender"></param> |
| | | /// <param name="e"></param> |
| | | private void btnOk_Click(object sender, EventArgs e) |
| | | { |
| | | if (txt_table.EditValue == null || |
| | | string.IsNullOrEmpty(txt_table.EditValue.ToString())) |
| | | { |
| | | MessageBox.Show("è¯·éæ©è¡¨"); |
| | | return; |
| | | } |
| | | |
| | | if (txtPath.Text.Trim() == "") |
| | | { |
| | | MessageBox.Show("è¯·éæ©çæè·¯å¾"); |
| | | return; |
| | | } |
| | | |
| | | var _strName = _getClassName(); |
| | | var list = txt_table.Properties.Items.GetCheckedValues(); |
| | | var dt1 = _getCol(_getTableName(list[0].ToString())); |
| | | var dtList = new List<DataTable>(); |
| | | var j = 0; |
| | | foreach (var obj in list) |
| | | { |
| | | if (j > 0) |
| | | dtList.Add(_getCol(_getTableName(obj.ToString()))); |
| | | j++; |
| | | } |
| | | |
| | | ReadMainFile(dt1, _strName, dtList); |
| | | ReadDesignerFile(dt1, _strName, dtList); |
| | | ReadResxFile(dt1, _strName); |
| | | var path = txtPath.Text; |
| | | lbMsg.Text = "çææåï¼è·¯å¾ï¼" + path; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è¯»åæ°æ®åºè¡¨ |
| | | /// </summary> |
| | | private void getTable() |
| | | { |
| | | var dset = new DataSet(); |
| | | using (var connection = new SqlConnection(sqlCon)) |
| | | { |
| | | connection.Open(); |
| | | var cmd = new SqlCommand(); |
| | | cmd.Connection = connection; |
| | | cmd.CommandText = |
| | | "SELECT TABLE_NAME,(SELECT top 1 value AS ExtendedPropertyValue FROM sys.extended_properties WHERE minor_id=0 and major_id = OBJECT_ID(''+TABLE_NAME+'')) as TABLE_DESC FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' order by TABLE_NAME asc"; |
| | | using (var dt = new SqlDataAdapter(cmd)) |
| | | { |
| | | dt.Fill(dset, "0"); |
| | | } |
| | | } |
| | | |
| | | if (dset != null && dset.Tables.Count > 0) |
| | | { |
| | | txt_table.Properties.Items.Clear(); |
| | | var strs = new string[dset.Tables[0].Rows.Count]; |
| | | for (var i = 0; i < dset.Tables[0].Rows.Count; i++) |
| | | strs[i] = dset.Tables[0].Rows[i]["TABLE_NAME"] + "(" + |
| | | dset.Tables[0].Rows[i]["TABLE_DESC"] + ")"; |
| | | txt_table.Properties.Items.AddRange(strs); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 读ååå |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | private DataTable _getCol(string tableName) |
| | | { |
| | | var sb = new StringBuilder(); |
| | | sb.Append( |
| | | "SELECT COLUMN_NAME = a.name, DATA_TYPE = b.name, REMARK = isnull(g.[value],a.name) "); |
| | | sb.Append( |
| | | " FROM syscolumns a left join systypes b on a.xusertype = b.xusertype inner join sysobjects d on a.id = d.id and d.xtype = 'U' and d.name<>'dtproperties' "); |
| | | sb.Append(" left join syscomments e on a.cdefault = e.id "); |
| | | sb.Append( |
| | | " left join sys.extended_properties g on a.id = G.major_id and a.colid = g.minor_id "); |
| | | sb.Append( |
| | | " left join sys.extended_properties f on d.id = f.major_id and f.minor_id = 0 "); |
| | | sb.Append(" where d.name = '" + tableName + "'"); |
| | | sb.Append(" order by a.id, a.colorder"); |
| | | var dset = new DataSet(); |
| | | using (var connection = new SqlConnection(sqlCon)) |
| | | { |
| | | connection.Open(); |
| | | var cmd = new SqlCommand(); |
| | | cmd.Connection = connection; |
| | | cmd.CommandText = sb.ToString(); |
| | | using (var dt = new SqlDataAdapter(cmd)) |
| | | { |
| | | dt.Fill(dset, "0"); |
| | | } |
| | | } |
| | | |
| | | if (dset != null && dset.Tables.Count > 0) return dset.Tables[0]; |
| | | return null; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 读模çè·¯å¾ |
| | | /// </summary> |
| | | /// <param name="fileType">cs,Designer.cs</param> |
| | | /// <returns></returns> |
| | | private string _getTemple(string fileType) |
| | | { |
| | | if (txt_table.Properties.Items.GetCheckedValues().Count < 2) |
| | | return @"\templeEasyCode\category1\category." + fileType; |
| | | return @"\templeEasyCode\category2\category." + fileType; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 读åæä»¶ç±»å |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | private string _getClassName() |
| | | { |
| | | var str = UtilityHelper.ToCamelCase(_getMainTable()); |
| | | var result = str.Substring(0, 1).ToUpper() + str.Substring(1); |
| | | return "Frm_" + result; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 读å主表 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | private string _getMainTable() |
| | | { |
| | | var ckList = txt_table.Properties.Items.GetCheckedValues(); |
| | | var _strName = ckList[0].ToString(); |
| | | foreach (string str in ckList) |
| | | if (str.Length < _strName.Length) |
| | | _strName = str; |
| | | return _getTableName(_strName); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æªå表å |
| | | /// </summary> |
| | | /// <param name="strName"></param> |
| | | /// <returns></returns> |
| | | private string _getTableName(string strName) |
| | | { |
| | | var _tableName = strName.Split('(')[0]; |
| | | return _tableName; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 第ä¸ä¸ªæä»¶ |
| | | /// </summary> |
| | | /// <param name="dt"></param> |
| | | /// <param name="_FileName"></param> |
| | | private void ReadMainFile(DataTable dt, string _FileName, |
| | | List<DataTable> dtList = null) |
| | | { |
| | | var _tempPath = Application.StartupPath + _getTemple("cs"); |
| | | var contents = File.ReadAllText(_tempPath); |
| | | var line = Environment.NewLine; |
| | | var sb = new StringBuilder(); |
| | | sb.Append(contents); |
| | | sb.Replace("{clsName}", _getClassName()); |
| | | var _fullPath = txtPath.Text + "\\" + _FileName + ".cs"; |
| | | if (File.Exists(_fullPath)) |
| | | File.Delete(_fullPath); |
| | | var sw = File.CreateText(_fullPath); |
| | | sw.Write(sb.ToString()); |
| | | sw.Close(); |
| | | sw.Dispose(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 第äºä¸ªæä»¶ |
| | | /// </summary> |
| | | /// <param name="dt"></param> |
| | | /// <param name="_FileName"></param> |
| | | private void ReadDesignerFile(DataTable dt, string _FileName, |
| | | List<DataTable> dtList = null) |
| | | { |
| | | var _tempPath = Application.StartupPath + _getTemple("Designer.cs"); |
| | | var contents = File.ReadAllText(_tempPath); |
| | | var strbuilder = new StringBuilder(); |
| | | var line = Environment.NewLine; |
| | | strbuilder.Append(contents); |
| | | strbuilder.Replace("{clsName}", _getClassName()); |
| | | var _RowCount = dt.Rows.Count; |
| | | if (dt.Rows.Count > 0) |
| | | { |
| | | var _FieldName = ""; //åæ®µå |
| | | var _FieldText = ""; //åæ®µææ¬ |
| | | var _FieldNameSql = ""; //åå§å段åï¼ä¸»è¦ç¨äºæ¥è¯¢ |
| | | int _x = 0, _y = 0, _Tabindex = 210; |
| | | var _ControlType = "TextEdit"; //æ§ä»¶ç±»åï¼ç®åä¸ä½å¤æé½ä¸ºææ¬æ¡ |
| | | var _lbType = "LabelControl"; |
| | | var _gvItemCol = new StringBuilder(); |
| | | for (var c = 0; c < _RowCount; c++) |
| | | { |
| | | _x = 20 + c % 4 * 250; //è®¡ç®æ§ä»¶å¨Xè½´ä½ç½® |
| | | if (c % 4 == 0) _y = 20 + 32 * c / 4; //è®¡ç®æ§ä»¶å¨Yè½´çä½ç½® |
| | | _Tabindex = c % 4 + c / 4 + _Tabindex; |
| | | switch (dt.Rows[c]["DATA_TYPE"].ToString()) |
| | | { |
| | | default: |
| | | _FieldName = UtilityHelper.ToCamelCase( |
| | | dt.Rows[c]["COLUMN_NAME"].ToString().Trim()); |
| | | _FieldText = dt.Rows[c]["REMARK"].ToString().Trim(); |
| | | _FieldNameSql = "query_a." + |
| | | dt.Rows[c]["COLUMN_NAME"].ToString() |
| | | .Trim(); |
| | | break; |
| | | } |
| | | |
| | | var _labName = "lb_" + _FieldName; //labelå |
| | | var _txtName = "txt_" + _FieldName; //ææ¬æ¡å |
| | | var _gvName = "gv_" + _FieldName; //gvä¸çåå |
| | | if (_gvItemCol.Length > 0) |
| | | _gvItemCol.Append(","); |
| | | _gvItemCol.Append("this." + _gvName); |
| | | //BQSetControlObject å®ä¾åæ§ä»¶ |
| | | var BQSetControlObject = "BQSetControlObject" + line + |
| | | "this." + _labName + |
| | | " = new DevExpress.XtraEditors." + |
| | | _lbType + "();" + line; |
| | | BQSetControlObject = BQSetControlObject + "this." + |
| | | _txtName + |
| | | " = new DevExpress.XtraEditors." + |
| | | _ControlType + "(); " + line; |
| | | BQSetControlObject = BQSetControlObject + "this." + |
| | | _gvName + |
| | | " = new DevExpress.XtraGrid.Columns.GridColumn(); " + |
| | | line; |
| | | strbuilder.Replace("BQSetControlObject", |
| | | BQSetControlObject); |
| | | //BQSetControlInfo 设置æ§ä»¶ä¿¡æ¯ä½ç½®å¤§å°åç§° |
| | | var BQSetControlInfo = "BQSetControlInfo" + line |
| | | //label |
| | | + "//" + line |
| | | + "//" + _labName + line |
| | | + "//" + line |
| | | + "this." + _labName + |
| | | ".Location = new System.Drawing.Point(" + _x + ", " + |
| | | _y + ");" + line |
| | | + "this." + _labName + ".Name = \"" + _labName + "\";" + |
| | | line |
| | | + "this." + _labName + |
| | | ".Size = new System.Drawing.Size(150,21);" + line |
| | | + "this." + _labName + ".TabIndex = " + _Tabindex + |
| | | ";" + line |
| | | + "this." + _labName + |
| | | ".Appearance.Font = new System.Drawing.Font(\"Tahoma\", 10F);" + |
| | | line |
| | | + "this." + _labName + ".Text = \"" + _FieldText + |
| | | " \";" + line |
| | | //ææ¬ |
| | | + "//" + line |
| | | + "//" + _txtName + line |
| | | + "//" + line |
| | | + "this." + _txtName + |
| | | ".Location = new System.Drawing.Point(" + (_x + 60) + |
| | | ", " + _y + ");" + line |
| | | + "this." + _txtName + ".Name = \"" + _txtName + "\";" + |
| | | line |
| | | + "this." + _txtName + |
| | | ".Size = new System.Drawing.Size(150,21);" + line |
| | | + "this." + _txtName + ".TabIndex = " + _Tabindex + |
| | | ";" + line |
| | | + "this." + _txtName + |
| | | ".Properties.Appearance.Font = new System.Drawing.Font(\"Tahoma\", 10F);" + |
| | | line |
| | | //主gridView |
| | | + "//" + line |
| | | + "//" + _gvName + line |
| | | + "//" + line |
| | | + "this." + _gvName + |
| | | ".AppearanceCell.Font = new System.Drawing.Font(\"Tahoma\", 10F);" + |
| | | line |
| | | + "this." + _gvName + |
| | | ".AppearanceCell.Options.UseFont = true;" + line |
| | | + "this." + _gvName + ".FieldName = \"" + _FieldName + |
| | | "\";" + line |
| | | + "this." + _gvName + ".Caption = \"" + _FieldText + |
| | | " \";" + line |
| | | + "this." + _gvName + ".Tag = \"" + _FieldNameSql + |
| | | "\";" + line |
| | | + "this." + _gvName + ".MinWidth =50;" + line |
| | | + "this." + _gvName + ".Visible = true;" + line |
| | | + "this." + _gvName + ".Width =94;" + line |
| | | + "this." + _gvName + |
| | | ".OptionsColumn.AllowEdit = false;" + line |
| | | + "this." + _gvName + ".VisibleIndex = 0;" + line; |
| | | strbuilder.Replace("BQSetControlInfo", BQSetControlInfo); |
| | | //BQAddControltoMContainer//å°æ§ä»¶æ·»å å°panel1容å¨ä¸ |
| | | var BQAddControltoMContainer = "BQAddControltoMContainer" + |
| | | line + |
| | | " this.panel1.Controls.Add(this." + |
| | | _labName + ");" + line; |
| | | BQAddControltoMContainer += |
| | | " this.panel1.Controls.Add(this." + _txtName + ");" + |
| | | line; |
| | | strbuilder.Replace("BQAddControltoMContainer", |
| | | BQAddControltoMContainer); |
| | | //BQCreateConrolObejct //å建æ§ä»¶ |
| | | var BQCreateConrolObejct = "BQCreateConrolObejct" + line + |
| | | "private DevExpress.XtraEditors." + |
| | | _lbType + " " + _labName + ";" + |
| | | line; |
| | | BQCreateConrolObejct += "private DevExpress.XtraEditors." + |
| | | _ControlType + " " + _txtName + |
| | | ";" + line; |
| | | BQCreateConrolObejct += |
| | | " private DevExpress.XtraGrid.Columns.GridColumn " + |
| | | _gvName + ";" + line; |
| | | strbuilder.Replace("BQCreateConrolObejct", |
| | | BQCreateConrolObejct); |
| | | } |
| | | |
| | | //æåå å
¥å°gridviewä¸ |
| | | strbuilder.Replace("{colList}", _gvItemCol.ToString()); |
| | | //æå»ºæç»gridview1 |
| | | if (dtList != null && dtList.Count > 0) |
| | | { |
| | | var _idx = 1; |
| | | var _tabItem = new StringBuilder(); |
| | | foreach (var dt2 in dtList) |
| | | { |
| | | var _tabMxPage = "tabMxPage" + _idx; |
| | | var _gcMx = "gcMx" + _idx; |
| | | var _gvMx = "gvMx" + _idx; |
| | | if (_tabItem.Length > 0) |
| | | _tabItem.Append(","); |
| | | _tabItem.Append("this." + _tabMxPage); |
| | | //BQSetControlObject å®ä¾åæ§ä»¶ |
| | | var ss = "BQSetControlObject" + line; |
| | | ss += " this." + _tabMxPage + |
| | | " = new DevExpress.XtraTab.XtraTabPage();" + line; |
| | | ss += " this." + _gcMx + |
| | | " = new DevExpress.XtraGrid.GridControl();" + |
| | | line; |
| | | ss += " this." + _gvMx + |
| | | " = new DevExpress.XtraGrid.Views.Grid.GridView();"; |
| | | strbuilder.Replace("BQSetControlObject", ss); |
| | | //BQSetControlInfo 设置æ§ä»¶ä¿¡æ¯ä½ç½®å¤§å°åç§° |
| | | var inf = "BQSetControlInfo" + line |
| | | + "this." + _tabMxPage + ".Controls.Add(this." + |
| | | _gcMx + ");" |
| | | + "this." + _tabMxPage + ".Name = \"" + _tabMxPage + |
| | | "\";" + line |
| | | + "this." + _tabMxPage + |
| | | ".Size = new System.Drawing.Size(1186, 112);" + line |
| | | + "this." + _tabMxPage + ".Text = \"æç»" + _idx + |
| | | "\";" + line |
| | | + "//" + line |
| | | + "//" + _gcMx + line |
| | | + "//" + line |
| | | + " this." + _gcMx + |
| | | ".Dock = System.Windows.Forms.DockStyle.Fill;" + |
| | | line |
| | | + " this." + _gcMx + |
| | | ".Location = new System.Drawing.Point(0, 0);" + line |
| | | + " this." + _gcMx + ".MainView = this." + _gvMx + |
| | | ";" + line |
| | | + " this." + _gcMx + ".Name = \"" + _gcMx + "\";" + |
| | | line |
| | | + " this." + _gcMx + |
| | | ".Size = new System.Drawing.Size(1124, 215);" + line |
| | | + " this." + _gcMx + ".TabIndex = 0;" + line |
| | | + " this." + _gcMx + |
| | | ".ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] { this." + |
| | | _gvMx + "});" + line |
| | | + "//" + line |
| | | + "//" + _gvMx + line |
| | | + "//" + line |
| | | + " this." + _gvMx + ".GridControl = this." + |
| | | _gcMx + ";" + line |
| | | + " this." + _gvMx + ".Name = \"" + _gvMx + "\";" + |
| | | line |
| | | + " this." + _gvMx + |
| | | ".OptionsFind.ShowSearchNavButtons = false;" + line |
| | | + " this." + _gvMx + |
| | | ".OptionsView.NewItemRowPosition = DevExpress.XtraGrid.Views.Grid.NewItemRowPosition.Bottom;" + |
| | | line |
| | | + " this." + _gvMx + |
| | | ".OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.True;" + |
| | | line |
| | | + " this." + _gvMx + |
| | | ".OptionsView.ShowGroupPanel = false;" + line |
| | | + " this." + _gvMx + |
| | | ".Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] { {colMx1List}});"; |
| | | strbuilder.Replace("BQSetControlInfo", inf); |
| | | //BQCreateConrolObejct //å建æ§ä»¶ |
| | | var _cc = "BQCreateConrolObejct" + line; |
| | | _cc += " private DevExpress.XtraTab.XtraTabPage " + |
| | | _tabMxPage + ";" + line; |
| | | _cc += " private DevExpress.XtraGrid.GridControl " + |
| | | _gcMx + ";" + line; |
| | | _cc += |
| | | " private DevExpress.XtraGrid.Views.Grid.GridView " + |
| | | _gvMx + ";"; |
| | | strbuilder.Replace("BQCreateConrolObejct", _cc); |
| | | var _layout = new StringBuilder(); |
| | | _layout.Append("this.tabMxPage1.SuspendLayout();"); |
| | | strbuilder.Replace("{layoutList}", _layout.ToString()); |
| | | var _resume = new StringBuilder(); |
| | | _resume.Append("this.tabMxPage1.ResumeLayout(false);"); |
| | | strbuilder.Replace("{resumeLayout}", |
| | | _resume.ToString()); |
| | | var _beg = new StringBuilder(); |
| | | _beg.Append( |
| | | "((System.ComponentModel.ISupportInitialize)(this." + |
| | | _gcMx + ")).BeginInit();" + line); |
| | | _beg.Append( |
| | | " ((System.ComponentModel.ISupportInitialize)(this." + |
| | | _gvMx + ")).BeginInit();" + line); |
| | | strbuilder.Replace("{begInit}", _beg.ToString()); |
| | | /////////////////// |
| | | _RowCount = dt2.Rows.Count; |
| | | _gvItemCol = new StringBuilder(); |
| | | for (var c = 0; c < _RowCount; c++) |
| | | { |
| | | switch (dt2.Rows[c]["DATA_TYPE"].ToString()) |
| | | { |
| | | default: |
| | | _FieldName = |
| | | UtilityHelper.ToCamelCase( |
| | | dt2.Rows[c]["COLUMN_NAME"] |
| | | .ToString()); |
| | | _FieldText = dt2.Rows[c]["REMARK"] |
| | | .ToString(); |
| | | _FieldNameSql = "query_a." + |
| | | dt2.Rows[c]["COLUMN_NAME"]; |
| | | break; |
| | | } |
| | | |
| | | var _gvColName = _gvMx + _FieldName; |
| | | if (_gvItemCol.Length > 0) |
| | | _gvItemCol.Append(","); |
| | | _gvItemCol.Append("this." + _gvColName); |
| | | //BQSetControlObject å®ä¾åæ§ä»¶ |
| | | var BQSetControlObject = |
| | | "BQSetControlObject" + line; |
| | | BQSetControlObject += "this." + _gvColName + |
| | | " = new DevExpress.XtraGrid.Columns.GridColumn(); "; |
| | | strbuilder.Replace("BQSetControlObject", |
| | | BQSetControlObject); |
| | | //BQSetControlInfo 设置æ§ä»¶ä¿¡æ¯ä½ç½®å¤§å°åç§° |
| | | var BQSetControlInfo = "BQSetControlInfo" + line |
| | | + "this." + _gvColName + |
| | | ".AppearanceCell.Font = new System.Drawing.Font(\"Tahoma\", 10F);" + |
| | | line |
| | | + "this." + _gvColName + |
| | | ".AppearanceCell.Options.UseFont = true;" + line |
| | | + "this." + _gvColName + ".FieldName = \"" + |
| | | _FieldName + "\";" + line |
| | | + "this." + _gvColName + ".Caption = \"" + |
| | | _FieldText + " \";" + line |
| | | + "this." + _gvColName + ".Tag = \"" + |
| | | _FieldNameSql + "\";" + line |
| | | + "this." + _gvColName + ".MinWidth = 50;" + |
| | | line |
| | | + "this." + _gvColName + ".Visible = true;" + |
| | | line |
| | | + "this." + _gvColName + ".Width =94;" + line |
| | | + "this." + _gvColName + |
| | | ".OptionsColumn.AllowEdit = true;" + line |
| | | + "this." + _gvColName + ".VisibleIndex = 0;" + |
| | | line; |
| | | strbuilder.Replace("BQSetControlInfo", |
| | | BQSetControlInfo); |
| | | //BQCreateConrolObejct //å建æ§ä»¶ |
| | | var BQCreateConrolObejct = |
| | | "BQCreateConrolObejct" + line; |
| | | BQCreateConrolObejct += |
| | | " private DevExpress.XtraGrid.Columns.GridColumn " + |
| | | _gvColName + ";"; |
| | | strbuilder.Replace("BQCreateConrolObejct", |
| | | BQCreateConrolObejct); |
| | | } |
| | | |
| | | strbuilder.Replace("{colMx1List}", |
| | | _gvItemCol.ToString()); |
| | | _idx++; |
| | | } |
| | | |
| | | strbuilder.Replace("{tabMx1List}", _tabItem.ToString()); |
| | | } |
| | | |
| | | File.Delete(txtPath.Text + "\\" + _FileName + ".Designer.cs"); |
| | | var path = txtPath.Text; |
| | | var sw = |
| | | File.CreateText(path + "\\" + _FileName + ".Designer.cs"); |
| | | sw.Write(strbuilder.ToString()); |
| | | sw.Close(); |
| | | sw.Dispose(); |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 第ä¸ä¸ªæä»¶ |
| | | /// </summary> |
| | | /// <param name="dt"></param> |
| | | /// <param name="_FileName"></param> |
| | | private void ReadResxFile(DataTable dt, string _FileName) |
| | | { |
| | | var _Temppath = Application.StartupPath + _getTemple("resx"); |
| | | var contents = File.ReadAllText(_Temppath); |
| | | var strbuilder = new StringBuilder(); |
| | | var line = Environment.NewLine; |
| | | strbuilder.Append(contents); |
| | | File.Delete(txtPath.Text + "\\" + _FileName + ".resx"); |
| | | var path = txtPath.Text; |
| | | var sw = File.CreateText(path + "\\" + _FileName + ".resx"); |
| | | sw.Write(strbuilder.ToString()); |
| | | sw.Close(); |
| | | sw.Dispose(); |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #region æä»¶ä¸ä¼ |
| | | |
| | | /// <summary> |
| | | /// éæ©ä¸ä¼ æä»¶ |
| | | /// </summary> |
| | | /// <param name="sender"></param> |
| | | /// <param name="e"></param> |
| | | private void BtnUpSelect_Click(object sender, EventArgs e) |
| | | { |
| | | var openFileDialog = new OpenFileDialog(); |
| | | // 设置åå§ç®å½ |
| | | openFileDialog.InitialDirectory = "c:\\"; |
| | | // 设置æä»¶è¿æ»¤é项ï¼å¦ï¼"ææ¬æä»¶ (*.txt)|*.txt|æææä»¶ (*.*)|*.*" |
| | | openFileDialog.Filter = "ææ¬æä»¶ (*.txt)|*.txt|æææä»¶ (*.*)|*.*"; |
| | | // 设置æ é¢ |
| | | openFileDialog.Title = "éæ©æä»¶"; |
| | | // æ¾ç¤ºå¯¹è¯æ¡ |
| | | var result = openFileDialog.ShowDialog(); |
| | | // ç¡®è®¤ç¨æ·æ²¡æåæ¶æä½ |
| | | if (result == DialogResult.OK) |
| | | { |
| | | // è·åéä¸çæä»¶è·¯å¾ |
| | | var filePath = openFileDialog.FileName; |
| | | Console.WriteLine($"éä¸çæä»¶: {filePath}"); |
| | | txtUpUrl.Text = filePath; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç¡®å®ä¸ä¼ |
| | | /// </summary> |
| | | /// <param name="sender"></param> |
| | | /// <param name="e"></param> |
| | | private async void BtnUp_Click(object sender, EventArgs e) |
| | | { |
| | | var WebApiUrl = ConfigurationSettings.AppSettings.Get("WebApiUrl"); |
| | | var address = WebApiUrl + "Upload/UploadFile"; |
| | | var filePath = txtUpUrl.Text.Trim(); |
| | | var apiUrl = address; // æ¿æ¢ä¸ºä½ çAPIå°å |
| | | await UploadFileAsync(apiUrl, filePath); |
| | | } |
| | | |
| | | private async Task UploadFileAsync(string url, string filePath) |
| | | { |
| | | using (var httpClient = new HttpClient()) |
| | | using (var form = new MultipartFormDataContent()) |
| | | { |
| | | httpClient.DefaultRequestHeaders.Add("token", |
| | | UtilityHelper.GetBasicAuthTicket()); |
| | | using (var fs = File.OpenRead(filePath)) |
| | | using (var streamContent = new StreamContent(fs)) |
| | | { |
| | | form.Add(streamContent, "file", Path.GetFileName(filePath)); |
| | | var response = await httpClient.PostAsync(url, form); |
| | | var responseString = |
| | | await response.Content.ReadAsStringAsync(); |
| | | MessageBox.Show(responseString); |
| | | } |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #region æ¨éæµè¯ |
| | | |
| | | /// <summary> |
| | | /// ç¡®å®æ¨é |
| | | /// </summary> |
| | | /// <param name="sender"></param> |
| | | /// <param name="e"></param> |
| | | private void btnMes_Click(object sender, EventArgs e) |
| | | { |
| | | var _list = new List<dynamic>(); |
| | | for (var i = 0; i < 20; i++) |
| | | _list.Add(new |
| | | { |
| | | t1 = "test1_" + i, //åä½ç¼å· |
| | | t2 = "hi2_" + i //åä½åç§° |
| | | }); |
| | | var _json = new |
| | | { |
| | | category = "åä½ä¿¡æ¯", |
| | | list = _list |
| | | }; |
| | | try |
| | | { |
| | | var _apiUrl = "http://localhost:5263/"; |
| | | var _strReturnJson = HttpPost(_apiUrl, |
| | | "ErpMes/PushMesByCategory", |
| | | JsonConvert.SerializeObject(_json)); |
| | | txtMesResult.Text = _strReturnJson; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | MsgHelper.Warning("æç¤ºï¼" + ex.Message); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// </summary> |
| | | /// <param name="url">apiUrlæ ¹å°å</param> |
| | | /// <param name="meth">apiUrlæ¹æ³å</param> |
| | | /// <param name="param">jsonåæ°</param> |
| | | /// <returns></returns> |
| | | public static string HttpPost(string url, string meth, string param) |
| | | { |
| | | //è¿æ¯ä¸ä¸ªèæçtokenï¼ä¸è½å é¤ |
| | | var token = Guid.NewGuid() + "~" + Guid.NewGuid(); |
| | | var request = (HttpWebRequest)WebRequest.Create(url + meth); |
| | | request.Method = "POST"; |
| | | request.ContentType = "application/json"; |
| | | request.Headers.Add("token", token); |
| | | request.Accept = "*/*"; |
| | | request.Timeout = 15000; |
| | | request.AllowAutoRedirect = false; |
| | | StreamWriter requestStream = null; |
| | | WebResponse response = null; |
| | | string responseStr = null; |
| | | try |
| | | { |
| | | requestStream = new StreamWriter(request.GetRequestStream()); |
| | | requestStream.Write(param); |
| | | requestStream.Close(); |
| | | response = request.GetResponse(); |
| | | if (response != null) |
| | | { |
| | | var reader = new StreamReader(response.GetResponseStream(), |
| | | Encoding.UTF8); |
| | | responseStr = reader.ReadToEnd(); |
| | | reader.Close(); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw ex; |
| | | } |
| | | finally |
| | | { |
| | | request = null; |
| | | requestStream = null; |
| | | response = null; |
| | | } |
| | | |
| | | return responseStr; |
| | | } |
| | | |
| | | #endregion |
| | | } |
| | | } |