using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using WMS.UI.SynthesizeQuery;
using System.Threading;
using WMS.UI.Basic;
using sunui.forms;
using WMS.UI.WORK;
namespace WMS
{
public partial class WMSFrmMain : Form
{
public static bool isCurrentShowFrmStore = false;//库存预览界面是否当前展示
public static bool isCurrentShowpreview = false;//状态预览界面是否当前展示
Thread deleteFileThread;//删除文件现场
///
/// 当前仓库号
///
// public static int currentStoreId = Convert.ToInt32(BBConfigHelper.GetCurrentStoreIdConfig());
//共几页
public static string lbPageCountTextBefore = "";
public static string lbPageCountTextAfter = "";
///
/// 要处理过滤的主目录
///
private static List igortMenuList = new List() {
"系统设置","综合查询"
};
//翻译字典
public static Dictionary languageDic = new Dictionary();
///
/// 中英文标识 0中文 1英文
///
public static int LanguageFlg = 0;
//初始化服务
//常量
public static int count = 20;//每页显示的条数
public WMSFrmMain()
{
InitializeComponent();
label1.Text = "欢迎登录:" + FLogin.user.UserName;
Control.CheckForIllegalCrossThreadCalls = false;
}
///
/// 初始化翻译
///
public static void InitialLanguage()
{
//languageDic.Clear();
//foreach (var i in languageList)
//{
// if (LanguageFlg == 0)
// {
// languageDic.Add(i.NAME, i.CHINESE);
// }
// else if (LanguageFlg == 1)
// {
// languageDic.Add(i.NAME, i.ENGLISH);
// }
//}
//lbPageCountTextBefore = languageDic["lbPageCountTextBefore"];
//lbPageCountTextAfter = languageDic["lbPageCountTextAfter"];
}
///
/// 显示子窗口的方法
///
///
private void FormShow(Form form)
{
//Form fc = null;
////foreach (Form ftemp in this.MdiChildren) //遍历当前窗口的所有子窗
////{
//// if (ftemp.GetType().Name == form.GetType().Name)
//// {
//// fc = ftemp;
//// break;
//// }
////}
////if (fc == null || fc.IsDisposed)
////{
//// fc = Activator.CreateInstance(form.GetType()) as Form;
//// fc.MdiParent = this;
////}
//foreach (Form ftemp in this.MdiChildren) //遍历当前窗口的所有子窗//李翠国 2021-11-28修改,打开新窗口,关闭所有子窗口,--打开每次都刷新
//{
// ftemp.Close();
//}
//fc = Activator.CreateInstance(form.GetType()) as Form;
//fc.MdiParent = this;
////--------------------以下没修改
//fc.Menu = null;
//fc.WindowState = FormWindowState.Normal;
//fc.Dock = DockStyle.Fill;
//fc.Show();
//fc.Activate();
if (form.Text == "FrmStore")
{
isCurrentShowFrmStore = true;
}
else
{
isCurrentShowFrmStore = false;
}
if (form.Text == "preview")
{
isCurrentShowpreview = true;
}
else
{
isCurrentShowpreview = false;
}
Form fc = null;
foreach (Form ftemp in this.MdiChildren) //遍历当前窗口的所有子窗
{
if (ftemp.GetType().Name == form.GetType().Name)
{
fc = ftemp;
break;
}
}
if (fc == null || fc.IsDisposed)
{
fc = Activator.CreateInstance(form.GetType()) as Form;
fc.MdiParent = this;
}
fc.Menu = null;
fc.WindowState = FormWindowState.Normal;
fc.Dock = DockStyle.Fill;
fc.Show();
fc.Activate();
}
private void FrmMain_Load(object sender, EventArgs e)
{
//翻译
//Helper.FindAllControls(this);
foreach (ToolStripMenuItem item in menuStripMain.Items)
{
Helper.ChangeLanguage(item);
foreach (ToolStripItem one in item.DropDownItems)
{
Helper.ChangeLanguage(one);
}
}
DateTime clsFromDate, clsEndDate;//自动清除历史记录的起止时间
clsEndDate = DateTime.Now.AddYears(-1);//截止日是一年前
clsFromDate = DateTime.Now.AddYears(-10);
List removeNameChild = new List { "入库", "出库", "库存查询", "任务管理", "状态预览", "出入库记录", "报警记录查询", "清理库存查询", "权限管理", "库位维护", "物料维护" };
List removeName = removeNameChild.Where(x => !FLogin.modules.Contains(x)).ToList();
List 综合查询移除项 = new List();
List 系统设置移除项 = new List();
ToolStripMenuItem 综合查询 = (ToolStripMenuItem)menuStripMain.Items[5];
ToolStripMenuItem 系统设置 = (ToolStripMenuItem)menuStripMain.Items[6];
foreach (var item in removeName)
{
menuStripMain.Items.RemoveByKey(item);
foreach (ToolStripItem 综合查询item in 综合查询.DropDownItems)
{
if (综合查询item.ToString() == item)
{
综合查询移除项.Add(综合查询item);
}
}
foreach (ToolStripItem 系统设置itemss in 系统设置.DropDownItems)
{
if (系统设置itemss.ToString() == item)
{
系统设置移除项.Add(系统设置itemss);
}
}
}
foreach (var item in 综合查询移除项)
{
综合查询.DropDownItems.Remove(item);
}
foreach (var item in 系统设置移除项)
{
系统设置.DropDownItems.Remove(item);
}
new Thread(HandleQueLiao).Start();
}
private void 入库ToolStripMenuItem_Click(object sender, EventArgs e)
{
FormShow(new UI.WORK.inStockCode());
}
private void miOutPut_Click(object sender, EventArgs e)
{
FormShow(new UI.WORK.outStockCode());
}
#region 权限控制
///
/// 根据组别来设置UI显示(即权限设置)
///
///
private void SetUIByGroup()
{
//if (rvp == null || rvp.Count == 0)
// return;
//List removeForMenuList = new List();
//foreach (ToolStripMenuItem item in menuStripMain.Items)
//{
// var isOneHasPermissionForToolStripItem = false;
// var isRight = false;
// List removeList = new List();
// foreach (ToolStripItem one in item.DropDownItems)
// {
// one.Enabled = true;//强制启用
// isRight = IsHasPermissionForThisMenu(rvp, one.Name);
// if (!isRight)
// {
// removeList.Add(one);
// }
// else
// {
// isOneHasPermissionForToolStripItem = true;
// }
// }
// //移除菜单
// removeList.ForEach(x =>
// {
// item.DropDownItems.Remove(x);
// });
// //判断目录是否有权限
// isRight = IsHasPermissionForThisMenu(rvp, item.Name, true);
// if (!isRight)
// {//无权限
// removeForMenuList.Add(item);
// }
// else
// {
// //判断是否是 指定过滤的列表,并且他下面没有权限的话,就全部移除
// if (!isOneHasPermissionForToolStripItem && igortMenuList.Contains(item.Name))
// {
// removeForMenuList.Add(item);
// }
// //判断是否是 【库存分布】的界面,如果是,就默认显示
// if (item.Name == "库房预览")
// {
// System.Threading.Thread.Sleep(500);
// miDeviceAnalysis_Click(null, null);//默认显示库房预览
// }
// }
//}
////移除目录
//removeForMenuList.ForEach(x =>
// {
// menuStripMain.Items.Remove(x);
// });
}
///
/// 验证是否有菜单权限
///
///
///
///
private void IsHasPermissionForThisMenu()
{
}
/*
///
/// 根据组别来设置UI显示(即权限设置) (原先的代码)
///
///
private void SetUIByGroup(List rvp)
{
if (rvp == null || rvp.Count == 0)
return;
foreach (ToolStripMenuItem item in menuStripMain.Items)
{
foreach (ToolStripItem one in item.DropDownItems)
{
foreach (var p in rvp)
{
if (one.Text == p.PERMISSIONNAME || one.Name.Contains(p.PERMISSIONNAME))
{
one.Enabled = true;
break;
}
}
}
}
}
//*/
#endregion
private void pvcSelect_Click(object sender, EventArgs e)
{
}
private void toolStripMenuItem2_Click(object sender, EventArgs e)
{
FormShow(new UI.Basic.FrmPermissionManage());
}
private void FrmMain_FormClosed(object sender, FormClosedEventArgs e)
{
//FormLogin.userLogined = false;
Environment.Exit(0);
}
/// 库存查询
///
///
///
///
private void miDeviceAnalysis_Click(object sender, EventArgs e)
{
FormShow(new UI.SynthesizeQuery.FrmPVC());
}
private void 库位维护ToolStripMenuItem_Click(object sender, EventArgs e)
{
FormShow(new UI.Basic.FormPlaceSetting());
}
private void 系统设置_Click(object sender, EventArgs e)
{
}
private void toolStripMenuItem1_Click(object sender, EventArgs e)
{
FormShow(new UI.SynthesizeQuery.FrmAlert());
}
private void 清理库存日志查询_Click(object sender, EventArgs e)
{
FormShow(new UI.SynthesizeQuery.FrmStockClearLog());
}
private void 出库三日计划单ToolStripMenuItem_Click(object sender, EventArgs e)
{
}
private void 上线出库单ToolStripMenuItem_Click(object sender, EventArgs e)
{
}
private void 物料维护ToolStripMenuItem_Click(object sender, EventArgs e)
{
FormShow(new UI.Basic.material());
}
private void 任务管理_Click(object sender, EventArgs e)
{
//
FormShow(new UI.WORK.FormTaskList());
}
private void toolStripMenuItem1_Click_1(object sender, EventArgs e)
{
FormShow(new UI.WORK.inStockCode());
}
private void 出入库记录ToolStripMenuItem_Click(object sender, EventArgs e)
{
FormShow(new UI.SynthesizeQuery.FrmInOutRecord());
}
private void button1_Click(object sender, EventArgs e)
{
messages ms = new messages(1, "创建成功");
}
private void toolStripMenuItem2_Click_1(object sender, EventArgs e)
{
FormShow(new UI.WORK.preview());
}
private void button_exit_Click(object sender, EventArgs e)
{
Environment.Exit(0);
}
private void toolStripMenuItem3_Click(object sender, EventArgs e)
{
FormShow(new BasicDataConfig());
}
///
/// 缺料提示
///
public void HandleQueLiao()
{
while (true)
{
try
{
WMS.yunneiWCS.FunctionReturnEntityOftaskFj0h9u9J result = null;
using (yunneiWCS.IyunneiWcfClient clent = new yunneiWCS.IyunneiWcfClient())
{
result = clent.GetQueLiao();
}
if (result.result && result.resData != null)
{
FrmQueLiaoAlert frm = new FrmQueLiaoAlert(result.resData);
frm.ShowDialog();
frm.Focus();
}
}
catch (Exception ex)
{
//SystemWarningMsg.Thread_HandleOutStockList_Msg = "异常" + ex.ToString();
}
Thread.Sleep(1 * 60 * 1000);//1分钟一次
}
}
private void toolStripMenuItem4_Click(object sender, EventArgs e)
{
FormShow(new UI.SynthesizeQuery.FrmStore());
}
private void tsm_OutInStockRecord_V2_Mes_Click(object sender, EventArgs e)
{
FormShow(new FrmMes());
}
private void tsm_OutInStockRecord_Details_V2_Mes_Click(object sender, EventArgs e)
{
FormShow(new FrmMesDetails());
}
}
}