diff --git a/HighWayIot.Plc/PlcConnect.cs b/HighWayIot.Plc/PlcConnect.cs
index f22664c..2ca22ee 100644
--- a/HighWayIot.Plc/PlcConnect.cs
+++ b/HighWayIot.Plc/PlcConnect.cs
@@ -22,13 +22,13 @@ namespace HighWayIot.Plc
///
/// 静态懒加载MelsecMcNet1 开炼机CPU
///
- //public static readonly MelsecMcNet MelsecInstance1 = new PlcConnect().CreateAb("10.20.48.40");
- public static readonly MelsecMcNet MelsecInstance1 = new PlcConnect().CreateAb("127.0.0.1");
+ public static readonly MelsecMcNet MelsecInstance1 = new PlcConnect().CreateAb("10.20.48.40");
+ //public static readonly MelsecMcNet MelsecInstance1 = new PlcConnect().CreateAb("127.0.0.1");
///
/// 静态懒加载MelsecMcNet2 成型机CPU
///
- public static readonly MelsecMcNet MelsecInstance2 = new PlcConnect().CreateAb("10.20.48.225");
+ public static readonly MelsecMcNet MelsecInstance2 = new PlcConnect().CreateAb("10.20.48.10");
private PlcConnect()
{
@@ -75,9 +75,9 @@ namespace HighWayIot.Plc
get
{
if (MelsecInstance1 == null) return false;
- var result = MelsecInstance1.IpAddressPing();
- logHelper.Info($"PLC[{MelsecInstance1.IpAddress}]连接:[{(result == System.Net.NetworkInformation.IPStatus.Success ? "正常" : "异常")}]");
- return result == System.Net.NetworkInformation.IPStatus.Success;
+ var result = MelsecInstance1.ReadBool("B0").IsSuccess;
+ logHelper.Info($"PLC[{MelsecInstance1.IpAddress}]连接:[{(result ? "正常" : "异常")}]");
+ return result;
}
}
@@ -89,9 +89,9 @@ namespace HighWayIot.Plc
get
{
if (MelsecInstance2 == null) return false;
- var result = MelsecInstance2.IpAddressPing();
- logHelper.Info($"PLC[{MelsecInstance2.IpAddress}]连接:[{(result == System.Net.NetworkInformation.IPStatus.Success ? "正常" : "异常")}]");
- return result == System.Net.NetworkInformation.IPStatus.Success;
+ var result = MelsecInstance2.ReadBool("B0").IsSuccess;
+ logHelper.Info($"PLC[{MelsecInstance2.IpAddress}]连接:[{(result ? "正常" : "异常")}]");
+ return result;
}
}
diff --git a/HighWayIot.Plc/PlcHelper/RecipeParaHelper.cs b/HighWayIot.Plc/PlcHelper/RecipeParaHelper.cs
index e838f8c..ffc65de 100644
--- a/HighWayIot.Plc/PlcHelper/RecipeParaHelper.cs
+++ b/HighWayIot.Plc/PlcHelper/RecipeParaHelper.cs
@@ -261,7 +261,7 @@ namespace HighWayIot.Plc.PlcHelper
if (add == 320 - 290) entity.Position = 2;
if (add == 330 - 290) entity.Position = 31;
if (add == 340 - 290) entity.Position = 32;
- if (add == 350 - 290) entity.Position = 41;
+ if (add == 350 - 290) entity.Position = 41;
if (add == 360 - 290) entity.Position = 42;
if (add == 370 - 290) entity.Position = 51;
if (add == 380 - 290) entity.Position = 52;
diff --git a/HighWayIot.Plc/PlcHelper/WorkStationHelper.cs b/HighWayIot.Plc/PlcHelper/WorkStationHelper.cs
index d4887f2..a255052 100644
--- a/HighWayIot.Plc/PlcHelper/WorkStationHelper.cs
+++ b/HighWayIot.Plc/PlcHelper/WorkStationHelper.cs
@@ -1,4 +1,5 @@
-using HighWayIot.Plc.PlcEntity;
+using HighWayIot.Log4net;
+using HighWayIot.Plc.PlcEntity;
using HslCommunication;
using System;
using System.Collections.Generic;
@@ -20,17 +21,19 @@ namespace HighWayIot.Plc.PlcHelper
///
public bool WriteStationSingal(int rgvStationNo, int deviceNo)
{
- int point = 0x600;
+ LogHelper.Instance.Info($"{rgvStationNo}工位, {deviceNo}号车");
+ return true;
+ //int point = 0x600;
- //选择是哪个小车
- point += (deviceNo - 1) * 32;
+ ////选择是哪个小车
+ //point += (deviceNo - 1) * 32;
- //选择是小车的哪个点位
- point += rgvStationNo;
+ ////选择是小车的哪个点位
+ //point += rgvStationNo;
- bool result = PlcConnect.PlcWrite2($"B{point.ToString("X")}", true, DataTypeEnum.Bool).IsSuccess;
+ //bool result = PlcConnect.PlcWrite2($"B{point.ToString("X")}", true, DataTypeEnum.Bool).IsSuccess;
- return result;
+ //return result;
}
///
diff --git a/HighWayIot.Repository/HighWayIot.Repository.csproj b/HighWayIot.Repository/HighWayIot.Repository.csproj
index 4607436..f05f400 100644
--- a/HighWayIot.Repository/HighWayIot.Repository.csproj
+++ b/HighWayIot.Repository/HighWayIot.Repository.csproj
@@ -63,6 +63,7 @@
+
@@ -71,6 +72,7 @@
+
diff --git a/HighWayIot.Repository/domain/ZxSchedulingEntity.cs b/HighWayIot.Repository/domain/ZxSchedulingEntity.cs
new file mode 100644
index 0000000..385b540
--- /dev/null
+++ b/HighWayIot.Repository/domain/ZxSchedulingEntity.cs
@@ -0,0 +1,70 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using SqlSugar;
+namespace Models
+{
+ ///
+ /// 生产排程实体类
+ ///
+ [SugarTable("zx_scheduling")]
+ public class ZxScheduling
+ {
+ ///
+ /// 备 注:
+ /// 默认值:
+ ///
+ [SugarColumn(ColumnName = "id", IsPrimaryKey = true, IsIdentity = true)]
+ public int Id { get; set; }
+
+ ///
+ /// 备 注:机台号
+ /// 默认值:
+ ///
+ [SugarColumn(ColumnName = "device_no")]
+ public int? DeviceNo { get; set; }
+
+ ///
+ /// 备 注:成品代号1
+ /// 默认值:
+ ///
+ [SugarColumn(ColumnName = "recipe_name_1")]
+ public string RecipeName1 { get; set; } = string.Empty;
+
+ ///
+ /// 备 注:配方编号1
+ /// 默认值:
+ ///
+ [SugarColumn(ColumnName = "recipe_no_1")]
+ public string RecipeNo1 { get; set; } = string.Empty;
+
+ ///
+ /// 备 注:标称尺度1
+ /// 默认值:
+ ///
+ [SugarColumn(ColumnName = "spec_name_1")]
+ public string SpecName1 { get; set; } = string.Empty;
+
+ ///
+ /// 备 注:成品代号2
+ /// 默认值:
+ ///
+ [SugarColumn(ColumnName = "recipe_name_2")]
+ public string RecipeName2 { get; set; } = string.Empty;
+
+ ///
+ /// 备 注:配方编号2
+ /// 默认值:
+ ///
+ [SugarColumn(ColumnName = "recipe_no_2")]
+ public string RecipeNo2 { get; set; } = string.Empty;
+
+ ///
+ /// 备 注:标称尺度2
+ /// 默认值:
+ ///
+ [SugarColumn(ColumnName = "spec_name_2")]
+ public string SpecName2 { get; set; } = string.Empty;
+ }
+
+}
\ No newline at end of file
diff --git a/HighWayIot.Repository/service/ZxRecipeService.cs b/HighWayIot.Repository/service/ZxRecipeService.cs
index 8945426..b873917 100644
--- a/HighWayIot.Repository/service/ZxRecipeService.cs
+++ b/HighWayIot.Repository/service/ZxRecipeService.cs
@@ -1,6 +1,7 @@
using HighWayIot.Log4net;
using HighWayIot.Repository.domain;
using Models;
+using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -62,6 +63,24 @@ namespace HighWayIot.Repository.service
}
}
+ ///
+ /// 获取所有配方名称
+ ///
+ ///
+ public List GetAllRecipeName()
+ {
+ try
+ {
+ List entity = _repository.GetList(x => x.IsDeleted == false).Select(x => x.RecipeName).ToList();
+ return entity;
+ }
+ catch (Exception ex)
+ {
+ log.Error("根据编号查询配方信息获取异常", ex);
+ return null;
+ }
+ }
+
///
/// 修改配方信息
diff --git a/HighWayIot.Repository/service/ZxSchedulingService.cs b/HighWayIot.Repository/service/ZxSchedulingService.cs
new file mode 100644
index 0000000..b745d42
--- /dev/null
+++ b/HighWayIot.Repository/service/ZxSchedulingService.cs
@@ -0,0 +1,90 @@
+using HighWayIot.Log4net;
+using HighWayIot.Repository.domain;
+using Models;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Linq.Expressions;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace HighWayIot.Repository.service
+{
+ public class ZxSchedulingService
+ {
+ private static readonly Lazy lazy = new Lazy(() => new ZxSchedulingService());
+
+ public static ZxSchedulingService Instance
+ {
+ get
+ {
+ return lazy.Value;
+ }
+ }
+
+ private LogHelper log = LogHelper.Instance;
+ Repository _repository => new Repository("sqlserver");
+
+ ///
+ /// 查询所有排程信息
+ ///
+ ///
+ public List GetSchedulingInfo(Expression> expression = null)
+ {
+ try
+ {
+ List entity;
+ if (expression != null)
+ {
+ entity = _repository.GetList(expression);
+ }
+ else
+ {
+ entity = _repository.GetList();
+ }
+ return entity;
+ }
+ catch (Exception ex)
+ {
+ log.Error("排程信息获取异常", ex);
+ return null;
+ }
+ }
+
+ /////
+ ///// 添加排程信息
+ /////
+ /////
+ /////
+ //public bool InsertSchedulingInfo(ZxScheduling entity)
+ //{
+ // try
+ // {
+ // return _repository.Insert(entity);
+ // }
+ // catch (Exception ex)
+ // {
+ // log.Error("排程信息插入异常", ex);
+ // return false;
+ // }
+ //}
+
+ ///
+ /// 修改排程信息
+ ///
+ ///
+ ///
+ public bool UpdateSchedulingInfo(ZxScheduling entity)
+ {
+ try
+ {
+ return _repository.Update(entity);
+ }
+ catch (Exception ex)
+ {
+ log.Error("排程信息修改异常", ex);
+ return false;
+ }
+ }
+ }
+}
diff --git a/HighWayIot.Winform/Business/WorkStationBusiness.cs b/HighWayIot.Winform/Business/WorkStationBusiness.cs
index c0c2c7b..b0b5dc9 100644
--- a/HighWayIot.Winform/Business/WorkStationBusiness.cs
+++ b/HighWayIot.Winform/Business/WorkStationBusiness.cs
@@ -77,7 +77,7 @@ namespace HighWayIot.Winform.Business
_readerSetting = _readerService.GetReaderInfos();
this.CreateAllRFIDClient();
_touchSocketTcpClient.GetMessageAction += ReciveRFIDSingal;
- timer = new Timer(new System.Threading.TimerCallback(SingalMonitor), null, 0, 2000);
+ timer = new Timer(new System.Threading.TimerCallback(SingalMonitor), null, 0, 1000);
}
///
@@ -125,7 +125,16 @@ namespace HighWayIot.Winform.Business
{
if (IsAllConnected == true)
{
- ZxReaderSettingEntity setting = _readerSetting.FirstOrDefault(x => x.WorkstationNo == no.ToString());
+ ZxReaderSettingEntity setting = null;
+ try
+ {
+ setting = _readerSetting.FirstOrDefault(x => x.WorkstationNo == no.ToString());
+ }
+ catch (Exception ex)
+ {
+ LogHelper.Instance.Error($"[{no}] 工位读写器信息获取失败!", ex);
+ }
+
if (setting == null)
{
return;
@@ -147,6 +156,8 @@ namespace HighWayIot.Winform.Business
}
}
+
+
///
/// 接收信息的信号
///
diff --git a/HighWayIot.Winform/Configuration.xml b/HighWayIot.Winform/Configuration.xml
index defd8f2..24e1041 100644
--- a/HighWayIot.Winform/Configuration.xml
+++ b/HighWayIot.Winform/Configuration.xml
@@ -14,7 +14,7 @@
-
+
diff --git a/HighWayIot.Winform/HighWayIot.Winform.csproj b/HighWayIot.Winform/HighWayIot.Winform.csproj
index 7f4c74b..9788647 100644
--- a/HighWayIot.Winform/HighWayIot.Winform.csproj
+++ b/HighWayIot.Winform/HighWayIot.Winform.csproj
@@ -149,10 +149,10 @@
EquipMaterialBindingPage.cs
-
+
UserControl
-
+
ProductionScheduling.cs
@@ -265,7 +265,7 @@
EquipMaterialBindingPage.cs
-
+
ProductionScheduling.cs
@@ -355,6 +355,7 @@
+
Always
diff --git a/HighWayIot.Winform/MainForm/BaseForm.Designer.cs b/HighWayIot.Winform/MainForm/BaseForm.Designer.cs
index f4ab905..b3b161b 100644
--- a/HighWayIot.Winform/MainForm/BaseForm.Designer.cs
+++ b/HighWayIot.Winform/MainForm/BaseForm.Designer.cs
@@ -46,7 +46,6 @@ namespace HighWayIot.Winform.MainForm
this.OperateLogStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.AlarmLogStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.MonitorMainPageStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.ProductionSchedulingStripItem = new System.Windows.Forms.ToolStripMenuItem();
this.MaterialMenuStripItem = new System.Windows.Forms.ToolStripMenuItem();
this.MaterialConfigStripItem = new System.Windows.Forms.ToolStripMenuItem();
this.MaterialTypeConfigStripItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -56,6 +55,7 @@ namespace HighWayIot.Winform.MainForm
this.DeviceDataManageToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.RFIDParamManageToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.DeviceParamManageToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.VulcanizerRecipeConfigToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.UserControlTabs = new System.Windows.Forms.TabControl();
this.ClosePageButton = new System.Windows.Forms.Button();
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
@@ -66,14 +66,14 @@ namespace HighWayIot.Winform.MainForm
this.SplitLabel2 = new System.Windows.Forms.ToolStripStatusLabel();
this.LogInformationToolStrip = new System.Windows.Forms.ToolStripStatusLabel();
this.SplitLabel3 = new System.Windows.Forms.ToolStripStatusLabel();
+ this.Label1 = new System.Windows.Forms.ToolStripStatusLabel();
+ this.OpenMixStateLabel = new System.Windows.Forms.ToolStripStatusLabel();
+ this.Label2 = new System.Windows.Forms.ToolStripStatusLabel();
+ this.MolderStateLabel = new System.Windows.Forms.ToolStripStatusLabel();
+ this.SplitLabel4 = new System.Windows.Forms.ToolStripStatusLabel();
this.StripLabel2 = new System.Windows.Forms.ToolStripStatusLabel();
this.TimeStripLabel = new System.Windows.Forms.ToolStripStatusLabel();
this.TimeDisplayTimer = new System.Windows.Forms.Timer(this.components);
- this.SplitLabel4 = new System.Windows.Forms.ToolStripStatusLabel();
- this.Label1 = new System.Windows.Forms.ToolStripStatusLabel();
- this.Label2 = new System.Windows.Forms.ToolStripStatusLabel();
- this.OpenMixStateLabel = new System.Windows.Forms.ToolStripStatusLabel();
- this.MolderStateLabel = new System.Windows.Forms.ToolStripStatusLabel();
this.MainMenu.SuspendLayout();
this.statusStrip1.SuspendLayout();
this.SuspendLayout();
@@ -84,7 +84,6 @@ namespace HighWayIot.Winform.MainForm
this.SysConfigStripMenuItem,
this.LogManageStripMenuItem,
this.MonitorMainPageStripMenuItem,
- this.ProductionSchedulingStripItem,
this.MaterialMenuStripItem,
this.RecipeConfigStripItem,
this.EquipMaterialBindingStripItem,
@@ -165,7 +164,7 @@ namespace HighWayIot.Winform.MainForm
//
this.DaliyReportStripItem.Image = global::HighWayIot.Winform.Properties.Resources.报表数据;
this.DaliyReportStripItem.Name = "DaliyReportStripItem";
- this.DaliyReportStripItem.Size = new System.Drawing.Size(124, 22);
+ this.DaliyReportStripItem.Size = new System.Drawing.Size(180, 22);
this.DaliyReportStripItem.Text = "日报表";
this.DaliyReportStripItem.Click += new System.EventHandler(this.StripMenuItemClick);
//
@@ -173,7 +172,7 @@ namespace HighWayIot.Winform.MainForm
//
this.OperateLogStripMenuItem.Image = global::HighWayIot.Winform.Properties.Resources.操作日志;
this.OperateLogStripMenuItem.Name = "OperateLogStripMenuItem";
- this.OperateLogStripMenuItem.Size = new System.Drawing.Size(124, 22);
+ this.OperateLogStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.OperateLogStripMenuItem.Text = "操作日志";
this.OperateLogStripMenuItem.Click += new System.EventHandler(this.StripMenuItemClick);
//
@@ -181,7 +180,7 @@ namespace HighWayIot.Winform.MainForm
//
this.AlarmLogStripMenuItem.Image = global::HighWayIot.Winform.Properties.Resources.报警日志;
this.AlarmLogStripMenuItem.Name = "AlarmLogStripMenuItem";
- this.AlarmLogStripMenuItem.Size = new System.Drawing.Size(124, 22);
+ this.AlarmLogStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.AlarmLogStripMenuItem.Text = "报警日志";
this.AlarmLogStripMenuItem.Click += new System.EventHandler(this.StripMenuItemClick);
//
@@ -193,14 +192,6 @@ namespace HighWayIot.Winform.MainForm
this.MonitorMainPageStripMenuItem.Text = "监控主页面";
this.MonitorMainPageStripMenuItem.Click += new System.EventHandler(this.StripMenuItemClick);
//
- // ProductionSchedulingStripItem
- //
- this.ProductionSchedulingStripItem.Image = global::HighWayIot.Winform.Properties.Resources.生产排程;
- this.ProductionSchedulingStripItem.Name = "ProductionSchedulingStripItem";
- this.ProductionSchedulingStripItem.Size = new System.Drawing.Size(84, 22);
- this.ProductionSchedulingStripItem.Text = "生产排程";
- this.ProductionSchedulingStripItem.Click += new System.EventHandler(this.StripMenuItemClick);
- //
// MaterialMenuStripItem
//
this.MaterialMenuStripItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -255,7 +246,8 @@ namespace HighWayIot.Winform.MainForm
//
this.DeviceDataManageToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.RFIDParamManageToolStripMenuItem,
- this.DeviceParamManageToolStripMenuItem});
+ this.DeviceParamManageToolStripMenuItem,
+ this.VulcanizerRecipeConfigToolStripMenuItem});
this.DeviceDataManageToolStripMenuItem.Image = global::HighWayIot.Winform.Properties.Resources.参数;
this.DeviceDataManageToolStripMenuItem.Name = "DeviceDataManageToolStripMenuItem";
this.DeviceDataManageToolStripMenuItem.Size = new System.Drawing.Size(84, 22);
@@ -265,7 +257,7 @@ namespace HighWayIot.Winform.MainForm
//
this.RFIDParamManageToolStripMenuItem.Image = global::HighWayIot.Winform.Properties.Resources._165_RFID;
this.RFIDParamManageToolStripMenuItem.Name = "RFIDParamManageToolStripMenuItem";
- this.RFIDParamManageToolStripMenuItem.Size = new System.Drawing.Size(151, 22);
+ this.RFIDParamManageToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
this.RFIDParamManageToolStripMenuItem.Text = "RFID参数配置";
this.RFIDParamManageToolStripMenuItem.Click += new System.EventHandler(this.StripMenuItemClick);
//
@@ -273,10 +265,18 @@ namespace HighWayIot.Winform.MainForm
//
this.DeviceParamManageToolStripMenuItem.Image = global::HighWayIot.Winform.Properties.Resources.设备;
this.DeviceParamManageToolStripMenuItem.Name = "DeviceParamManageToolStripMenuItem";
- this.DeviceParamManageToolStripMenuItem.Size = new System.Drawing.Size(151, 22);
+ this.DeviceParamManageToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
this.DeviceParamManageToolStripMenuItem.Text = "设备参数配置";
this.DeviceParamManageToolStripMenuItem.Click += new System.EventHandler(this.StripMenuItemClick);
//
+ // VulcanizerRecipeConfigToolStripMenuItem
+ //
+ this.VulcanizerRecipeConfigToolStripMenuItem.Image = global::HighWayIot.Winform.Properties.Resources.加硫_03;
+ this.VulcanizerRecipeConfigToolStripMenuItem.Name = "VulcanizerRecipeConfigToolStripMenuItem";
+ this.VulcanizerRecipeConfigToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
+ this.VulcanizerRecipeConfigToolStripMenuItem.Text = "硫化机配方参数配置";
+ this.VulcanizerRecipeConfigToolStripMenuItem.Click += new System.EventHandler(this.StripMenuItemClick);
+ //
// UserControlTabs
//
this.UserControlTabs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
@@ -371,6 +371,36 @@ namespace HighWayIot.Winform.MainForm
this.SplitLabel3.Name = "SplitLabel3";
this.SplitLabel3.Size = new System.Drawing.Size(4, 17);
//
+ // Label1
+ //
+ this.Label1.Name = "Label1";
+ this.Label1.Size = new System.Drawing.Size(89, 17);
+ this.Label1.Text = "开炼PLC状态:";
+ //
+ // OpenMixStateLabel
+ //
+ this.OpenMixStateLabel.Name = "OpenMixStateLabel";
+ this.OpenMixStateLabel.Size = new System.Drawing.Size(31, 17);
+ this.OpenMixStateLabel.Text = "N/A";
+ //
+ // Label2
+ //
+ this.Label2.Name = "Label2";
+ this.Label2.Size = new System.Drawing.Size(89, 17);
+ this.Label2.Text = "成型PLC状态:";
+ //
+ // MolderStateLabel
+ //
+ this.MolderStateLabel.Name = "MolderStateLabel";
+ this.MolderStateLabel.Size = new System.Drawing.Size(31, 17);
+ this.MolderStateLabel.Text = "N/A";
+ //
+ // SplitLabel4
+ //
+ this.SplitLabel4.BorderSides = ((System.Windows.Forms.ToolStripStatusLabelBorderSides)((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left | System.Windows.Forms.ToolStripStatusLabelBorderSides.Right)));
+ this.SplitLabel4.Name = "SplitLabel4";
+ this.SplitLabel4.Size = new System.Drawing.Size(4, 17);
+ //
// StripLabel2
//
this.StripLabel2.Name = "StripLabel2";
@@ -388,36 +418,6 @@ namespace HighWayIot.Winform.MainForm
this.TimeDisplayTimer.Interval = 1000;
this.TimeDisplayTimer.Tick += new System.EventHandler(this.TimeDisplayTimer_Tick);
//
- // SplitLabel4
- //
- this.SplitLabel4.BorderSides = ((System.Windows.Forms.ToolStripStatusLabelBorderSides)((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left | System.Windows.Forms.ToolStripStatusLabelBorderSides.Right)));
- this.SplitLabel4.Name = "SplitLabel4";
- this.SplitLabel4.Size = new System.Drawing.Size(4, 17);
- //
- // Label1
- //
- this.Label1.Name = "Label1";
- this.Label1.Size = new System.Drawing.Size(89, 17);
- this.Label1.Text = "开炼PLC状态:";
- //
- // Label2
- //
- this.Label2.Name = "Label2";
- this.Label2.Size = new System.Drawing.Size(89, 17);
- this.Label2.Text = "成型PLC状态:";
- //
- // OpenMixStateLabel
- //
- this.OpenMixStateLabel.Name = "OpenMixStateLabel";
- this.OpenMixStateLabel.Size = new System.Drawing.Size(31, 17);
- this.OpenMixStateLabel.Text = "N/A";
- //
- // MolderStateLabel
- //
- this.MolderStateLabel.Name = "MolderStateLabel";
- this.MolderStateLabel.Size = new System.Drawing.Size(31, 17);
- this.MolderStateLabel.Text = "N/A";
- //
// BaseForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
@@ -467,7 +467,6 @@ namespace HighWayIot.Winform.MainForm
private ToolStripMenuItem TestMenuItem;
private ToolStripMenuItem ShiftTimeConfigStripItem;
private ToolStripMenuItem DaliyReportStripItem;
- private ToolStripMenuItem ProductionSchedulingStripItem;
private ToolStripMenuItem MaterialMenuStripItem;
private ToolStripMenuItem RecipeConfigStripItem;
private ToolStripMenuItem EquipMaterialBindingStripItem;
@@ -483,5 +482,6 @@ namespace HighWayIot.Winform.MainForm
private ToolStripStatusLabel OpenMixStateLabel;
private ToolStripStatusLabel Label2;
private ToolStripStatusLabel MolderStateLabel;
+ private ToolStripMenuItem VulcanizerRecipeConfigToolStripMenuItem;
}
}
\ No newline at end of file
diff --git a/HighWayIot.Winform/MainForm/BaseForm.cs b/HighWayIot.Winform/MainForm/BaseForm.cs
index 157725e..8c208cc 100644
--- a/HighWayIot.Winform/MainForm/BaseForm.cs
+++ b/HighWayIot.Winform/MainForm/BaseForm.cs
@@ -163,7 +163,7 @@ namespace HighWayIot.Winform.MainForm
case "机台物料信息绑定":
UserPanelSwitch(typeof(EquipMaterialBindingPage), button.Text);
break;
- case "生产排程":
+ case "硫化机配方参数配置":
UserPanelSwitch(typeof(ProductionScheduling), button.Text);
break;
case "RFID参数配置":
@@ -374,5 +374,6 @@ namespace HighWayIot.Winform.MainForm
// MoldingMachineWatchDog = 2;
//}
}
+
}
}
diff --git a/HighWayIot.Winform/Properties/Resources.Designer.cs b/HighWayIot.Winform/Properties/Resources.Designer.cs
index 4ec4f5e..5833630 100644
--- a/HighWayIot.Winform/Properties/Resources.Designer.cs
+++ b/HighWayIot.Winform/Properties/Resources.Designer.cs
@@ -100,6 +100,16 @@ namespace HighWayIot.Winform.Properties {
}
}
+ ///
+ /// 查找 System.Drawing.Bitmap 类型的本地化资源。
+ ///
+ internal static System.Drawing.Bitmap 加硫_03 {
+ get {
+ object obj = ResourceManager.GetObject("加硫-03", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
///
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
///
diff --git a/HighWayIot.Winform/Properties/Resources.resx b/HighWayIot.Winform/Properties/Resources.resx
index a84660c..bdda10e 100644
--- a/HighWayIot.Winform/Properties/Resources.resx
+++ b/HighWayIot.Winform/Properties/Resources.resx
@@ -124,6 +124,9 @@
..\Resources\注销.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\报警日志.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\监控.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -145,20 +148,26 @@
..\Resources\绑定.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\参数.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\系统设置.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Static\MesnacLogoHighPixel.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
..\Resources\日志管理.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
- ..\Resources\物料需求.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\业务_配方.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
..\Resources\操作日志.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
- ..\Resources\报警日志.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\物料需求.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
..\Resources\权限.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -166,12 +175,6 @@
..\Resources\设备.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
- ..\Resources\业务_配方.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\系统设置.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
..\Resources\物料库存管控.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -181,7 +184,7 @@
..\Resources\生产排程.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
- ..\Resources\参数.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\加硫-03.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
\ No newline at end of file
diff --git a/HighWayIot.Winform/Resources/加硫-03.png b/HighWayIot.Winform/Resources/加硫-03.png
new file mode 100644
index 0000000..f8871c4
Binary files /dev/null and b/HighWayIot.Winform/Resources/加硫-03.png differ
diff --git a/HighWayIot.Winform/UserControlPages/ParamConfigPages/ProductionScheduling.Designer.cs b/HighWayIot.Winform/UserControlPages/ParamConfigPages/ProductionScheduling.Designer.cs
new file mode 100644
index 0000000..70b7ce2
--- /dev/null
+++ b/HighWayIot.Winform/UserControlPages/ParamConfigPages/ProductionScheduling.Designer.cs
@@ -0,0 +1,163 @@
+using System.Drawing;
+using System.Windows.Forms;
+
+namespace HighWayIot.Winform.UserControlPages.ParamConfigPages
+{
+ partial class ProductionScheduling
+ {
+ ///
+ /// 必需的设计器变量。
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// 清理所有正在使用的资源。
+ ///
+ /// 如果应释放托管资源,为 true;否则为 false。
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region 组件设计器生成的代码
+
+ ///
+ /// 设计器支持所需的方法 - 不要修改
+ /// 使用代码编辑器修改此方法的内容。
+ ///
+ private void InitializeComponent()
+ {
+ this.RoleDataGridView = new System.Windows.Forms.DataGridView();
+ this.SelectConfigButton = new System.Windows.Forms.Button();
+ this.ButtonPanel = new System.Windows.Forms.Panel();
+ this.UpdateConfigButton = new System.Windows.Forms.Button();
+ this.DeviceNo = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.RecipeName1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.SpecName1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.RecipeName2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.SpecName2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ ((System.ComponentModel.ISupportInitialize)(this.RoleDataGridView)).BeginInit();
+ this.ButtonPanel.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // RoleDataGridView
+ //
+ this.RoleDataGridView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.RoleDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+ this.RoleDataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+ this.DeviceNo,
+ this.RecipeName1,
+ this.SpecName1,
+ this.RecipeName2,
+ this.SpecName2});
+ this.RoleDataGridView.Location = new System.Drawing.Point(0, 65);
+ this.RoleDataGridView.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+ this.RoleDataGridView.Name = "RoleDataGridView";
+ this.RoleDataGridView.RowTemplate.Height = 25;
+ this.RoleDataGridView.Size = new System.Drawing.Size(1105, 676);
+ this.RoleDataGridView.TabIndex = 0;
+ this.RoleDataGridView.Tag = "";
+ //
+ // SelectConfigButton
+ //
+ this.SelectConfigButton.Location = new System.Drawing.Point(11, 11);
+ this.SelectConfigButton.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+ this.SelectConfigButton.Name = "SelectConfigButton";
+ this.SelectConfigButton.Size = new System.Drawing.Size(103, 39);
+ this.SelectConfigButton.TabIndex = 1;
+ this.SelectConfigButton.Text = "查询配置信息";
+ this.SelectConfigButton.UseVisualStyleBackColor = true;
+ this.SelectConfigButton.Click += new System.EventHandler(this.SelectConfigButton_Click);
+ //
+ // ButtonPanel
+ //
+ this.ButtonPanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.ButtonPanel.Controls.Add(this.UpdateConfigButton);
+ this.ButtonPanel.Controls.Add(this.SelectConfigButton);
+ this.ButtonPanel.Location = new System.Drawing.Point(0, 0);
+ this.ButtonPanel.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+ this.ButtonPanel.Name = "ButtonPanel";
+ this.ButtonPanel.Size = new System.Drawing.Size(1105, 61);
+ this.ButtonPanel.TabIndex = 4;
+ //
+ // UpdateConfigButton
+ //
+ this.UpdateConfigButton.Location = new System.Drawing.Point(120, 11);
+ this.UpdateConfigButton.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+ this.UpdateConfigButton.Name = "UpdateConfigButton";
+ this.UpdateConfigButton.Size = new System.Drawing.Size(103, 39);
+ this.UpdateConfigButton.TabIndex = 2;
+ this.UpdateConfigButton.Text = "修改配置信息";
+ this.UpdateConfigButton.UseVisualStyleBackColor = true;
+ this.UpdateConfigButton.Click += new System.EventHandler(this.UpdateConfigButton_Click);
+ //
+ // DeviceNo
+ //
+ this.DeviceNo.HeaderText = "机台编号";
+ this.DeviceNo.Name = "DeviceNo";
+ //
+ // RecipeName1
+ //
+ this.RecipeName1.HeaderText = "成品代号 - 上模";
+ this.RecipeName1.Name = "RecipeName1";
+ this.RecipeName1.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.RecipeName1.Width = 150;
+ //
+ // SpecName1
+ //
+ this.SpecName1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+ this.SpecName1.HeaderText = "标称尺度 - 上模";
+ this.SpecName1.Name = "SpecName1";
+ //
+ // RecipeName2
+ //
+ this.RecipeName2.HeaderText = "成品代号 - 下模";
+ this.RecipeName2.Name = "RecipeName2";
+ this.RecipeName2.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.RecipeName2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+ this.RecipeName2.Width = 150;
+ //
+ // SpecName2
+ //
+ this.SpecName2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+ this.SpecName2.HeaderText = "标称尺度 - 下模";
+ this.SpecName2.Name = "SpecName2";
+ this.SpecName2.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.SpecName2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+ //
+ // ProductionScheduling
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.BackColor = System.Drawing.SystemColors.ControlLight;
+ this.Controls.Add(this.ButtonPanel);
+ this.Controls.Add(this.RoleDataGridView);
+ this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+ this.Name = "ProductionScheduling";
+ this.Size = new System.Drawing.Size(1105, 741);
+ ((System.ComponentModel.ISupportInitialize)(this.RoleDataGridView)).EndInit();
+ this.ButtonPanel.ResumeLayout(false);
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private DataGridView RoleDataGridView;
+ private Button SelectConfigButton;
+ private Panel ButtonPanel;
+ private Button UpdateConfigButton;
+ private DataGridViewTextBoxColumn DeviceNo;
+ private DataGridViewTextBoxColumn RecipeName1;
+ private DataGridViewTextBoxColumn SpecName1;
+ private DataGridViewTextBoxColumn RecipeName2;
+ private DataGridViewTextBoxColumn SpecName2;
+ }
+}
diff --git a/HighWayIot.Winform/UserControlPages/ProductionScheduling.cs b/HighWayIot.Winform/UserControlPages/ParamConfigPages/ProductionScheduling.cs
similarity index 57%
rename from HighWayIot.Winform/UserControlPages/ProductionScheduling.cs
rename to HighWayIot.Winform/UserControlPages/ParamConfigPages/ProductionScheduling.cs
index 5ec5dd5..e954044 100644
--- a/HighWayIot.Winform/UserControlPages/ProductionScheduling.cs
+++ b/HighWayIot.Winform/UserControlPages/ParamConfigPages/ProductionScheduling.cs
@@ -8,16 +8,29 @@ using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
-namespace HighWayIot.Winform.UserControlPages
+namespace HighWayIot.Winform.UserControlPages.ParamConfigPages
{
public partial class ProductionScheduling : UserControl
{
+
+
public ProductionScheduling()
{
InitializeComponent();
+ init();
}
- private void UpdateRole_Click(object sender, EventArgs e)
+ private void init()
+ {
+
+ }
+
+ private void UpdateConfigButton_Click(object sender, EventArgs e)
+ {
+
+ }
+
+ private void SelectConfigButton_Click(object sender, EventArgs e)
{
}
diff --git a/HighWayIot.Winform/UserControlPages/ProductionScheduling.resx b/HighWayIot.Winform/UserControlPages/ParamConfigPages/ProductionScheduling.resx
similarity index 86%
rename from HighWayIot.Winform/UserControlPages/ProductionScheduling.resx
rename to HighWayIot.Winform/UserControlPages/ParamConfigPages/ProductionScheduling.resx
index 1af7de1..0cb14bb 100644
--- a/HighWayIot.Winform/UserControlPages/ProductionScheduling.resx
+++ b/HighWayIot.Winform/UserControlPages/ParamConfigPages/ProductionScheduling.resx
@@ -117,4 +117,19 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
\ No newline at end of file
diff --git a/HighWayIot.Winform/UserControlPages/ProductionScheduling.Designer.cs b/HighWayIot.Winform/UserControlPages/ProductionScheduling.Designer.cs
deleted file mode 100644
index 6331fd5..0000000
--- a/HighWayIot.Winform/UserControlPages/ProductionScheduling.Designer.cs
+++ /dev/null
@@ -1,98 +0,0 @@
-using System.Drawing;
-using System.Windows.Forms;
-
-namespace HighWayIot.Winform.UserControlPages
-{
- partial class ProductionScheduling
- {
- ///
- /// 必需的设计器变量。
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// 清理所有正在使用的资源。
- ///
- /// 如果应释放托管资源,为 true;否则为 false。
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region 组件设计器生成的代码
-
- ///
- /// 设计器支持所需的方法 - 不要修改
- /// 使用代码编辑器修改此方法的内容。
- ///
- private void InitializeComponent()
- {
- this.RoleDataGridView = new System.Windows.Forms.DataGridView();
- this.AddRole = new System.Windows.Forms.Button();
- this.ButtonPanel = new System.Windows.Forms.Panel();
- ((System.ComponentModel.ISupportInitialize)(this.RoleDataGridView)).BeginInit();
- this.ButtonPanel.SuspendLayout();
- this.SuspendLayout();
- //
- // RoleDataGridView
- //
- this.RoleDataGridView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
- | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.RoleDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
- this.RoleDataGridView.Location = new System.Drawing.Point(0, 65);
- this.RoleDataGridView.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
- this.RoleDataGridView.Name = "RoleDataGridView";
- this.RoleDataGridView.RowTemplate.Height = 25;
- this.RoleDataGridView.Size = new System.Drawing.Size(1105, 676);
- this.RoleDataGridView.TabIndex = 0;
- this.RoleDataGridView.Tag = "";
- //
- // AddRole
- //
- this.AddRole.Location = new System.Drawing.Point(11, 11);
- this.AddRole.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
- this.AddRole.Name = "AddRole";
- this.AddRole.Size = new System.Drawing.Size(103, 39);
- this.AddRole.TabIndex = 1;
- this.AddRole.Text = "查询操作信息";
- this.AddRole.UseVisualStyleBackColor = true;
- //
- // ButtonPanel
- //
- this.ButtonPanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.ButtonPanel.Controls.Add(this.AddRole);
- this.ButtonPanel.Location = new System.Drawing.Point(0, 0);
- this.ButtonPanel.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
- this.ButtonPanel.Name = "ButtonPanel";
- this.ButtonPanel.Size = new System.Drawing.Size(1105, 61);
- this.ButtonPanel.TabIndex = 4;
- //
- // ProductionScheduling
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.BackColor = System.Drawing.SystemColors.ControlLight;
- this.Controls.Add(this.ButtonPanel);
- this.Controls.Add(this.RoleDataGridView);
- this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
- this.Name = "ProductionScheduling";
- this.Size = new System.Drawing.Size(1105, 741);
- ((System.ComponentModel.ISupportInitialize)(this.RoleDataGridView)).EndInit();
- this.ButtonPanel.ResumeLayout(false);
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private DataGridView RoleDataGridView;
- private Button AddRole;
- private Panel ButtonPanel;
- }
-}