From 06d6ba0da4d9036bf3eeab8a7cbef8df89565606 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周一, 16 12月 2024 17:19:05 +0800 Subject: [PATCH] BZ01 齐包优化 --- CC/iWareCC_ASRS/FormCC.cs | 2757 ++++++----------------------------------------------------- 1 files changed, 318 insertions(+), 2,439 deletions(-) diff --git a/CC/iWareCC_ASRS/FormCC.cs b/CC/iWareCC_ASRS/FormCC.cs index 286fe2c..7d9b439 100644 --- a/CC/iWareCC_ASRS/FormCC.cs +++ b/CC/iWareCC_ASRS/FormCC.cs @@ -1,10 +1,13 @@ -锘縰sing iWareCC.Common.Helper; +锘縰sing Admin.NET.Application; +using iWareCC.Common.Helper; using iWareCC.DeviceThreadFactory; using iWareCC.Forms; using iWareCC.RgvService; using iWareCC.SrmService; using iWareCC.StationService; using iWareCC.ThreadService; +using iWareCC.ThreadService._03_BZ12_鏈哄櫒浜虹爜鍖呭伐浣峗; +using iWareCC.ThreadService._04_BZ21_鎼繍鏁村灈鏈哄櫒浜篲; using iWareCC.WCF; using iWareCommon.Common.Globle; using iWareCommon.Utils; @@ -12,10 +15,13 @@ using iWareModel.Entity.AGV; using iWareSql.DataAccess; using iWareSql.DBModel; +using iWareSql.WmsDBModel; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Data; +using System.Data.Entity.Core.Metadata.Edm; +using System.Diagnostics; using System.Drawing; using System.Linq; using System.Linq.Expressions; @@ -25,11 +31,33 @@ using System.Windows.Forms; using XiGang.Core.Model; using XiGang.Core.Model.ViewModels; +using static WZ.Useful.Commons.NativeMethods; + namespace iWareCC { public partial class FormCC : Form { + /// <summary> + /// 鍏ㄥ眬-269浣嶇疆鏈�鏂版壂鎻忕殑鏉夸欢鏁版嵁锛堟牸寮� 鍖呭彿|Upi|鏃堕棿鐐癸級 + /// </summary> + public static string Globle_269_LastPackageUpi = ""; + + /// <summary> + /// 鍏ㄥ眬-閰嶇疆鎶ヨ淇℃伅鍒楄〃 + /// </summary> + public static DeviceWarningOutput configDeviceWarningList = DeviceWarningHandler.GetConfigWarningList(); + + /// <summary> + /// 鍏ㄥ眬鈥旀槸鍚﹀彲浠ヨ繍琛屾墽琛屽嚭搴撴ā寮� + /// </summary> + public static bool IsAllowRunOutMode = false; + + /// <summary> + /// 褰撳墠涓嬪彂鍑哄簱浠诲姟鐨勫寘鍙� + /// </summary> + public static string currHandlerPackageCodeForIssueOutboundTask = ""; + /// <summary> /// 1鍙峰爢鍨涙満鍏ュ簱鍙f壂鐮佸己鍒堕獙璇侀�氳繃 /// </summary> @@ -147,7 +175,7 @@ this.rBNormal.Checked = SystemValue.rBNormal_Checked = true; this.rbHand.Checked = SystemValue.rbHand_Checked = false; this.rBDebug.Checked = SystemValue.rBDebug_Checked = false; - this.rBOnlyIn.Checked = SystemValue.rBOnlyIn_Checked = false; + SetModelCheckBoxToSystemValue(); @@ -156,44 +184,22 @@ startModelTipsThread.Start(); #region 鑾峰彇璁惧鏁版嵁 - ParameterizedThreadStart parStart1 = new ParameterizedThreadStart(GetSrmInfo); - Thread thread1 = new Thread(parStart1); - object o1 = (int)EDevice.涓�鍙峰爢鍨涙満; - thread1.Start(o1); - - ParameterizedThreadStart parStart2 = new ParameterizedThreadStart(GetSrmInfo); - Thread thread2 = new Thread(parStart2); - object o2 = (int)EDevice.浜屽彿鍫嗗灈鏈�; - thread2.Start(o2); - - ParameterizedThreadStart parStart3 = new ParameterizedThreadStart(GetSrmInfo); - Thread thread3 = new Thread(parStart3); - object o3 = (int)EDevice.涓夊彿鍫嗗灈鏈�; - thread3.Start(o3); - - ParameterizedThreadStart parStart4 = new ParameterizedThreadStart(GetSrmInfo); - Thread thread4 = new Thread(parStart4); - object o4 = (int)EDevice.鍥涘彿鍫嗗灈鏈�; - thread4.Start(o4); - - - - tskGetRgv1Info = new Thread(GetRgvInfo); - tskGetRgv1Info.Start(); var tskGetStationInfo = new Thread(GetStationInfo); tskGetStationInfo.Start(); - //鍫嗗灈鏈篣I璧嬪�� - SetSrmUI(); + var _GetStationWarningInfo = new Thread(GetStationWarningInfo); + _GetStationWarningInfo.Start(); + + + tskSetSrmLable = new Thread(SrmRead_Label); + tskSetSrmLable.Start(); #endregion #region 璁剧疆鏄剧ずUI - tskSetSrmLable = new Thread(SrmRead_Label); - tskSetSrmLable.Start(); - tskSetRgvLable = new Thread(SetRgvLable); - tskSetRgvLable.Start(); + + #endregion #region 鏈嶅姟绾跨▼鍚姩 @@ -206,34 +212,45 @@ // rgvService.StartService(); - //澶勭悊銆愪笅鍙戜腑銆戠殑鍑哄簱璁″垝浠诲姟 - // new Thread(OutPlanTaskDecompose.HandlerIssuingTask).Start(); - //浠诲姟鍒嗚В绾跨▼-鍑哄簱 - // new Thread(MainTaskDecompose.HandlerMainTaskDecompose).Start(); + //new Thread(DataProcess_RobotBuffer_ModeChange.Handler).Start(); - //浠诲姟鍒嗚В绾跨▼-缁勭洏鍏ュ簱 - // new Thread(MainTaskDecompose_ZPRK.HandlerMainTaskDecompose_ZPRK).Start(); + new Thread(DataProcess_RobotBuffer_IssueOutboundTask.Handler).Start(); + + + //new Thread(DataProcess_RobotBuffer_AutoQiTaoOutbound.Handler).Start(); + new Thread(DataProcess_RobotBuffer_PesonOutbound.Handler).Start(); new Thread(DataProcess_RobotBuffer_FinishTaskForOutbound.Handler).Start(); - //鑷姩缁勭洏浠诲姟 + new Thread(DataProcess_RobotBuffer_ForceOutbound.Handler).Start(); + new Thread(DataProcess_RobotBuffer_FinishTask.Handler).Start(); new Thread(DataProcess_BZ01.Handler).Start(); - //閲嶆柊鑾峰彇鍙戝姩鏈轰俊鎭� + new Thread(DataProcess_269.Handler).Start(); - //1014搴撲綅杞繍鍒�1020绾跨▼ + new Thread(DataProcess_BZ39.Handler).Start(); + new Thread(DataProcess_BZ39_IssueInboundTask.Handler).Start(); + new Thread(DataProcess_BZ12.Hander).Start(); + new Thread(DataProcess_BZ12_IssueTask.Handler).Start(); + new Thread(DataProcess_BZ12_FinishTask.Handler).Start(); + + new Thread(DataProcess_BZ21.Hander).Start(); + new Thread(DataProcess_BZ21_IssueTask.Handler).Start(); + + new Thread(DataProcess_BZ21_FinishTask.Handler).Start(); new Thread(DeleteData).Start(); - new Thread(LineInSacnResult.HandlerLineInSacnResult).Start(); + new Thread(PushPackageCodeToMes.Handler).Start(); + new Thread(PushPaperCutToMes.Handler).Start(); - + new Thread(DataProcess_ValidateQiTao.Handler).Start(); //*/ #endregion @@ -247,17 +264,8 @@ } private void FormCC_Load(object sender, EventArgs e) { - dateTimePicker_Start.Value = DateTime.Now; - dateTimePicker_End.Value = DateTime.Now; - asc_panel_DeviceTaskList.controllInitializeSize(this.panel_DeviceTaskList); - asc_panel_DeviceTaskList_dgvPartTask_Finished.controllInitializeSize(this.panel_DeviceTaskList_dgvPartTask_Finished); - asc_panel_dataGridView__OutTaskList.controllInitializeSize(this.panel_dataGridView__OutTaskList); - asc_panel_WaitPlanDetail.controllInitializeSize(this.panel_WaitPlanDetail); - asc_panel_DeviceTaskList_dataGridView_RgvStore.controllInitializeSize(this.panel_DeviceTaskList_dataGridView_RgvStore); - asc_panel_dg_OutTaskRetryToMes.controllInitializeSize(this.panel_dg_OutTaskRetryToMes); - this.dgvPartTask.ReadOnly = true; /* trCancelBatchBackToStore = new Thread(CancelBatchBackToStore); @@ -269,7 +277,6 @@ tr_reverseSplitFinishProdOutStoreThread.Start(); //*/ - this.SetInitPlaceValue(); #region 瀵瑰鍙戝竷WCF褰㈠紡鏁版嵁璁块棶鏈嶅姟 try @@ -300,7 +307,7 @@ } else {//姝e紡妯″紡 - rgvServiceClient = new RgvServiceClient(); + stationServiceClient = new StationServiceClient(); } this.lbl_IsSimulationPLC.BackColor = IsSimulationPLC ? Color.Red : Color.Green; @@ -308,10 +315,6 @@ //姝ゅ蹇�熷惎鍔� 璋冭瘯妯″紡锛岀敤浜庡紑鍙戠敤 //btn_Start_Click(null, null); } - - - - #region 鍫嗗灈鏈虹嚎绋嬪拰UI澶勭悊 /// <summary> /// 璁剧疆1/2鍙峰爢鍨涙満鐨勫墠绔樉绀� @@ -326,33 +329,37 @@ var showNowTime = "(" + DateTimeHelper.ConvertToStringForOnlyShowTime(DateTime.Now) + ")"; //璁剧疆鍫嗗灈鏈轰换鍔′笅鍙戝拰浠诲姟纭绾跨▼娑堟伅 - this.lbl_Alter_Srm1Release.Text = showNowTime + SystemWarningMsg._lbl_Alert_Srm1Release; - this.lbl_Alert_Srm2Release.Text = showNowTime + SystemWarningMsg._lbl_Alert_Srm2Release; - this.lbl_Alert_Srm3Release.Text = showNowTime + SystemWarningMsg._lbl_Alert_Srm3Release; - this.lbl_Alert_Srm4Release.Text = showNowTime + SystemWarningMsg._lbl_Alert_Srm4Release; + this.lbl_Alert_DataProcess_BZ39_IssueInboundTask.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_BZ39_IssueInboundTask; + this.lbl_Alert_DataProcess_RobotBuffer_ForceOutbound.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_ForceOutbound; + this.lbl_Alert_DataProcess_BZ12.Text = showNowTime + SystemWarningMsg._lbl_alert_DataProcess_BZ12; + //璁剧疆鍫嗗灈鏈轰换鍔′笅鍙戝拰浠诲姟瀹屾垚纭绾跨▼娑堟伅 - this.lbl_Alter_Srm1ReleaseFinish.Text = showNowTime + SystemWarningMsg._lbl_Alert_Srm1ReleaseFinish; - this.lbl_Alert_Srm2ReleaseFinish.Text = showNowTime + SystemWarningMsg._lbl_Alert_Srm2ReleaseFinish; - this.lbl_Alert_Srm3ReleaseFinish.Text = showNowTime + SystemWarningMsg._lbl_Alert_Srm3ReleaseFinish; - this.lbl_Alert_Srm4ReleaseFinish.Text = showNowTime + SystemWarningMsg._lbl_Alert_Srm4ReleaseFinish; - this.lbl_Alert_RgvRelease.Text = showNowTime + SystemWarningMsg._lbl_Alert_RgvRelease; - this.lbl_Alert_RgvReleaseFinish.Text = showNowTime + SystemWarningMsg._lbl_Alert_RgvReleaseFinish; - this.lbl_Alert_RgvReleaseFinish_BuChang.Text = showNowTime + SystemWarningMsg._lbl_Alert_RgvReleaseFinish_BuChang; + this.lbl_Alert_DataProcess_BZ12_FinishTask.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_BZ12_FinishTask; + this.lbl_Alert_DataProcess_BZ21_FinishTask.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_BZ21_FinishTask; - this.lbl_Alert_HandlerIssuingTask.Text = showNowTime + SystemWarningMsg._lbl_Alert_HandlerIssuingTask; + + + this.lbl_Alert_PushPaperCutToMes.Text = showNowTime + SystemWarningMsg._lbl_Alert_PushPaperCutToMes; + this.lbl_Alert_PushPackageCodeToMes.Text = showNowTime + SystemWarningMsg._lbl_Alert_PushPackageCodeToMes; + + this.lbl_Alert_DataProcess_BZ12_IssueTask.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_BZ12_IssueTask; + + this.lbl_DataProcess_ValidateQiTao.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_ValidateQiTao; this.lbl_Alert_DataProcess_RobotBuffer_FinishTask.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTask; - this.lbl_MainTaskDecompose.Text = showNowTime + SystemWarningMsg._lbl_Alert_MainTaskDecompose; + this.lbl_DataProcess_BZ21_IssueTask.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_BZ21_IssueTask; - this.lbl_MainTaskDecompose_ZPRK.Text = showNowTime + SystemWarningMsg._lbl_Alert_MainTaskDecompose_ZPRK; + this.lbl_DataProcess_RobotBuffer_ModeChange.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_ModeChange; this.lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound; this.lbl_Alert_DeleteData.Text = showNowTime + SystemWarningMsg._lbl_Alert_DeleteData; - this.lbl_Alert_EmptySalverTransfer.Text = showNowTime + SystemWarningMsg._lbl_Alert_EmptySalverTransfer; + this.lbl_Alert_DataProcess_RobotBuffer_AutoQiTaoOutbound.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_AutoQiTaoOutbound; + + this.lbl_Alter_DataProcess_BZ21.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_BZ21; this.lbl_alert_DataProcess_BZ39.Text = showNowTime + SystemWarningMsg._lbl_alert_DataProcess_BZ39; @@ -360,10 +367,7 @@ this.lbl_alert_DataProcess_269.Text = showNowTime + SystemWarningMsg._lbl_alert_DataProcess_269; - this.lbl_Alert_Place1014ClearStoreTask.Text = showNowTime + SystemWarningMsg._lbl_Alert_Place1014To1020TaskTask; - - - this.lbl_Alter_OutTaskRetryToMes.Text = showNowTime + SystemWarningMsg._lbl_Alert_OutTaskRetryToMes; + this.lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask.Text = showNowTime + SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask; @@ -371,220 +375,15 @@ } catch (Exception ex) { - Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.SrmTheadService, "鏂规硶SrmRead_Label鍑虹幇寮傚父锛�" + ex.Message, ex); continue; } } } - /// <summary> - /// 鑾峰彇鍫嗗灈鏈虹殑瀹炴椂淇℃伅 - /// </summary> - private void GetSrmInfo(object int_device) - { - while (true) - { - EDevice device = (EDevice)Enum.Parse(typeof(EDevice), int_device.ToString()); - Thread.Sleep(cycleDelay_Device); - try - { - using (var opcClinet = new SrmService.SrmServiceClient()) - { - srmViewDict[(int)device] = opcClinet.GetSrmInfo((int)device); - CastToDevice_SrmRealTime(srmViewDict[(int)device]); - List<String> warningAddressList = new List<string>(); - if (srmViewDict[(int)device].R_WarningDBList != null && srmViewDict[(int)device].R_WarningDBList.Length > 0) - { - var waringList = srmViewDict[(int)device].R_WarningDBList.ToList(); - if (waringList != null && waringList.Count > 0) - { - for (int i = 0; i < waringList.Count; i++) - { - DeviceWarningHandler.SaveWarning(device, iWareCommon.Utils.LogType.SrmTheadService, - waringList[i].Code, waringList[i].Address, waringList[i].Context);//鏂板鎶ヨ - warningAddressList.Add(waringList[i].Address); - } - } - } - DeviceWarningHandler.AutoCloseWarning(device, iWareCommon.Utils.LogType.SrmTheadService, warningAddressList);//鑷姩鍏抽棴鎶ヨ - } - } - catch (Exception ex) - { - Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.SrmTheadService, "鑾峰彇" + device.ToString() + "鐨勫疄鏃朵俊鎭紓甯�:" + ex.Message, ex); - continue; - } - }; - } - - /// <summary> - /// 杞崲涓篠RM鐨勫疄鏃剁姸鎬� - /// </summary> - /// <param name="view"></param> - private void CastToDevice_SrmRealTime(SrmView view) - { - List<Device_SrmRealTime> realTimeList = new List<Device_SrmRealTime>(); - Device_SrmRealTime obj = new Device_SrmRealTime(); - EDevice device = (EDevice)Enum.Parse(typeof(EDevice), view.R_SrmNo.ToString()); - obj = new Device_SrmRealTime() - { - SrmCode = view.R_SrmNo.ToString(), - SrmName = device.ToString(), - Mode = view.R_Mode.ToString(), - ModeName = view.ModeName, - State = view.R_State.ToString(), - StateName = view.StateName, - - TaskID = view.R_TaskNo.ToString(), - LiftFull = view.R_LiftFull == 1, - PosX = view.R_PosX, - PosY = view.R_PosY, - PosZ = view.R_PosZ, - PosZName = EnumberHelper.GetEnumName<ESrmForkPosition>(view.R_PosZ).ToString(), - // XCoordinate=view.r_xc - - SrmToPlace = view.SrmToPlace, - SrmSourcePlace = view.SrmSourcePlace, - ZCoordinate = view.R_PosZmm.ToString(), - XCoordinate = view.R_PosXmm.ToString(), - YCoordinate = view.R_PosYmm.ToString() - - }; - realTimeList.Add(obj); - - DeviceSrmRealTimeHandler.Update(realTimeList, iWareCommon.Utils.LogType.SrmTheadService); - - } + #region 鍫嗗灈鏈虹嚎绋嬪拰UI澶勭悊 - /// <summary> - /// 鍫嗗灈鏈虹殑UI鏄剧ず - /// </summary> - /// <param name="device"></param> - private void SetSrmUI() - { - if (FormCC.IsSimulationPLC == false) - { - SrmDeviceList.ForEach(x => - { - ParameterizedThreadStart parStart = new ParameterizedThreadStart(SingleSetSrmUI); - Thread thread = new Thread(parStart); - object o = (int)x; - thread.Start(o); - }); - } - } - /// <summary> - /// 鍫嗗灈鏈虹殑UI鏄剧ず - /// </summary> - /// <param name="device"></param> - private void SingleSetSrmUI(object int_device) - { - while (true) - { - try - { - EDevice device = (EDevice)Enum.Parse(typeof(EDevice), int_device.ToString()); - SrmView srmInfo = srmViewDict[(int)device]; - var panel = GetSrmPanel(device); - List<PropertieModel> proList = ClassHelper.GetPropertieModels<SrmView>(srmInfo); - foreach (var item in DeviceDict.LabelSrmDict) - { - //var lbl = ControlHelper.GetLabel(this, panel, item.Key + (int)device); - Object obj = ControlHelper.GetControlInstance(panel, item.Key + (int)device); - if (obj != null) - { - Label lbl = (Label)obj; - lbl.Text = item.Value.LablePreStr + proList.Find(x => x.PropertyName == item.Value.LableProName).DataValue; - } - } - //鐗规畩澶勭悊- 鎶ヨ - var lbSrmAlarm = GetSrmAlarmLabel(device); - if (srmInfo.R_Alarm != 1) - { - lbSrmAlarm.Text = string.Empty; - lbSrmAlarm.ForeColor = Color.SkyBlue; - lbSrmAlarm.BackColor = Color.Transparent; - lbSrmAlarm.ForeColor = Color.Maroon; - lbSrmAlarm.BackColor = Color.WhiteSmoke; - } - else - { //澶勪簬鎶ヨ鐘舵�佷笅 - if (srmInfo.R_WarningDBList != null && srmInfo.R_WarningDBList.Length > 0) - { - lbSrmAlarm.Text = String.Join(",", srmInfo.R_WarningDBList.Select(x => x.Context).ToArray()); - } - - lbSrmAlarm.ForeColor = Color.White; - lbSrmAlarm.BackColor = Color.Red; - lbSrmAlarm.ForeColor = Color.White; - lbSrmAlarm.BackColor = Color.Red; - } - //娉ㄩ噴 - /* - if (lbSrmAlarm.Text == string.Empty) - { - using (var opcClinet = new SrmService.SrmServiceClient()) - { - var isHandShare = SrmBLL.IsHandShare(opcClinet, device); - if (!isHandShare) - { - lbSrmAlarm.Text = (int)device + "鍙峰爢鍨涙満娌℃湁蹇冭烦"; - } - } - } - //*/ - } - catch (Exception) - { - throw; - } - } - } - - /// <summary> - /// 鑾峰彇鍫嗗灈鏈虹殑鎶ヨLabel - /// </summary> - /// <param name="device"></param> - /// <returns></returns> - private Label GetSrmAlarmLabel(EDevice device) - { - switch (device) - { - case EDevice.涓�鍙峰爢鍨涙満: - return this.lblSrmAlarm1; - case EDevice.浜屽彿鍫嗗灈鏈�: - return this.lblSrmAlarm2; - case EDevice.涓夊彿鍫嗗灈鏈�: - return this.lblSrmAlarm3; - case EDevice.鍥涘彿鍫嗗灈鏈�: - return this.lblSrmAlarm4; - } - return null; - } - - - /// <summary> - /// 鑾峰彇鍫嗗灈鏈虹殑Panel - /// </summary> - /// <param name="device"></param> - /// <returns></returns> - private Panel GetSrmPanel(EDevice device) - { - switch (device) - { - case EDevice.涓�鍙峰爢鍨涙満: - return this.panel_Srm1; - case EDevice.浜屽彿鍫嗗灈鏈�: - return this.panel_Srm2; - case EDevice.涓夊彿鍫嗗灈鏈�: - return this.panel_Srm3; - case EDevice.鍥涘彿鍫嗗灈鏈�: - return this.panel_Srm4; - } - return null; - } @@ -641,167 +440,9 @@ } } - /// <summary> - /// 鑾峰彇RGV淇℃伅 - /// </summary> - /// <param name="obj"></param> - private void GetRgvInfo(object obj) - { - while (true) - { - Thread.Sleep(1000);//1绉掗挓璇诲彇涓�娆� - try - { - if (rgvServiceClient == null) - { - continue; - } - rgvView = rgvServiceClient.GetRgvInfo((int)EDevice.RGV); - CalcRGV_1012_HasCategory_COUNT(); - CalcRGV_1011_HasCategory_COUNT(); - CalcRGV_1020_NoHasCategory_COUNT(); - CalcRGV_HasCategory_COUNT(EDevice.鍫嗗灈鏈�1鍑哄簱鍙�1001, ref RGV_1001_HasCategory_COUNT, lbl_RGV_1001_HasCategory_COUNT); - CalcRGV_HasCategory_COUNT(EDevice.鍫嗗灈鏈�2鍑哄簱鍙�1003, ref RGV_1003_HasCategory_COUNT, lbl_RGV_1003_HasCategory_COUNT); - CalcRGV_HasCategory_COUNT(EDevice.鍫嗗灈鏈�3鍑哄簱鍙�1005, ref RGV_1005_HasCategory_COUNT, lbl_RGV_1005_HasCategory_COUNT); - CalcRGV_HasCategory_COUNT(EDevice.鍫嗗灈鏈�4鍑哄簱鍙�1008, ref RGV_1008_HasCategory_COUNT, lbl_RGV_1008_HasCategory_COUNT); - _CommmonShowAgvStation(); - CastToDevice_RgvRealTime(rgvView); - SetScanText(); - Set1009_HighText(); - //鏄剧ずRGV浠诲姟瀹屾垚鍜屽畬鎴愮‘璁や俊鍙� - this.lbl_R_RGV_Finish.Text = "RGV浠诲姟瀹屾垚:" + rgvView.R_RGV_Finish; - this.lbl_W_RGV_FinishACK.Text = "RGV浠诲姟瀹屾垚纭:" + rgvView.W_RGV_FinishACK; - - this.lbl_RgvCoordinate.Text = "RGV瀹炴椂鍧愭爣:" + rgvView.R_RGV_Coordinate; - - //瑙f瀽RGV瀵硅薄 - foreach (var item in rgvView.R_RgvForReadCommList) - { - var control = ControlHelper.GetControlInstance(this.tPTransAsrs, "btn_" + item.StationCode); - if (item.R_AlarmCode > 0) - {//鏈夋姤璀� - if (control != null) - { - var btn = control as Button; - btn.BackColor = Color.Red; - } - } - else - { - if (control != null) - { - var btn = control as Button; - if (item.StationCode == ((int)EDevice.RGV1040).ToString()) - { - btn.BackColor = Color.Gold; - } - else if (item.StationCode == ((int)EDevice.鎷嗙洏鏈�1020).ToString()) - { - btn.BackColor = Color.DodgerBlue; - } - else if (item.StationCode == ((int)EDevice.鎻愬崌鏈�1030).ToString()) - { - btn.BackColor = Color.SteelBlue; - } - else - { - btn.BackColor = Color.SeaGreen; - } - } - } - } - - //鏄剧ずRGV鎶ヨ淇℃伅 - List<String> warningAddressList = new List<string>(); - if (rgvView.R_Rgv_WarningDBList != null && rgvView.R_Rgv_WarningDBList.Length > 0) - { - tb_Rgv_Alter.Text = String.Join(",", rgvView.R_Rgv_WarningDBList.Select(x => x.Contextk__BackingField).ToArray()); - //淇濆瓨鎶ヨ - var waringList = rgvView.R_Rgv_WarningDBList.ToList(); - if (waringList != null && waringList.Count > 0) - { - for (int i = 0; i < waringList.Count; i++) - { - DeviceWarningHandler.SaveWarning(EDevice.RGV, iWareCommon.Utils.LogType.StationThreadService, - waringList[i].Codek__BackingField, waringList[i].Addressk__BackingField, waringList[i].Contextk__BackingField);//鏂板鎶ヨ - warningAddressList.Add(waringList[i].Addressk__BackingField); - } - } - } - else - { - tb_Rgv_Alter.Text = ""; - } - DeviceWarningHandler.AutoCloseWarning(EDevice.RGV, iWareCommon.Utils.LogType.StationThreadService, warningAddressList);//鑷姩鍏抽棴鎶ヨ - } - catch (Exception ex) - { - rgvView = null; - Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.StationThreadService, "鑾峰彇RGV淇℃伅鍑虹幇寮傚父:" + ex.Message, ex); - continue; - } - } - } - - private void SetScanText() - { - this.lbl_R_1015_Scan.Text = "1015鎵爜鍊�:" + rgvView.R_1015_Scan; - this.lbl_R_1019_Scan.Text = "1019鎵爜鍊�:" + rgvView.R_1019_Scan; - this.lblR_1019_CargoNoScan.Text = "1019鍙戝姩鏈烘壂鐮�:" + rgvView.R_1019_CargoNoScan; - this.lbl_R_1002_Scan.Text = "1002鎵爜鍊�:" + rgvView.R_1002_Scan; - this.lbl_R_1004_Scan.Text = "1004鎵爜鍊�:" + rgvView.R_1004_Scan; - this.lbl_R_1006_Scan.Text = "1006鎵爜鍊�:" + rgvView.R_1006_Scan; - this.lbl_R_1007_Scan.Text = "1007鎵爜鍊�:" + rgvView.R_1007_Scan; - - this.lbl_W_1002_ScanFailACK.Text = "1002鎵弿楠岃瘉:" + rgvView.W_1002_ScanFailACK; - this.lbl_W_1004_ScanFailACK.Text = "1004鎵弿楠岃瘉:" + rgvView.W_1004_ScanFailACK; - this.lbl_W_1006_ScanFailACK.Text = "1006鎵弿楠岃瘉:" + rgvView.W_1006_ScanFailACK; - this.lbl_W_1007_ScanFailACK.Text = "1007鎵弿楠岃瘉:" + rgvView.W_1007_ScanFailACK; - } - - private void Set1009_HighText() - { - this.lbl_R_1009_High1.Text = "1009绔欑偣1灞傚厜鐢�:" + rgvView.R_1009_High1; - this.lbl_R_1009_High2.Text = "1009绔欑偣2灞傚厜鐢�:" + rgvView.R_1009_High2; - this.lbl_R_1009_High3.Text = "1009绔欑偣3灞傚厜鐢�:" + rgvView.R_1009_High3; - } - - /// <summary> - /// 杞崲涓篟GV鐨勫疄鏃剁姸鎬� - /// </summary> - /// <param name="rgvView"></param> - private void CastToDevice_RgvRealTime(RgvView rgvView) - { - List<Device_RgvRealTime> realTimeList = new List<Device_RgvRealTime>(); - Device_RgvRealTime obj = new Device_RgvRealTime(); - foreach (var item in rgvView.R_RgvForReadCommList) - { - EDevice device = (EDevice)Enum.Parse(typeof(EDevice), item.StationCode); - obj = new Device_RgvRealTime() - { - RgvCode = item.StationCode, - RgvName = device.ToString(), - Mode = item.R_Model.ToString(), - ModeName = EnumberHelper.GetEnumName<ERgvMode>(item.R_Model).ToString(), - State = item.R_State.ToString(), - StateName = EnumberHelper.GetEnumName<ERgvState>(item.R_State).ToString(), - WarningCode = item.R_AlarmCode.ToString(), - TaskID = item.R_TaskID.ToString(), - PH_1 = item.R_PH_1, - PH_2 = item.R_PH_2, - Shape = item.R_Shape.ToString(), - ShapeName = EnumberHelper.GetEnumName<ERgvBodyTest>(item.R_Shape).ToString(), - Destination = item.R_Destination.ToString(), - Coordinate = rgvView.R_RGV_Coordinate //璧嬪�糝GV鍧愭爣 - }; - realTimeList.Add(obj); - } - DeviceRgvRealTimeHandler.Update(realTimeList, iWareCommon.Utils.LogType.StationThreadService); - - } #endregion @@ -875,8 +516,21 @@ stationView = stationServiceClient.GetStationInfo((int)EDevice.Station); - _CommmonShowAgvStation(); + this.lbl_Mode_FJ.Text = "璁惧妯″紡:" + PlcHelper.GetModeName(stationView.R_Mode_FJ); + this.lbl_XinTiao_FJ.Text = "蹇冭烦:" + stationView.R_HandShake_FJ; + this.lbl_Warning_FJ.Text = "鎶ヨ绫诲瀷:" + PlcHelper.GetWarningTypeName(stationView.R_Warning_FJ); + this.lbl_Mode_MB.Text = "璁惧妯″紡:" + PlcHelper.GetModeName(stationView.R_Mode_MB); + this.lbl_XinTiao_MB.Text = "蹇冭烦:" + stationView.R_HandShake_MB; + this.lbl_Warning_MB.Text = "鎶ヨ绫诲瀷:" + PlcHelper.GetWarningTypeName(stationView.R_Warning_MB); + + this.lbl_Mode_HB.Text = "璁惧妯″紡:" + PlcHelper.GetModeName(stationView.R_Mode_HB); + this.lbl_XinTiao_HB.Text = "蹇冭烦:" + stationView.R_HandShake_HB; + this.lbl_Warning_HB.Text = "鎶ヨ绫诲瀷:" + PlcHelper.GetWarningTypeName(stationView.R_Warning_HB); + + this.lbl_Mode_FX.Text = "璁惧妯″紡:" + PlcHelper.GetModeName(stationView.R_Mode_FX); + this.lbl_XinTiao_FX.Text = "蹇冭烦:" + stationView.R_HandShake_FX; + this.lbl_Warning_FX.Text = "鎶ヨ绫诲瀷:" + PlcHelper.GetWarningTypeName(stationView.R_Warning_FX); ////鏄剧ずRGV浠诲姟瀹屾垚鍜屽畬鎴愮‘璁や俊鍙� //this.lbl_R_RGV_Finish.Text = "RGV浠诲姟瀹屾垚:" + rgvView.R_RGV_Finish; @@ -957,56 +611,64 @@ } - - #endregion - - #region AGV - - /// <summary> - /// 鑾峰彇AGV杞﹁締鍒楄〃 + /// 鑾峰彇Station 鎶ヨ淇℃伅 /// </summary> - public void GetAgvVehicles() + /// <param name="obj"></param> + private async void GetStationWarningInfo(object obj) { while (true) { + Thread.Sleep(3000);//1绉掗挓璇诲彇涓�娆� try { - if (SystemValue.isAllowRuning_Agv && SystemValue.isStartedModel) + if (stationServiceClient == null) { - AGVRetModel list = AgvRequestHelper.GetVehicles(); - AgvHandler.SaveAgvData(list); - - List<String> warningAddressList = new List<string>(); - if (list.alarms != null && list.alarms.errors != null && list.alarms.errors.Count > 0) - { - var waringList = list.alarms.errors; - if (waringList != null && waringList.Count > 0) - { - for (int i = 0; i < waringList.Count; i++) - { - DeviceWarningHandler.SaveWarning(EDevice.AGV, iWareCommon.Utils.LogType.AGVTheadService, - waringList[i].code, waringList[i].code, waringList[i].desc);//鏂板鎶ヨ - warningAddressList.Add(waringList[i].code); - } - } - } - DeviceWarningHandler.AutoCloseWarning(EDevice.AGV, iWareCommon.Utils.LogType.AGVTheadService, warningAddressList);//鑷姩鍏抽棴鎶ヨ - this.lbl_Alert_Agv.Text = "鑾峰彇AGV杞﹁締淇℃伅鎴愬姛"; + continue; } + + Stopwatch main = new Stopwatch(); + main.Start(); + + iWareCC.StationService.DeviceWarningInfo[] waringList = await stationServiceClient.GetWaringInfoListAsync((int)EDevice.Station, configDeviceWarningList.wmsConfigDeviceWarnings.ToArray()); + + main.Stop(); + var milliseconds = main.ElapsedMilliseconds; //-- 鎿嶄綔鏃堕棿锛堟绉掞級 + + //鏄剧ず鎶ヨ淇℃伅 + List<String> warningCodeList = new List<string>(); + if (waringList != null && waringList.Length > 0) + { + for (int i = 0; i < waringList.Length; i++) + { + var findObj = configDeviceWarningList.wms_config_device_warning_list.Where(x => x.WarningCode == waringList[i].Codek__BackingField).FirstOrDefault(); + DeviceWarningHandler.SaveWarning(EDevice.Station, iWareCommon.Utils.LogType.StationThreadService, + findObj.WarningCode, findObj.DeviceAreaCode, findObj.WarningContent, findObj.DeviceWarningType);//鏂板鎶ヨ + warningCodeList.Add(findObj.WarningCode); + } + + } + else + { + + } + DeviceWarningHandler.AutoCloseWarning(EDevice.Station, iWareCommon.Utils.LogType.StationThreadService, warningCodeList);//鑷姩鍏抽棴鎶ヨ + + //*/ } catch (Exception ex) { - Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.CCWCFService, "鑾峰彇AGV杞﹁締鍒楄〃 鍑虹幇寮傚父:" + ex.Message, ex); - this.lbl_Alert_Agv.Text = "鑾峰彇AGV杞﹁締淇℃伅寮傚父锛�" + ex.Message; - } - finally - { - Thread.Sleep(5000);//5绉掍竴娆� + rgvView = null; + Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.StationThreadService, "鑾峰彇绔欑偣淇℃伅鍑虹幇寮傚父:" + ex.Message, ex); + continue; } } } + + + #endregion + #region 鍏朵粬绾跨▼ @@ -1059,82 +721,6 @@ #region 绉佹湁鏂规硶 - /// <summary> - /// 璁$畻 鏌愪釜绔欑偣鐨勬湁璐� 鍊� - /// </summary> - private void CalcRGV_HasCategory_COUNT(EDevice device, ref int RGV_HasCategory_COUNT, Label lbl_RGV_HasCategory_COUNT) - { - //鏀逛负 鍙垽鏂湁涓や釜淇″彿閮芥湁 - var isGD_HasCatogryForRgvStattion = MyExtendHelper.IsGD_HasCatogryForRgvStattionFor2(((int)device).ToString()); - //鏀逛负 鍙垽鏂湁涓�涓俊鍙锋湁璐у嵆鍙� - //var isGD_HasCatogryForRgvStattion = MyExtendHelper.IsGD_HasCatogryForRgvStattion(((int)EDevice.鍑哄簱鍙�1012).ToString()); - if (isGD_HasCatogryForRgvStattion) - { - RGV_HasCategory_COUNT += 1; - } - else - { - RGV_HasCategory_COUNT = 0; - } - lbl_RGV_HasCategory_COUNT.Text = ((int)device).ToString() + "绔欑偣鎸佺画鏈夎揣鏃堕棿:" + RGV_HasCategory_COUNT; - } - - /// <summary> - /// 璁$畻 RGV_1012_HasCategory_COUNT鍊� - /// </summary> - private void CalcRGV_1012_HasCategory_COUNT() - { - //鏀逛负 鍙垽鏂湁涓や釜淇″彿閮芥湁 - var isGD_HasCatogryForRgvStattion = MyExtendHelper.IsGD_HasCatogryForRgvStattionFor2(((int)EDevice.鍑哄簱鍙�1012).ToString()); - //鏀逛负 鍙垽鏂湁涓�涓俊鍙锋湁璐у嵆鍙� - //var isGD_HasCatogryForRgvStattion = MyExtendHelper.IsGD_HasCatogryForRgvStattion(((int)EDevice.鍑哄簱鍙�1012).ToString()); - if (isGD_HasCatogryForRgvStattion) - { - RGV_1012_HasCategory_COUNT += 1; - } - else - { - RGV_1012_HasCategory_COUNT = 0; - } - this.lbl_RGV_1012_HasCategory_COUNT.Text = "1012绔欑偣鎸佺画鏈夎揣鏃堕棿:" + RGV_1012_HasCategory_COUNT; - } - - /// <summary> - /// 璁$畻 RGV_1011_HasCategory_COUNT鍊� - /// </summary> - private void CalcRGV_1011_HasCategory_COUNT() - { - //鏀逛负 鍙垽鏂湁涓や釜淇″彿閮芥湁 - var isGD_HasCatogryForRgvStattion = MyExtendHelper.IsGD_HasCatogryForRgvStattionFor2(((int)EDevice.绌烘墭缂撳瓨1011).ToString()); - //鏀逛负 鍙垽鏂湁涓�涓俊鍙锋湁璐у嵆鍙� - //var isGD_HasCatogryForRgvStattion = MyExtendHelper.IsGD_HasCatogryForRgvStattion(((int)EDevice.绌烘墭缂撳瓨1011).ToString()); - if (isGD_HasCatogryForRgvStattion) - { - RGV_1011_HasCategory_COUNT += 1; - } - else - { - RGV_1011_HasCategory_COUNT = 0; - } - this.lbl_RGV_1011_HasCategory_COUNT.Text = "1011绔欑偣鎸佺画鏈夎揣鏃堕棿:" + RGV_1011_HasCategory_COUNT; - } - - /// <summary> - /// 璁$畻 RGV_1020_NoHasCategory_COUNT鍊� - /// </summary> - private void CalcRGV_1020_NoHasCategory_COUNT() - { - var isGD_HasCatogryForRgvStattion = MyExtendHelper.IsGD_HasCatogryForRgvStattion(((int)EDevice.鎷嗙洏鏈�1020).ToString()); - if (isGD_HasCatogryForRgvStattion) - { - RGV_1020_NoHasCategory_COUNT = 0; - } - else - { - RGV_1020_NoHasCategory_COUNT += 1; - } - this.lbl_RGV_1020_NoHasCategory_COUNT.Text = "1020绔欑偣鎸佺画鏃犺揣鏃堕棿:" + RGV_1020_NoHasCategory_COUNT; - } /// <summary> /// 鍒濆鍖栧疄鏃跺爢鍨涙満鐨勫瓧鍏� @@ -1148,56 +734,11 @@ }); } - private void SetInitPlaceValue() - { - this.tbSrm1TaskId.Text = this.tbSrm2TaskId.Text = this.tbSrm3TaskId.Text = this.tbSrm4TaskId.Text = "11"; - var sourcePlace = "02-02-01"; - this.tB_Srm1SourcePlace.Text = this.tB_Srm2SourcePlace.Text = this.tB_Srm3SourcePlace.Text = this.tB_Srm4SourcePlace.Text = sourcePlace; - - var toPlace = "02-03-01"; - this.tB_Srm1ToPlace.Text = this.tB_Srm2ToPlace.Text = this.tB_Srm3ToPlace.Text = this.tB_Srm4ToPlace.Text = toPlace; - } #endregion - private void btnSrm1Send_Click(object sender, EventArgs e) - { - CommonSendSrmTask(ESrmCmd.搴撳唴鎼繍, "1-", tbSrm1TaskId, tB_Srm1SourcePlace, tB_Srm1ToPlace, EDevice.涓�鍙峰爢鍨涙満); - } - private void btnSrm1Move_Click(object sender, EventArgs e) - { - CommonSendSrmTask(ESrmCmd.绉诲姩, "1-", tbSrm1TaskId, tB_Srm1SourcePlace, tB_Srm1ToPlace, EDevice.涓�鍙峰爢鍨涙満); - } - - private void btnSrm1Confirm_Click(object sender, EventArgs e) - { - CommonSrmConfirm(EDevice.涓�鍙峰爢鍨涙満, tbSrm1TaskId); - } - - private void btnSrm1EStop_Click(object sender, EventArgs e) - { - CommonSrmEStop(EDevice.涓�鍙峰爢鍨涙満); - } - - private void btnSrm1RlsAlert_Click(object sender, EventArgs e) - { - using (var opcClinet = new SrmService.SrmServiceClient()) - { - opcClinet.ReleaseAlert((int)EDevice.涓�鍙峰爢鍨涙満); - } - } - - private void btnSrm1Delete_Click(object sender, EventArgs e) - { - CommonDeleteSrmTask(EDevice.涓�鍙峰爢鍨涙満); - } - - private void btnSrm2Send_Click(object sender, EventArgs e) - { - CommonSendSrmTask(ESrmCmd.搴撳唴鎼繍, "2-", tbSrm2TaskId, tB_Srm2SourcePlace, tB_Srm2ToPlace, EDevice.浜屽彿鍫嗗灈鏈�); - } #region 鍏叡 @@ -1211,7 +752,7 @@ using (var opcClinet = new SrmService.SrmServiceClient()) { var result = opcClinet.SendEStop((int)_EDevice); - Log4NetHelper.WriteInfoLog(iWareCommon.Utils.LogType.SrmTheadService, "瀛楃涓诧細" + JsonConvert.SerializeObject(result)); + Log4NetHelper.WriteInfoLog(iWareCommon.Utils.LogType.DataProcess_BZ39_IssueInboundTask, "瀛楃涓诧細" + JsonConvert.SerializeObject(result)); if (result.result) { WZ.Useful.Commons.MessageUtil.ShowTips("鍙戦��" + _EDevice.ToString() + "鎬ュ仠鎸囦护鎴愬姛"); @@ -1229,74 +770,7 @@ } - /// <summary> - /// 鍏叡鍙戦�佸爢鍨涙満鍛戒护锛堟惉杩�/绉诲姩锛� - /// </summary> - /// <param name="pre_Srm"></param> - /// <param name="tbTaskId"></param> - /// <param name="tbSourcePlace"></param> - /// <param name="tbToPlace"></param> - /// <param name="_EDevice"></param> - private void CommonSendSrmTask(ESrmCmd srmCmd, string pre_Srm, TextBox tbTaskId, TextBox tbSourcePlace, TextBox tbToPlace, EDevice _EDevice) - { - if (SystemValue.isStartedModel) - { - WZ.Useful.Commons.MessageUtil.ShowError("鎵嬪姩鍙戜换鍔★紝闇�瑕佸皢妯″紡鍏抽棴锛�"); - return; - } - MessageBoxButtons messButton = MessageBoxButtons.OKCancel; - var deviceName = _EDevice.ToString(); - var cmdName = srmCmd.ToString(); - DialogResult dr = MessageBox.Show("纭畾瑕佺粰" + deviceName + "鍙戦��" + cmdName + "鍛戒护鍚�?", "纭", messButton); - if (dr == DialogResult.OK)//濡傛灉鐐瑰嚮鈥滅‘瀹氣�濇寜閽� - { - try - { - using (var opcClinet = new SrmService.SrmServiceClient()) - { - var sourcePlce = tbSourcePlace.Text.Trim(); - var toPlace = tbToPlace.Text.Trim(); - - if (!IsNumeric(tbTaskId.Text.Trim())) - { - WZ.Useful.Commons.MessageUtil.ShowError("浠诲姟鍙锋牸寮忛敊璇�,蹇呴』鏄暟瀛楋紒"); - return; - } - var taskId = int.Parse(tbTaskId.Text.Trim()); - if (!(taskId >= 1 && taskId <= 100)) - { - WZ.Useful.Commons.MessageUtil.ShowError("鎵嬪姩浠诲姟鍙峰繀椤绘槸鍦�1-100涔嬮棿锛�"); - return; - } - iWareCC.SrmService.SdaResEntity sdaResult = opcClinet.SendSrmTask((int)_EDevice, int.Parse(tbTaskId.Text.Trim()), pre_Srm + sourcePlce, pre_Srm + toPlace, (short)srmCmd); - if (sdaResult.result) - { - WZ.Useful.Commons.MessageUtil.ShowTips(deviceName + cmdName + "鍛戒护鍙戦�佹垚鍔燂紒"); - // tB_Srm1SourcePlace.Clear(); - // tB_Srm1ToPlace.Clear(); - Log4NetHelper.WriteInfoLog(iWareCommon.Utils.LogType.CCWCFService, "鎵嬪姩鍫嗗灈鏈轰换鍔″彂閫佹垚鍔燂紝浠诲姟鍙�:" + taskId + ",璧风偣锛�" + sourcePlce + ",鐩爣鐐�:" + toPlace + ",鍫嗗灈鏈猴細" + deviceName); - } - else - { - WZ.Useful.Commons.MessageUtil.ShowError(deviceName + cmdName + "鍛戒护鍙戦�佸け璐ワ紒杩斿洖浠g爜:" + sdaResult.resMsg); - Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.CCWCFService, "鎵嬪姩鍫嗗灈鏈轰换鍔″彂閫佸け璐ワ紒杩斿洖浠g爜:" + sdaResult.resMsg + ",浠诲姟鍙�:" + taskId + ",璧风偣锛�" + sourcePlce + ",鐩爣鐐�:" + toPlace + ",鍫嗗灈鏈猴細" + deviceName); - } - } - tbSourcePlace.Focus(); - tbSourcePlace.SelectAll(); - } - catch (Exception ex) - { - WZ.Useful.Commons.MessageUtil.ShowError(deviceName + cmdName + "鍛戒护鍙戦�佸嚭鐜板紓甯�:" + ex.Message); - Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.CCWCFService, deviceName + cmdName + "鍛戒护鍙戦�佸嚭鐜板紓甯�:" + ex.Message, ex); - } - } - else//濡傛灉鐐瑰嚮鈥滃彇娑堚�濇寜閽� - { - - } - } /// <summary> /// 鍫嗗灈鏈轰换鍔$‘璁� @@ -1359,109 +833,6 @@ #endregion - private void btnSrm2Move_Click(object sender, EventArgs e) - { - CommonSendSrmTask(ESrmCmd.绉诲姩, "2-", tbSrm2TaskId, tB_Srm2SourcePlace, tB_Srm2ToPlace, EDevice.浜屽彿鍫嗗灈鏈�); - } - - private void btnSrmTransSend_Click(object sender, EventArgs e) - { - if (SystemValue.isStartedModel) - { - WZ.Useful.Commons.MessageUtil.ShowError("鎵嬪姩鍙戜换鍔★紝闇�瑕佸皢妯″紡鍏抽棴锛�"); - return; - } - MessageBoxButtons messButton = MessageBoxButtons.OKCancel; - DialogResult dr = MessageBox.Show("纭畾瑕佸彂閫佸懡浠ゅ悧?", "纭", messButton); - if (dr == DialogResult.OK)//濡傛灉鐐瑰嚮鈥滅‘瀹氣�濇寜閽� - { - try - { - using (var opcClinet = new RgvService.RgvServiceClient()) - { - var sourcePlce = tBSrmTransSouce.Text.Trim(); - if (sourcePlce == "1010") - { - WZ.Useful.Commons.MessageUtil.ShowError("绔欑偣1010涓嶈兘鍙戜换鍔★紒"); - return; - } - var toPlace = tBSrmTransToPlace.Text.Trim(); - - if (!IsNumeric(tBSrmTransTskId.Text.Trim())) - { - WZ.Useful.Commons.MessageUtil.ShowError("浠诲姟鍙锋牸寮忛敊璇�,蹇呴』鏄暟瀛楋紒"); - return; - } - var taskId = int.Parse(tBSrmTransTskId.Text.Trim()); - if (!(taskId >= 1 && taskId <= 100)) - { - WZ.Useful.Commons.MessageUtil.ShowError("鎵嬪姩浠诲姟鍙峰繀椤绘槸鍦�1-100涔嬮棿锛�"); - return; - } - iWareCC.RgvService.SdaResEntity sdaResult = opcClinet.SendRgvTask((int)EDevice.RGV, Convert.ToInt32(tBSrmTransTskId.Text.Trim()), sourcePlce, toPlace); - if (sdaResult.result) - { - WZ.Useful.Commons.MessageUtil.ShowTips("鍛戒护鍙戦�佹垚鍔燂紒"); - // tB_Srm1SourcePlace.Clear(); - // tB_Srm1ToPlace.Clear(); - - } - else - { - WZ.Useful.Commons.MessageUtil.ShowError("鍛戒护鍙戦�佸け璐ワ紒杩斿洖娑堟伅:" + sdaResult.resMsg); - } - } - } - catch (Exception ex) - { - WZ.Useful.Commons.MessageUtil.ShowError("鍛戒护鍙戦�佸嚭鐜板紓甯�:" + ex.Message); - } - } - else//濡傛灉鐐瑰嚮鈥滃彇娑堚�濇寜閽� - { - - } - } - - private void btnSrm2Confirm_Click(object sender, EventArgs e) - { - CommonSrmConfirm(EDevice.浜屽彿鍫嗗灈鏈�, tbSrm2TaskId); - } - - private void btnSrm2EStop_Click(object sender, EventArgs e) - { - CommonSrmEStop(EDevice.浜屽彿鍫嗗灈鏈�); - } - - private void btnSrm2RlsAlert_Click(object sender, EventArgs e) - { - using (var opcClinet = new SrmService.SrmServiceClient()) - { - opcClinet.ReleaseAlert((int)EDevice.浜屽彿鍫嗗灈鏈�); - } - } - - private void btnSrm2Delete_Click(object sender, EventArgs e) - { - CommonDeleteSrmTask(EDevice.浜屽彿鍫嗗灈鏈�); - } - - /// <summary> - /// 鏍¢獙杈撳叆鐨勫簱浣岻D鏄惁绗﹀悎鏍煎紡 - /// </summary> - /// <param name="str">搴撲綅鍙�</param> - /// <returns></returns> - private bool IsNumeric(string str) - { - try - { - return (WZ.Useful.Commons.Util.IsNumeric(int.Parse(str))); - } - catch (Exception) - { - return false; - } - } private void rBNormal_CheckedChanged(object sender, EventArgs e) { @@ -1482,7 +853,6 @@ SystemValue.rBNormal_Checked = this.rBNormal.Checked ? true : false; SystemValue.rbHand_Checked = this.rbHand.Checked ? true : false; SystemValue.rBDebug_Checked = this.rBDebug.Checked ? true : false; - SystemValue.rBOnlyIn_Checked = this.rBOnlyIn.Checked ? true : false; var title = "褰撳墠妯″紡: "; @@ -1514,8 +884,8 @@ this.lbl_ModelText.Text = title + currentCheckModelText; SetAllCheckBoxChecked(true); //灏嗙壒娈婄殑鍙栨秷 - this.ckHandlerIssuingTask.Checked = false; - this.ckMainTaskDecompose.Checked = false; + this.ck_DataProcess_BZ12_IssueTask.Checked = false; + this.ck_DataProcess_BZ21_IssueTask.Checked = false; this.gBoxThread.Enabled = true; } @@ -1551,43 +921,41 @@ private void CommonCheckedChanged(object sender, EventArgs e) { //鍫嗗灈鏈�1浠诲姟涓嬪彂 - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_1, ckBSrm1Release); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_1_Finish, ckBSrm1FinishedHandle); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_1, ckB_DataProcess_BZ39_IssueInboundTask); + //鍫嗗灈鏈�2浠诲姟涓嬪彂 - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_2, ckBSrm2Release); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_2_Finish, ckBSrm2FinishedHandle); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_2, ckBDataProcess_RobotBuffer_ForceOutbound); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_2_Finish, ckBDataProcess_BZ12_FinishTask); //鍫嗗灈鏈�3浠诲姟涓嬪彂 - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_3, ckBSrm3Release); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_3_Finish, ckBSrm3FinishedHandle); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_3, ckBDataProcess_BZ12); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_3_Finish, ckBDataProcess_BZ21_FinishTask); - //鍫嗗灈鏈�4浠诲姟涓嬪彂 - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_4, ckBSrm4Release); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_SrmTaskThreadService_4_Finish, ckBSrm4FinishedHandle); + //RGV浠诲姟涓嬪彂 - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_RgvThreadService, ckBRgvRelease); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_RgvThreadService_Finish, ckBRgvFinishedHandle); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_RgvThreadService_Finish_BuChang, ckBRgvFinishedHandle_BuChang); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_HandlerIssuingTask, ckHandlerIssuingTask); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_RgvThreadService_Finish, ckB_PushPaperCutToMes); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_RgvThreadService_Finish_BuChang, ck_PushPackageCodeToMes); + + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_HandlerIssuingTask, ck_DataProcess_BZ12_IssueTask); DoCommonCheckedChanged(ref SystemValue.isAllowRuning_DataProcess_RobotBuffer_FinishTask, ck_DataProcess_RobotBuffer_FinishTask); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_MainTaskDecompose, ckMainTaskDecompose); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_MainTaskDecompose, ck_DataProcess_BZ21_IssueTask); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_MainTaskDecompose_ZPRK, ckMainTaskDecompose_ZPRK); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_DataProcess_RobotBuffer_ModeChange, ck_DataProcess_RobotBuffer_ModeChange); + + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_DataProcess_ValidateQiTao, ck_DataProcess_ValidateQiTao); DoCommonCheckedChanged(ref SystemValue.isAllowRuning_DataProcess_RobotBuffer_FinishTaskForOutbound, checkBox_DataProcess_RobotBuffer_FinishTaskForOutbound); DoCommonCheckedChanged(ref SystemValue.isAllowRuning_DeleteData, ckDeleteData); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_Agv, ckAgv); - - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_EmptySalverTransfer, ckEmptySalverTransfer); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_DataProcess_RobotBuffer_AutoQiTaoOutbound, ckDataProcess_RobotBuffer_AutoQiTaoOutbound); DoCommonCheckedChanged(ref SystemValue.isAllowRuning_DataProcess_BZ39, ck_DataProcess_BZ39); @@ -1595,9 +963,9 @@ DoCommonCheckedChanged(ref SystemValue.isAllowRuning_DataProcess_269, ck_DataProcess_269); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_Place1014To1020Task, ckPlace1014ClearStoreTask); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_DataProcess_RobotBuffer_IssueOutboundTask, ck_DataProcess_RobotBuffer_IssueOutboundTask); - DoCommonCheckedChanged(ref SystemValue.isAllowRuning_OutTaskRetryToMes, checkBox_OutTaskRetryToMes); + DoCommonCheckedChanged(ref SystemValue.isAllowRuning_OutTaskRetryToMes, checkBox_DataProcess_BZ21); } private void DoCommonCheckedChanged(ref bool isAllowValue, CheckBox cb) @@ -1607,12 +975,8 @@ private void FormCC_SizeChanged(object sender, EventArgs e) { - asc_panel_DeviceTaskList.controlAutoSize(this.panel_DeviceTaskList); - asc_panel_DeviceTaskList_dgvPartTask_Finished.controlAutoSize(this.panel_DeviceTaskList_dgvPartTask_Finished); - asc_panel_dataGridView__OutTaskList.controlAutoSize(this.panel_dataGridView__OutTaskList); - asc_panel_WaitPlanDetail.controlAutoSize(this.panel_WaitPlanDetail); - asc_panel_DeviceTaskList_dataGridView_RgvStore.controlAutoSize(this.panel_DeviceTaskList_dataGridView_RgvStore); - asc_panel_dg_OutTaskRetryToMes.controlAutoSize(this.panel_dg_OutTaskRetryToMes); + + } /// <summary> @@ -1715,7 +1079,7 @@ DialogResult dr = MessageBox.Show("纭畾瑕佸惎鍔ㄣ��" + currentCheckModelText + "銆戞ā寮忓悧?", "鍚姩妯″紡", messButton); if (dr == DialogResult.OK)//濡傛灉鐐瑰嚮鈥滅‘瀹氣�濇寜閽� { - using (DbModel edm = new DbModel()) + using (WmsDBModel edm = new WmsDBModel()) { var ccSystem = BasicDataSetHandler.GetCCSystem(edm); if (ccSystem == null) @@ -1774,7 +1138,7 @@ /// <returns></returns> private bool CommonStopService() { - using (DbModel edm = new DbModel()) + using (WmsDBModel edm = new WmsDBModel()) { var ccSystem = BasicDataSetHandler.GetCCSystem(edm); if (ccSystem == null) @@ -1790,7 +1154,7 @@ ccSystem.Machine = string.Empty; ccSystem.LastMachine = Dns.GetHostName(); ccSystem.LastUnLineTime = DateTime.Now; - ccSystem.ModifyTime = DateTime.Now; + ccSystem.UpdateTime = DateTime.Now; int i = edm.SaveChanges(); if (i <= 0) @@ -1872,6 +1236,9 @@ this.btn_Start.BackColor = default_btn_Start_Color;//杩樺師棰滆壊 } } + + this.lbl_RobotMode.Text = "缂撳瓨宀涙満鍣ㄤ汉妯″紡:" + (IsAllowRunOutMode ? "鍑哄簱妯″紡" : "鍏ュ簱妯″紡"); + this.lbl_currHandlerPackageCodeForIssueOutboundTask.Text = "褰撳墠涓嬪彂鍑哄簱浠诲姟鐨勫寘鍙�:" + currHandlerPackageCodeForIssueOutboundTask; } } @@ -1880,1696 +1247,208 @@ } - /// <summary> - /// 璧峰浣嶅拰鐩爣浣嶄簰鎹� - /// </summary> - /// <param name="sender"></param> - /// <param name="e"></param> - private void btn_Change1_Click(object sender, EventArgs e) - { - var old_source = this.tB_Srm1SourcePlace.Text; - var old_to = this.tB_Srm1ToPlace.Text; - this.tB_Srm1SourcePlace.Text = old_to; - this.tB_Srm1ToPlace.Text = old_source; + + + + + + + + + + + + + + + private void button24_Click(object sender, EventArgs e) + { + ////寮哄埗璇ュ寘鍙峰嚭搴� + //var packageCode = this.tb_PackageCode.Text.Trim(); + + //var alertMsg = ""; + //CC_DataProcess_RobotBuffer_ForceOutbound.Handler(packageCode, ref alertMsg); + //if (!string.IsNullOrEmpty(alertMsg)) + //{ + // MessageBox.Show("閿欒:" + alertMsg); + //} + //else + //{ + // MessageBox.Show("宸插鐞�"); + //} } - private void btn_Change2_Click(object sender, EventArgs e) + private void button25_Click(object sender, EventArgs e) { - var old_source = this.tB_Srm2SourcePlace.Text; - var old_to = this.tB_Srm2ToPlace.Text; - this.tB_Srm2SourcePlace.Text = old_to; - this.tB_Srm2ToPlace.Text = old_source; - } + var packageCode = this.tb_PackageCode.Text.Trim(); - - private void tPTransAsrs_Click(object sender, EventArgs e) - { - - } - - private void panel16_Paint(object sender, PaintEventArgs e) - { - - } - - - private void btnSrm4Send_Click(object sender, EventArgs e) - { - CommonSendSrmTask(ESrmCmd.搴撳唴鎼繍, "4-", tbSrm4TaskId, tB_Srm4SourcePlace, tB_Srm4ToPlace, EDevice.鍥涘彿鍫嗗灈鏈�); - } - - - private void btnSrm4RlsAlert_Click(object sender, EventArgs e) - { - using (var opcClinet = new SrmService.SrmServiceClient()) + var alertMsg = ""; + using (WmsDBModel db = new WmsDBModel()) { - opcClinet.ReleaseAlert((int)EDevice.鍥涘彿鍫嗗灈鏈�); + var upiList = db.mes_batchOrderUPI_new.Where(x => x.PackageCode == packageCode).ToList(); + foreach (var item in upiList) + { + item.AreaCode = (int)AreaCodeEnum.鏃犲尯鍩�; + item.UpiStatus = (int)UpiStatusEnum.鍒濆; + } + + var pList = db.mes_package_gather.Where(x => x.PackageCode == packageCode).ToList(); + foreach (var item in pList) + { + item.AreaCode = (int)AreaCodeEnum.鏃犲尯鍩�; + item.UpiStatus = (int)UpiStatusEnum.鍒濆; + } + + //娓呯┖闃熷垪鏁版嵁 + var list = db.mes_upi_linequeue.ToList(); + db.mes_upi_linequeue.RemoveRange(list); + + db.SaveChanges(); } - } - - private void btn_Srm4EStop_Click(object sender, EventArgs e) - { - CommonSrmEStop(EDevice.鍥涘彿鍫嗗灈鏈�); - } - - private void btn_Srm3EStop_Click(object sender, EventArgs e) - { - CommonSrmEStop(EDevice.涓夊彿鍫嗗灈鏈�); - } - - private void btnSrm3RlsAlert_Click(object sender, EventArgs e) - { - using (var opcClinet = new SrmService.SrmServiceClient()) + if (!string.IsNullOrEmpty(alertMsg)) { - opcClinet.ReleaseAlert((int)EDevice.涓夊彿鍫嗗灈鏈�); - } - } - - private void btnSrm4Confirm_Click(object sender, EventArgs e) - { - CommonSrmConfirm(EDevice.鍥涘彿鍫嗗灈鏈�, tbSrm4TaskId); - } - - private void btn_Change4_Click(object sender, EventArgs e) - { - var old_source = this.tB_Srm4SourcePlace.Text; - var old_to = this.tB_Srm4ToPlace.Text; - this.tB_Srm4SourcePlace.Text = old_to; - this.tB_Srm4ToPlace.Text = old_source; - } - - private void btn_Change3_Click(object sender, EventArgs e) - { - var old_source = this.tB_Srm3SourcePlace.Text; - var old_to = this.tB_Srm3ToPlace.Text; - this.tB_Srm3SourcePlace.Text = old_to; - this.tB_Srm3ToPlace.Text = old_source; - } - - private void btnSrm3Send_Click(object sender, EventArgs e) - { - CommonSendSrmTask(ESrmCmd.搴撳唴鎼繍, "3-", tbSrm3TaskId, tB_Srm3SourcePlace, tB_Srm3ToPlace, EDevice.涓夊彿鍫嗗灈鏈�); - } - - private void btnSrm4Move_Click(object sender, EventArgs e) - { - CommonSendSrmTask(ESrmCmd.绉诲姩, "4-", tbSrm4TaskId, tB_Srm4SourcePlace, tB_Srm4ToPlace, EDevice.鍥涘彿鍫嗗灈鏈�); - } - - private void btnSrm3Confirm_Click(object sender, EventArgs e) - { - CommonSrmConfirm(EDevice.涓夊彿鍫嗗灈鏈�, tbSrm3TaskId); - } - - private void btnSrm4Delete_Click(object sender, EventArgs e) - { - CommonDeleteSrmTask(EDevice.鍥涘彿鍫嗗灈鏈�); - } - - private void btnSrm3Delete_Click_1(object sender, EventArgs e) - { - CommonDeleteSrmTask(EDevice.涓夊彿鍫嗗灈鏈�); - - } - - private void btnSrm3Move_Click(object sender, EventArgs e) - { - CommonSendSrmTask(ESrmCmd.绉诲姩, "3-", tbSrm3TaskId, tB_Srm3SourcePlace, tB_Srm3ToPlace, EDevice.涓夊彿鍫嗗灈鏈�); - } - - private void panel15_Paint(object sender, PaintEventArgs e) - { - - } - - private void CommmonShowAgvStation(object sender) - { - var btn = sender as Button; - var stationName = ""; - int stationCode = 0; - if (int.TryParse(btn.Text, out stationCode)) - { - stationName = btn.Text; + MessageBox.Show("閿欒:" + alertMsg); } else { - stationName = BusinessHelper.ConvertStationCodeForRGV(btn.Text).ToString(); + MessageBox.Show("宸插鐞�"); } - current_rgv_stationName = stationName; - - _CommmonShowAgvStation(); } - private void _CommmonShowAgvStation() + private void button1_Click(object sender, EventArgs e) { - if (string.IsNullOrEmpty(current_rgv_stationName)) + + + var alertMsg = ""; + using (WmsDBModel db = new WmsDBModel()) { - this.lbl_StationCode.Text = "褰撳墠浣嶇疆鍙�:" + ""; - this.lbl_PH_1.Text = "鍏夌數1鐘舵��:" + ""; - this.lbl_PH_2.Text = "鍏夌數2鐘舵��:" + ""; - this.lbl_ACK.Text = "鏀跺埌浠诲姟涓嬪彂鍙嶉:" + ""; - this.lbl_Model.Text = "妯″紡:" + ""; - this.lbl_State.Text = "杩愯鐘舵��:" + ""; - this.lbl_AlarmCode.Text = "鎶ヨ浠g爜:" + ""; - this.lbl_Destination.Text = "褰撳墠鐩爣鍦板潃:" + ""; - this.lbl_Shape.Text = "澶栧舰妫�娴�:" + ""; - this.lbl_TaskID.Text = "褰撳墠浠诲姟鍙�:" + ""; - this.lbl_Rgv_STP.Text = "STP:" + ""; - this.lbl_Rgv_WriteTaskNo.Text = "鍐欏叆浠诲姟鍙�:" + ""; - this.lbl_Rgv_WriteToPlace.Text = "鍐欏叆鐩爣鍦板潃:" + ""; + //鏌ヨ绔嬩綋搴撲腑鐨剈pi鍒楄〃 + var quanList = db.wms_stock_quan.ToList().Select(x => x.Upi).ToList(); + var upiList = db.mes_batchOrderUPI_new.Where(x => !quanList.Contains(x.UPI)).ToList(); + foreach (var item in upiList) + { + item.AreaCode = (int)AreaCodeEnum.鏃犲尯鍩�; + item.UpiStatus = (int)UpiStatusEnum.鍒濆; + } + + var packageCodeList = upiList.Select(x => x.PackageCode).ToList(); + var pList = db.mes_package_gather.Where(x => packageCodeList.Contains(x.PackageCode)).ToList(); + foreach (var item in pList) + { + item.AreaCode = (int)AreaCodeEnum.鏃犲尯鍩�; + item.UpiStatus = (int)UpiStatusEnum.鍒濆; + } + //娓呯┖闃熷垪鏁版嵁 + var list = db.mes_upi_linequeue.ToList(); + db.mes_upi_linequeue.RemoveRange(list); + + db.SaveChanges(); + } + if (!string.IsNullOrEmpty(alertMsg)) + { + MessageBox.Show("閿欒:" + alertMsg); } else { - var r_station = rgvView.R_RgvForReadCommList.Where(x => x.StationCode == current_rgv_stationName).FirstOrDefault(); - var w_station = rgvView.W_RgvForWriteCommList.Where(x => x.StationCode == current_rgv_stationName).FirstOrDefault(); - - this.lbl_StationCode.Text = "褰撳墠浣嶇疆鍙�:" + r_station.StationCode; - this.lbl_PH_1.Text = "鍏夌數1鐘舵��:" + r_station.R_PH_1; - this.lbl_PH_2.Text = "鍏夌數2鐘舵��:" + r_station.R_PH_2; - this.lbl_ACK.Text = "鏀跺埌浠诲姟涓嬪彂鍙嶉:" + r_station.R_ACK; - this.lbl_Model.Text = "妯″紡:" + EnumberHelper.GetEnumName<ERgvMode>(r_station.R_Model); - this.lbl_State.Text = "杩愯鐘舵��:" + EnumberHelper.GetEnumName<ERgvState>(r_station.R_State); - this.lbl_AlarmCode.Text = "鎶ヨ:" + (r_station.R_AlarmCode == 1 ? "鏈夋姤璀�" : "鏃�"); - this.lbl_Destination.Text = "褰撳墠鐩爣鍦板潃:" + r_station.R_Destination; - this.lbl_Shape.Text = "澶栧舰妫�娴�:" + EnumberHelper.GetEnumName<ERgvBodyTest>(r_station.R_Shape); - this.lbl_TaskID.Text = "褰撳墠浠诲姟鍙�:" + r_station.R_TaskID; - this.lbl_Rgv_STP.Text = "STP:" + w_station.W_STP; - this.lbl_Rgv_WriteTaskNo.Text = "鍐欏叆浠诲姟鍙�:" + w_station.W_TaskID; - this.lbl_Rgv_WriteToPlace.Text = "鍐欏叆鐩爣鍦板潃:" + w_station.W_Destination; + MessageBox.Show("宸插鐞�"); } } - private void btn_1001_Click(object sender, EventArgs e) + private void btn1_Click(object sender, EventArgs e) { - CommmonShowAgvStation(sender); - } + var taskNo = this.tb_taskNo.Text.Trim(); - private void btn_1002_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1003_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1004_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1005_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1006_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1007_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1008_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1009_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1010_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1011_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1012_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1013_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1030_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1014_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1020_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_1015_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_RGV_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void btn_ResetSTP_Click(object sender, EventArgs e) - { - CommmonResetSTP(sender); - } - - private void CommmonResetSTP(object sender) - { - var btn = sender as Button; - var stationName = current_rgv_stationName; - if (string.IsNullOrEmpty(stationName)) + var alertMsg = ""; + using (WmsDBModel wmsDB = new WmsDBModel()) { - MessageBox.Show("璇烽�夋嫨绔欑偣鍙�"); - return; - } - - using (RgvService.RgvServiceClient client = new RgvServiceClient()) - { - var result = client.WriteStp((int)EDevice.RGV, false, stationName); - if (result.result == false) + var task = wmsDB.wms_rbline_task.Where(x => x.TaskNo == taskNo && x.RbTaskType == (int)RbTaskTypeEnum.鍏ュ簱浠诲姟 && x.TaskStatus == (int)TaskStatusEnum.宸蹭笅鍙�).FirstOrDefault(); + if (task == null) { - MessageBox.Show("澶辫触:" + result.resMsg); - } - } - } - - private void btnFind_Click_1(object sender, EventArgs e) - { - //鏌ヨ璁惧浠诲姟鍒楄〃 - dgvPartTask.AutoGenerateColumns = false; - for (int i = 0; i < dgvPartTask.Columns.Count; i++) - { - if (i == (dgvPartTask.Columns.Count - 1)) - {//鏈�鍚庝竴鍒楀~鍏� - dgvPartTask.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; - } - else - {//鍏朵粬鍒楄嚜鍔ㄩ�傚簲瀹藉害 - dgvPartTask.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; - } - } - - BindData(); - - //this.dgvPartTask.Columns["CreateTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["IssueTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["FinishTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["AllowSimulateExecute_Time"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - FormHelper.DataGridViewSelfAdaptionWidth(this.dgvPartTask); - } - - public void BindData() - { - List<Task_Part> partList = new List<Task_Part>(); - dgvPartTask.ClearSelection(); //鍙秷闄ゆ墍鏈夐�夋嫨鐨勮 - dgvPartTask.DataSource = null; - - dgvPartTask.CurrentCell = null; //鍙秷闄ら�夋嫨琛岀殑琛屽ご绠ご - using (DbModel db = new DbModel()) - { - //鍙� 鏈�鍚庝竴涓湭缁撴潫鐨勪换鍔★紝鐒跺悗鍙栧墠5鏉″凡缁忕粨鏉熺殑浠诲姟 - var queryState1 = (int)DeviceTaskStatusEnum.宸插彇娑�; - var queryState2 = (int)DeviceTaskStatusEnum.宸插畬鎴�; - var firstNoFinishedTaskList = db.Task_Part.Where(x => x.TaskState != queryState1 && x.TaskState != queryState2).OrderBy(x => x.CreateTime).ToList(); - if (firstNoFinishedTaskList == null) - { - partList = new List<Task_Part>(); - } - else - { - List<int> mainIdList = new List<int>(); - foreach (var item in firstNoFinishedTaskList) - { - if (!mainIdList.Contains(item.MainTaskId)) - { - mainIdList.Add(item.MainTaskId); - } - } - var partList2 = db.Task_Part.Where(x => mainIdList.Contains(x.MainTaskId)).ToList(); - - //partList.AddRange(partList1); - partList.AddRange(partList2); - } - if (partList != null && partList.Count > 0) - { - partList = partList.OrderBy(x => x.MainTaskId).ThenByDescending(x => x.CreateTime).ToList();//閲嶆柊 鍗囧簭鎺掑簭 - dgvPartTask.DataSource = null; - dgvPartTask.DataSource = partList; - } - else - { - //if (dgvPartTask.Rows.Count > 0) - //{ - // int i = dgvPartTask.Rows[0].Cells.Count; - // var cells = dgvPartTask.Rows[0].Cells; - // for (int j = 0; j < i; j++) - // { - // cells[j].Value = null; - // } - //} - } - } - } - - private void btnFinish_Click_1(object sender, EventArgs e) - { - //寮哄埗瀹屾垚 - try - { - var _AllowSimulateExecute_Rmark = this.tb_AllowSimulateExecute_Rmark.Text; - if (string.IsNullOrEmpty(_AllowSimulateExecute_Rmark)) - { - MessageBox.Show("璇疯緭鍏ュ己鍒跺畬鎴愬師鍥犺鏄庯紒"); - return; - } - using (DbModel context = new DbModel()) - { - var row = dgvPartTask.SelectedRows; - - if (row.Count > 0) - { - var cell = row[0].Cells; - // var id = cell[0].Value.ToString(); - var id = cell["Id"].Value.ToString(); - var task = context.Task_Part.FirstOrDefault(x => x.Id == id); - if (task != null) - { - #region 鏁版嵁澶勭悊 - MessageBoxButtons messButton = MessageBoxButtons.OKCancel; - DialogResult dr = MessageBox.Show("纭畾瑕佸皢璇ヤ换鍔�" + task.PlcTaskId + "鏍囪涓哄己鍒跺畬鎴愬悧?", "纭", messButton); - if (dr == DialogResult.OK)//濡傛灉鐐瑰嚮鈥滅‘瀹氣�濇寜閽� - { - - task.IsAllowSimulateExecute = true; - task.AllowSimulateExecute_User = SysGloble.WCSSystem; - task.AllowSimulateExecute_Time = DateTime.Now; - task.AllowSimulateExecute_Rmark = _AllowSimulateExecute_Rmark; - - task.ModifyTime = DateTime.Now; - task.OperationRemark = "鐢ㄦ埛寮哄埗瀹屾垚锛�" + _AllowSimulateExecute_Rmark; - task.ModifyBy = SysGloble.WCSSystem; - - //淇濆瓨浜哄伐澶勭悊鏃ュ織 [EditBy shaocx,2022-05-01] - Base_PersonHandlerRecord record = new Base_PersonHandlerRecord() - { - MainTaskNo = task.MainTaskNo, - HandlerType = "鏍囪浠诲姟寮哄埗瀹屾垚", - PartTaskId = task.Id, - PlcTaskId = task.PlcTaskId, - RealSourcePlace = task.RealSourcePlace, - RealToPlace = task.RealToPlace, - SalverCode = task.SalverCode, - SerialNumber = task.SerialNumber, - OrderNo = task.OrderNo, - TaskTypeName = task.TaskTypeName, - Qty = task.Qty, - - ManualHandlerRemark = _AllowSimulateExecute_Rmark - - }; - PersonHandlerRecordHandler.SavePersonHandlerRecord(context, record); - - context.SaveChanges(); - - - MessageBox.Show("鏍囪浠诲姟寮哄埗瀹屾垚鎴愬姛锛佹敞鎰忥細鏍囪寮哄埗瀹屾垚鍙槸鏇存柊鏍囪锛岃鎯冲鐞嗗畬搴撳瓨锛屾偍杩橀渶瑕佽繍琛岃嚜鍔ㄦā寮忥紝璁╁叾鑷姩澶勭悊搴撳瓨锛�"); - - BindData(); - } - else//濡傛灉鐐瑰嚮鈥滃彇娑堚�濇寜閽� - { - BindData(); - } - #endregion - } - else - { - MessageBox.Show("鏈壘鍒拌浠诲姟锛�"); - return; - } - } - else - { - MessageBox.Show("璇峰厛閫変腑瑕佹爣璁颁换鍔″己鍒跺畬鎴愮殑琛岋紒"); - } - } - } - catch (Exception ex) - { - MessageBox.Show("鏍囪浠诲姟寮哄埗瀹屾垚寮傚父锛�" + ex.Message); - } - } - - private void btnDelete_Click_1(object sender, EventArgs e) - { - //浠诲姟鍙栨秷 - try - { - if (SystemValue.isStartedModel) - { - WZ.Useful.Commons.MessageUtil.ShowError("鎵嬪姩鍙栨秷浠诲姟锛岄渶瑕佸皢妯″紡鍏抽棴锛�"); + MessageBox.Show("娌℃壘鍒颁换鍔�"); return; } - var _AllowSimulateExecute_Rmark = this.tb_AllowSimulateExecute_Rmark.Text; - if (string.IsNullOrEmpty(_AllowSimulateExecute_Rmark)) + var upiCode = task.Upi; + var upiObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == upiCode).FirstOrDefault(); + if (upiObj == null) { - MessageBox.Show("璇疯緭鍏ュ彇娑堝師鍥犺鏄庯紒"); + MessageBox.Show($"鏍规嵁UPI:{upiCode}娌℃湁鎵惧埌瀵硅薄 "); return; } - var myNotext = "浜哄伐鍙栨秷浠诲姟锛屽師鍥�:" + _AllowSimulateExecute_Rmark; - MessageBoxButtons messButton = MessageBoxButtons.OKCancel; - DialogResult dr = MessageBox.Show("銆愬彇娑堜换鍔″彧鏄皢鐘舵�佸彉鏇翠负鍙栨秷锛屽苟涓嶅鐞嗗簱瀛橈紝璇疯皑鎱庢搷浣溿�傜‘璁ゅ彇娑堝悗锛岃繕闇�浜哄伐鏍¢獙涓嬭浠诲姟搴撳瓨鏄惁姝g‘锛併��,纭畾瑕佸彇娑堜换鍔″悧?", "鎻愮ず", messButton); - if (dr == DialogResult.OK)//濡傛灉鐐瑰嚮鈥滅‘瀹氣�濇寜閽� + //澧炲姞搴撳瓨 + wms_stock_quan qun = new wms_stock_quan() { - using (DbModel context = new DbModel()) - { - var row = dgvPartTask.SelectedRows; + Id = Yitter.IdGenerator.YitIdHelper.NextId(), + Shelf = upiObj.Shelf, + Upi = upiCode, + PlanNo = task.PlanNo, + DetailName = upiObj.DetailName, + OrderId = task.OrderId, + CreateTime = DateTime.Now, + CreateUserName = SysGloble.WCSSystem, + InTime = DateTime.Now, + OperReason = "鍏ュ簱", + PackageCode = task.PackageCode, + Length = task.Length, + Width = task.Width, + Thk = task.Thk, + PlaceCode = task.PlaceCode, + StockStatus = (int)StockStatusEnum.鍦ㄥ簱, + StockStatusName = StockStatusEnum.鍦ㄥ簱.ToString(), - if (row.Count > 0) - { - var cell = row[0].Cells; - //var id = cell[0].Value.ToString(); - var id = cell["Id"].Value.ToString(); - var partTask = context.Task_Part.FirstOrDefault(x => x.Id == id); - if (partTask != null) - { - //鎵惧埌涓讳换鍔� - var mainTask = context.Task_Main.Where(x => x.Id == partTask.MainTaskId).FirstOrDefault(); - if (mainTask == null) - { - MessageBox.Show("鏈壘鍒拌浠诲姟鐨勪富浠诲姟锛�"); - return; - } - //鎵惧彟涓�涓猵artTask - var partTask2 = context.Task_Part.FirstOrDefault(x => x.Id != partTask.Id && x.MainTaskId == mainTask.Id); + }; + wmsDB.wms_stock_quan.Add(qun); - var mainTaskType = (MainTaskTypeEnum)Enum.Parse(typeof(MainTaskTypeEnum), mainTask.TaskType.ToString()); - var partTaskType = (DeviceTaskTypeEnum)Enum.Parse(typeof(DeviceTaskTypeEnum), partTask.TaskType.ToString()); - switch (partTaskType) - { - case DeviceTaskTypeEnum.缁勭洏鍏ュ簱: - //鍒ゆ柇搴撳瓨鐜板湪鍦ㄥ摢閲岋紝鐒跺悗鍒犳帀浠� - var store = context.V_AllStore.Where(x => x.SerialNumber == mainTask.SerialNumber).FirstOrDefault(); - if (store != null) - { - var place = context.Base_Station.Where(x => x.Id == store.StationId).First(); - StoreHandler.ClearStockByPlaceId(context, place, "浜哄伐鍙栨秷浠诲姟"); - } - //瑙g粦璧风偣鍜岀粓鐐� - - var place1 = context.Base_Station.Where(x => x.Id == partTask2.SourcePlace).First(); - var place2 = context.Base_Station.Where(x => x.Id == partTask2.ToPlace).First(); - StationHandler.SetPlaceLockStatus(false, SysGloble.WCSSystem, ref place1, myNotext); - StationHandler.SetPlaceTaskDoingStatus(false, SysGloble.WCSSystem, ref place1, myNotext); - StationHandler.SetPlaceLockStatus(false, SysGloble.WCSSystem, ref place2, myNotext); - StationHandler.SetPlaceTaskDoingStatus(false, SysGloble.WCSSystem, ref place2, myNotext); - - var place3 = context.Base_Station.Where(x => x.Id == partTask.SourcePlace).First(); - var place4 = context.Base_Station.Where(x => x.Id == partTask.ToPlace).First(); - StationHandler.SetPlaceLockStatus(false, SysGloble.WCSSystem, ref place3, myNotext); - StationHandler.SetPlaceTaskDoingStatus(false, SysGloble.WCSSystem, ref place3, myNotext); - StationHandler.SetPlaceLockStatus(false, SysGloble.WCSSystem, ref place4, myNotext); - StationHandler.SetPlaceTaskDoingStatus(false, SysGloble.WCSSystem, ref place4, myNotext); - - //鍒ゆ柇鍫嗗灈鏈轰笂鐜板湪鏄惁姝e湪鎵ц璇ヤ换鍔★紝濡傛灉鎵ц浜嗭紝灏卞垹鎺変粬 - var srmPlcTaskId = ""; - int deviceId = 0; - if (partTask.DeviceType == (int)(EDeviceType.鍫嗗灈鏈�)) - { - srmPlcTaskId = partTask.PlcTaskId; - deviceId = (int)partTask.DeviceId; - } - else if (partTask2.DeviceType == (int)(EDeviceType.鍫嗗灈鏈�)) - { - srmPlcTaskId = partTask2.PlcTaskId; - deviceId = (int)partTask2.DeviceId; - } - if (srmViewDict[deviceId].R_TaskNo.ToString() == srmPlcTaskId) - {//鍒犻櫎鍫嗗灈鏈轰换鍔� - using (SrmService.SrmServiceClient opcClinet = new SrmServiceClient()) - { - var result = opcClinet.SendSrmDelete((int)deviceId); - if (result.result == false) - { - MessageBox.Show("鍒犻櫎鍫嗗灈鏈轰换鍔″け璐�:" + result.resMsg); - return; - } - } - } - - break; - default: - MessageBox.Show("涓嶆敮鎸佺殑涓氬姟绫诲瀷"); - return; - } - - var changeState = DeviceTaskStatusEnum.宸插彇娑�; - partTask.TaskState = (int)changeState; - partTask.TaskStateName = changeState.ToString(); - - partTask.ModifyTime = DateTime.Now; - partTask.OperationRemark = "鐢ㄦ埛鍙栨秷浠诲姟锛�" + _AllowSimulateExecute_Rmark; - partTask.ModifyBy = SysGloble.WCSSystem; - if (partTask2 != null) - { - partTask2.TaskState = (int)changeState; - partTask2.TaskStateName = changeState.ToString(); - - partTask2.ModifyTime = DateTime.Now; - partTask2.OperationRemark = "鐢ㄦ埛鍙栨秷浠诲姟锛�" + _AllowSimulateExecute_Rmark; - partTask2.ModifyBy = SysGloble.WCSSystem; - } - - //涓讳换鍔′篃瑕佷慨鏀逛负鍙栨秷 - mainTask.TaskState = (int)MainTaskStatusEnum.宸插彇娑�; - mainTask.TaskStateName = MainTaskStatusEnum.宸插彇娑�.ToString(); - mainTask.FinishTime = DateTime.Now; - mainTask.OperationRemark = "鐢ㄦ埛鍙栨秷浠诲姟锛�" + _AllowSimulateExecute_Rmark; + task.TaskStatus = (int)TaskStatusEnum.宸插畬鎴�; + task.FinishedTime = DateTime.Now; - //鍚屾椂灏嗙洰鏍囩偣鍜岃捣鐐硅В闄ら攣瀹� - //鎴戞兂浜嗘兂锛岃繕鏄埆瑙i攣浜嗭紝涓囦竴鏈夊埆鐨勯棶棰樺憿锛� + var place = StationHandler.GetPlaceByPlaceCode(task.PlaceCode, wmsDB); + place.PlaceStatus = (int)PlaceStatusEnum.姝e父; - //淇濆瓨浜哄伐澶勭悊鏃ュ織 [EditBy shaocx,2022-05-01] - Base_PersonHandlerRecord record = new Base_PersonHandlerRecord() - { - MainTaskNo = partTask.MainTaskNo, - HandlerType = "鍙栨秷浠诲姟", - PartTaskId = partTask.Id, - PlcTaskId = partTask.PlcTaskId, - RealSourcePlace = partTask.RealSourcePlace, - RealToPlace = partTask.RealToPlace, - SalverCode = partTask.SalverCode, - SerialNumber = partTask.SerialNumber, - OrderNo = partTask.OrderNo, - TaskTypeName = partTask.TaskTypeName, - Qty = partTask.Qty, - ManualHandlerRemark = _AllowSimulateExecute_Rmark + WmsRecordUpiProcessHandler.SaveWmsRecordUpiProcess(wmsDB, upiObj, task.PlaceCode, "缂撳瓨鍏ュ簱瀹屾垚:" + task.PlaceCode); - }; - PersonHandlerRecordHandler.SavePersonHandlerRecord(context, record); - - context.SaveChanges(); - } - else - { - MessageBox.Show("鏈壘鍒拌浠诲姟锛�"); - return; - } - - MessageBox.Show("鍙栨秷浠诲姟鎴愬姛锛�"); - - BindData(); - } - else - { - MessageBox.Show("璇峰厛閫変腑瑕佹墽琛岀殑琛岋紒"); - } - } - } - else//濡傛灉鐐瑰嚮鈥滃彇娑堚�濇寜閽� - { - - } + wmsDB.SaveChanges(); } - catch (Exception ex) + if (!string.IsNullOrEmpty(alertMsg)) { - MessageBox.Show("鍙栨秷浠诲姟寮傚父锛�" + ex.Message); - Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.CCWCFService, "鍙栨秷浠诲姟寮傚父锛�" + ex.Message, ex); + MessageBox.Show("閿欒:" + alertMsg); } - } - - private void btnReset_Click_1(object sender, EventArgs e) - { - //浠诲姟閲嶅彂 - try + else { - var _AllowSimulateExecute_Rmark = this.tb_AllowSimulateExecute_Rmark.Text; - if (string.IsNullOrEmpty(_AllowSimulateExecute_Rmark)) - { - MessageBox.Show("璇疯緭鍏ヤ换鍔¢噸鍙戝師鍥犺鏄庯紒"); - return; - } - if (SystemValue.isStartedModel) - { - WZ.Useful.Commons.MessageUtil.ShowError("鎵嬪姩鍙戜换鍔★紝闇�瑕佸皢妯″紡鍏抽棴锛�"); - return; - } - - MessageBoxButtons messButton = MessageBoxButtons.OKCancel; - - using (DbModel db = new DbModel()) - { - var row = dgvPartTask.SelectedRows; - - if (row.Count > 0) - { - var cell = row[0].Cells; - //var id = cell[0].Value.ToString(); - var id = cell["Id"].Value.ToString(); - var task = db.Task_Part.FirstOrDefault(x => x.Id == id); - if (task != null) - { - if (task.TaskState != (int)DeviceTaskStatusEnum.宸蹭笅鍙�) - {//澧炲姞闄愬埗 銆怑ditby shaocx,2022-11-04銆� - WZ.Useful.Commons.MessageUtil.ShowError("浠诲姟鐘舵�佸繀椤绘槸'宸蹭笅鍙�'鎵嶈兘閲嶈瘯鍙戜换鍔★紒"); - return; - } - //鍒ゆ柇璁惧绫诲瀷 - DialogResult dr = MessageBox.Show(string.Format("纭畾瑕佹墜鍔ㄩ噸鏂板彂閫亄0}浠诲姟锛岃捣鐐癸細{1}锛岀洰鏍囩偣锛歿2}鍚�?", task.DeviceName, task.RealSourcePlace, task.RealToPlace), "鎻愮ず", messButton); - if (dr == DialogResult.OK)//濡傛灉鐐瑰嚮鈥滅‘瀹氣�濇寜閽� - { - var sourcePlce = task.RealSourcePlace; - var toPlace = task.RealToPlace; - var tbTaskId = task.PlcTaskId; - - - EDeviceType deviceType = (EDeviceType)Enum.Parse(typeof(EDeviceType), task.DeviceType.ToString()); - switch (deviceType) - { - case EDeviceType.鍫嗗灈鏈�: - using (var opcClinet = new SrmService.SrmServiceClient()) - { - - iWareCC.SrmService.SdaResEntity sdaResult = opcClinet.SendSrmTask((int)task.DeviceId, int.Parse(tbTaskId), - sourcePlce, toPlace, (short)ESrmCmd.搴撳唴鎼繍); - if (sdaResult.result) - { - WZ.Useful.Commons.MessageUtil.ShowTips(task.DeviceName + ESrmCmd.搴撳唴鎼繍.ToString() + "鍛戒护鍙戦�佹垚鍔燂紒"); - } - else - { - WZ.Useful.Commons.MessageUtil.ShowError(task.DeviceName + ESrmCmd.搴撳唴鎼繍.ToString() + "鍛戒护鍙戦�佸け璐ワ紒杩斿洖浠g爜:" + sdaResult.resMsg); - } - } - break; - case EDeviceType.RGV: - using (var opcClinet = new RgvService.RgvServiceClient()) - { - if (sourcePlce == "1010") - { - WZ.Useful.Commons.MessageUtil.ShowError("绔欑偣1010涓嶈兘鍙戜换鍔★紒"); - return; - } - iWareCC.RgvService.SdaResEntity sdaResult = opcClinet.SendRgvTask((int)EDevice.RGV, Convert.ToInt32(tbTaskId), sourcePlce, toPlace); - if (sdaResult.result) - { - WZ.Useful.Commons.MessageUtil.ShowTips("RGV鍛戒护鍙戦�佹垚鍔燂紒"); - } - else - { - WZ.Useful.Commons.MessageUtil.ShowError("RGV鍛戒护鍙戦�佸け璐ワ紒杩斿洖娑堟伅:" + sdaResult.resMsg); - } - } - break; - } - } - else//濡傛灉鐐瑰嚮鈥滃彇娑堚�濇寜閽� - { - return; - } - } - else - { - MessageBox.Show("鏈壘鍒拌浠诲姟锛�"); - return; - } - - using (DbModel context = new DbModel()) - { - //淇濆瓨浜哄伐澶勭悊鏃ュ織 [EditBy shaocx,2022-05-01] - Base_PersonHandlerRecord record = new Base_PersonHandlerRecord() - { - MainTaskNo = task.MainTaskNo, - HandlerType = "浠诲姟閲嶅彂", - PartTaskId = task.Id, - PlcTaskId = task.PlcTaskId, - RealSourcePlace = task.RealSourcePlace, - RealToPlace = task.RealToPlace, - SalverCode = task.SalverCode, - SerialNumber = task.SerialNumber, - OrderNo = task.OrderNo, - TaskTypeName = task.TaskTypeName, - Qty = task.Qty, - - ManualHandlerRemark = _AllowSimulateExecute_Rmark - - }; - PersonHandlerRecordHandler.SavePersonHandlerRecord(context, record); - - context.SaveChanges(); - } - - - MessageBox.Show("浠诲姟閲嶅彂鎴愬姛锛�"); - - BindData(); - } - else - { - MessageBox.Show("璇峰厛閫変腑瑕佹墽琛岀殑琛岋紒"); - } - } - + MessageBox.Show("宸插鐞�"); } - catch (Exception ex) + } + + private void button2_Click(object sender, EventArgs e) + { + //鏇存柊搴撳瓨琛ㄤ腑鐨勬搴忓瓧娈� + var alertMsg = ""; + using (WmsDBModel db = new WmsDBModel()) { - MessageBox.Show("浠诲姟閲嶅彂鍑虹幇寮傚父锛�" + ex.Message); - } - } + //鏌ヨ绔嬩綋搴撲腑鐨剈pi鍒楄〃 + var quanList = db.wms_stock_quan.ToList(); + var query_quanList = quanList.Select(x => x.Upi).ToList(); + var upiList = db.mes_batchOrderUPI_new.Where(x => query_quanList.Contains(x.UPI)).ToList(); + foreach (var item in quanList) + { + var _shelf = upiList.Find(x => x.UPI == item.Upi); + item.Shelf = _shelf.Shelf; + } - /// <summary> - /// 鍏抽棴1015閲嶆柊鎵弿 - /// </summary> - /// <param name="sender"></param> - /// <param name="e"></param> - private void button3_Click(object sender, EventArgs e) - { - using (var opcClinet = new RgvService.RgvServiceClient()) + + db.SaveChanges(); + } + if (!string.IsNullOrEmpty(alertMsg)) { - iWareCC.RgvService.SdaResEntity sdaResult = opcClinet.Write1015ReScan((int)EDevice.RGV, false); - if (sdaResult.result) - { - WZ.Useful.Commons.MessageUtil.ShowTips("鍏抽棴鍛戒护鍙戦�佹垚鍔燂紒"); - } - else - { - WZ.Useful.Commons.MessageUtil.ShowError("鍏抽棴鍛戒护鍙戦�佸け璐ワ紒杩斿洖娑堟伅:" + sdaResult.resMsg); - } + MessageBox.Show("閿欒:" + alertMsg); } - } - - /// <summary> - /// 鍏抽棴1019閲嶆柊鎵弿 - /// </summary> - /// <param name="sender"></param> - /// <param name="e"></param> - private void button21_Click(object sender, EventArgs e) - { - using (var opcClinet = new RgvService.RgvServiceClient()) + else { - iWareCC.RgvService.SdaResEntity sdaResult = opcClinet.Write1019ReScan((int)EDevice.RGV, false); - if (sdaResult.result) - { - WZ.Useful.Commons.MessageUtil.ShowTips("鍏抽棴鍛戒护鍙戦�佹垚鍔燂紒"); - } - else - { - WZ.Useful.Commons.MessageUtil.ShowError("鍏抽棴鍛戒护鍙戦�佸け璐ワ紒杩斿洖娑堟伅:" + sdaResult.resMsg); - } + MessageBox.Show("宸插鐞�"); } - - } - - private void dgvPartTask_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e) - { - SolidBrush b = new SolidBrush(this.dgvPartTask.RowHeadersDefaultCellStyle.ForeColor); - e.Graphics.DrawString((e.RowIndex + 1).ToString(System.Globalization.CultureInfo.CurrentUICulture), this.dgvPartTask.DefaultCellStyle.Font, b, e.RowBounds.Location.X + 20, e.RowBounds.Location.Y + 4); - } - - private void label3_Click(object sender, EventArgs e) - { - - } - - private void panel_DeviceTaskList_Paint(object sender, PaintEventArgs e) - { - - } - - private void button5_Click(object sender, EventArgs e) - { - if (SystemValue.isStartedModel) - { - WZ.Useful.Commons.MessageUtil.ShowError("鎵嬪姩搴撲綅缁存姢锛岄渶瑕佸皢妯″紡鍏抽棴锛�"); - return; - } - //鎵嬪姩搴撲綅缁存姢 - SrmStockForm frm = new SrmStockForm(); - frm.ShowDialog(); - } - - private void button7_Click(object sender, EventArgs e) - { - //鏌ヨRGV&杈撻�佺嚎搴撳瓨 - dataGridView_RgvStore.AutoGenerateColumns = false; - for (int i = 0; i < dataGridView_RgvStore.Columns.Count; i++) - { - if (i == (dataGridView_RgvStore.Columns.Count - 1)) - {//鏈�鍚庝竴鍒楀~鍏� - dataGridView_RgvStore.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; - } - else - {//鍏朵粬鍒楄嚜鍔ㄩ�傚簲瀹藉害 - dataGridView_RgvStore.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; - } - } - - BindDataForRgvStore(); - - //this.dgvPartTask.Columns["CreateTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["IssueTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["FinishTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["AllowSimulateExecute_Time"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - FormHelper.DataGridViewSelfAdaptionWidth(this.dataGridView_RgvStore); - } - - public void BindDataForRgvStore() - { - dataGridView_RgvStore.ClearSelection(); //鍙秷闄ゆ墍鏈夐�夋嫨鐨勮 - dataGridView_RgvStore.DataSource = null; - - dataGridView_RgvStore.CurrentCell = null; //鍙秷闄ら�夋嫨琛岀殑琛屽ご绠ご - using (DbModel db = new DbModel()) - { - var storeList = db.V_AllStationStore.Where(x => x.IsRgvStation == true).ToList(); - - if (storeList != null && storeList.Count > 0) - { - storeList = storeList.OrderBy(x => x.RgvStationCode).ToList();//閲嶆柊 鍗囧簭鎺掑簭 - dataGridView_RgvStore.DataSource = null; - dataGridView_RgvStore.DataSource = storeList; - } - else - { - //if (dataGridView_RgvStore.Rows.Count > 0) - //{ - // int i = dataGridView_RgvStore.Rows[0].Cells.Count; - // var cells = dataGridView_RgvStore.Rows[0].Cells; - // for (int j = 0; j < i; j++) - // { - // cells[j].Value = null; - // } - //} - } - } - } - - private void dataGridView_RgvStore_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e) - { - SolidBrush b = new SolidBrush(this.dataGridView_RgvStore.RowHeadersDefaultCellStyle.ForeColor); - e.Graphics.DrawString((e.RowIndex + 1).ToString(System.Globalization.CultureInfo.CurrentUICulture), this.dataGridView_RgvStore.DefaultCellStyle.Font, b, e.RowBounds.Location.X + 20, e.RowBounds.Location.Y + 4); - } - - private void btn_RgvConfirmFinishTask_Click(object sender, EventArgs e) - { - if (SystemValue.isStartedModel) - { - WZ.Useful.Commons.MessageUtil.ShowError("鎵嬪姩RGV浠诲姟瀹屾垚纭锛岄渶瑕佸皢妯″紡鍏抽棴锛�"); - return; - } - MessageBoxButtons messButton = MessageBoxButtons.OKCancel; - DialogResult dr = MessageBox.Show("纭畾瑕佸彂閫佷换鍔″畬鎴愮‘璁ゅ悧?", "纭", messButton); - if (dr == DialogResult.OK)//濡傛灉鐐瑰嚮鈥滅‘瀹氣�濇寜閽� - { - try - { - //璇诲彇1040涓婄殑浠诲姟鍙� - int taskId = 0; - var queryRgv = ((int)EDevice.RGV1040).ToString(); - var rgv = rgvView.R_RgvForReadCommList.Where(x => x.StationCode == queryRgv).FirstOrDefault(); - if (rgv != null) - { - taskId = rgv.R_TaskID; - } - - using (var opcClinet = new RgvService.RgvServiceClient()) - { - //if (!IsNumeric(tBSrmTransTskId.Text.Trim())) - //{ - // WZ.Useful.Commons.MessageUtil.ShowError("浠诲姟鍙锋牸寮忛敊璇�,蹇呴』鏄暟瀛楋紒"); - // return; - //} - //var taskId = int.Parse(tBSrmTransTskId.Text.Trim()); - - iWareCC.RgvService.SdaResEntity sdaResult = opcClinet.WriteRGV_FinishACK((int)EDevice.RGV, true, taskId); - if (sdaResult.result) - { - WZ.Useful.Commons.MessageUtil.ShowTips("鍛戒护鍙戦�佹垚鍔燂紒"); - // tB_Srm1SourcePlace.Clear(); - // tB_Srm1ToPlace.Clear(); - Log4NetHelper.WriteInfoLog(iWareCommon.Utils.LogType.CCWCFService, "鎵嬪姩RGV浠诲姟纭鎴愬姛锛屼换鍔″彿:" + taskId); - } - else - { - WZ.Useful.Commons.MessageUtil.ShowError("鍛戒护鍙戦�佸け璐ワ紒杩斿洖娑堟伅:" + sdaResult.resMsg); - Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.CCWCFService, "鎵嬪姩RGV浠诲姟纭澶辫触锛�" + sdaResult.resMsg + ",浠诲姟鍙�:" + taskId); - } - } - } - catch (Exception ex) - { - WZ.Useful.Commons.MessageUtil.ShowError("鍛戒护鍙戦�佸嚭鐜板紓甯�:" + ex.Message); - Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.CCWCFService, "鎵嬪姩RGV浠诲姟纭寮傚父锛�" + ex.Message, ex); - - } - } - else//濡傛灉鐐瑰嚮鈥滃彇娑堚�濇寜閽� - { - - } - } - - //鏌ヨ宸插畬鎴愮殑璁惧浠诲姟 - private void button17_Click(object sender, EventArgs e) - { - //鏌ヨ璁惧浠诲姟鍒楄〃 - dgvPartTask_Finished.AutoGenerateColumns = false; - for (int i = 0; i < dgvPartTask_Finished.Columns.Count; i++) - { - if (i == (dgvPartTask_Finished.Columns.Count - 1)) - {//鏈�鍚庝竴鍒楀~鍏� - dgvPartTask_Finished.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; - } - else - {//鍏朵粬鍒楄嚜鍔ㄩ�傚簲瀹藉害 - dgvPartTask_Finished.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; - } - } - - BindData_dgvPartTask_Finished(); - - //this.dgvPartTask.Columns["CreateTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["IssueTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["FinishTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["AllowSimulateExecute_Time"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - FormHelper.DataGridViewSelfAdaptionWidth(this.dgvPartTask_Finished); - } - - public void BindData_dgvPartTask_Finished() - { - List<Task_Part> partList = new List<Task_Part>(); - dgvPartTask_Finished.ClearSelection(); //鍙秷闄ゆ墍鏈夐�夋嫨鐨勮 - dgvPartTask_Finished.DataSource = null; - - dgvPartTask_Finished.CurrentCell = null; //鍙秷闄ら�夋嫨琛岀殑琛屽ご绠ご - - var query_plc_taskNo = this.tb_Query_PlcTaskNo.Text.Trim(); - var query_Salver = this.tb_query_Salver.Text.Trim(); - - - //鍙� 鏈�鍚庝竴涓湭缁撴潫鐨勪换鍔★紝鐒跺悗鍙栧墠5鏉″凡缁忕粨鏉熺殑浠诲姟 - var queryState1 = (int)MainTaskStatusEnum.宸插彇娑�; - var queryState2 = (int)MainTaskStatusEnum.宸插畬鎴�; - - using (DbModel db = new DbModel()) - { - List<Task_Main> firstNoFinishedTaskList = new List<Task_Main>(); - if (!string.IsNullOrEmpty(query_plc_taskNo) || !string.IsNullOrEmpty(query_Salver)) - { - Expression<Func<Task_Part, bool>> predicate_plc_taskno = a => 1 == 1; - Expression<Func<Task_Part, bool>> predicate_query_Salver = a => 1 == 1; - if (!string.IsNullOrEmpty(query_plc_taskNo)) - { - predicate_plc_taskno = a => a.PlcTaskId == query_plc_taskNo; - } - if (!string.IsNullOrEmpty(query_Salver)) - { - predicate_query_Salver = a => a.SalverCode == query_Salver; - } - - partList = db.Task_Part.Where(predicate_plc_taskno).Where(predicate_query_Salver).ToList(); - } - else - { - //澧炲姞 鏄剧ず 锛屾渶杩戝凡瀹屾垚鐨勪换鍔★紝瑕� 鏈�杩�30涓换鍔� 銆怑ditby shaocx,2023-04-03銆� - firstNoFinishedTaskList = db.Task_Main.Where(x => - (x.TaskState == queryState1 || x.TaskState == queryState2) - ).OrderByDescending(x => x.CreateTime).Take(30).ToList(); - if (firstNoFinishedTaskList == null) - { - partList = new List<Task_Part>(); - } - else - { - List<int> mainIdList = new List<int>(); - foreach (var item in firstNoFinishedTaskList) - { - if (!mainIdList.Contains(item.Id)) - { - mainIdList.Add(item.Id); - } - } - var partList2 = db.Task_Part.Where(x => mainIdList.Contains(x.MainTaskId)).ToList(); - - //partList.AddRange(partList1); - partList.AddRange(partList2); - } - } - - - - if (partList != null && partList.Count > 0) - { - partList = partList.OrderBy(x => x.MainTaskId).ThenByDescending(x => x.CreateTime).ToList();//閲嶆柊 鍗囧簭鎺掑簭 - dgvPartTask_Finished.DataSource = null; - dgvPartTask_Finished.DataSource = partList; - } - else - { - //if (dgvPartTask_Finished.Rows.Count > 0) - //{ - // int i = dgvPartTask_Finished.Rows[0].Cells.Count; - // var cells = dgvPartTask_Finished.Rows[0].Cells; - // for (int j = 0; j < i; j++) - // { - // cells[j].Value = null; - // } - //} - } - } - } - - private void button18_Click(object sender, EventArgs e) - { - //鏌ヨ璁惧浠诲姟鍒楄〃 - dataGridView__OutTaskList.AutoGenerateColumns = false; - for (int i = 0; i < dataGridView__OutTaskList.Columns.Count; i++) - { - if (i == (dataGridView__OutTaskList.Columns.Count - 1)) - {//鏈�鍚庝竴鍒楀~鍏� - dataGridView__OutTaskList.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; - } - else - {//鍏朵粬鍒楄嚜鍔ㄩ�傚簲瀹藉害 - dataGridView__OutTaskList.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; - } - } - - BindData_OutTaskList(); - - //this.dgvPartTask.Columns["CreateTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["IssueTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["FinishTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["AllowSimulateExecute_Time"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - FormHelper.DataGridViewSelfAdaptionWidth(this.dataGridView__OutTaskList); - } - - public void BindData_OutTaskList() - { - List<Task_Main> mainList = new List<Task_Main>(); - dataGridView__OutTaskList.ClearSelection(); //鍙秷闄ゆ墍鏈夐�夋嫨鐨勮 - dataGridView__OutTaskList.DataSource = null; - - dataGridView__OutTaskList.CurrentCell = null; //鍙秷闄ら�夋嫨琛岀殑琛屽ご绠ご - using (DbModel db = new DbModel()) - { - var queryState1 = (int)MainTaskStatusEnum.宸插彇娑�; - var queryState2 = (int)MainTaskStatusEnum.宸插畬鎴�; - var queryInOutFlag = (int)MainInOutFlagEnum.鍑哄簱; - mainList = db.Task_Main.Where(x => x.TaskState != queryState1 && x.TaskState != queryState2 - && x.InOutFlag == queryInOutFlag - ).OrderBy(x => x.TaskSequence).ThenBy(x => x.CreateTime).ToList(); - - if (mainList != null && mainList.Count > 0) - { - dataGridView__OutTaskList.DataSource = null; - dataGridView__OutTaskList.DataSource = mainList; - } - else - { - //if (dataGridView__OutTaskList.Rows.Count > 0) - //{ - // int i = dataGridView__OutTaskList.Rows[0].Cells.Count; - // var cells = dataGridView__OutTaskList.Rows[0].Cells; - // for (int j = 0; j < i; j++) - // { - // cells[j].Value = null; - // } - //} - } - } - } - - private void panel_DeviceTaskList_dgvPartTask_Finished_Paint(object sender, PaintEventArgs e) - { - - } - - private void btn_TongJi_Click(object sender, EventArgs e) - { - //缁熻 - - int store_FDJ = 0;//鐜版湁鍙戝姩鏈烘暟 - int store_EmptySalver = 0;//绌烘墭鐩樻暟閲� - int store_EmptySalver_TS = 0;//绌烘墭鐩樻墭鏁� - - int count_In_FDJ = 0;//鏌ヨ鏌愬ぉ鍏ュ簱浜嗗灏戝彂鍔ㄦ満 - int count_In_EmptySalver = 0;//鏌ヨ鏌愬ぉ鍏ュ簱浜嗗灏� 绌烘墭鐩� - int count_In_EmptySalver_TS = 0;//鏌ヨ鏌愬ぉ鍏ュ簱浜嗗灏� 绌烘墭鐩樻墭鏁� - - int count_Out_FDJ = 0;//鏌ヨ鏌愬ぉ鍑哄簱浜嗗灏戝彂鍔ㄦ満 - int count_Out_EmptySalver = 0;//鏌ヨ鏌愬ぉ鍑哄簱浜嗗灏� 绌烘墭鐩� - int count_Out_EmptySalver_TS = 0;//鏌ヨ鏌愬ぉ鍑哄簱浜嗗灏� 绌烘墭鐩樻墭鏁� - - int count_ZY_EmptySalver = 0;//鏌ヨ鏌愬ぉ杞繍浜嗗灏� 绌烘墭鐩� - int count_ZY_EmptySalver_TS = 0;//鏌ヨ鏌愬ぉ杞繍浜嗗灏� 绌烘墭鐩樻墭鏁� - - //鏌愭鏃堕棿鐨勭粺璁� - var str_start = this.dateTimePicker_Start.Value.ToString("yyyy-MM-dd" + " " + "00:00:00"); - var str_end = this.dateTimePicker_End.Value.ToString("yyyy-MM-dd" + " " + "23:59:59"); - var start = Convert.ToDateTime(str_start); - var end = Convert.ToDateTime(str_end); - - int allPlacesCount = 0; - using (DbModel edm = new DbModel()) - { - - var queryMaterialType_涓�鑸墿鏂� = (int)MaterialTypeEnum.涓�鑸墿鏂�; - var queryMaterialType_鎵樼洏 = (int)MaterialTypeEnum.鎵樼洏; - var queryInOutFlag_In = (int)MainInOutFlagEnum.鍏ュ簱; - var queryInOutFlag_Out = (int)MainInOutFlagEnum.鍑哄簱; - var queryInOutFlag_ZY = (int)MainInOutFlagEnum.杞繍; - - var allPlaces = edm.Base_Station.Where(x => x.IsSrmStation == true).ToList(); - allPlaces = StationHandler.FindCommonFilter(allPlaces); - allPlacesCount = allPlaces.Count; - - store_FDJ = edm.V_Store.Where(x => x.MaterialType == queryMaterialType_涓�鑸墿鏂�).Count(); - - - store_EmptySalver_TS = edm.V_Store.Where(x => x.MaterialType == queryMaterialType_鎵樼洏).Count(); - store_EmptySalver = store_EmptySalver_TS == 0 ? 0 : edm.V_Store.Where(x => x.MaterialType == queryMaterialType_鎵樼洏).Sum(x => (int)x.Qty); - - - - //鏌ヨ鏌愬ぉ鍏ュ簱浜嗗灏戝彂鍔ㄦ満 - var taskState = (int)MainTaskStatusEnum.宸插畬鎴�; - count_In_FDJ = edm.Task_Main.Where(x => x.MaterialType == queryMaterialType_涓�鑸墿鏂� && x.InOutFlag == queryInOutFlag_In && x.TaskState == taskState && (x.FinishTime >= start && x.FinishTime <= end)).Count(); - - //鏌ヨ鏌愬ぉ鍏ュ簱浜嗗灏戞墭鐩� - count_In_EmptySalver_TS = edm.Task_Main.Where(x => x.MaterialType == queryMaterialType_鎵樼洏 && x.InOutFlag == queryInOutFlag_In && x.TaskState == taskState && (x.FinishTime >= start && x.FinishTime <= end)).Count(); - count_In_EmptySalver = count_In_EmptySalver_TS == 0 ? 0 : edm.Task_Main.Where(x => x.MaterialType == queryMaterialType_鎵樼洏 && x.InOutFlag == queryInOutFlag_In && x.TaskState == taskState && (x.FinishTime >= start && x.FinishTime <= end)).Sum(x => (int)x.Qty); - - //鏌ヨ鏌愬ぉ鍑哄簱浜嗗灏戝彂鍔ㄦ満 - count_Out_FDJ = edm.Task_Main.Where(x => x.MaterialType == queryMaterialType_涓�鑸墿鏂� && x.InOutFlag == queryInOutFlag_Out && x.TaskState == taskState && (x.FinishTime >= start && x.FinishTime <= end)).Count(); - - //鏌ヨ鏌愬ぉ鍏ュ簱浜嗗灏戞墭鐩� - count_Out_EmptySalver_TS = edm.Task_Main.Where(x => x.MaterialType == queryMaterialType_鎵樼洏 && x.InOutFlag == queryInOutFlag_Out && x.TaskState == taskState && (x.FinishTime >= start && x.FinishTime <= end)).Count(); - count_Out_EmptySalver = count_Out_EmptySalver_TS == 0 ? 0 : edm.Task_Main.Where(x => x.MaterialType == queryMaterialType_鎵樼洏 && x.InOutFlag == queryInOutFlag_Out && x.TaskState == taskState && (x.FinishTime >= start && x.FinishTime <= end)).Sum(x => (int)x.Qty); - - //鏌ヨ鏌愬ぉ杞繍浜嗗灏戞墭鐩橈紙娉ㄦ剰锛氬彧鏌ヨ鍘�1014浣嶇疆鐨勶級 - count_ZY_EmptySalver_TS = edm.Task_Main.Where(x => x.MaterialType == queryMaterialType_鎵樼洏 && x.InOutFlag == queryInOutFlag_ZY && x.TaskState == taskState && (x.FinishTime >= start && x.FinishTime <= end) && x.RealToPlace == "1014").Count(); - count_ZY_EmptySalver = count_ZY_EmptySalver_TS == 0 ? 0 : edm.Task_Main.Where(x => x.MaterialType == queryMaterialType_鎵樼洏 && x.InOutFlag == queryInOutFlag_ZY && x.TaskState == taskState && (x.FinishTime >= start && x.FinishTime <= end) && x.RealToPlace == "1014").Sum(x => (int)x.Qty); - - } - - //鏄剧ず - //var aa = "\r\n"; - var str = ""; - str += "鏃堕棿鑼冨洿: " + str_start + "鑷�" + str_end + " \r\n"; - str += "==================銆愬簱瀛樸��========================= \r\n"; - str += "鐜版湁鍙戝姩鏈烘暟: " + store_FDJ + " \r\n"; - str += "鐜版湁绌烘墭鐩樻暟: " + store_EmptySalver + " \r\n"; - str += "鐜版湁绌烘墭鐩樻墭鏁�: " + store_EmptySalver_TS + " \r\n"; - str += "鎬诲簱浣�" + allPlacesCount + ",鏈夊彂鍔ㄦ満鎴栨墭鐩樺簱浣�" + (store_FDJ + store_EmptySalver_TS) + ",搴撳瓨鍗犳瘮: " + CSharpHelper.ExecPercent((store_FDJ + store_EmptySalver_TS), allPlacesCount) + " \r\n"; - str += "\r\n"; - - str += "==================銆愬叆搴撱��========================= \r\n"; - str += "鍏ュ簱鍙戝姩鏈烘暟: " + count_In_FDJ + " \r\n"; - str += "鍏ュ簱绌烘墭鐩樻暟: " + count_In_EmptySalver + " \r\n"; - str += "鍏ュ簱绌烘墭鐩樻墭鏁�: " + count_In_EmptySalver_TS + " \r\n"; - str += "\r\n"; - - str += "==================銆愬嚭搴撱��========================= \r\n"; - str += "鍑哄簱鍙戝姩鏈烘暟: " + count_Out_FDJ + " \r\n"; - str += "鍑哄簱绌烘墭鐩樻暟: " + count_Out_EmptySalver + " \r\n"; - str += "鍑哄簱绌烘墭鐩樻墭鏁�: " + count_Out_EmptySalver_TS + " \r\n"; - str += "\r\n"; - - str += "==================銆愯浆杩愭墭鐩樸��========================= \r\n"; - str += "杞繍绌烘墭鐩樻暟: " + count_ZY_EmptySalver + " \r\n"; - str += "杞繍绌烘墭鐩樻墭鏁�: " + count_ZY_EmptySalver_TS + " \r\n"; - str += "\r\n"; - - this.tb_TongJi.Text = str; - } - - private void checkBox_NowDay_CheckedChanged(object sender, EventArgs e) - { - if (this.checkBox_NowDay.Checked) - { - dateTimePicker_Start.Value = DateTime.Now; - dateTimePicker_End.Value = DateTime.Now; - } - } - - private void rBOnlyIn_CheckedChanged(object sender, EventArgs e) - { - SetModelCheckBoxToSystemValue(); - } - - private void btnSMQZYZTG1_Click(object sender, EventArgs e) - { - DobtnSMQZYZTG(EDevice.涓�鍙峰爢鍨涙満); - } - - private void DobtnSMQZYZTG(EDevice device) - { - MessageBoxButtons messButton = MessageBoxButtons.OKCancel; - DialogResult dr = MessageBox.Show("娉ㄦ剰锛氬叆搴撳彛鎵爜寮哄埗楠岃瘉閫氳繃鍔熻兘锛屼粎閫傜敤浜庢壂鐮佸櫒娌℃湁鎵埌鐮侊紝浣嗘槸瀹為檯鎵樼洏鐮佸拰鍫嗗灈鏈鸿鎵ц鐨勪换鍔℃墭鐩樼爜涓�鑷寸殑鎯呭喌锛佸鏋滃爢鍨涙満瑕佹墽琛岀殑浠诲姟璺熷疄闄呮墭鐩樼爜涓嶇锛岃涓嶈鐐瑰嚮璇ユ寜閽紝鍙婃椂鑱旂郴绠$悊鍛樿繃鏉ュ鐞嗐�傛偍纭畾瑕佹搷浣滃悧?", "纭", messButton); - if (dr == DialogResult.OK)//濡傛灉鐐瑰嚮鈥滅‘瀹氣�濇寜閽� - { - var stationCode = MyExtendHelper.GetRgvStationCodeBySrm(device); - var srm = FormCC.srmViewDict[(int)device]; - //鍙湁褰撳爢鍨涙満鏈変换鍔℃墽琛屾椂锛屽苟涓旀槸鍏ュ簱浠诲姟鐨勬椂鍊欐墠鍒ゆ柇 - var realSrmSourcePlace = (int)device + "-" + srm.SrmSourcePlace; - if (srm.R_TaskNo > 0 && (srm.R_State == (int)ESrmState.鍙栬揣涓� || srm.R_State == (int)ESrmState.鍙栬揣瀹氫綅涓�) - && SysGloble.Dict_SpecialPlace_IN.ContainsKey(realSrmSourcePlace)) - { - var result = MyExtendHelper.WriteScanValidateACK(false, "鍏ュ簱鍙f壂鐮佸己鍒堕獙璇侀�氳繃", stationCode, srm.R_TaskNo, true, "", ""); - if (result) - { - MyExtendHelper.SetSrm_IN_SMQZYZTG(device, true); - MessageBox.Show("鍏ュ簱鍙f壂鐮佸己鍒堕獙璇侀�氳繃 鎴愬姛锛�"); - } - else - { - MessageBox.Show("鍏ュ簱鍙f壂鐮佸己鍒堕獙璇侀�氳繃 澶辫触锛�"); - } - } - else - { - MessageBox.Show(device.ToString() + "浠诲姟鍙蜂笉鏄ぇ浜�0锛屾垨鑰� 鐘舵�佷笉鏄� '鍙栬揣涓�'鎴�'鍙栬揣瀹氫綅涓�'锛屼笉鍏佽鎿嶄綔"); - } - } - else//濡傛灉鐐瑰嚮鈥滃彇娑堚�濇寜閽� - { - - } - } - - private void btnSMQZYZTG4_Click(object sender, EventArgs e) - { - DobtnSMQZYZTG(EDevice.鍥涘彿鍫嗗灈鏈�); - } - - private void btnSMQZYZTG3_Click(object sender, EventArgs e) - { - DobtnSMQZYZTG(EDevice.涓夊彿鍫嗗灈鏈�); - } - - private void btnSMQZYZTG2_Click(object sender, EventArgs e) - { - DobtnSMQZYZTG(EDevice.浜屽彿鍫嗗灈鏈�); - } - - private void btn_WaitPlanDetail_Click(object sender, EventArgs e) - { - //鏌ヨ璁惧浠诲姟鍒楄〃 - dataGridView_WaitPlanDetail.AutoGenerateColumns = false; - for (int i = 0; i < dataGridView_WaitPlanDetail.Columns.Count; i++) - { - if (i == (dataGridView_WaitPlanDetail.Columns.Count - 1)) - {//鏈�鍚庝竴鍒楀~鍏� - dataGridView_WaitPlanDetail.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; - } - else - {//鍏朵粬鍒楄嚜鍔ㄩ�傚簲瀹藉害 - dataGridView_WaitPlanDetail.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; - } - } - - BindData_WaitPlanDetail(); - - //this.dgvPartTask.Columns["CreateTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["IssueTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["FinishTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["AllowSimulateExecute_Time"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - FormHelper.DataGridViewSelfAdaptionWidth(this.dataGridView_WaitPlanDetail); - } - - public void BindData_WaitPlanDetail() - { - List<Plan_OutTaskDetail> mainList = new List<Plan_OutTaskDetail>(); - dataGridView_WaitPlanDetail.ClearSelection(); //鍙秷闄ゆ墍鏈夐�夋嫨鐨勮 - dataGridView_WaitPlanDetail.DataSource = null; - - dataGridView_WaitPlanDetail.CurrentCell = null; //鍙秷闄ら�夋嫨琛岀殑琛屽ご绠ご - using (DbModel db = new DbModel()) - { - var queryState1 = (int)OutTaskDetailStateEnum.绛夊緟涓�; - var queryState2 = (int)OutTaskDetailStateEnum.缂烘枡; - mainList = db.Plan_OutTaskDetail.Where(x => x.OutTaskDetailState == queryState1 - || x.OutTaskDetailState == queryState2 - ).OrderBy(x => x.TaskSequence).ThenBy(x => x.CreateTime).ToList(); - - if (mainList != null && mainList.Count > 0) - { - dataGridView_WaitPlanDetail.DataSource = null; - dataGridView_WaitPlanDetail.DataSource = mainList; - } - else - { - //if (dataGridView__OutTaskList.Rows.Count > 0) - //{ - // int i = dataGridView__OutTaskList.Rows[0].Cells.Count; - // var cells = dataGridView__OutTaskList.Rows[0].Cells; - // for (int j = 0; j < i; j++) - // { - // cells[j].Value = null; - // } - //} - } - } - } - - private void btnDeleteTask_Click(object sender, EventArgs e) - { - //浠诲姟寮哄埗鍒犻櫎 - try - { - if (SystemValue.isStartedModel) - { - WZ.Useful.Commons.MessageUtil.ShowError("鎵嬪姩浠诲姟寮哄埗鍒犻櫎锛岄渶瑕佸皢妯″紡鍏抽棴锛�"); - return; - } - - var _AllowSimulateExecute_Rmark = this.tb_AllowSimulateExecute_Rmark.Text; - if (string.IsNullOrEmpty(_AllowSimulateExecute_Rmark)) - { - MessageBox.Show("璇疯緭鍏ヤ换鍔″己鍒跺垹闄ゅ師鍥犺鏄庯紒"); - return; - } - var myNotext = "浜哄伐浠诲姟寮哄埗鍒犻櫎浠诲姟锛屽師鍥�:" + _AllowSimulateExecute_Rmark; - MessageBoxButtons messButton = MessageBoxButtons.OKCancel; - DialogResult dr = MessageBox.Show("銆愪换鍔″己鍒跺垹闄わ紝骞朵笉澶勭悊搴撳瓨锛岃璋ㄦ厧鎿嶄綔銆傜‘璁や换鍔″己鍒跺垹闄ゅ悗锛岃繕闇�浜哄伐鏍¢獙涓嬭浠诲姟搴撳瓨鏄惁姝g‘锛併��,纭畾瑕佷换鍔″己鍒跺垹闄ゅ悧?", "鎻愮ず", messButton); - if (dr == DialogResult.OK)//濡傛灉鐐瑰嚮鈥滅‘瀹氣�濇寜閽� - { - using (DbModel context = new DbModel()) - { - var row = dgvPartTask.SelectedRows; - - if (row.Count > 0) - { - var cell = row[0].Cells; - //var id = cell[0].Value.ToString(); - var id = cell["Id"].Value.ToString(); - var partTask = context.Task_Part.FirstOrDefault(x => x.Id == id); - if (partTask != null) - { - //鎵惧埌涓讳换鍔� - var mainTask = context.Task_Main.Where(x => x.Id == partTask.MainTaskId).FirstOrDefault(); - if (mainTask == null) - { - MessageBox.Show("鏈壘鍒拌浠诲姟鐨勪富浠诲姟锛�"); - return; - } - //鎵惧彟涓�涓猵artTask - var partTask2 = context.Task_Part.FirstOrDefault(x => x.Id != partTask.Id && x.MainTaskId == mainTask.Id); - - if (partTask2 != null) - { - //瑙g粦璧风偣鍜岀粓鐐� - - var place1 = context.Base_Station.Where(x => x.Id == partTask2.SourcePlace).First(); - var place2 = context.Base_Station.Where(x => x.Id == partTask2.ToPlace).First(); - StationHandler.SetPlaceLockStatus(false, SysGloble.WCSSystem, ref place1, myNotext); - StationHandler.SetPlaceTaskDoingStatus(false, SysGloble.WCSSystem, ref place1, myNotext); - StationHandler.SetPlaceLockStatus(false, SysGloble.WCSSystem, ref place2, myNotext); - StationHandler.SetPlaceTaskDoingStatus(false, SysGloble.WCSSystem, ref place2, myNotext); - } - - var place3 = context.Base_Station.Where(x => x.Id == partTask.SourcePlace).First(); - var place4 = context.Base_Station.Where(x => x.Id == partTask.ToPlace).First(); - StationHandler.SetPlaceLockStatus(false, SysGloble.WCSSystem, ref place3, myNotext); - StationHandler.SetPlaceTaskDoingStatus(false, SysGloble.WCSSystem, ref place3, myNotext); - StationHandler.SetPlaceLockStatus(false, SysGloble.WCSSystem, ref place4, myNotext); - StationHandler.SetPlaceTaskDoingStatus(false, SysGloble.WCSSystem, ref place4, myNotext); - - - - - //涓讳换鍔′篃瑕佷慨鏀逛负鍙栨秷 - mainTask.TaskState = (int)MainTaskStatusEnum.宸插彇娑�; - mainTask.TaskStateName = MainTaskStatusEnum.宸插彇娑�.ToString(); - mainTask.FinishTime = DateTime.Now; - mainTask.OperationRemark = "鐢ㄦ埛浠诲姟寮哄埗鍒犻櫎锛�" + _AllowSimulateExecute_Rmark; - - if (partTask2 != null) - { - context.Task_Part.Remove(partTask2); - } - context.Task_Part.Remove(partTask); - - //淇濆瓨浜哄伐澶勭悊鏃ュ織 [EditBy shaocx,2022-05-01] - Base_PersonHandlerRecord record = new Base_PersonHandlerRecord() - { - MainTaskNo = partTask.MainTaskNo, - HandlerType = "浠诲姟寮哄埗鍒犻櫎", - PartTaskId = partTask.Id, - PlcTaskId = partTask.PlcTaskId, - RealSourcePlace = partTask.RealSourcePlace, - RealToPlace = partTask.RealToPlace, - SalverCode = partTask.SalverCode, - SerialNumber = partTask.SerialNumber, - OrderNo = partTask.OrderNo, - TaskTypeName = partTask.TaskTypeName, - Qty = partTask.Qty, - - ManualHandlerRemark = _AllowSimulateExecute_Rmark - - }; - PersonHandlerRecordHandler.SavePersonHandlerRecord(context, record); - - context.SaveChanges(); - } - else - { - MessageBox.Show("鏈壘鍒拌浠诲姟锛�"); - return; - } - - MessageBox.Show("浠诲姟寮哄埗鍒犻櫎鎴愬姛锛�"); - - BindData(); - } - else - { - MessageBox.Show("璇峰厛閫変腑瑕佹墽琛岀殑琛岋紒"); - } - } - } - else//濡傛灉鐐瑰嚮鈥滃彇娑堚�濇寜閽� - { - - } - } - catch (Exception ex) - { - MessageBox.Show("浠诲姟寮哄埗鍒犻櫎寮傚父锛�" + ex.Message); - Log4NetHelper.WriteErrorLog(iWareCommon.Utils.LogType.CCWCFService, "浠诲姟寮哄埗鍒犻櫎寮傚父锛�" + ex.Message, ex); - } - } - - private void btn_Find_OutTaskRetryToMes_Click(object sender, EventArgs e) - { - //鏌ヨ璁惧浠诲姟鍒楄〃 - dg_OutTaskRetryToMes.AutoGenerateColumns = false; - for (int i = 0; i < dg_OutTaskRetryToMes.Columns.Count; i++) - { - if (i == (dg_OutTaskRetryToMes.Columns.Count - 1)) - {//鏈�鍚庝竴鍒楀~鍏� - dg_OutTaskRetryToMes.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; - } - else - {//鍏朵粬鍒楄嚜鍔ㄩ�傚簲瀹藉害 - dg_OutTaskRetryToMes.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; - } - } - - BindData_OutTaskRetryToMesList(); - - //this.dgvPartTask.Columns["CreateTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["IssueTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["FinishTime"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - //this.dgvPartTask.Columns["AllowSimulateExecute_Time"].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss"; - FormHelper.DataGridViewSelfAdaptionWidth(this.dg_OutTaskRetryToMes); - } - - public void BindData_OutTaskRetryToMesList() - { - List<Task_Main> mainList = new List<Task_Main>(); - dg_OutTaskRetryToMes.ClearSelection(); //鍙秷闄ゆ墍鏈夐�夋嫨鐨勮 - dg_OutTaskRetryToMes.DataSource = null; - - dg_OutTaskRetryToMes.CurrentCell = null; //鍙秷闄ら�夋嫨琛岀殑琛屽ご绠ご - using (DbModel db = new DbModel()) - { - mainList = db.Task_Main.Where(x => (x.IsNeedOnLine != null && x.IsNeedOnLine == true) && (x.IsOnLine == null || x.IsOnLine == false)).OrderBy(x => x.TaskSequence).ThenBy(x => x.CreateTime).ToList(); - - if (mainList != null && mainList.Count > 0) - { - dg_OutTaskRetryToMes.DataSource = null; - dg_OutTaskRetryToMes.DataSource = mainList; - } - else - { - //if (dataGridView__OutTaskList.Rows.Count > 0) - //{ - // int i = dataGridView__OutTaskList.Rows[0].Cells.Count; - // var cells = dataGridView__OutTaskList.Rows[0].Cells; - // for (int j = 0; j < i; j++) - // { - // cells[j].Value = null; - // } - //} - } - } - } - - private void button19_Click(object sender, EventArgs e) - { - //閲嶆柊閫氱煡MES鍑哄簱 - try - { - if (SystemValue.isStartedModel) - { - WZ.Useful.Commons.MessageUtil.ShowError("鎵嬪姩閲嶆柊閫氱煡MES鍑哄簱锛岄渶瑕佸皢妯″紡鍏抽棴锛�"); - return; - } - - MessageBoxButtons messButton = MessageBoxButtons.OKCancel; - - using (DbModel db = new DbModel()) - { - var row = dg_OutTaskRetryToMes.SelectedRows; - - if (row.Count > 0) - { - var cell = row[0].Cells; - //var id = cell[0].Value.ToString(); - var id = Convert.ToInt32(cell["MesId"].Value.ToString()); - var task = db.Task_Main.FirstOrDefault(x => x.Id == id); - if (task != null) - { - //鍒ゆ柇璁惧绫诲瀷 - DialogResult dr = MessageBox.Show(string.Format("纭畾瑕佹墜鍔ㄩ噸鏂伴�氱煡MES鍑哄簱鍚楋紵搴忓垪鍙穥0}锛岃璐у彿{1}", task.SerialNumber, task.OrderNo), "鎻愮ず", messButton); - if (dr == DialogResult.OK)//濡傛灉鐐瑰嚮鈥滅‘瀹氣�濇寜閽� - { - MesRetModel<string> ret = MesService.updateOnlineStatusWithNoTask(task); - if (ret.code == 200) - { - using (DbModel context = new DbModel()) - { - //淇濆瓨浜哄伐澶勭悊鏃ュ織 [EditBy shaocx,2022-05-01] - Base_PersonHandlerRecord record = new Base_PersonHandlerRecord() - { - MainTaskNo = task.TaskNo, - HandlerType = "閲嶆柊閫氱煡MES鍑哄簱", - PartTaskId = "", - PlcTaskId = "", - RealSourcePlace = task.RealSourcePlace, - RealToPlace = task.RealToPlace, - SalverCode = task.SalverCode, - SerialNumber = task.SerialNumber, - OrderNo = task.OrderNo, - TaskTypeName = task.TaskTypeName, - Qty = task.Qty, - - ManualHandlerRemark = "閲嶆柊鎺ㄩ��" - - }; - PersonHandlerRecordHandler.SavePersonHandlerRecord(context, record); - - context.SaveChanges(); - } - - - MessageBox.Show("宸查噸鏂扮粰MES鎺ㄩ�佸嚭搴撴垚鍔燂紒"); - BindData(); - } - else - { - MessageBox.Show("宸查噸鏂扮粰MES鎺ㄩ�佸嚭搴撳け璐ワ紒" + ret.msg); - BindData(); - } - } - else//濡傛灉鐐瑰嚮鈥滃彇娑堚�濇寜閽� - { - return; - } - } - else - { - MessageBox.Show("鏈壘鍒拌浠诲姟锛�"); - return; - } - } - else - { - MessageBox.Show("璇峰厛閫変腑瑕佹墽琛岀殑琛岋紒"); - } - } - - } - catch (Exception ex) - { - MessageBox.Show("浠诲姟閲嶅彂鍑虹幇寮傚父锛�" + ex.Message); - } - } - - private void panel_dg_OutTaskRetryToMes_Paint(object sender, PaintEventArgs e) - { - - } - - private void btn_1019_Click(object sender, EventArgs e) - { - CommmonShowAgvStation(sender); - } - - private void button22_Click(object sender, EventArgs e) - { - var cargNo = this.tb_wlm.Text.Trim(); - var ret = WmsRequestHelper.test_getEngineInfo(cargNo); - - - //杞崲鍚� - MesRetModel2<MesRetProductModel> retModel = JsonConvert.DeserializeObject<MesRetModel2<MesRetProductModel>>(ret); - - this.tb_TongJi.Text = "MES杩斿洖锛�" + ret + "\r\n" + - "杞崲鍚�:" + "\r\n" + - JsonConvert.SerializeObject(retModel) - ; - } - - private void button23_Click(object sender, EventArgs e) - { - var cargNo = this.tb_wlm.Text.Trim(); - var ret = WmsRequestHelper.test_btjReceive(cargNo); - - - //杞崲鍚� - MessageModel<string> retModel = JsonConvert.DeserializeObject<MessageModel<string>>(ret); - - this.tb_TongJi.Text = "WMS杩斿洖锛�" + ret + "\r\n" + - "杞崲鍚�:" + "\r\n" + - JsonConvert.SerializeObject(retModel); } } } -- Gitblit v1.9.3