/***********************
* 说明:单据审批弹出模块
* 创建人:龚宇超
* 创建日期:2018-01-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.Data;
using Lskj.Model;
using Lskj.Business.Impl;
using DevExpress.XtraEditors;
using DevExpress.XtraTab;
using DevExpress.XtraGrid.Columns;
using DevExpress.XtraGrid.Views.Grid;
using Lskj.Business;
using DevExpress.XtraBars;
using System.Collections;
using Lskj.Core;
using System.Threading.Tasks;
using DevExpress.Utils;
using DevExpress.Data;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace Lskj.PubAccraditation
{
///
/// 单据审批弹出模块
///
public partial class FrmAccraditation : BaseForm
{
public FrmAccraditation()
{
InitializeComponent();
}
#region 公有变量
///
/// 单据结构明细
///
public AccraditationModel AuditModelObj;
///
/// 单据模型
///
public BillAuditModel BillModelObj;
///
/// 单据审批表模型
///
public BillAuditCommonModel BillAuditComObj;
///
/// 单据入口参数模型
///
public DynamicPubAccraditionPopModel SysModel;
///
/// 主表控件
///
public MyControl ControlObj;
///
/// 是否是Brp模块加载审核明细
///
public bool isBrpAccrad = false;
#endregion
///
/// 调用动态链接库默认传递参数
///
public DynamicModel syModel { get; private set; }
///
/// 关闭当前审核界面,刷新打开界面
///
/// The sender.
public event RefreshThePage refreshThePage;
public delegate void RefreshThePage(string promptInformation, string id);
///
/// 主表动态生成的日期列
///
public List DateColumnList = new List();
#region 私有变量
///
/// id(推送记录)
///
private int _beforeId;
///
/// 是否初始化完成
///
private bool _isInitFinish;
///
/// 意见
///
private string _auditAdvice;
///
/// 菜单模块名(推送记录)
///
private string _beforeMenuName;
///
/// 用户(推送记录)
///
private string _beforeUsers;
///
/// 单据类别值
///
private string _mainBillTypeValue;
///
/// 单据信息
///
private DataRow _drBillInfoMsg;
///
/// 明细数据
///
private DataTable _dtSourceData;
///
/// 单据类别
///
private DataTable _dtBillType;
///
/// 单据明细列表
///
private DataTable _dtBillAttachList;
///
/// 单据billInfo
///
private DataTable _dtBillInfoFiled;
///
/// 分单数据
///
private DataTable _dtSpareSourceData;
///
/// 审批流转模型
///
private FlowTypeStepModel _flowTypeStepModel;
///
/// 单据水印
///
private WaterMark _waterMark;
///
/// 获取隐藏的x轴距
///
private ArrayList LocationX = new ArrayList();
///
/// 是否执行了加载储存过程
///
public bool ProcessExists = false;
#endregion
///
/// 说明:窗体加载时
/// 创建人:龚宇超
/// 创建日期:2018-01-02
/// 修改人:
/// 修改日期:
/// 修改备注:
/// 版本:1.0
///
/// The instance containing the event data.
protected override void OnLoad(EventArgs e)
{
WaitForm.ShowForm();
try
{
string results = BaseImpl.GetResult("IF EXISTS(SELECT *FROM SYSOBJECTS WHERE NAME ='p_Get_NewDesignPlatform_DocumentsReview' AND TYPE = 'P') begin select 1 end else Begin select 2 end").ToString();
if (results.Equals("1") && SystemInfo.Instance.isExecload)
{
System.Data.DataSet dsConfig = BillImpl.GetNewDesignPlatformDocumentsReview(SysModel, Lskj.Data.ResourceKeys.SettingTableName);
Lskj.Data.Caches.CacheSYSConfig.Instance().SetData(dsConfig);
ProcessExists = true;
}
this._isInitFinish = false;
this.splitMain.Visible = false;
this.InitializeSetting();
this.InitializeControl();
this.InitializeSplitterPosition();
if (SystemInfo.Instance.ReviewCommentsRequired)
{
label_auditPerson.ForeColor = string.IsNullOrEmpty(SystemInfo.Instance.ControlRequiredColor) ? Color.Blue : ColorTranslator.FromHtml(SystemInfo.Instance.ControlRequiredColor);
this.txtRemark.Text = "";
}
}
catch (Exception ex)
{
LogHelper.Instance.WriteError(ex, ResourceKeys.BaseModule);
LogUtil.WriteError("单据审批初始化出错!", ex);
//MessageUtil.Show(ex);
string Message = ErrorMessage.PromptErrorMessage(ex);
MessageUtil.Show(Message, ex.Message);
}
finally
{
Lskj.Control.Model.AutoSizeChange.ControllInitializeSize(this);
//2023-10-13 丁哥规定在明细的附加信息中配置双击参数(DBClickEvent),上方的AuditLoadDetailFlag失效
if (this.BillModelObj.DetailTreeTable)
{
(this.gridBillInfo as TreeGridControlEx).TreeListObj.FocusedNodeChanged += TreeListObj_FocusedNodeChanged;
(this.gridBillInfo as TreeGridControlEx).TreeListObj.DoubleClick += new EventHandler(gridView_DoubleClick);
}
else
{
this.gridBillInfo.GridView.FocusedRowObjectChanged += GridView_FocusedRowObjectChanged;//SelectionChanged事件会执行2次,故改成焦点行改变事件
this.gridBillInfo.GridView.DoubleClick += new EventHandler(gridView_DoubleClick);
}
WaitForm.HideForm();
this._isInitFinish = true;
this.splitMain.Visible = true;
InitButLocation();
}
}
#region 获取数据源缓存
///
/// 获取数据源缓存
///
///
public void GetDataCaches(Dictionary