基线 SVN r240

SVN-Revision: r240
This commit is contained in:
cyf
2025-02-06 06:46:06 +00:00
commit ab56a9bcf7
5317 changed files with 902274 additions and 0 deletions
+42
View File
@@ -0,0 +1,42 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Lskj.Util;
using Lskj.Business;
using System.Windows.Forms;
using Lskj.Model;
namespace Lskj.PubAdd
{
/// <summary>
/// c#库被调用统一接口类
/// </summary>
public sealed class DllBaseClass : IForm
{
public DllBaseClass()
{
}
public DllBaseClass(string[] obj)
{
try
{
FrmMain main = new FrmMain();
this.SubForm = main;
main.Model = new DynamicAddModel(obj);
}
catch (Exception ex)
{
LogUtil.WriteError("Lskj.PubAdd.dll--参数错误-->" + obj.ToString(), ex);
}
}
/// <summary>
/// 窗口
/// </summary>
public Form SubForm { get; set; }
}
}
+411
View File
@@ -0,0 +1,411 @@
/******************************
* 说明:基础档案添加界面
* 创建人:龚宇超
* 创建日期:2017-11-02
* 修改人:
* 修改日期:
* 修改备注:
* 版本: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.Control.Model;
using Lskj.Util;
using Lskj.Business.Impl;
using Lskj.Model;
using DevExpress.XtraTab;
using DevExpress.Utils;
using Lskj.Data;
namespace Lskj.PubAdd
{
/// <summary>
/// 基础档案添加界面
/// </summary>
public partial class FrmMain : BaseForm
{
/// <summary>
/// 系统模块实体对象
/// </summary>
/// <value>The system model.</value>
public ModuleModel SysModel { get; private set; }
/// <summary>
/// 调用动态链接库默认传递参数
/// </summary>
public DynamicAddModel Model;
/// <summary>
/// 第一页控件
/// </summary>
public ModulePanelEx FirstModulePageEx;
/// <summary>
/// 除主页剩下页面
/// </summary>
public List<ModulePanelEx> OtherModulePageEx = new List<ModulePanelEx>();
public FrmMain()
{
InitializeComponent();
}
protected override void OnLoad(EventArgs e)
{
WaitForm.ShowForm();
try
{
this.SysModel = new ModuleModel(MainImpl.GetSystemdllTab(Model.ModuleCode));
this.CreateControlLocation();
this.SetControlPanelSize();
this.CreateTabDetail();
}
catch (Exception ex)
{
LogHelper.Instance.WriteError(ex);
MessageUtil.Show(ex.Message + "\r\n" + ex.StackTrace);
}
this.Text = Model.FormText + (string.IsNullOrWhiteSpace(Model.ObjectId) ? "" : "[" + Model.ObjectId + "]");
WaitForm.HideForm();
}
/// <summary>
/// <para>说明:设置窗口大小</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-03 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="menuCode">The menu code.</param>
private void SetControlPanelSize()
{
DataRow item = BaseModuleImpl.GetControlParentSize(this.SysModel.FormKey);
if (item != null)
{
int otherHeight = 80;
bool topVisible = false;
if ("lskj.pubadd.dll".Equals((this.SysModel.MenuAddName).ToLower()) && !this.SysModel.AnyAdd)
{
otherHeight = 130;
topVisible = true;
}
this.FirstModulePageEx.SetTopPanelVisible(topVisible);
this.Width = Convert.ToInt32(item["width"] + "");
this.Height =Convert.ToInt32(item["height"] + "") + otherHeight;
this.Left = (Screen.PrimaryScreen.WorkingArea.Width - this.Width) / 2;
this.Top = (Screen.PrimaryScreen.WorkingArea.Height - this.Height) / 2;
if ((this.Width > Screen.PrimaryScreen.WorkingArea.Width) || (this.Height > Screen.PrimaryScreen.WorkingArea.Height))
this.WindowState = FormWindowState.Maximized;
}
}
/// <summary>
/// <para>说明:初始化多标签</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-10 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
private void CreateTabDetail()
{
DataTable details = BaseModuleImpl.GetBaseAddTabDetail(Model.ModuleCode);
foreach (DataRow item in details.Rows)
{
string cacheKey = this.Model.ModuleCode + "_" + item["id"] + "";
bool isCache = CacheHelper.Exsits(cacheKey);
XtraTabPage tabPage = new XtraTabPage();
GridDetailModel detailModel = new GridDetailModel(item, null, GridCustomColumnStruct.BaseDetailGridView);
ModuleModel moduleModel = new ModuleModel(MainImpl.GetSystemdllTab(detailModel.UnionModule));
if (isCache)
{
tabPage = CacheHelper.Get<XtraTabPage>(cacheKey);
}
else
{
detailModel.GridColumns = ReportImpl.GetReportDetailColumns(Model.ModuleCode, item["id"] + "");
detailModel.DetailSql = moduleModel.MenuSql;
DynamicAddModel addModel = new DynamicAddModel(new string[] {
detailModel.DetailName,
ERPInfo.Instance.UserId,
ERPInfo.Instance.UserName,
"1",detailModel.UnionModule,"","",""
});
ModuleGridEx moduleGrid = new ModuleGridEx();
moduleGrid.Dock = DockStyle.Fill;
moduleGrid.Tag = detailModel;
moduleGrid.ParentKeyField = string.IsNullOrEmpty(detailModel.UnionParentField) ? SysModel.ParmaryKey : detailModel.UnionParentField;
moduleGrid.DetailKeyField = detailModel.UnionValue;
moduleGrid.UnionKey = moduleGrid.ParentKeyField;
moduleGrid.UnionValue = this.FirstModulePageEx.ControlObj.GetControlValue(moduleGrid.UnionKey); //Model.ObjectId;
moduleGrid.InitializeControl(moduleModel, addModel);
moduleGrid.SearchObj.OnSearchBeforeCallBack += new SearchEventHandler(OnSearchBefore);
moduleGrid.SearchObj.OnSearchAfterCallBack += new EventHandler(OnSearchAfter);
tabPage.Text = detailModel.DetailName;
tabPage.Tag = moduleGrid;
tabPage.Controls.Add(moduleGrid);
CacheHelper.Add(cacheKey, tabPage);
}
if (detailModel.AutoRefresh)
{
// 自动刷新
ModuleGridEx moduleGrid = tabPage.Tag as ModuleGridEx;
moduleGrid.SearchObj.SearchGrid(ReplaceHelper.ReplaceWhereCond(moduleModel.MenuSql) + string.Format(" and {0}='{1}'", moduleGrid.DetailKeyField, moduleGrid.UnionValue));
tabPage.Text = detailModel.DetailName + "(" + moduleGrid.SearchObj.GridRowCount + "条)";
}
this.xtcControl.TabPages.Add(tabPage);
}
this.xtcControl.ShowTabHeader = this.xtcControl.TabPages.Count > 1 ? DefaultBoolean.True : DefaultBoolean.False;
}
/// <summary>
/// <para>说明:创建控件</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-03 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
private void CreateControlLocation()
{
DataTable table = BaseModuleImpl.GetControlLocation(this.SysModel.FormKey, this.Model.ModuleCode);
DataTable pagingTable = BaseModuleImpl.GetAddPageData(this.SysModel.FormKey);
List<DataTable> tableList = new List<DataTable>();
if (pagingTable != null && pagingTable.Rows.Count > 0)
{
for (int i = 0; i <= pagingTable.Rows.Count; i++)
{
if (i == 0)
{
// 第一页默认详细信息
DataTable pageTable = new DataTable();
DataRow nextItem = pagingTable.Rows[i];
DataRow[] rows = table.Select(string.Format("controlTop<={0}", Convert.ToInt32(nextItem["controlTop"] + "")));
if (rows != null && rows.Length > 0)
pageTable = rows.CopyToDataTable();
ModulePanelEx moduleAddControl = this.CreatePageControlLocation(pageTable);
moduleAddControl.Dock = DockStyle.Fill;
XtraTabPage tabPage = new XtraTabPage();
tabPage.Text = "详细信息";
tabPage.Controls.Add(moduleAddControl);
this.xtcControl.TabPages.Add(tabPage);
this.FirstModulePageEx = moduleAddControl;
}
else
{
// 第二页根据分页显示
DataTable pageTable = new DataTable();
DataRow rowItem = pagingTable.Rows[i - 1];
DataRow nextItem = pagingTable.Rows.Count > i ? pagingTable.Rows[i] : null;
DataRow[] rows = table.Select(string.Format("controlTop>={0} and controlTop<={1}", Convert.ToInt32(rowItem["controlTop"] + ""), nextItem == null ? 99999 : Convert.ToInt32(nextItem["controlTop"] + "")));
if (rows != null && rows.Length > 0)
pageTable = rows.CopyToDataTable();
ModulePanelEx moduleAddControl = this.CreatePageControlLocation(pageTable);
moduleAddControl.Dock = DockStyle.Fill;
XtraTabPage tabPage = new XtraTabPage();
tabPage.Text = rowItem["GroupName"] + "";
tabPage.Controls.Add(moduleAddControl);
this.xtcControl.TabPages.Add(tabPage);
this.OtherModulePageEx.Add(moduleAddControl);
}
}
}
else
{
ModulePanelEx moduleAddControl = this.CreatePageControlLocation(table);
moduleAddControl.Dock = DockStyle.Fill;
XtraTabPage tabPage = new XtraTabPage();
tabPage.Text = "详细信息";
tabPage.Controls.Add(moduleAddControl);
this.xtcControl.TabPages.Add(tabPage);
this.FirstModulePageEx = moduleAddControl;
}
}
/// <summary>
/// <para>说明:创建单页控件</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2019-07-10 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="table">The table.</param>
private ModulePanelEx CreatePageControlLocation(DataTable table)
{
ModulePanelEx moduleAddControl = new ModulePanelEx();
moduleAddControl.IsView = Model.IsView;
moduleAddControl.ParentKey = Model.ParentKey;
moduleAddControl.ParentValue = Model.ParentValue;
moduleAddControl.PrimaryKey = BaseImpl.GetBasePrimaryKey(Model.ModuleCode);
moduleAddControl.UnionKey = Model.UnionKey;
moduleAddControl.UnionValue = Model.UnionValue;
moduleAddControl.PrimaryValue = Model.ObjectId;
moduleAddControl.ControlSql = Model.ControlSql;
moduleAddControl.OnCloseCallback += new EventHandler(OnCloseCallback);
moduleAddControl.InitializeControl(SysModel, Model, table);
return moduleAddControl;
}
/// <summary>
/// <para>说明:关闭按钮回调</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-08 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
protected void OnCloseCallback(object sender, EventArgs e)
{
this.DialogResult = DialogResult.OK;
this.Close();
}
/// <summary>
/// <para>说明:查询条件执行前</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-10 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The sender.</param>
/// <param name="e">The e.</param>
protected void OnSearchBefore(object sender, SearchArgs e)
{
XtraTabPage tabPage = xtcControl.SelectedTabPage;
if (tabPage != null)
{
ModuleGridEx moduleGrid = tabPage.Tag as ModuleGridEx;
GridDetailModel detailModel = moduleGrid.Tag as GridDetailModel;
moduleGrid.SearchObj.SearchGrid(detailModel.DetailSql + string.Format(" and {0}='{1}'", moduleGrid.DetailKeyField, moduleGrid.UnionValue));
}
e.Continue = false;
}
/// <summary>
/// <para>说明:查询条件执行后</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-10 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
protected void OnSearchAfter(object sender, EventArgs e)
{
XtraTabPage tabPage = xtcControl.SelectedTabPage;
if (tabPage != null)
{
ModuleGridEx moduleGrid = tabPage.Tag as ModuleGridEx;
GridDetailModel detailModel = moduleGrid.Tag as GridDetailModel;
tabPage.Text = detailModel.DetailName + "(" + moduleGrid.SearchObj.GridRowCount + "条)";
}
}
/// <summary>
/// <para>说明:切换选项卡</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2018-04-09 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="TabPageChangingEventArgs"/> instance containing the event data.</param>
protected void OnSelectedPageChanging(object sender, TabPageChangingEventArgs e)
{
XtraTabPage page = e.Page;
if (page != null)
{
if (e.PrevPage == xtcControl.TabPages[0] && string.IsNullOrEmpty(this.FirstModulePageEx.PrimaryValue))
{
MessageUtil.Show(ResourceKeys.BeforeSaveData);
e.Cancel = true;
}
else
{
foreach (ModulePanelEx item in OtherModulePageEx)
{
item.PrimaryValue = this.FirstModulePageEx.PrimaryValue;
}
}
}
}
/// <summary>
/// <para>说明:切换标签刷新主键值</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2018-04-09 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="TabPageChangedEventArgs"/> instance containing the event data.</param>
private void OnSelectedPageChanged(object sender, TabPageChangedEventArgs e)
{
//XtraTabPage page = e.Page;
//if (page != null && page.Tag is ModuleGridEx)
//{
// ModuleGridEx gridEx = page.Tag as ModuleGridEx;
// GridDetailModel detailModel = gridEx.Tag as GridDetailModel;
// gridEx.SearchObj.SearchGrid();
// gridEx.UnionValue = this.ModuleAddControl.PrimaryValue;
// page.Text = detailModel.DetailName + "(" + gridEx.SearchObj.GridRowCount + "条)";
//}
}
private void FrmMain_FormClosed(object sender, FormClosedEventArgs e)
{
}
private void FrmMain_FormClosing(object sender, FormClosingEventArgs e)
{
if (this.FirstModulePageEx != null && this.FirstModulePageEx.IsCard)
{
this.FirstModulePageEx.CloseIDCardThread();
}
}
}
}
+105
View File
@@ -0,0 +1,105 @@
namespace Lskj.PubAdd
{
partial class FrmMain
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.xtcControl = new DevExpress.XtraTab.XtraTabControl();
this.xtraTabPage1 = new DevExpress.XtraTab.XtraTabPage();
this.ModuleAddControl = new Lskj.Control.ModulePanelEx();
((System.ComponentModel.ISupportInitialize)(this.xtcControl)).BeginInit();
this.xtcControl.SuspendLayout();
this.xtraTabPage1.SuspendLayout();
this.SuspendLayout();
//
// xtcControl
//
this.xtcControl.Appearance.BackColor = System.Drawing.Color.Transparent;
this.xtcControl.Appearance.Options.UseBackColor = true;
this.xtcControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.xtcControl.Location = new System.Drawing.Point(0, 0);
this.xtcControl.Margin = new System.Windows.Forms.Padding(4);
this.xtcControl.Name = "xtcControl";
this.xtcControl.SelectedTabPage = this.xtraTabPage1;
this.xtcControl.Size = new System.Drawing.Size(977, 624);
this.xtcControl.TabIndex = 0;
this.xtcControl.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] {
this.xtraTabPage1});
this.xtcControl.SelectedPageChanged += new DevExpress.XtraTab.TabPageChangedEventHandler(this.OnSelectedPageChanged);
this.xtcControl.SelectedPageChanging += new DevExpress.XtraTab.TabPageChangingEventHandler(this.OnSelectedPageChanging);
//
// xtraTabPage1
//
this.xtraTabPage1.Controls.Add(this.ModuleAddControl);
this.xtraTabPage1.Margin = new System.Windows.Forms.Padding(4);
this.xtraTabPage1.Name = "xtraTabPage1";
this.xtraTabPage1.Size = new System.Drawing.Size(971, 595);
this.xtraTabPage1.Text = "详细信息";
//
// ModuleAddControl
//
this.ModuleAddControl.BackColor = System.Drawing.Color.Transparent;
this.ModuleAddControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.ModuleAddControl.Location = new System.Drawing.Point(0, 0);
this.ModuleAddControl.Margin = new System.Windows.Forms.Padding(4);
this.ModuleAddControl.Name = "ModuleAddControl";
this.ModuleAddControl.ParentKey = "类别编号";
this.ModuleAddControl.ParentValue = "类别名称";
this.ModuleAddControl.Size = new System.Drawing.Size(971, 595);
this.ModuleAddControl.TabIndex = 0;
//
// FrmMain
//
this.Appearance.BackColor = System.Drawing.SystemColors.Control;
this.Appearance.Options.UseBackColor = true;
this.Appearance.Options.UseFont = true;
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.ClientSize = new System.Drawing.Size(977, 624);
this.Controls.Add(this.xtcControl);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Margin = new System.Windows.Forms.Padding(5);
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "FrmMain";
this.Text = "";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.OnFormClosing);
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.OnFormClosed);
((System.ComponentModel.ISupportInitialize)(this.xtcControl)).EndInit();
this.xtcControl.ResumeLayout(false);
this.xtraTabPage1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraTab.XtraTabControl xtcControl;
private DevExpress.XtraTab.XtraTabPage xtraTabPage1;
private Control.ModulePanelEx ModuleAddControl;
}
}
+599
View File
@@ -0,0 +1,599 @@
/******************************
* 说明:基础档案添加界面
* 创建人:龚宇超
* 创建日期:2017-11-02
* 修改人:
* 修改日期:
* 修改备注:
* 版本: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.Control.Model;
using Lskj.Util;
using Lskj.Business.Impl;
using Lskj.Model;
using DevExpress.XtraTab;
using DevExpress.Utils;
using Lskj.Data;
using Lskj.Business;
using System.Threading;
using DevExpress.XtraEditors;
using Lskj.Core;
namespace Lskj.PubAdd
{
/// <summary>
/// 基础档案添加界面
/// </summary>
public partial class FrmMain : BaseForm
{
/// <summary>
/// 主表选中行
/// </summary>
public DataRow MaintabFocusedRow { get; private set; }
/// <summary>
/// 系统模块实体对象
/// </summary>
/// <value>The system model.</value>
public ModuleModel SysModel { get; private set; }
/// <summary>
/// 里面是否使用滚动条
/// </summary>
public bool isAutoScroll = false;
/// <summary>
/// 调用动态链接库默认传递参数
/// </summary>
public DynamicAddModel Model;
double H_Scaling;
double W_Scaling;
public FrmMain()
{
SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.ResizeRedraw | ControlStyles.Selectable | ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint | ControlStyles.SupportsTransparentBackColor, true);
InitializeComponent();
}
protected override void OnLoad(EventArgs e)
{
WaitForm.ShowForm();
try
{
Console.WriteLine("初始化开始:" + DateTime.Now);
//this.SuspendLayout();
this.SysModel = new ModuleModel(MainImpl.GetSystemdllTab(this.Model.ModuleCode));
this.SysModel.ParmaryKey = BaseImpl.GetBasePrimaryKey(this.Model.ModuleCode);
this.SysModel.maintabFocusedRow = JsonUtil.ToDataRow(Model.MaintabFocusedRowJson);
this.ModuleAddControl.OnAddRecordCallBack += OnAddRecordCallBack;
this.CreateControlLocation();
this.SetControlPanelSize();
this.CreateTabDetail();
Console.WriteLine("初始化完成:" + DateTime.Now);
}
catch (Exception ex)
{
LogHelper.Instance.WriteError(ex);
string Message = ErrorMessage.PromptErrorMessage(ex);
MessageUtil.Show(Message, ex.Message);
}
finally
{
Lskj.Control.Model.AutoSizeChange.ControllInitializeSize(this);
//this.ResumeLayout(false);
}
this.Text = Model.FormText + (string.IsNullOrWhiteSpace(Model.ObjectId) ? "" : "[" + Model.ObjectId + "]");
LogUtil.WriteDebug(Model.ModuleCode, "打开操作", ERPInfo.Instance.UserName, "打开[" + Model.FormText + "] 查看" + Model.ObjectId, Model.ModuleId + "");
WaitForm.HideForm();
}
/// <summary>
/// <para>说明:设置窗口大小</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-03 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="menuCode">The menu code.</param>
private void SetControlPanelSize()
{
DataRow item = BaseModuleImpl.GetControlParentSize(this.SysModel.FormKey);
if (item != null)
{
int otherHeight = 80;
bool topVisible = false;
if ("lskj.pubadd.dll".Equals((this.SysModel.MenuAddName).ToLower()) ||
"lskj.pubadd2.dll".Equals((this.SysModel.MenuAddName).ToLower()))
{
otherHeight = 130;
topVisible = true;
}
//this.ModuleAddControl.SetTopPanelVisible(topVisible);//2023-9-1 把这个判断放入modulePanelEx初始化中
this.Width = Convert.ToInt32(item["width"] + "");
int height = this.ModuleAddControl.ControlHeight + this.ModuleAddControl.OperatePanelControlObj.Height + this.ModuleAddControl.SpeciesPanelControlObj.Height;
//if (Convert.ToInt32(item["height"] + "") < height)
//{
// height = Convert.ToInt32(item["height"] + "");
// this.ModuleAddControl.plMainControlObj.VerticalScroll.Visible = true;
//}
height = Convert.ToInt32(item["height"] + "") > height ? height : Convert.ToInt32(item["height"] + "");//如果控件高度小于设置高度,以实际高度为准
this.Height = height + otherHeight;
//this.Height = Convert.ToInt32(item["height"] + "") + otherHeight;
if (this.Left < 0) this.Left = 0;
if (this.Top < 0) this.Top = 0;
this.Left = (Screen.PrimaryScreen.WorkingArea.Width - this.Width) / 2;
this.Top = (Screen.PrimaryScreen.WorkingArea.Height - this.Height) / 2;
if ((this.Width > Screen.PrimaryScreen.WorkingArea.Width || (this.Height > Screen.PrimaryScreen.WorkingArea.Height)))
{
int screenHeight = Screen.PrimaryScreen.WorkingArea.Height;
screenHeight = screenHeight - 40;
this.Height = screenHeight;
this.Top = (Screen.PrimaryScreen.WorkingArea.Height - this.Height) / 2;
isAutoScroll = true;
ModuleAddControl.plMainControlObj.AutoScroll = isAutoScroll;
}
else {
this.ModuleAddControl.plMainControlObj.AutoScroll = true;
this.ModuleAddControl.plMainControlObj.HorizontalScroll.Visible = false;
}
}
}
/// <summary>
/// <para>说明:初始化多标签</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-10 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
private void CreateTabDetail()
{
this.Invoke((EventHandler)delegate
{
DataTable details = BaseModuleImpl.GetBaseAddTabDetail(Model.ModuleCode);
bool isInside = false;
foreach (DataRow item in details.Rows)
{
XtraTabPage tabPage = new XtraTabPage();
GridDetailModel detailModel = new GridDetailModel(item, null, GridCustomColumnStruct.BaseDetailGridView);
if (!string.IsNullOrEmpty(detailModel.UnionModule))
{
ModuleModel moduleModel = new ModuleModel(MainImpl.GetSystemdllTab(detailModel.UnionModule));
if (string.IsNullOrWhiteSpace(moduleModel.FormKey))
{
MessageUtil.Show(detailModel.DetailName + "模块配置错误");
return;
}
detailModel.DetailSql = moduleModel.MenuSql;
}
detailModel.GridColumns = ReportImpl.GetReportDetailColumns(Model.ModuleCode, item["id"] + "");
tabPage.Text = detailModel.DetailName;
tabPage.Tag = detailModel;
if (ModuleAddControl.plMainControlObj.Tag is XtraTabControl)
{
XtraTabControl xtr = ModuleAddControl.plMainControlObj.Tag as XtraTabControl;
xtr.TabPages.Add(tabPage);
isInside = true;
xtr.SelectedPageChanged += new DevExpress.XtraTab.TabPageChangedEventHandler(this.OnSelectedPageChanged);
xtr.SelectedPageChanging += new DevExpress.XtraTab.TabPageChangingEventHandler(this.OnSelectedPageChanging);
}
else
{
this.xtcControl.TabPages.Add(tabPage);
}
}
this.xtcControl.ShowTabHeader = details.Rows.Count > 0 && !isInside ? DefaultBoolean.True : DefaultBoolean.False;
});
}
/// <summary>
/// <para>说明:创建控件</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-03 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
private void CreateControlLocation()
{
this.ModuleAddControl.SavaState = Model.SaveState.Equals("1");
this.ModuleAddControl.IsView = Model.IsView;
this.ModuleAddControl.ParentKey = Model.ParentKey;
this.ModuleAddControl.ParentValue = Model.ParentValue;
this.ModuleAddControl.PrimaryKey = this.SysModel.ParmaryKey;// BaseImpl.GetBasePrimaryKey(Model.ModuleCode); 和上方获取主键执行方法相同,直接取上方的值
this.ModuleAddControl.UnionKey = Model.UnionKey;
this.ModuleAddControl.UnionValue = Model.UnionValue;
this.ModuleAddControl.PrimaryValue = Model.ObjectId;
this.ModuleAddControl.ControlSql = Model.ControlSql;
this.ModuleAddControl.OnCloseCallback += new EventHandler(OnCloseCallback);
this.ModuleAddControl.SearchObject = Model.SearchObject;
this.ModuleAddControl.InitializeControl(SysModel, Model, isAutoScroll);
}
/// <summary>
/// <para>说明:关闭按钮回调</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-08 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
protected void OnCloseCallback(object sender, EventArgs e)
{
try
{
this.DialogResult = DialogResult.OK;
this.Close();
}
catch (Exception ex)
{
string Message = ErrorMessage.PromptErrorMessage(ex);
MessageUtil.Show(Message, ex.Message);
}
}
/// <summary>
/// <para>说明:查询条件执行前</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-10 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The sender.</param>
/// <param name="e">The e.</param>
protected void OnSearchBefore(object sender, SearchArgs e)
{
try
{
XtraTabPage tabPage = xtcControl.SelectedTabPage;
if (ModuleAddControl.plMainControlObj.Tag is XtraTabControl)
{
XtraTabControl xtr = ModuleAddControl.plMainControlObj.Tag as XtraTabControl;
tabPage = xtr.SelectedTabPage;
}
if (tabPage != null)
{
ModuleGridEx moduleGrid = tabPage.Tag as ModuleGridEx;
GridDetailModel detailModel = moduleGrid.Tag as GridDetailModel;
moduleGrid.SearchObj.SearchGrid(detailModel.DetailSql + string.Format(" and {0}='{1}'", moduleGrid.DetailKeyField, moduleGrid.UnionValue));
}
e.Continue = false;
}
catch (Exception ex)
{
string Message = ErrorMessage.PromptErrorMessage(ex);
MessageUtil.Show(Message, ex.Message);
}
}
/// <summary>
/// <para>说明:查询条件执行后</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-11-10 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
protected void OnSearchAfter(object sender, EventArgs e)
{
try
{
XtraTabPage tabPage = xtcControl.SelectedTabPage;
if (ModuleAddControl.plMainControlObj.Tag is XtraTabControl)
{
XtraTabControl xtr = ModuleAddControl.plMainControlObj.Tag as XtraTabControl;
tabPage = xtr.SelectedTabPage;
}
if (tabPage != null)
{
if (tabPage.Tag is ModuleGridEx)
{
ModuleGridEx moduleGrid = tabPage.Tag as ModuleGridEx;
GridDetailModel detailModel = moduleGrid.Tag as GridDetailModel;
tabPage.Text = detailModel.DetailName + "(" + moduleGrid.SearchObj.GridRowCount + "条)";
}
else if (tabPage.Tag is GridControlEx)
{
GridControlEx moduleGrid = tabPage.Tag as GridControlEx;
GridDetailModel detailModel = moduleGrid.Tag as GridDetailModel;
tabPage.Text = detailModel.DetailName + "(" + moduleGrid.DataRowCount() + "条)";
}
}
}
catch (Exception ex)
{
string Message = ErrorMessage.PromptErrorMessage(ex);
MessageUtil.Show(Message, ex.Message);
}
}
/// <summary>
/// <para>说明:切换选项卡</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2018-04-09 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="TabPageChangingEventArgs"/> instance containing the event data.</param>
protected void OnSelectedPageChanging(object sender, TabPageChangingEventArgs e)
{
try
{
XtraTabPage page = e.Page;
if (page != null)
{
if (e.PrevPage == xtcControl.TabPages[0] && string.IsNullOrEmpty(this.ModuleAddControl.PrimaryValue))
{
MessageUtil.Show(ResourceKeys.BeforeSaveData);
e.Cancel = true;
}
}
}
catch (Exception ex)
{
string Message = ErrorMessage.PromptErrorMessage(ex);
MessageUtil.Show(Message, ex.Message);
}
}
/// <summary>
/// <para>说明:切换标签刷新主键值</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2018-04-09 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="TabPageChangedEventArgs"/> instance containing the event data.</param>
protected void OnSelectedPageChanged(object sender, TabPageChangedEventArgs e)
{
try
{
//XtraTabPage page = e.Page;
//if (page != null && page.Tag is ModuleGridEx)
//{
// ModuleGridEx gridEx = page.Tag as ModuleGridEx;
// GridDetailModel detailModel = gridEx.Tag as GridDetailModel;
// gridEx.SearchObj.SearchGrid();
// gridEx.UnionValue = this.ModuleAddControl.PrimaryValue;
// page.Text = detailModel.DetailName + "(" + gridEx.SearchObj.GridRowCount + "条)";
//}
//if (xtcControl.SelectedTabPageIndex==0) return;
XtraTabPage tabPage = e.Page;
ModuleAddControl.OperatePanelControlObj.Visible = true;
//XtraTabPage tabPage = this.xtcControl.SelectedTabPage;
if (tabPage.Tag is ModuleGridEx) ModuleAddControl.OperatePanelControlObj.Visible = false;
if (!(tabPage.Tag is GridDetailModel)) return;
ModuleAddControl.OperatePanelControlObj.Visible = false;
if (tabPage.Controls.Count == 0)
{
GridDetailModel detailModel = tabPage.Tag as GridDetailModel;
ModuleModel moduleModel = null;
DynamicAddModel addModel = new DynamicAddModel(new string[] {
detailModel.DetailName,
ERPInfo.Instance.UserId,
ERPInfo.Instance.UserName,
"1",detailModel.UnionModule,"","",""
});
if (string.IsNullOrEmpty(detailModel.UnionModule))
{
PanelControl plBottom = new PanelControl();
plBottom.Dock = DockStyle.Bottom;
plBottom.Visible = false;
PanelControl plMain = new PanelControl();
plMain.Dock = DockStyle.Fill;
GridControlEx gridEx = detailModel.AutoMultiHeader == 1 ? new BandedGridControlEx() : new GridControlEx();
gridEx.Dock = DockStyle.Fill;
gridEx.Tag = detailModel;
gridEx.Parent = plMain;
gridEx.Model = this.Model;
gridEx.SetReadOnlyColumns(detailModel.GridColumns, detailModel.GridCustomColumnKey);
//gridEx.SetGridRightMenus(BaseModuleImpl.GetBaseGridRightMenus(model.FormKey), this.Model, OnGridViewRightCallBack);
//gridEx.SetGridRowColors(BaseModuleImpl.GetBaseGridRowColors(model.FormKey));
gridEx.SetGridRightMenus(BaseModuleImpl.GetBaseGridRightMenus(detailModel.FormKey), this.Model);
gridEx.SetGridRowColors(BaseModuleImpl.GetBaseGridRowColors(detailModel.FormKey));
if (detailModel.IsCheck == 1)//加载复选框
{
GridDragGrid.GridAddCheckBox(gridEx.GridView);
}
// 加载配置查询条件
if (Model != null && Model.IsDetailSearch)
{
plBottom.Visible = true;
MyControl searchObj = new MyControl(detailModel.DetailSql, gridEx);
plBottom.Height = searchObj.InitSearchControl(BaseModuleImpl.GetCustomQueryFields(detailModel.FormKey), plBottom);
}
tabPage.Tag = gridEx;
tabPage.Controls.AddRange(new PanelControl[] { plBottom, plMain });
if (detailModel.AutoRefresh)
{
if (!string.IsNullOrWhiteSpace(this.ModuleAddControl.ParentKey))
{
string codeSql = "select";
codeSql += string.Format(" '{0}' as {1}", this.ModuleAddControl.PrimaryValue, this.ModuleAddControl.PrimaryKey);
gridEx.SetGridViewDataSource(SqlHelper.ExecuteDataTable(ReplaceHelper.ReplaceRowParam(BaseImpl.GetDataRowResult(codeSql), ReplaceHelper.ReplaceWhereCond(detailModel.DetailSql))));
}
// 自动刷新
}
}
else
{
moduleModel = new ModuleModel(MainImpl.GetSystemdllTab(detailModel.UnionModule));
ModuleGridEx moduleGrid = new ModuleGridEx();
moduleGrid.IsDetail = true;
moduleGrid.Dock = DockStyle.Fill;
moduleGrid.Tag = detailModel;
moduleGrid.ParentKeyField = string.IsNullOrEmpty(detailModel.UnionParentField) ? SysModel.ParmaryKey : detailModel.UnionParentField;
//直接在控件数据源中取值,控件可能是禁显状态(没用控件获取不到值)
if (!string.IsNullOrWhiteSpace(moduleGrid.ParentKeyField) &&this.ModuleAddControl.ControlObj.CurrentData.Table.Columns.Contains(moduleGrid.ParentKeyField))
{
moduleGrid.ParentKeyValue = moduleGrid.UnionValue = this.ModuleAddControl.ControlObj.CurrentData[moduleGrid.ParentKeyField] + "";
}
//moduleGrid.ParentKeyValue = this.ModuleAddControl.ControlObj.GetControlValue(moduleGrid.ParentKeyField);
moduleGrid.DetailKeyField = detailModel.UnionValue;
moduleGrid.UnionKey = detailModel.UnionValue;
//moduleGrid.UnionValue = this.ModuleAddControl.ControlObj.GetControlValue(moduleGrid.ParentKeyField); //Model.ObjectId;
moduleGrid.SearchControlSql = Model.ControlSql;
moduleGrid.InitializeControl(moduleModel, addModel);
moduleGrid.SearchObj.OnSearchBeforeCallBack += new SearchEventHandler(OnSearchBefore);
moduleGrid.SearchObj.OnSearchAfterCallBack += new EventHandler(OnSearchAfter);
Lskj.Control.Model.AutoSizeChange.ControllInitializeSize(moduleGrid);
tabPage.Controls.Add(moduleGrid);
tabPage.Tag = moduleGrid;
if (detailModel.AutoRefresh)
{
moduleGrid.SearchObj.OnDataSourceBindCallBack += new EventHandler(OnMainSearchDataSourceBindCallBack);
// 自动刷新
//moduleGrid.SearchObj.SearchGrid(ReplaceHelper.ReplaceWhereCond(moduleModel.MenuSql) + string.Format(" and {0}='{1}'", moduleGrid.DetailKeyField, moduleGrid.UnionValue));
}
}
}
}
catch (Exception ex)
{
string Message = ErrorMessage.PromptErrorMessage(ex);
MessageUtil.Show(Message, ex.Message);
}
}
/// <summary>
/// <para>说明:查询条件绑定完成查询数据</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期: </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The sender.</param>
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
protected void OnMainSearchDataSourceBindCallBack(object sender, EventArgs e)
{
try
{
MyControl searchobj = sender as MyControl;
//if (!string.IsNullOrEmpty(this.SysModel.CustomColumnSQL))
//{
// BaseImpl.ExecSqlValue(searchobj.ReplaceControlValue(this.SysModel.CustomColumnSQL));
//}
searchobj.SearchGrid();
OnSearchAfter(null,null);
}
catch (Exception ex)
{
string Message = ErrorMessage.PromptErrorMessage(ex);
MessageUtil.Show(Message, ex.Message);
}
}
/// <summary>
/// 添加保存成功后执行
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void OnAddRecordCallBack(object sender, EventArgs e)
{
FormDialogModel dialogModel = new FormDialogModel()
{
DialogDllName = "Lskj.PubAdd.dll",
PubDialogType = DialogType.PubAddRecord,
ReturnTag = ModuleAddControl.ControlObj
};
this.Tag = dialogModel;
}
/// <summary>
/// <para>说明:窗口关闭</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2019-07-15 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="FormClosedEventArgs"/> instance containing the event data.</param>
protected void OnFormClosed(object sender, FormClosedEventArgs e)
{
if (this.ModuleAddControl.ControlObj != null)
{
this.ModuleAddControl.ControlObj.ReleaseImageResources();
}
}
/// <summary>
/// <para>说明:窗口关闭之前</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2019-07-15 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="FormClosingEventArgs"/> instance containing the event data.</param>
protected void OnFormClosing(object sender, FormClosingEventArgs e)
{
try
{
if (this.ModuleAddControl != null && this.ModuleAddControl.IsCard)
{
this.ModuleAddControl.CloseIDCardThread();
}
this.DialogResult = DialogResult.OK;
}
catch (Exception ex)
{
string Message = ErrorMessage.PromptErrorMessage(ex);
MessageUtil.Show(Message, ex.Message);
}
}
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000;
return cp;
}
}
}
}
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+116
View File
@@ -0,0 +1,116 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{35BE59B2-06CE-441B-8166-948647DA3815}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Lskj.PubAdd</RootNamespace>
<AssemblyName>Lskj.PubAdd</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\Debug\Lib\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<PlatformTarget>AnyCPU</PlatformTarget>
<DocumentationFile>..\..\Debug\AllMethodXml\Lskj.PubAdd.XML</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>none</DebugType>
<Optimize>true</Optimize>
<OutputPath>..\..\Release\Lib\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="DevExpress.Data.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Printing.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Utils.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraBars.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.XtraEditors.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraGrid.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraLayout.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraPrinting.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Drawing" />
<Reference Include="System.Net" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="DllBaseClass.cs" />
<Compile Include="FrmMain.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmMain.Designer.cs">
<DependentUpon>FrmMain.cs</DependentUpon>
</Compile>
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Lskj.Business\Lskj.Business.csproj">
<Project>{7EAFCCC2-A18F-49E9-85C6-A984966CFD01}</Project>
<Name>Lskj.Business</Name>
</ProjectReference>
<ProjectReference Include="..\Lskj.Control\Lskj.Control.csproj">
<Project>{447CDC40-659F-4CCA-9ED6-8E818B4CF8BF}</Project>
<Name>Lskj.Control</Name>
</ProjectReference>
<ProjectReference Include="..\Lskj.Core\Lskj.Core.csproj">
<Project>{2a1be6ac-1077-491b-a754-c5822fe8121e}</Project>
<Name>Lskj.Core</Name>
</ProjectReference>
<ProjectReference Include="..\Lskj.Data\Lskj.Data.csproj">
<Project>{308B9B18-9BE2-495C-9C64-EED81D567813}</Project>
<Name>Lskj.Data</Name>
</ProjectReference>
<ProjectReference Include="..\Lskj.Model\Lskj.Model.csproj">
<Project>{52BC40E0-C0C6-4F78-996B-CAE028D209CA}</Project>
<Name>Lskj.Model</Name>
</ProjectReference>
<ProjectReference Include="..\Lskj.Util\Lskj.Util.csproj">
<Project>{A51BF642-6543-4DE3-8948-83F558B72BD4}</Project>
<Name>Lskj.Util</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="FrmMain.resx">
<DependentUpon>FrmMain.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的常规信息通过以下
// 特性集控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("Lskj.PubAdd")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Microsoft")]
[assembly: AssemblyProduct("Lskj.PubAdd")]
[assembly: AssemblyCopyright("Copyright © Microsoft 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 使此程序集中的类型
// 对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型,
// 则将该类型上的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("ea26c250-0b6e-44a2-b50b-9275cb0390e5")]
// 程序集的版本信息由下面四个值组成:
//
// 主版本
// 次版本
// 内部版本号
// 修订号
//
// 可以指定所有这些值,也可以使用“内部版本号”和“修订号”的默认值,
// 方法是按如下所示使用“*”:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
+35
View File
@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="NPOI" publicKeyToken="0df73ec7942b34e1" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.1.3.1" newVersion="2.1.3.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.10.0" newVersion="2.6.10.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.10.0" newVersion="2.6.10.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Spire.XLS" publicKeyToken="663f351905198cb3" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.3.8.0" newVersion="10.3.8.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Spire.Presentation" publicKeyToken="663f351905198cb3" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.3.6.0" newVersion="5.3.6.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Spire.Doc" publicKeyToken="663f351905198cb3" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.3.15.0" newVersion="8.3.15.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>