using ComponentFactory.Krypton.Toolkit;
using NXWMS.Client.Code.Extends;
using NXWMS.Client.Model.AppModels.Condition.Report;
using NXWMS.Client.Model.AppModels.Result;
using NXWMS.Client.Model.AppModels.Result.Report;
using NXWMS.Client.Model.CoreModels;
using NXWMS.Commons;
using NXWMS.Services;
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 NXWMS.Forms.Report
{
public partial class frmFrequencyStatisticsReport : KryptonForm
{
///
/// 客户端字段排序列表
///
private List _clientFieldOrderList;
private int _pageSize;
private int _pageIndex;
private int _totalCount;
public frmFrequencyStatisticsReport()
{
InitializeComponent();
InitData();
InitControl();
}
///
/// 数据初始化
///
private void InitData()
{
_clientFieldOrderList = new List();
_clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "Date", FieldDesc = "日期" });
_clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "Schedule", FieldDesc = "排班" });
_clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "ScheduleTimeSection", FieldDesc = "班次时间段" });
_clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "ReceiptOrderQTY", FieldDesc = "收货订单数" });
_clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "ReceiptTrayQTY", FieldDesc = "收货组盘数" });
_clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "InvoiveQTY", FieldDesc = "发货数量" });
_clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "InvoiveExamineQTY", FieldDesc = "发货审核数" });
_clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "PutAwayQTY", FieldDesc = "上架数量" });
_clientFieldOrderList.Add(new ClientFieldOrderResult { FieldName = "PutDownQTY", FieldDesc = "下架数量" });
}
///
/// 控件初始化
///
private void InitControl()
{
CheckForIllegalCrossThreadCalls = false;
dataGridView.BuildDataGridView(CommonUtil.GetFieldOrderDic(_clientFieldOrderList), false);
var fieldList = new List();
fieldList.Add(new FieldValue { Id = "Day", Name = "白班" });
cmbSearchSchedule.DataSource = fieldList;
cmbSearchSchedule.DisplayMember = "Name";
cmbSearchSchedule.ValueMember = "Id";
cmbSearchSchedule.SelectedIndex = 0;
fieldList = new List().Add(new FieldValue { Code = "", Name = "全部" });
fieldList.Add(new FieldValue { Id = "8:00-10:00", Name = "8:00-10:00" });
fieldList.Add(new FieldValue { Id = "10:00-12:00", Name = "10:00-12:00" });
fieldList.Add(new FieldValue { Id = "12:00-14:00", Name = "12:00-14:00" });
fieldList.Add(new FieldValue { Id = "14:00-16:00", Name = "14:00-16:00" });
fieldList.Add(new FieldValue { Id = "16:00-18:00", Name = "16:00-18:00" });
fieldList.Add(new FieldValue { Id = "18:00-20:00", Name = "18:00-20:00" });
cmbSearchTime.DataSource = fieldList;
cmbSearchTime.DisplayMember = "Name";
cmbSearchTime.ValueMember = "Id";
_pageIndex = 1;
_pageSize = 20;
}
private void btnSearch_Click(object sender, EventArgs e)
{
_pageIndex = 1;
var loadfrm = new frmLoading();
loadfrm.Show();
var message = loadfrm.EventCalExec(LoadSearch, this.pageTool.PageIndex, this.pageTool.PageSize);
pageTool.DataCount = _totalCount;
if (!string.IsNullOrWhiteSpace(message))
{
KryptonMessageBox.Show($"查询失败!\r\n{message}", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
private string LoadSearch(int pageIndex, int pageSize)
{
var result = ReportServices.reportSearchService.GetFrequencyStatisticsReportList(new FrequencyStatisticsCondition
{
OperationUserId = AppConfig.UserLoginResult.UserInfo.UserId,
Date= dtpSearchDate.Value,
ScheduleCode= cmbSearchSchedule.SelectedValue.GetObjectToString(),
SectionStr= cmbSearchTime.SelectedValue.GetObjectToString(),
PageIndex = pageIndex,
PageSize = pageSize
});
if (result.Status == OperateStatus.Success)
{
_totalCount = result.Data.TotalCount;
_pageIndex = pageIndex;
_pageSize = pageSize;
if (result.Data.RowData.Any())
{
dataGridView.Columns.Clear();
dataGridView.DataSource = result.Data.RowData.ToList();
dataGridView.BuildDataGridView(CommonUtil.GetFieldOrderDic(_clientFieldOrderList));
}
else
{
if (dataGridView.DataSource != null)
{
dataGridView.DataSource = new List();
}
dataGridView.BuildDataGridView(CommonUtil.GetFieldOrderDic(_clientFieldOrderList), false);
}
return string.Empty;
}
else
{
return result.Message;
}
}
private void btnSearchExport_Click(object sender, EventArgs e)
{
dataGridView.DataGridViewExport($"{AppConfig.CurrentMenu.FirstOrDefault().MenuName}列表" +
DateTime.Now.ToString("yyyyMMddHH"));
}
}
}