From 1498516cb98d75e8f0dcbbfe232f2a0f1ff00c9b Mon Sep 17 00:00:00 2001 From: 啊鑫 <t2856754968@163.com> Date: 星期二, 29 十月 2024 12:45:21 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- DevApp/Gs.DevApp/DevFrm/QC/Frm_MesQaItemsDetect01.cs | 382 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 382 insertions(+), 0 deletions(-) diff --git a/DevApp/Gs.DevApp/DevFrm/QC/Frm_MesQaItemsDetect01.cs b/DevApp/Gs.DevApp/DevFrm/QC/Frm_MesQaItemsDetect01.cs new file mode 100644 index 0000000..f3ede46 --- /dev/null +++ b/DevApp/Gs.DevApp/DevFrm/QC/Frm_MesQaItemsDetect01.cs @@ -0,0 +1,382 @@ +using DevExpress.XtraGrid.Views.Grid; +using DevExpress.XtraGrid.Views.Grid.ViewInfo; +using Gs.DevApp.Entity; +using Gs.DevApp.ToolBox; +using Gs.DevApp.UserControl; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; +using System; +using System.Collections.Generic; +using System.Configuration; +using System.Data; +using System.Drawing; +using System.IO; +using System.Net.Http; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace Gs.DevApp.DevFrm +{ + public partial class Frm_MesQaItemsDetect01 : DevExpress.XtraEditors.XtraForm + { + string _webServiceName = "MesQaItemsDetect01Manager/"; + List<FilterEntity> _filterList = new List<FilterEntity>(); + public Frm_MesQaItemsDetect01() + { + InitializeComponent(); + this.toolBarMenu1.btnAddClick += ToolBarMenu1_btnAddClick; + this.toolBarMenu1.btnEdtClick += ToolBarMenu1_btnEdtClick; + this.toolBarMenu1.btnSaveClick += ToolBarMenu1_btnSaveClick; + this.toolBarMenu1.btnLoadClick += ToolBarMenu1_btnLoadClick; + this.toolBarMenu1.btnDelClick += ToolBarMenu1_btnDelClick1; + this.toolBarMenu1.btnEscClick += ToolBarMenu1_btnEscClick; + this.toolBarMenu1.btnQueryClick += ToolBarMenu1_btnQueryClick; + gcMain.MouseDoubleClick += GcMain_MouseDoubleClick; + getPageList(1, UtilityHelper.GetPageSize()); + pageBar1.PagerEvent += PageBar1_PagerEvent; + gridView1.CustomDrawRowIndicator += (s, e) => + { + if (e.Info.IsRowIndicator && e.RowHandle >= 0) + { + e.Info.DisplayText = (e.RowHandle + 1).ToString(); + } + }; + gridView1.CustomDrawEmptyForeground += (s, e) => + { + string str = "鏆傛湭鏌ユ壘鍒板尮閰嶇殑鏁版嵁!"; + Font f = new Font("寰蒋闆呴粦", 16); + Rectangle r = new Rectangle(gridView1.GridControl.Width / 2 - 100, e.Bounds.Top + 45, e.Bounds.Right - 5, e.Bounds.Height - 5); + e.Graphics.DrawString(str, f, Brushes.Gray, r); + }; + + btnUpSelect.Click += BtnUpSelect_Click; + btnUp.Click += BtnUp_Click; + } + + + /// <summary> + /// 鍙屽嚮浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void GcMain_MouseDoubleClick(object sender, MouseEventArgs e) + { + string rowGuid = Gs.DevApp.ToolBox.UtilityHelper.GetCurrentDoubleRow(gridView1, e, "guid"); + if (!string.IsNullOrEmpty(rowGuid)) + getModel(rowGuid, false, 999); + } + /// <summary> + /// 鍒嗛〉浜嬩欢 + /// </summary> + /// <param name="curPage"></param> + /// <param name="pageSize"></param> + private void PageBar1_PagerEvent(int curPage, int pageSize) + { + getPageList(curPage, pageSize); + } + /// <summary> + /// 鏌ヨ浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnQueryClick(object sender, EventArgs e) + { + Gs.DevApp.UserControl.ShowFilter frm = new Gs.DevApp.UserControl.ShowFilter(gridView1.Columns, _filterList); + frm.UpdateParent += Frm_UpdateParent; + frm.ShowDialog(); + } + /// <summary> + /// 鏌ヨ鍥炶皟 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void Frm_UpdateParent(object sender, UpdateParentEventArgs e) + { + _filterList = e.FilterList; + getPageList(1, pageBar1.RowsCount); + } + + /// <summary> + /// 鍙栨秷浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnEscClick(object sender, EventArgs e) + { + UtilityHelper.JumpToTab(xtraTabControl1, 0); + } + + /// <summary> + /// 鍒犻櫎浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnDelClick1(object sender, EventArgs e) + { + string rowGuid = "", rowName = ""; + // (rowGuid, rowName) = UtilityHelper.GetCurrentRow(xtraTabControl1, lbGuid, txt_billNo, gridView1); + if (string.IsNullOrEmpty(rowGuid)) + { + ToolBox.MsgHelper.Warning("璇峰厛閫夋嫨浣犺鎿嶄綔鐨勮锛�"); + return; + } + if (!MsgHelper.AskQuestion("浣犻�夋嫨浜嗐��" + rowName + "銆戯紝纭畾鍒犻櫎鍚楋紵")) + return; + List<dynamic> lst = new List<dynamic>(); + lst.Add(rowGuid); + var _obj = lst; + try + { + string strJson = UtilityHelper.HttpPost("", _webServiceName + "DeleteModel", JsonConvert.SerializeObject(_obj)); + ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.ReturnToDynamic(strJson); + if (_rtn.rtnCode > 0) + { + UtilityHelper.JumpToTab(xtraTabControl1, 0); + getPageList(1, UtilityHelper.GetPageSize()); + } + ToolBox.MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg); + } + catch (Exception ex) + { + ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + } + } + + /// <summary> + /// 鍒锋柊浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnLoadClick(object sender, EventArgs e) + { + UtilityHelper.JumpToTab(xtraTabControl1, 0); + getPageList(1, UtilityHelper.GetPageSize()); + } + /// <summary> + /// 淇敼浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnEdtClick(object sender, EventArgs e) + { + string rowGuid = "", rowName = ""; + // (rowGuid, rowName) = UtilityHelper.GetCurrentRow(xtraTabControl1, lbGuid, txt_billNo, gridView1); + if (string.IsNullOrEmpty(rowGuid)) + { + ToolBox.MsgHelper.Warning("璇峰厛閫夋嫨浣犺鎿嶄綔鐨勮锛�"); + return; + } + getModel(rowGuid, true, 1); + } + /// <summary> + /// 鏂板浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnAddClick(object sender, EventArgs e) + { + UtilityHelper.JumpToTab(xtraTabControl1, 1); + lbGuid.Text = ""; + List<DevExpress.XtraGrid.Views.Grid.GridView> gridViews = new List<DevExpress.XtraGrid.Views.Grid.GridView>(); + gridViews.Add(gvMx1); + UtilityHelper.CleanValueByControl(this.panel1.Controls, true, gridViews); + Gs.DevApp.ToolBox.UtilityHelper.SetDefaultTable(gcMx1, gvMx1); + } + /// <summary> + /// 淇濆瓨浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnSaveClick(object sender, EventArgs e) + { + toolBarMenu1.isSetBtn = false; + //if (string.IsNullOrEmpty(txt_account.Text.Trim())) + { + Gs.DevApp.ToolBox.MsgHelper.Warning("鐧诲綍璐﹀彿涓嶈兘涓虹┖锛�"); + // txt_account.Focus(); + return; + } + var _obj = new + { + guid = UtilityHelper.ToGuid(lbGuid.Text.Trim()), //涓诲缓 + }; + try + { + string strJson = UtilityHelper.HttpPost("", _webServiceName + "EditModel", JsonConvert.SerializeObject(_obj)); + ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.ReturnToDynamic(strJson); + ToolBox.MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg); + if (_rtn.rtnCode > 0) + { + lbGuid.Text = _rtn.rtnData; + toolBarMenu1.isSetBtn = true; + UtilityHelper.ChangeEnableByControl(this.panel1.Controls, false); + } + } + catch (Exception ex) + { + ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + } + } + + /// <summary> + /// + /// </summary> + /// <param name="curPage">绗嚑椤�</param> + /// <param name="pageSize">姣忛〉鍑犳潯</param> + private async void getPageList(int curPage, int pageSize) + { + UcLoading _loading = new UcLoading(); + System.Text.StringBuilder _sbSqlWhere = new System.Text.StringBuilder(); + foreach (FilterEntity itm in _filterList) + { + _sbSqlWhere.Append(" and " + itm.fileId + itm.fileOper + "'" + itm.fileValue + "'"); + } + PageQueryModel pgq = new PageQueryModel(curPage, pageSize, "create_date", "asc", "", _sbSqlWhere.ToString()); + string json = JsonConvert.SerializeObject(pgq); + try + { + string strReturn = await UtilityHelper.HttpPostAsync("", _webServiceName + "GetListPage", json); + ReturnModel<PageListModel> dd = UtilityHelper.ReturnToTablePage(strReturn); + if (dd.rtnCode > 0) + { + DataTable dt = dd.rtnData.list; + gcMain.BindingContext = new BindingContext(); + gcMain.DataSource = dt; + gcMain.ForceInitialize(); + int dddd = dd.rtnData.pages;//鎬婚〉 + pageBar1.TotalPages = dddd; + pageBar1.RecordCount = dd.rtnData.total;//璁板綍鎬绘暟 + pageBar1.CurrentPage = curPage;//褰撳墠椤� + pageBar1.RowsCount = pageSize;//姣忛〉鏄剧ず + pageBar1.setTxt(); + } + else + { + ToolBox.MsgHelper.ShowError("鎻愮ず锛�" + dd.rtnMsg); + } + } + catch (Exception ex) + { + ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + } + _loading.Stop(); + } + private void getModel(string strGuid, bool isEdit, int tabIdx) + { + if (string.IsNullOrEmpty(strGuid)) + { + ToolBox.MsgHelper.Warning("璇峰厛閫夋嫨浣犺鎿嶄綔鐨勮锛�"); + return; + } + UtilityHelper.JumpToTab(xtraTabControl1, tabIdx); + var _obj = new + { + guid = strGuid,//涓诲缓 + }; + try + { + string strJson = UtilityHelper.HttpPost("", _webServiceName + "GetModel", JsonConvert.SerializeObject(_obj)); + ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.ReturnToDynamic(strJson); + if (_rtn.rtnCode > 0) + { + dynamic dy = _rtn.rtnData; + lbGuid.Text = strGuid; + List<DevExpress.XtraGrid.Views.Grid.GridView> gvList = new List<DevExpress.XtraGrid.Views.Grid.GridView>(); + gvList.Add(gvMx1); + UtilityHelper.SetValueByObj(this.panel1.Controls, dy, isEdit, gvList); + JObject _job = JObject.Parse(strJson); + JArray array = new JArray(); + foreach (var a in _job["rtnData"]["list"]) + { + array.Add(a); + } + DataTable dt = JsonConvert.DeserializeObject<DataTable>(array.ToString()); + if (dt.Rows.Count > 0) + { + gcMx1.BindingContext = new BindingContext(); + gcMx1.DataSource = dt; + gcMx1.ForceInitialize(); + } + else + { + Gs.DevApp.ToolBox.UtilityHelper.SetDefaultTable(gcMx1, gvMx1); + } + } + else + ToolBox.MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg); + } + catch (Exception ex) + { + ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + } + } + + + + #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; // 鏇挎崲涓轰綘鐨凙PI鍦板潃 + await UploadFileAsync(apiUrl, filePath); + } + + private async Task UploadFileAsync(string url, string filePath) + { + UcLoading _loading = new UcLoading(); + 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); + } + } + _loading.Close(); + } + + #endregion + + } +} \ No newline at end of file -- Gitblit v1.9.3