/******************************************************************************* * Copyright(c) 2016 DongkeSoft All rights reserved. / Confidential * 类的信息: * 1.程序名称:F_SAP_HEGII_0103.cs * 2.功能描述:SAP同步日志 * 编辑履历: * 作者 日期 版本 修改内容 * 陈晓野 2018/11/13 1.00 新建 *******************************************************************************/ using System; using System.Reflection; using System.Windows.Forms; using Curtain.Extension.ExObjectConvert; using Dongke.IBOSS.PRD.Basics.BaseControls; using Dongke.IBOSS.PRD.Basics.BaseResources; using Dongke.IBOSS.PRD.Client.CommonModule; using Dongke.IBOSS.PRD.Client.Controls; using Dongke.IBOSS.PRD.Client.DataModels; using Dongke.IBOSS.PRD.WCF.DataModels; using Dongke.IBOSS.PRD.WCF.Proxys; namespace Dongke.IBOSS.PRD.Client.SAPDataModule { /// /// SAP同步日志 /// public partial class F_SAP_HEGII_0103 : DKDockPanelBase { #region 成员变量 private static F_SAP_HEGII_0103 _instance = null; #endregion #region 单例模式 /// /// 单例模式,防止重复创建窗体 /// public static F_SAP_HEGII_0103 Instance { get { if (_instance == null) { _instance = new F_SAP_HEGII_0103(); } return _instance; } } #endregion #region 构造函数 /// /// SAP同步日志 /// public F_SAP_HEGII_0103() { InitializeComponent(); this.Text = "SAP同步日志"; this.tsbtnAdaptive.Text = ButtonText.TSBTN_ADAPTIVE; this.tsbtnClose.Text = ButtonText.TSBTN_CLOSE; this.dgvLog.AutoGenerateColumns = false; this.dgvSum.AutoGenerateColumns = false; } #endregion #region 控件事件 /// /// 关闭 /// /// /// private void F_SAP_HEGII_0103_FormClosed(object sender, FormClosedEventArgs e) { _instance = null; } /// /// 画面加载 /// /// /// private void F_SAP_HEGII_0103_Load(object sender, System.EventArgs e) { try { // 加载权限 FormPermissionManager.FormPermissionControl(this.Name, this, LogInUserInfo.CurrentUser.CurrentUserEntity.UserRightData, LogInUserInfo.CurrentUser.CurrentUserEntity.FunctionData); this.dtpDatebegin.Value = DateTime.Now.Date; this.dtpDateend.Value = DateTime.Now.Date; } catch (Exception ex) { // 对异常进行共通处理 ExceptionManager.HandleEventException(this.ToString(), MethodBase.GetCurrentMethod().Name, this.Text, ex); } } /// /// 查询 /// /// /// private void tsbtnSearch_Click(object sender, EventArgs e) { try { this.dgvLog.DataSource = null; //this.tsbtnSyn.Enabled = true; this.QueryDataFromOther(); } catch (Exception ex) { // 对异常进行共通处理 ExceptionManager.HandleEventException(this.ToString(), MethodBase.GetCurrentMethod().Name, this.Text, ex); } } /// /// 清除条件 /// /// /// private void tsbtnClearCondition_Click(object sender, EventArgs e) { this.dtpDatebegin.Value = DateTime.Now.Date; this.dtpDateend.Value = DateTime.Now.Date; } /// /// 自适应列宽 /// /// /// private void tsbtnAdaptive_Click(object sender, EventArgs e) { this.dgvLog.AutoResizeColumns(); this.dgvSum.AutoResizeColumns(); this.dgvFP.AutoResizeColumns(); this.dgvSPSum.AutoResizeColumns(); } /// /// 关闭画面 /// /// /// private void tsbtnClose_Click(object sender, EventArgs e) { this.Close(); } /// /// 查询同步明细 /// /// /// private void dgvLog_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex < 0 || this.dgvLog.CurrentRow == null) { return; } this.dgvSPSum.DataSource = null; try { string datacode = this.dgvLog.CurrentRow.Cells["datacode"].Value + ""; if (datacode == "6001" || datacode == "6002" || datacode == "60") { this.dgvFP.DataSource = null; ClientRequestEntity cre = new ClientRequestEntity(); cre.NameSpace = "Hegii"; cre.Name = "GetFinishedProductByDataLog"; cre.Request = this.dgvLog.CurrentRow.Cells["datalogid"].Value; ServiceResultEntity sre = DoAsync(() => { return SAPDataModuleProxy.Service.DoRequest(cre); } ); if (sre.Status == Constant.ServiceResultStatus.Success) { // 查询成功 this.dgvFP.DataSource = sre.Data.Tables[0]; } this.tabControl1.SelectedIndex = 2; } if (datacode != "6001" && datacode != "6002") { this.dgvSum.DataSource = null; ClientRequestEntity cre = new ClientRequestEntity(); cre.NameSpace = "Hegii"; cre.Name = "GetWorkDataByDataLog"; cre.Request = this.dgvLog.CurrentRow.Cells["datalogid"].Value; ServiceResultEntity sre = DoAsync(() => { return SAPDataModuleProxy.Service.DoRequest(cre); } ); if (sre.Status == Constant.ServiceResultStatus.Success) { // 查询成功 this.dgvSum.DataSource = sre.Data.Tables[0]; if (sre.Data.Tables.Count > 1) { this.dgvSPSum.DataSource = sre.Data.Tables[1]; } } this.tabControl1.SelectedIndex = 1; } } catch (Exception ex) { // 对异常进行共通处理 ExceptionManager.HandleEventException(this.ToString(), MethodBase.GetCurrentMethod().Name, this.Text, ex); } } /// /// 行切换事件 /// /// /// private void dgvLog_SelectionChanged(object sender, EventArgs e) { if (dgvLog.CurrentRow == null) { //this.tsbtnSyn.Enabled = true; return; } try { string datacode = dgvLog.CurrentRow.Cells["datacode"].Value + ""; string datastuts = dgvLog.CurrentRow.Cells["DataStuts"].Value + ""; if (datacode == "60" || datastuts == "S") { //this.tsbtnSyn.Enabled = false; } else { //this.tsbtnSyn.Enabled = true; } } catch (Exception ex) { // 对异常进行共通处理 ExceptionManager.HandleEventException(this.ToString(), MethodBase.GetCurrentMethod().Name, this.Text, ex); } } /// /// 获取数据并同步 /// /// /// private void tsbtnSyn_Click(object sender, EventArgs e) { try { F_SAP_HEGII_010301 f = new F_SAP_HEGII_010301(null, null); DialogResult dialogResult = f.ShowDialog(); if (dialogResult == DialogResult.OK) { this.tsbtnSearch_Click(null, null); } } catch (Exception ex) { // 对异常进行共通处理 ExceptionManager.HandleEventException(this.ToString(), MethodBase.GetCurrentMethod().Name, this.Text, ex); } #region 注销 //DialogResult dialogResult = DialogResult.Cancel; //if (dgvLog.CurrentRow == null) //{ // F_SAP_HEGII_010301 f = new F_SAP_HEGII_010301(null, null); // dialogResult = f.ShowDialog(); // if (dialogResult == DialogResult.OK) // { // this.tsbtnSearch_Click(null, null); // } // return; //} //try //{ // string datacode = dgvLog.CurrentRow.Cells["datacode"].Value + ""; // //string datacodename = dgvLog.CurrentRow.Cells["datacodename"].Value + ""; // string datastuts = dgvLog.CurrentRow.Cells["DataStuts"].Value + ""; // string date = dgvLog.CurrentRow.Cells["executedateend"].Value + ""; // if (datacode == "60" || datastuts == "S") // { // return; // } // F_SAP_HEGII_010301 f = new F_SAP_HEGII_010301(date, datacode); // dialogResult = f.ShowDialog(); // if (dialogResult == DialogResult.OK) // { // this.tsbtnSearch_Click(null, null); // } //} //catch (Exception ex) //{ // // 对异常进行共通处理 // ExceptionManager.HandleEventException(this.ToString(), // MethodBase.GetCurrentMethod().Name, this.Text, ex); //} #endregion } /// /// 同步当前日志 /// /// /// private void tsbtnSynLog_Click(object sender, EventArgs e) { try { if (dgvLog.CurrentRow == null) { MessageBox.Show("请选择一条未成功的日志。", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } DialogResult dr = MessageBox.Show("是否同步当前日志的数据到SAP。", this.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (dr != DialogResult.Yes) { return; } ClientRequestEntity cre = new ClientRequestEntity(); cre.NameSpace = "Hegii"; cre.Name = "SyncSap"; cre.Request = dgvLog.CurrentRow.Cells["executedateend"].Value; if (cre.Request == null || cre.Request == DBNull.Value) { cre.Request = dgvLog.CurrentRow.Cells["BeginTime"].Value; } cre.Properties["datacode"] = dgvLog.CurrentRow.Cells["datacode"].Value + ""; cre.Properties["logid"] = dgvLog.CurrentRow.Cells["logid"].Value.ToInt32(); ServiceResultEntity sre = DoAsync(() => { return SAPDataModuleProxy.Service.DoRequest(cre); }); if (sre == null) { MessageBox.Show("数据同步失败。", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (sre.Status == Constant.ServiceResultStatus.Other) { MessageBox.Show(sre.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (sre.Status == Constant.ServiceResultStatus.Success) { if (sre.Result + "" == "S") { MessageBox.Show("数据同步成功。", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(sre.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning); } } else { MessageBox.Show("数据同步失败。", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { // 对异常进行共通处理 ExceptionManager.HandleEventException(this.ToString(), MethodBase.GetCurrentMethod().Name, this.Text, ex); } } #endregion #region 私有方法 /// /// 查询数据 /// private void QueryDataFromOther() { if (this.dtpDatebegin.Value == null || this.dtpDateend.Value == null) { return; } try { this.tsrToolStrip1.Focus(); this.dgvLog.DataSource = null; ClientRequestEntity cre = new ClientRequestEntity(); cre.NameSpace = "Hegii"; if (this.tabControl1.SelectedIndex == 3) { cre.Name = "GetWorkDataSPSumByDate"; cre.Properties["datebegin"] = this.dtpDatebegin.Value.Value.ToString("yyyyMMdd"); cre.Properties["dateend"] = this.dtpDateend.Value.Value.ToString("yyyyMMdd"); ServiceResultEntity sre = DoAsync(() => { return SAPDataModuleProxy.Service.DoRequest(cre); } ); if (sre.Status == Constant.ServiceResultStatus.Success) { // 查询成功 this.dgvSPSum.DataSource = sre.Data.Tables[0]; //this.tabControl1.SelectedIndex = 0; if (this.dgvSPSum.RowCount == 0) { DKMessageBox.ShowDialog(this, DKMessageCode.I_CMN_S_001); } } } else { cre.Name = "GetDataLog"; cre.Properties["datebegin"] = this.dtpDatebegin.Value.Value.ToString("yyyyMMdd"); cre.Properties["dateend"] = this.dtpDateend.Value.Value.ToString("yyyyMMdd"); ServiceResultEntity sre = DoAsync(() => { return SAPDataModuleProxy.Service.DoRequest(cre); } ); if (sre.Status == Constant.ServiceResultStatus.Success) { // 查询成功 this.dgvLog.DataSource = sre.Data.Tables[0]; this.tabControl1.SelectedIndex = 0; if (this.dgvLog.RowCount == 0) { DKMessageBox.ShowDialog(this, DKMessageCode.I_CMN_S_001); } } } } catch (Exception ex) { throw ex; } } #endregion } }