92d1a3bfed
SVN-Revision: r1111
1059 lines
48 KiB
C#
1059 lines
48 KiB
C#
/***********************
|
|
* 说明:单据BillInfo模块加载
|
|
* 创建人:龚宇超
|
|
* 创建日期:
|
|
* 修改人:
|
|
* 修改日期:
|
|
* 修改备注:
|
|
* 版本: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.Business.Impl;
|
|
using Lskj.Data;
|
|
using DevExpress.XtraGrid.Views.Grid;
|
|
using DevExpress.XtraEditors;
|
|
using DevExpress.XtraGrid.Columns;
|
|
using DevExpress.XtraBars;
|
|
using DevExpress.XtraTab;
|
|
using Lskj.Business;
|
|
|
|
namespace Lskj.PubBillInfo
|
|
{
|
|
public partial class FrmMain : BaseForm
|
|
{
|
|
#region 私有变量
|
|
/// <summary>
|
|
/// 初始化完成
|
|
/// </summary>
|
|
private bool _isInitFinish;
|
|
/// <summary>
|
|
/// 是否直接打印
|
|
/// </summary>
|
|
private bool _isExcPrint;
|
|
/// <summary>
|
|
/// 推送模块编号
|
|
/// </summary>
|
|
private int _beforeId;
|
|
/// <summary>
|
|
/// 明细Sql
|
|
/// </summary>
|
|
private string _detailSql;
|
|
/// <summary>
|
|
/// 主打印Sql
|
|
/// </summary>
|
|
private string _mainPrintSql;
|
|
/// <summary>
|
|
/// 打印主sql中关联打印次数返回条件
|
|
/// </summary>
|
|
private string _printModeCond;
|
|
/// <summary>
|
|
/// 审核意见
|
|
/// </summary>
|
|
private string _auditAdvice;
|
|
/// <summary>
|
|
/// 推送菜单名
|
|
/// </summary>
|
|
private string _beforeMenuName;
|
|
/// <summary>
|
|
/// 推送用户
|
|
/// </summary>
|
|
private string _beforeUsers;
|
|
/// <summary>
|
|
/// 单据信息
|
|
/// </summary>
|
|
private DataRow _drBillInfo;
|
|
/// <summary>
|
|
/// 打印完成后添加数据用到的参数
|
|
/// </summary>
|
|
private List<string> _printSaveParams;
|
|
/// <summary>
|
|
/// 水印
|
|
/// </summary>
|
|
private WaterMark _waterMark;
|
|
#endregion
|
|
|
|
#region 公共变量
|
|
/// <summary>
|
|
/// 单据弹出模块模型
|
|
/// </summary>
|
|
public AccraditationModel AuditModelObj;
|
|
/// <summary>
|
|
/// 单据模型
|
|
/// </summary>
|
|
public BillAuditModel BillModelObj;
|
|
/// <summary>
|
|
/// 单据审批公共属性模型
|
|
/// </summary>
|
|
public BillAuditCommonModel BillComModelObj;
|
|
/// <summary>
|
|
/// BillInfo模型
|
|
/// </summary>
|
|
public DynamicBillInfoModel SysModel;
|
|
/// <summary>
|
|
/// 主表控件
|
|
/// </summary>
|
|
public MyControl ControlObj;
|
|
#endregion
|
|
|
|
#region 初始化操作
|
|
public FrmMain()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:窗口加载</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-05-29 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
|
|
protected override void OnLoad(EventArgs e)
|
|
{
|
|
WaitForm.ShowForm();
|
|
try
|
|
{
|
|
this._isInitFinish = false;
|
|
this.InitializeSetting();
|
|
this.InitializeControl();
|
|
this.InitializeSplitterPosition();
|
|
this.GetPrintOtherParam();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Instance.WriteError(ex);
|
|
//MessageUtil.Show(ex.StackTrace);
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
finally
|
|
{
|
|
Lskj.Control.Model.AutoSizeChange.ControllInitializeSize(this);
|
|
WaitForm.HideForm();
|
|
this._isInitFinish = true;
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:单据BillInfo初始化属性设置</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-12 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void InitializeSetting()
|
|
{
|
|
this.BillComModelObj = new BillAuditCommonModel();
|
|
this.BillModelObj = new BillAuditModel(BillImpl.GetBillInfo(this.SysModel.ModuleCode));
|
|
this.BillModelObj.MasterPreFix = BaseImpl.GetColumnPrefix(this.BillModelObj.MasterTable);
|
|
this.AuditModelObj = new AccraditationModel(BillAuditImpl.GetBillFlowData(this.SysModel.ModuleCode, this.SysModel.StepCode));
|
|
string text = ResourceKeys.BillInfoTitle;
|
|
if (Business.Impl.LanguageTranslation.Translatable)
|
|
{
|
|
text = "【{0}】" + Business.Impl.LanguageTranslation.GetTranslatedText("单据号") + "【{1}】";
|
|
|
|
}
|
|
|
|
this.Text = !string.IsNullOrEmpty(this.SysModel.FormTitle) ? string.Format(text, this.SysModel.FormText, this.SysModel.BillDocumentId) : this.SysModel.FormText;
|
|
this.txt_billDocumentId.EditText = this.SysModel.BillDocumentId;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:初始化控件</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void InitializeControl()
|
|
{
|
|
this.InitializeTabPages();
|
|
this.InitializeBillInfo();
|
|
this.InitializeCommonMenus();
|
|
this.InitializePrint();
|
|
this.InitializeFlowInfo();
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:绑定选项卡</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void InitializeTabPages()
|
|
{
|
|
this.baseTab.Model = this.SysModel;
|
|
this.baseTab.InitTabPages(GetTabDetails());
|
|
if (baseTab.TabControlObj.TabPages.Count == 0) splitLeft.PanelVisibility = SplitPanelVisibility.Panel1;
|
|
this.baseTab.OnRightCallback += new EventHandler(OnTabPageGridViewRightCallback);
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:单据管理</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void InitializeBillInfo()
|
|
{
|
|
//初始表头
|
|
this.ControlObj = new MyControl();
|
|
this.ControlObj.PrimaryValue = this.SysModel.BillDocumentId;
|
|
this.ControlObj.InitControl(BaseModuleImpl.GetControlLocation(this.BillModelObj.FormKey, this.SysModel.ModuleCode), this.pl_top);
|
|
this.ControlObj.SetReadOnlyAllControl(true);
|
|
this.ControlObj.OnDataSourceBindCallBack += new EventHandler(OnControlObjOnDataSourceBindCallBack);
|
|
this.pl_top.Height = (this.BillModelObj.ParentHeight - 36) > this.pl_top.Height ? this.pl_top.Height : this.BillModelObj.ParentHeight;
|
|
|
|
this.gridBillInfo.Model = this.SysModel;
|
|
//设置billInfo数据源
|
|
this.gridBillInfo.SetReadOnlyColumns(BillAuditImpl.GetSpareBillColumns(this.SysModel.ModuleCode, this.SysModel.UserName), GridCustomColumnStruct.AuditMainGridView + this.BillModelObj.FormKey);
|
|
|
|
//排序
|
|
this.BillModelObj.DetailPreFix = BaseImpl.GetColumnPrefix(this.BillModelObj.DetailTable);// 明细表列前缀
|
|
this.BillModelObj.DetailOrderField = this.BillModelObj.DetailPreFix + "lsidx_id";// 单据来源id
|
|
if (SystemInfo.Instance.IsNotBillDetailOrder)//禁用排序
|
|
this.BillModelObj.DetailOrderField = string.Empty;
|
|
|
|
//DataTable gridTable = BaseImpl.GetDataTableResult(ReplaceHelper.ReplaceParamToValue(this.BillModelObj.DetailSql, this.SysModel.BillDocumentId));
|
|
//gridTable.OrderBy(this.BillModelObj.DetailOrderField);
|
|
//this.gridBillInfo.SetGridViewDataSource(gridTable);
|
|
this.gridBillInfo.SetGridRowColors(BaseModuleImpl.GetBaseGridRowColors(this.BillModelObj.DetailFormKey));
|
|
this.gridBillInfo.SetGridRightMenus(BaseModuleImpl.GetBaseGridRightMenus("BILLDETAIL_" + this.SysModel.ModuleCode), this.SysModel, null, this.ControlObj);
|
|
this.gridBillInfo.gridControl.Paint += new PaintEventHandler(OnMyPaint);
|
|
|
|
if (string.IsNullOrEmpty(this.BillModelObj.AuditLoadDetailFlag) || this.BillModelObj.AuditLoadDetailFlag == "0")
|
|
this.gridBillInfo.GridView.SelectionChanged += new DevExpress.Data.SelectionChangedEventHandler(OnGridViewRowSelectionClick);
|
|
else
|
|
this.gridBillInfo.GridView.DoubleClick += new EventHandler(OnGridViewDoubleClick);
|
|
}
|
|
|
|
/// <summary>
|
|
/// <para>说明:数据绑定完成后刷新显示数据</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期: </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>
|
|
void OnControlObjOnDataSourceBindCallBack(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
this.ControlObj.CanExecControl = false;
|
|
this._drBillInfo = BaseAuditImpl.GetCurrentFlowRowData(this.BillModelObj.MasterTable, this.BillModelObj.PrimaryKey, this.SysModel.BillDocumentId);
|
|
this.ControlObj.SetAllControlValue(this._drBillInfo);
|
|
this.ControlObj.CanExecControl = true;
|
|
|
|
//加载明细数据
|
|
DataTable gridTable = BaseImpl.GetDataTableResult(ReplaceHelper.ReplaceRowParam(_drBillInfo, this.BillModelObj.DetailSql));
|
|
gridTable.OrderBy(this.BillModelObj.DetailOrderField);
|
|
this.gridBillInfo.SetGridViewDataSource(gridTable);
|
|
|
|
//加载水印
|
|
this._waterMark = new WaterMark(this.BillModelObj.MasterPreFix, this._drBillInfo);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:初始化常用菜单</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void InitializeCommonMenus()
|
|
{
|
|
DataTable tableCommon = BaseModuleImpl.GetBaseGridRightMenus(this.SysModel.ModuleCode, ModuleType.BillDetail);
|
|
string text = Business.Impl.LanguageTranslation.Translatable ? Business.Impl.LanguageTranslation.GetTranslatedText("附件") : "附件";
|
|
this.btnAtt.Text = text + "(" + AttachImpl.GetFileCount(this.BillModelObj.DirId + "", this.SysModel.BillDocumentId) + ")";
|
|
if (tableCommon.Rows.Count == 0)
|
|
{
|
|
this.dpb_Tools.Visible = false;
|
|
this.btnAtt.Location = new Point(6, 121);
|
|
this.btnPrint.Location = new Point(6, 63);
|
|
//this.btnAtt.Width = 226;
|
|
return;
|
|
}
|
|
foreach (DataRow item in tableCommon.Rows)
|
|
{
|
|
BarButtonItem itemCommon = new BarButtonItem();
|
|
itemCommon.Caption = item["menuname"] + "";
|
|
itemCommon.Tag = item;
|
|
itemCommon.ItemClick += new ItemClickEventHandler(OnCommonItemClick);
|
|
this.pMenu.AddItem(itemCommon);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:打印</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void InitializePrint()
|
|
{
|
|
if (string.IsNullOrEmpty(this.BillModelObj.PrintFile)) return;
|
|
|
|
string[] files = this.BillModelObj.PrintFile.Split('|');
|
|
for (int i = 0; i < files.Length; i++)
|
|
{
|
|
BarButtonItem Item = new BarButtonItem();
|
|
Item.Caption = files[i].Replace(".rmf", "").Replace(".frx", "");
|
|
Item.Tag = files[i];
|
|
Item.ItemClick += new ItemClickEventHandler(OnPrintItemClick);
|
|
pMprint.AddItem(Item);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:初始化流转记录</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-05-29 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void InitializeFlowInfo()
|
|
{
|
|
// 初始化流转流转记录
|
|
this.gridFlow.GridView.RowStyle += new RowStyleEventHandler(OnGridViewFlowRecordRowStyle);
|
|
this.gridFlow.SetReadOnlyColumns(BaseAuditImpl.GetFlowRecordColumn(), GridCustomColumnStruct.AuditPopupAttachGridView + this.BillModelObj.FormKey);
|
|
this.gridFlow.SetGridViewDataSource(BaseAuditImpl.GetFlowRecordData(this.BillComModelObj.SystemTabFlowStep, this.SysModel.BillDocumentId, this.SysModel.ModuleCode));
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:初始化分割条位置</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void InitializeSplitterPosition()
|
|
{
|
|
try
|
|
{
|
|
string splitterPosition = IniHelper.Read(string.Format("base_SplitterPositionLeft_{0}", this.SysModel.ModuleCode));
|
|
if (!string.IsNullOrEmpty(splitterPosition)) this.splitLeft.SplitterPosition = Convert.ToInt32(splitterPosition);
|
|
string splitterMainPosition = IniHelper.Read(string.Format("base_spliterPositionMain_{0}", this.SysModel.ModuleCode));
|
|
if (!string.IsNullOrEmpty(splitterMainPosition)) this.splitMain.SplitterPosition = Convert.ToInt32(splitterMainPosition);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
LogHelper.Instance.WriteError(e);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:记录本次推送人员</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-01-09 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void GetPushOpers()
|
|
{
|
|
DataRow beforeOpers = BillAuditImpl.GetPushedOpers(this.SysModel.BillDocumentId, this.SysModel.StepCode);
|
|
if (beforeOpers != null)
|
|
{
|
|
//记录本次操作信息
|
|
this._beforeMenuName = beforeOpers["menuname"] + "";
|
|
this._beforeUsers = beforeOpers["operators"] + "";
|
|
this._beforeId = Convert.ToInt32(beforeOpers["id"]);
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 方法
|
|
/// <summary>
|
|
/// <para>说明:打印完成需要参数</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-07-09 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
protected void GetPrintOtherParam()
|
|
{
|
|
//取得打印完成后的参数
|
|
if (this.BillModelObj.PrintSql.Contains("<<"))
|
|
{
|
|
string[] strs = this.BillModelObj.PrintSql.Split(new[] { ">>" }, 2, StringSplitOptions.None);
|
|
_mainPrintSql = strs[1];
|
|
_printModeCond = strs[0].Replace("<<", "");
|
|
}
|
|
if (!string.IsNullOrEmpty(_printModeCond) && _printModeCond.IndexOf(';') > 0)
|
|
{
|
|
string[] str = _printModeCond.Split(';');
|
|
DataRow item = AttachImpl.GetSystemModule(str[0]);
|
|
if (item == null)
|
|
{
|
|
MessageUtil.Show("打印参数有误");
|
|
return;
|
|
}
|
|
string tableName = item["TableName"] + "";
|
|
string modetype = item["modType"] + "";
|
|
string comprefix = BaseImpl.GetColumnPrefix(tableName);
|
|
string primaryKey = modetype == "1" ? BaseImpl.GetBasePrimaryKey(str[0]) : comprefix + "billdocument_id";
|
|
//表名,列前缀,主键字段,主键值,模块编号,主打印Sql
|
|
_printSaveParams = new List<string>() { tableName, comprefix, primaryKey, str[1], str[0], _mainPrintSql };
|
|
|
|
//判断是否直接打印 modetype 区别单据和基础档案模块
|
|
switch (modetype)
|
|
{
|
|
case "1":
|
|
ModuleModel mode = new ModuleModel(MainImpl.GetSystemdllTab(str[0]));
|
|
if (mode != null) _isExcPrint = mode.PrintType == 3;
|
|
break;
|
|
case "2":
|
|
BaseAccraditationModel model = new BaseAccraditationModel(BillAuditImpl.GetPubAuditProperty(str[0]));
|
|
if (model != null) _isExcPrint = model.BillPrintType == 3;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:绑定选项卡</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private List<GridDetailModel> GetTabDetails()
|
|
{
|
|
List<GridDetailModel> details = new List<GridDetailModel>();
|
|
DataTable table = BaseAuditImpl.GetAttachTabs(this.SysModel.ModuleCode, this.SysModel.StepCode);
|
|
foreach (DataRow item in table.Rows)
|
|
{
|
|
DataTable dtGridColumns = BaseAuditImpl.GetBottomBasicInformation(item["formKey"] + "");
|
|
details.Add(new GridDetailModel(item, dtGridColumns, GridCustomColumnStruct.AuditPopupDetailGridView + item["formKey"] + ""));
|
|
}
|
|
return details;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:返回审核</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-01-09</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="row">The row.</param>
|
|
/// <returns>System.Int32.</returns>
|
|
private int ExecuteBackSelect(DataRow row)
|
|
{
|
|
if (row == null)
|
|
{
|
|
MessageUtil.Show(ResourceKeys.NoFindAntiauditBill);
|
|
return -9;
|
|
}
|
|
string stepCode = row[this.BillModelObj.MasterPreFix + "stepCode"] + "";
|
|
if (this.BillModelObj.BackSelected == "0") return -1;
|
|
if (stepCode == "100") return 0;
|
|
FrmBackSelect frmBackSel = new FrmBackSelect();
|
|
frmBackSel.SysModel = this.SysModel;
|
|
frmBackSel.BillModelObj = this.BillModelObj;
|
|
frmBackSel.StepCode = stepCode;
|
|
frmBackSel.InitControl();
|
|
if (frmBackSel.ShowDialog() != DialogResult.OK) return -9;
|
|
this._auditAdvice = frmBackSel.ComfirmMsg;
|
|
return frmBackSel.SelectStepCode;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:gridBillInfo点击事件共用函数</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void GridViewClick()
|
|
{
|
|
foreach (XtraTabPage tabPage in this.baseTab.TabControlObj.TabPages)
|
|
{
|
|
GridDetailModel model = this.baseTab.GetGridDetailModel(tabPage);
|
|
bool isDetailAttach = (model.IsReadOnly || model.IsChart);
|
|
DataRow dataRow = this.gridBillInfo.GridView.GetFocusedDataRow();
|
|
|
|
//string sqlValue = ReplaceHelper.ReplaceRowParam(this.gridBillInfo.GridView.GetFocusedDataRow(), model.DetailSql);
|
|
//this.baseTab.SetGridDataSource(tabPage, MainImpl.GetDataTableResult(sqlValue));
|
|
|
|
if (tabPage.Tag is ModuleWebView)
|
|
{
|
|
// 加载网页
|
|
string url = ReplaceHelper.ReplaceRowParam(dataRow, ReplaceHelper.ReplaceUserInfo(model.DetailSql));
|
|
url = url.StartsWith("http") ? url : SystemInfo.Instance.OAUrl + url;
|
|
ModuleWebView webView = tabPage.Tag as ModuleWebView;
|
|
webView.Dock = DockStyle.Fill;
|
|
webView.Tag = model;
|
|
webView.Navigate(url);
|
|
}
|
|
else if (tabPage.Tag is FrmWebBrowser)
|
|
{
|
|
// 加载网页
|
|
string url = ReplaceHelper.ReplaceRowParam(dataRow, ReplaceHelper.ReplaceUserInfo(model.DetailSql));
|
|
url = url.StartsWith("http") ? url : SystemInfo.Instance.OAUrl + url;
|
|
FrmWebBrowser webView = tabPage.Tag as FrmWebBrowser;
|
|
webView.Dock = DockStyle.Fill;
|
|
webView.Tag = model;
|
|
webView.LoadUrl(url);
|
|
}
|
|
else if (tabPage.Tag is FrmMiniBlink)
|
|
{
|
|
// 加载网页
|
|
string url = ReplaceHelper.ReplaceRowParam(dataRow, ReplaceHelper.ReplaceUserInfo(model.DetailSql));
|
|
url = url.StartsWith("http") ? url : SystemInfo.Instance.OAUrl + url;
|
|
FrmMiniBlink webView = tabPage.Tag as FrmMiniBlink;
|
|
webView.Dock = DockStyle.Fill;
|
|
webView.Tag = model;
|
|
webView.LoadUrl(url);
|
|
}
|
|
else if(tabPage.Tag is GridControlEx)
|
|
{
|
|
string sqlValue = isDetailAttach ? ReplaceHelper.ReplaceRowParam(dataRow, model.DetailSql) : GetSearchSql(model);
|
|
GridControlEx grdExMain = (tabPage.Tag as GridControlEx);
|
|
if (!isDetailAttach) grdExMain.LastSearchSql = sqlValue;
|
|
//this.tab_basicInfo.SetGridDataSource(tabPage, MainImpl.GetDataTableResult(sqlValue));
|
|
this.baseTab.SetGridDataSource(tabPage, sqlValue);
|
|
}
|
|
else if (tabPage.Tag is TabMultipledetails)
|
|
{
|
|
TabMultipledetails tabMultipledetails = tabPage.Tag as TabMultipledetails;
|
|
tabMultipledetails.SetConditionValues(dataRow);
|
|
GridControlEx grdExMain = (tabMultipledetails.SplitMain.Panel1.Tag as GridControlEx);
|
|
GridDetailModel MainModel = grdExMain.Tag as GridDetailModel;
|
|
string searchMainSql = isDetailAttach ? ReplaceHelper.ReplaceRowParam(dataRow, MainModel.DetailSql) : this.GetSearchSql(MainModel);
|
|
DataTable firstTable = MainImpl.GetDataTableResult(searchMainSql);
|
|
grdExMain.LastSearchSql = searchMainSql;
|
|
grdExMain.SetGridViewDataSource(firstTable);
|
|
if (tabMultipledetails.SplitMain.Panel2.Tag is GridControlEx)
|
|
{
|
|
GridControlEx grdExAdditional = (tabMultipledetails.SplitMain.Panel2.Tag as GridControlEx);
|
|
GridDetailModel AdditionalModel = grdExAdditional.Tag as GridDetailModel;
|
|
string searchAddSql = isDetailAttach ? ReplaceHelper.ReplaceRowParam(dataRow, AdditionalModel.DetailSql) : this.GetSearchSql(AdditionalModel);
|
|
if (!MainModel.IsUnioDetail)
|
|
{
|
|
grdExAdditional.LastSearchSql = searchAddSql;
|
|
grdExAdditional.SetGridViewDataSource(MainImpl.GetDataTableResult(searchAddSql));
|
|
}
|
|
//右侧是左侧的明细,左侧没有数据时。右侧赋空值(因为无法触发左侧行改变事件)
|
|
if (MainModel.IsUnioDetail && firstTable.Rows.Count == 0)
|
|
{
|
|
grdExAdditional.LastSearchSql = "";
|
|
grdExAdditional.SetGridViewDataSource(new DataTable());
|
|
}
|
|
}
|
|
else if (tabMultipledetails.SplitMain.Panel2.Tag is ChartControlEx)
|
|
{
|
|
ChartControlEx grdExAdditional = (tabMultipledetails.SplitMain.Panel2.Tag as ChartControlEx);
|
|
GridDetailModel AdditionalModel = grdExAdditional.Tag as GridDetailModel;
|
|
string searchAddSql = this.GetSearchSql(AdditionalModel);
|
|
DataTable table = MainImpl.GetDataTableResult(searchAddSql);
|
|
grdExAdditional.CreateChart(table);
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
|
|
|
|
#region 事件
|
|
/// <summary>
|
|
/// <para>说明:绘制水印</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
void OnMyPaint(object sender, PaintEventArgs e)
|
|
{
|
|
try
|
|
{
|
|
if (this._waterMark != null)
|
|
{
|
|
System.Windows.Forms.Control control = sender as System.Windows.Forms.Control;
|
|
GraphicsText graphicsText = new GraphicsText();
|
|
graphicsText.Graphics = e.Graphics;
|
|
SolidBrush brush = new SolidBrush(Color.Red);
|
|
Pen pen = new Pen(Color.Red, 2f);
|
|
StringFormat format = new StringFormat();
|
|
format.Alignment = StringAlignment.Center;
|
|
format.LineAlignment = StringAlignment.Center;
|
|
if (!string.IsNullOrEmpty(this._waterMark.Text))
|
|
{
|
|
int x = (control.Width - 120) / 2;
|
|
int y = (control.Height - 32) / 2;
|
|
graphicsText.DrawString(this._waterMark.Text, new Font("宋体", 20, FontStyle.Bold), brush, new PointF(x, y), format, -20f);
|
|
e.Graphics.TranslateTransform(x, y);
|
|
e.Graphics.RotateTransform(-20f);
|
|
|
|
if (Business.Impl.LanguageTranslation.Translatable)
|
|
{
|
|
// 1. 测量文本尺寸
|
|
SizeF textSize = e.Graphics.MeasureString(this._waterMark.Text, new Font("宋体", 20, FontStyle.Bold), new SizeF(float.MaxValue, float.MaxValue), format);
|
|
// 2. 计算边框矩形的尺寸和位置
|
|
int rectWidth = (int)textSize.Width + 10;
|
|
e.Graphics.DrawRectangle(pen, new Rectangle(-rectWidth / 2, -19, rectWidth, 32));
|
|
}
|
|
else
|
|
{
|
|
e.Graphics.DrawRectangle(pen, new Rectangle(-60, -19, 120, 32));
|
|
}
|
|
|
|
}
|
|
e.Graphics.ResetTransform();
|
|
if (!string.IsNullOrEmpty(this._waterMark.Print))
|
|
{
|
|
int x = (control.Width - 120) / 2;
|
|
int y = (control.Height - 90) / 2 - 40;
|
|
graphicsText.DrawString(this._waterMark.Print, new Font("宋体", 18, FontStyle.Bold), brush, new PointF(x, y), format, -20f);
|
|
e.Graphics.TranslateTransform(x, y);
|
|
e.Graphics.RotateTransform(-20f);
|
|
|
|
if (Business.Impl.LanguageTranslation.Translatable)
|
|
{
|
|
// 1. 测量文本尺寸
|
|
SizeF textSize = e.Graphics.MeasureString(this._waterMark.Print, new Font("宋体", 18, FontStyle.Bold), new SizeF(float.MaxValue, float.MaxValue), format);
|
|
// 2. 计算边框矩形的尺寸和位置
|
|
int rectWidth = (int)textSize.Width + 10;
|
|
e.Graphics.DrawRectangle(pen, new Rectangle(-rectWidth / 2, -19, rectWidth, 32));
|
|
}
|
|
else
|
|
{
|
|
e.Graphics.DrawRectangle(pen, new Rectangle(-60, -19, 120, 32));
|
|
}
|
|
}
|
|
e.Graphics.ResetTransform();
|
|
if (!string.IsNullOrEmpty(this._waterMark.Collect))
|
|
{
|
|
|
|
int x = (control.Width - 120) / 2;
|
|
int y = (control.Height - 180) / 2 + 100;
|
|
graphicsText.DrawString(this._waterMark.Collect, new Font("宋体", 20, FontStyle.Bold), brush, new PointF(x, y), format, -20f);
|
|
e.Graphics.TranslateTransform(x, y);
|
|
e.Graphics.RotateTransform(-20f);
|
|
if (Business.Impl.LanguageTranslation.Translatable)
|
|
{
|
|
// 1. 测量文本尺寸
|
|
SizeF textSize = e.Graphics.MeasureString(this._waterMark.Collect, new Font("宋体", 20, FontStyle.Bold), new SizeF(float.MaxValue, float.MaxValue), format);
|
|
// 2. 计算边框矩形的尺寸和位置
|
|
int rectWidth = (int)textSize.Width + 10;
|
|
e.Graphics.DrawRectangle(pen, new Rectangle(-rectWidth / 2, -19, rectWidth, 32));
|
|
}
|
|
else
|
|
{
|
|
e.Graphics.DrawRectangle(pen, new Rectangle(-60, -19, 120, 32));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:常用菜单点击事件</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
void OnCommonItemClick(object sender, ItemClickEventArgs e)
|
|
{
|
|
try
|
|
{
|
|
DataRow rowItem = e.Item.Tag as DataRow;
|
|
CommonMenu menu = new CommonMenu(this.SysModel, this.ControlObj);
|
|
menu.Apply(rowItem);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:打印事件</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
void OnPrintItemClick(object sender, ItemClickEventArgs e)
|
|
{
|
|
try
|
|
{
|
|
string printPath = PubUtil.PrintFileAbsolutelyPath;
|
|
string printFile = e.Item.Tag + "";
|
|
string sqlValue = string.Format("select * from {0} where {1}='{2}'", this.BillModelObj.MasterTable, this.BillModelObj.PrimaryKey, txt_billDocumentId.EditText);
|
|
DataRow masterRow = BillImpl.GetDataRowResult(sqlValue);
|
|
if (masterRow == null)
|
|
{
|
|
MessageUtil.Show(ResourceKeys.DataNotFount);
|
|
return;
|
|
}
|
|
if (!ReplaceHelper.ReplaceRowParamCond(masterRow, this.BillModelObj.PrintCond))
|
|
{
|
|
MessageUtil.Show(ResourceKeys.DisSatisfyPrintCond);
|
|
return;
|
|
}
|
|
string tmpSql = ReplaceHelper.ReplaceRowParam(masterRow, this.BillModelObj.PrintSql);
|
|
string tmpSql1 = ReplaceHelper.ReplaceRowParam(masterRow, this.BillModelObj.PrintSql1);
|
|
string tmpSql2 = ReplaceHelper.ReplaceRowParam(masterRow, this.BillModelObj.PrintSql2);
|
|
|
|
if (printFile.Contains(PrintUtil.TemplateFlag))
|
|
{
|
|
string mainSql = string.Empty;
|
|
List<string> tmpSqls = new List<string>();
|
|
if (_printSaveParams != null && _printSaveParams.Count > 0)
|
|
{
|
|
_printSaveParams[5] = mainSql = ReplaceHelper.ReplaceRowParam(masterRow, _mainPrintSql);
|
|
_printSaveParams[3] = masterRow.Table.Columns.Contains(_printSaveParams[2] + "") ? masterRow[_printSaveParams[2]] + "" : masterRow[BillModelObj.PrimaryKey] + "";
|
|
tmpSqls.Add(mainSql);
|
|
tmpSqls.Add(tmpSql1);
|
|
tmpSqls.AddRange(tmpSql2.Split(';').ToList());
|
|
}
|
|
else
|
|
{
|
|
if (!string.IsNullOrWhiteSpace(tmpSql)) tmpSqls.Add(tmpSql);
|
|
if (!string.IsNullOrWhiteSpace(tmpSql1)) tmpSqls.Add(tmpSql1);
|
|
if (!string.IsNullOrWhiteSpace(tmpSql2)) tmpSqls.AddRange(tmpSql2.Split(';').ToList());
|
|
}
|
|
PrintUtil.OnAfterPrint -= new EventHandler(OnReportPrintAfter);
|
|
PrintUtil.OnAfterPrint += new EventHandler(OnReportPrintAfter);
|
|
PrintUtil.FastReportPrint(tmpSqls, printFile, _isExcPrint);
|
|
}
|
|
else
|
|
{
|
|
DelphiHelper.LoadDelphiDll(printPath, printPath, printFile, tmpSql, tmpSql1, this.BillModelObj.PrintFileType, tmpSql2);
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:打印完成后回调</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-07-05 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="sender">The sender.</param>
|
|
/// <param name="e">The e.</param>
|
|
void OnReportPrintAfter(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
if (_printSaveParams != null && _printSaveParams.Count > 0)
|
|
{
|
|
//打印完成后添加数据库
|
|
int result = BaseModuleImpl.SavePrintRecord(_printSaveParams[0], _printSaveParams[1], _printSaveParams[2], _printSaveParams[3], _printSaveParams[4]);
|
|
}
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:单据右键菜单执行后刷新数据</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-01-24 </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>
|
|
void OnTabPageGridViewRightCallback(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
GridDetailModel model = this.baseTab.GetFocusTabPageGridDetailModel();
|
|
string sqlValue = ReplaceHelper.ReplaceRowParam(this.gridBillInfo.GridView.GetFocusedDataRow(), model.DetailSql);
|
|
this.baseTab.SetGridDataSource(MainImpl.GetDataTableResult(sqlValue));
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:单元格选中</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24 </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="RowCellClickEventArgs"/> instance containing the event data.</param>
|
|
void OnGridViewRowSelectionClick(object sender, DevExpress.Data.SelectionChangedEventArgs e)
|
|
{
|
|
try
|
|
{
|
|
this.GridViewClick();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:单元格双击事件</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
void OnGridViewDoubleClick(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
this.GridViewClick();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:流转表格行样式</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-12-15</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
void OnGridViewFlowRecordRowStyle(object sender, RowStyleEventArgs e)
|
|
{
|
|
try
|
|
{
|
|
if (e.RowHandle > 0)
|
|
{
|
|
DataRow dr = this.gridFlow.GridView.GetDataRow(e.RowHandle);
|
|
if (dr["sh"] + "" == "审") e.Appearance.ForeColor = Color.Blue;
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:附件</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
void OnAttachButtonClick(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
if (string.IsNullOrWhiteSpace(this.SysModel.BillDocumentId))
|
|
{
|
|
MessageUtil.Show(ResourceKeys.NotFoundBillNo);
|
|
}
|
|
else
|
|
{
|
|
string url = string.Format("pages/PhotoView.html?left=1&username={0}&password={1}&id={2}&isview={3}&dllcoid=", ERPInfo.Instance.UserName, ERPInfo.Instance.Password, this.SysModel.BillDocumentId, this.btnReturn.Enabled ? "0" : "1");
|
|
// 固定传入参数(窗口标题、操作员ID、操作员名称、权限、模版编号)
|
|
string[] defaultArgs = string.Format(ModuleArgs.DefaultArgs, this.SysModel.FormText, this.SysModel.UserId, this.SysModel.UserName, this.SysModel.Privilege, this.SysModel.ModuleCode).Split('~');
|
|
string[] menuArgs = SystemInfo.Instance.BsAttachFlag.Equals("1") ? new string[] { "", "", url } : new string[] { this.SysModel.BillDocumentId, "1", this.BillModelObj.DirId + "", "" };
|
|
string[] args = defaultArgs.Concat(menuArgs).ToArray();
|
|
IForm form = FormHelper.LoadDllForm(SystemInfo.Instance.BsAttachFlag.Equals("1") ? ResourceDynamic.PubBrower : ResourceDynamic.PhotoView, args);
|
|
DialogResult result = form.SubForm.ShowDialog();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogUtil.WriteError("附件出错!", ex);
|
|
//MessageUtil.Show("附件出错!" + ex);
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:分割条位置变化事件</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-24</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
void OnSplitterPositionChanged(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
if (_isInitFinish)
|
|
{
|
|
IniHelper.Write(string.Format("base_SplitterPositionLeft_{0}", this.SysModel.ModuleCode), this.splitLeft.SplitterPosition + "");
|
|
IniHelper.Write(string.Format("base_spliterPositionMain_{0}", this.SysModel.ModuleCode), this.splitMain.SplitterPosition + "");
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:返退</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-08-29 </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>
|
|
void OnReturnClick(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
int ret = ExecuteBackSelect(this._drBillInfo);
|
|
if (ret == -9) return;
|
|
string nextSelectStepCode = string.Empty;
|
|
string nextSelectStepOper = string.Empty;
|
|
if (MessageUtil.Show(ResourceKeys.ConfimAuditFailAndReturnBill, MessageBoxButtons.YesNo) == DialogResult.Yes)
|
|
{
|
|
string result = BaseAuditImpl.Audit(out nextSelectStepCode, out nextSelectStepOper, this.SysModel, this.SysModel.StepCode, this.SysModel.BillDocumentId, "", this.BillComModelObj.ProcedureName, "R", "0", this._auditAdvice, "", "", true, ret);
|
|
if (result == "1")
|
|
{
|
|
MessageUtil.Show(ResourceKeys.ForcedSuccess);
|
|
PushHelper push = new PushHelper(this.SysModel.BillDocumentId, this.SysModel.StepCode, this.SysModel.ModuleCode, this._beforeUsers, this._beforeMenuName, this._beforeId);
|
|
push.Push_Bill_Oper_Message();
|
|
this.DialogResult = DialogResult.OK;
|
|
}
|
|
else
|
|
{
|
|
MessageUtil.Show(string.Format(ResourceKeys.ForcedFail, result));
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogUtil.WriteError("反审出错!", ex);
|
|
//MessageUtil.Show("反审出错!" + 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>
|
|
void OnHelpClick(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
WebBrowserUtil.StartWebBrowser(this.SysModel.ModuleCode, this.SysModel.FormTitle);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 获取查询条件
|
|
/// <summary>
|
|
/// <para>说明:获取查询条件</para>
|
|
/// <para>创建人:王一帆</para>
|
|
/// <para>创建日期:2021-01-22 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="model">The model.</param>
|
|
/// <param name="rowItem">The row item.</param>
|
|
/// <returns>System.String.</returns>
|
|
protected string GetSearchSql(GridDetailModel model)
|
|
{
|
|
string fieldName = !string.IsNullOrEmpty(model.UnionParentField) ? model.UnionParentField : BaseImpl.GetBasePrimaryKey(model.UnionModule);
|
|
DataRow dr = this.BillModelObj.DetailTreeTable ? (this.gridBillInfo as TreeGridControlEx).GetViewFocusedDataRow() : this.gridBillInfo.GridView.GetFocusedDataRow();
|
|
|
|
fieldName = dr.Table.Columns.Contains(fieldName) ? dr[fieldName].ToString() : this.ControlObj.PrimaryValue;
|
|
string sqlValue = model.IsReadOnly || model.IsChart ? model.DetailSql : model.SystemModel.MenuSql;
|
|
if (ReplaceHelper.IsSelect(sqlValue) && !string.IsNullOrEmpty(model.UnionValue))
|
|
{
|
|
string[] sqlValues = sqlValue.Split(new string[] { "where " }, StringSplitOptions.None);
|
|
if (sqlValues.Length > 1)
|
|
{
|
|
string sql = s |