using ComponentFactory.Krypton.Toolkit; using NXWMS.Client.Code.Extends; using NXWMS.Client.Model.AppModels.Condition.Report; using NXWMS.Client.Model.AppModels.Result; using NXWMS.Client.Model.AppModels.Result.Report; using NXWMS.Client.Model.CoreModels; using NXWMS.Client.String.Enums; using NXWMS.Commons; using NXWMS.Services; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace NXWMS.Forms.Report { public partial class frmEarlyWarningReport : KryptonForm { /// /// 客户端字段排序列表 /// private List _clientFieldOrderList; private int _pageSize; private int _pageIndex; private int _totalCount; public frmEarlyWarningReport() { InitializeComponent(); InitData(); InitControl(); } /// /// 数据初始化 /// private void InitData() { _clientFieldOrderList = new List(); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "WARNING_PARAM", FieldDesc = "预警参数" }); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "DESCRIBE", FieldDesc = "预警描述" }); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "WARNING_TIME", FieldDesc = "预警发生时间" }); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "SendFlagName", FieldDesc = "是否发送" }); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "WARNING_MSG1", FieldDesc = "预警信息1" }); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "WARNING_MSG2", FieldDesc = "预警信息2" }); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "WARNING_MSG3", FieldDesc = "预警信息3" }); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "CreateName", FieldDesc = "创建人" }); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "CREATE_TIME", FieldDesc = "创建时间" }); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "UpdateName", FieldDesc = "更新人" }); _clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "UPDATE_TIME", FieldDesc = "更新时间" }); } /// /// 控件初始化 /// private void InitControl() { CheckForIllegalCrossThreadCalls = false; dataGridView.BuildDataGridView(CommonUtil.GetFieldOrderDic(_clientFieldOrderList), false); var fieldList = new List().Add(new FieldValue { Code = "", Name = "全部" }); cmbSearchSendFlag.DataSource = fieldList.GetFieldValueIdList(); cmbSearchSendFlag.DisplayMember = "Name"; cmbSearchSendFlag.ValueMember = "Id"; _pageIndex = 1; _pageSize = 20; } private void btnSearch_Click(object sender, EventArgs e) { _pageIndex = 1; var loadfrm = new frmLoading(); loadfrm.Show(); var message = loadfrm.EventCalExec(LoadSearch, this.pageTool.PageIndex, this.pageTool.PageSize); pageTool.DataCount = _totalCount; if (!string.IsNullOrWhiteSpace(message)) { KryptonMessageBox.Show($"查询失败!\r\n{message}", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information); } } private string LoadSearch(int pageIndex, int pageSize) { var result = ReportServices.reportSearchService.GetEarlyWarningReportList(new EarlyWarningReportCondition { OperationUserId = AppConfig.UserLoginResult.UserInfo.UserId, WarningDescribe= txtSearchWarningDescribe.Text, WarningBeginTime= dtpSearchBeginDate.GetDateTimeValue(), WarningEndTime=dtpSearchEndDate.GetDateTimeValue(), WarningParam= txtSearchWarningParam.Text, PageIndex = pageIndex, PageSize = pageSize }); if (result.Status == OperateStatus.Success) { _totalCount = result.Data.TotalCount; _pageIndex = pageIndex; _pageSize = pageSize; if (result.Data.RowData.Any()) { dataGridView.Columns.Clear(); dataGridView.DataSource = result.Data.RowData.ToList(); dataGridView.BuildDataGridView(CommonUtil.GetFieldOrderDic(_clientFieldOrderList)); } else { if (dataGridView.DataSource != null) { dataGridView.DataSource = new List(); } dataGridView.BuildDataGridView(CommonUtil.GetFieldOrderDic(_clientFieldOrderList), false); } return string.Empty; } else { return result.Message; } } private void btnSearchExport_Click(object sender, EventArgs e) { dataGridView.DataGridViewExport($"{AppConfig.CurrentMenu.FirstOrDefault().MenuName}列表" + DateTime.Now.ToString("yyyyMMddHH")); } } }