/****************************** * 说明:表格报表模版 * 创建人:龚宇超 * 创建日期:2017-11-20 * 修改人: * 修改日期: * 修改备注: * 版本:1.0.0.0 ******************************/ 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; using Lskj.Control; using Lskj.Model; using Lskj.Control.Model; using Lskj.Util; using Lskj.Data; using Lskj.Business.Impl; using Lskj.Business; namespace Lskj.Report { public partial class FrmMain : BaseForm { /// /// 报表动态链接库参数 /// public DynamicReportModel Model; public FrmMain() { InitializeComponent(); } /// /// 说明:窗口加载 /// 创建人:龚宇超 /// 创建日期:2017-11-21 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// /// The instance containing the event data. protected override void OnLoad(EventArgs e) { WaitForm.ShowForm(); try { this.Model.Privilege = this.Model.Privilege.Equals("3") ? "1" : Model.ModuleId > 0 ? BaseImpl.GetUserPurviewsByMenuId(Model.ModuleId + "") + "" : BaseImpl.GetUserPurviewsByMenuCode(Model.ModuleCode) + ""; this.mControl.ModuleGridDetailObj.ModuleGridObj.VisibleOperPanel = false; this.mControl.Details = GetReportDetails(); this.mControl.InitControls(Model); } catch (Exception ex) { LogHelper.Instance.WriteError(ex, ResourceKeys.BaseReport); //MessageUtil.Show(ex.Message + "\r\n" + ex.StackTrace); string Message = ErrorMessage.PromptErrorMessage(ex); MessageUtil.Show(Message,ex.Message); } finally { Lskj.Control.Model.AutoSizeChange.ControllInitializeSize(this); this.mControl.Visible = true; } WaitForm.HideForm(); } /// /// 说明:获取报表明细 /// 创建人:龚宇超 /// 创建日期:2017-11-22 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// /// List<GridDetailModel>. private List GetReportDetails() { List details = new List(); bool ProcessExists = (Lskj.Data.Caches.CacheSYSConfig.Instance().JudgeProcessExists()&&SystemInfo.Instance.isExecload); if (ProcessExists) { DataTable table = Lskj.Data.Caches.CacheSYSConfig.Instance().GetBaseDetailPages(); foreach (DataRow item in table.Rows) { DataTable gridColumns = Lskj.Data.Caches.CacheSYSConfig.Instance().GetReportDetailColumns(item["id"] + ""); details.Add(new GridDetailModel(item, gridColumns, GridCustomColumnStruct.BaseDetailGridView)); } } else { DataTable table = ReportImpl.GetReportDetailPages(Model.ModuleCode); foreach (DataRow item in table.Rows) { DataTable gridColumns = ReportImpl.GetReportDetailColumns(Model.ModuleCode, item["id"] + ""); details.Add(new GridDetailModel(item, gridColumns, GridCustomColumnStruct.BaseDetailGridView)); } } return details; } } }