ab56a9bcf7
SVN-Revision: r240
139 lines
4.8 KiB
C#
139 lines
4.8 KiB
C#
using DevExpress.XtraBars;
|
|
using Lskj.Control.Model;
|
|
using Lskj.Model;
|
|
using Lskj.Util;
|
|
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 Lskj.Control
|
|
{
|
|
public partial class ErrorRestriction : BaseForm
|
|
{
|
|
/// <summary>
|
|
/// 存储过程提示的报错信息
|
|
/// </summary>
|
|
public string PromptMessage;
|
|
/// <summary>
|
|
/// 入口参数
|
|
/// </summary>
|
|
public DynamicModel model;
|
|
/// <summary>
|
|
/// 主表控件
|
|
/// </summary>
|
|
public MyControl myControl;
|
|
/// <summary>
|
|
/// 右键中点击的菜单
|
|
/// </summary>
|
|
public BarItemLink ItemLink;
|
|
/// <summary>
|
|
/// 单据对象
|
|
/// </summary>
|
|
public BillModel BillModel;
|
|
/// <summary>
|
|
/// 单据编号
|
|
/// </summary>
|
|
public string DocumentNumber;
|
|
|
|
public ErrorRestriction()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
/// <summary>
|
|
/// 单据进入
|
|
/// </summary>
|
|
/// <param name="msg"></param>
|
|
/// <param name="dynamicmodel"></param>
|
|
/// <param name="control"></param>
|
|
/// <param name="barItemLink"></param>
|
|
/// <param name="billModel"></param>
|
|
/// <param name="billId"></param>
|
|
public ErrorRestriction(string msg, DynamicModel dynamicmodel, MyControl control, BarItemLink barItemLink, BillModel billModel,string billId )
|
|
{
|
|
InitializeComponent();
|
|
this.model = dynamicmodel;
|
|
this.myControl = control;
|
|
this.ItemLink = barItemLink;
|
|
this.BillModel = billModel;
|
|
this.DocumentNumber = billId;
|
|
lbTips.Text=this.PromptMessage = msg; //报错提示
|
|
btnRefresh.Text = barItemLink.Caption;//按钮名称
|
|
this.btnRefresh.Click += BtnRefresh_Click;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 基础模块进入
|
|
/// </summary>
|
|
/// <param name="msg"></param>
|
|
/// <param name="dynamicmodel"></param>
|
|
/// <param name="control"></param>
|
|
/// <param name="barItemLink"></param>
|
|
public ErrorRestriction(string msg, DynamicModel dynamicmodel, MyControl control, BarItemLink barItemLink)
|
|
{
|
|
InitializeComponent();
|
|
this.model = dynamicmodel;
|
|
this.myControl = control;
|
|
this.ItemLink = barItemLink;
|
|
lbTips.Text = this.PromptMessage = msg; //报错提示
|
|
btnRefresh.Text = barItemLink.Caption;//按钮名称
|
|
this.btnRefresh.Click += BtnRefresh_Click;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 确认按钮点击
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void BtnRefresh_Click(object sender, EventArgs e)
|
|
{
|
|
DataRow rowItem = ItemLink.Item.Tag as DataRow;
|
|
CommonMenu menu = new CommonMenu(this.model, this.myControl);
|
|
if(this.BillModel != null||!string.IsNullOrWhiteSpace(this.DocumentNumber)) menu.ApplyBefore += new CommonToolApplyEventHandler(OnMenuApplyBefore);//如果是单据,添加回调
|
|
menu.Apply(rowItem);
|
|
}
|
|
|
|
/// <summary>
|
|
/// <para>说明:执行前单独替换BilldocumentId</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-03-07 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="e">The e.</param>
|
|
protected void OnMenuApplyBefore(ApplyArgs e)
|
|
{
|
|
string[] paramList = new string[e.MemuModel.ParamList.Count];
|
|
|
|
for (int i = 0; i < e.MemuModel.ParamList.Count; i++)
|
|
{
|
|
string item = e.MemuModel.ParamList[i];
|
|
List<string> condition = ReplaceHelper.GetParamFields(item);
|
|
foreach (string cond in condition)
|
|
{
|
|
string value = this.BillModel.PrimaryKey.Equals(cond.Replace("{", "").Replace("}", "").ToLower(), StringComparison.OrdinalIgnoreCase) ? this.DocumentNumber : cond;
|
|
item = item.Replace(cond, value); ;
|
|
}
|
|
paramList[i] = item;
|
|
}
|
|
e.MemuModel.ParamList = paramList.ToList();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 点击取消按钮
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void simpleButton1_Click(object sender, EventArgs e)
|
|
{
|
|
this.DialogResult = DialogResult.OK;
|
|
}
|
|
}
|
|
}
|