From e0d89637030791ce1e7dd46ca5fdec9979977960 Mon Sep 17 00:00:00 2001 From: 杨前锦 <1010338399@qq.com> Date: 星期三, 11 六月 2025 17:28:41 +0800 Subject: [PATCH] 印尼佳通-硫化流程出入库流程开发 --- HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/wms/WMSHelper.cs | 69 +++++++++++++++++++++------------- 1 files changed, 42 insertions(+), 27 deletions(-) diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/wms/WMSHelper.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/wms/WMSHelper.cs index 2f82ac0..47e90f5 100644 --- a/HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/wms/WMSHelper.cs +++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/wms/WMSHelper.cs @@ -307,7 +307,7 @@ string S_ZONE_CLS_CODE = ""; if (trayStatus == 0) { - S_ZONE_CLS_CODE = "KGZ"; + S_ZONE_CLS_CODE = "KT"; } else if (trayStatus == 1) { @@ -346,10 +346,6 @@ .Where((a, b, c) => a.S_AREA_CODE.Trim() == item.S_AREA_CODE.Trim() && a.N_CURRENT_NUM == 0 && a.N_LOCK_STATE == 0 && a.C_ENABLE == "Y" && c.S_ZONE_CLS_CODE.Trim() == S_ZONE_CLS_CODE) .OrderBy((a, b, c) => a.N_LAYER) .First(); - if (location != null) - { - return location; - } } } @@ -369,7 +365,7 @@ .OrderBy((a, b, c) => a.N_LAYER) .First(); } - LogHelper.Info($"鏌ヨ缁撴潫,绔嬪簱缁堢偣璐т綅:{location}","WMS"); + LogHelper.Info($"鏌ヨ缁撴潫,绔嬪簱缁堢偣璐т綅:{JsonConvert.SerializeObject(location)}","WMS"); } catch (Exception ex) { @@ -381,15 +377,36 @@ public static bool addAlarmRecord(string alarmType , string alarmLevel ,string alarmMsg ,string logSite = "WMS") { var db = new SqlHelper<object>().GetInstance(); + bool result = true; LogHelper.Info(alarmMsg, logSite); - AlarmRecord alarmRecord = new AlarmRecord() { - S_ALARM_CODE = GenerateAlarmNo(), - S_ALARM_TYPE = alarmType, - S_ALARM_LEVEL = alarmLevel, - S_ALARM_MSG = alarmMsg, - S_FILE_NAME = logSite, - }; - return db.Insertable<AlarmRecord>(alarmRecord).ExecuteCommand()>0; + var alarmRecord = db.Queryable<AlarmRecord>().Where(a => a.N_IS_READ == 0 && a.S_ALARM_MSG == alarmMsg).First(); + if (alarmRecord == null) + { + alarmRecord = new AlarmRecord() + { + S_ALARM_CODE = GenerateAlarmNo(), + S_ALARM_TYPE = alarmType, + S_ALARM_LEVEL = alarmLevel, + S_ALARM_MSG = alarmMsg, + S_FILE_NAME = logSite, + }; + result = db.Insertable<AlarmRecord>(alarmRecord).ExecuteCommand() > 0; + } + return result; + } + + public static bool addRfidAnomalyRecord(string rfid ,int anomalyType ,string locCode ,string taskNo) + { + var db = new SqlHelper<object>().GetInstance(); + RfidAnomalyRecord anomalyRecord = new RfidAnomalyRecord() + { + S_RFID = rfid, + N_ANOMALY_TYPE = anomalyType, + S_ANOMALY_TYPE = RfidAnomalyRecord.getAnomalyType(anomalyType), + S_LOC_CODE = locCode, + S_TASK_NO = taskNo + }; + return db.Insertable<RfidAnomalyRecord>(anomalyRecord).ExecuteCommand() > 0; } /// <summary> @@ -435,17 +452,16 @@ /// 1.鏌ヨ寮傚父鍖鸿揣浣� /// </summary> /// <param name="areaCode">搴撳尯</param> - /// <param name="type">绫诲瀷 1.绔嬪簱鎺ラ┏浣�2.缂撳瓨浣�/param> - /// <param name="property">璐т綅灞炴�锛�.鐩磋繛 2.闈炵洿杩�3.浜哄伐 4.鍥哄畾绔欏彴锛�/param> - /// <param name="actType">鍔ㄤ綔绫诲瀷锛�.榛樿 1.鍏ュ簱 2.鍑哄簱锛�/param> + /// <param name="property">璐т綅灞炴�锛�.鐩磋繛 2.闈炵洿杩烇級</param> + /// <param name="type">鍔ㄤ綔绫诲瀷锛�.浜哄伐鎺ラ┏浣�1.鍏ュ簱鎺ラ┏浣�2.鍑哄簱鎺ラ┏浣嶏級</param> /// <returns></returns> - public static Location GetTransfeRelevanceLoc(string areaCode , string type ,string actType = "0" ,string property = "2" ) + public static Location GetTransfeRelevanceLoc(string areaCode ,int type ,int property ) { Location loc = null; var db = new SqlHelper<object>().GetInstance(); loc = db.Queryable<Location>() .LeftJoin<TransfeRelevance>((a,b)=> a.S_CODE == b.S_LOC_CODE) - .Where((a, b) => b.S_RELE_AREA.Trim() == areaCode && b.S_TYPE.Trim() == type && b.S_PROPERTY == property && b.S_ACT_TYPE == actType && a.N_CURRENT_NUM == 0 && a.N_LOCK_STATE == 0 && a.C_ENABLE == "Y") + .Where((a, b) => b.S_RELE_AREA.Trim() == areaCode && b.N_PROPERTY == property && b.N_TYPE == type && a.N_CURRENT_NUM == 0 && a.N_LOCK_STATE == 0 && a.C_ENABLE == "Y") .First(); return loc; } @@ -454,13 +470,13 @@ /// 鏌ヨ鎺ラ┏浣嶅叧鑱斿睘鎬� /// </summary> /// <param name="locCode"></param> - /// <param name="property">璐т綅灞炴� (1.鐩磋繛 2.闈炵洿杩炪�3.浜哄伐 銆�.鍥哄畾绔欏彴)</param> + /// <param name="isManual">璐т綅灞炴� (0.闈炰汉宸�1.浜哄伐)</param> /// <returns></returns> - public static bool updateTransfeLocProperty(string locCode ,string property) + public static bool updateTransfeLocProperty(string locCode ,int isManual) { bool result = false; var db = new SqlHelper<object>().GetInstance(); - result = db.Updateable<TransfeRelevance>().SetColumns(a => new TransfeRelevance() { S_PROPERTY = property } ).Where(a => a.S_LOC_CODE.Trim() == locCode).ExecuteCommand() > 0; + result = db.Updateable<TransfeRelevance>().SetColumns(a => new TransfeRelevance() { N_IS_MANUAL = isManual } ).Where(a => a.S_LOC_CODE.Trim() == locCode).ExecuteCommand() > 0; return result; } @@ -469,17 +485,16 @@ /// 娉細鏌ヨ浠诲姟鏈�皯鐨勬帴椹充綅 /// </summary> /// <param name="areaCode">搴撳尯</param> - /// <param name="property">璐т綅灞炴� (1.鐩磋繛 2.闈炵洿杩炪�3.浜哄伐 銆�.鍥哄畾绔欏彴)</param> - /// <param name="type">绫诲瀷 1.绔嬪簱鎺ラ┏浣�2.缂撳瓨浣�3.鏈哄彴涓嬬嚎浣�4.寮傚父搴撲綅</param> - /// <param name="actType">鍔ㄤ綔绫诲瀷 1.鍏ュ簱 2.鍑哄簱</param> + /// <param name="property">璐т綅灞炴� ( 1.鐩磋繛 2.闈炵洿杩�</param> + /// <param name="type">鍔ㄤ綔绫诲瀷 锛�.鍏ュ簱鎺ラ┏浣� 2.鍑哄簱鎺ラ┏浣嶏級</param> /// <returns></returns> - public static Location GetMinTaskTransfeLoc(string areaCode , string type ,string actType, string property = "2") + public static Location GetMinTaskTransfeLoc(string areaCode ,int type, int property) { var db = new SqlHelper<object>().GetInstance(); var loc = db.Queryable<Location>() .LeftJoin<TransfeRelevance>((a,b) => a.S_CODE == b.S_LOC_CODE) .LeftJoin<WCSTask>((a,b,c) => a.S_CODE == c.S_END_LOC && c.N_B_STATE < 3) - .Where((a, b, c) => b.S_RELE_AREA.Trim() == areaCode && b.S_TYPE.Trim() == type && b.S_ACT_TYPE.Trim() == actType && b.S_PROPERTY.Trim() == property && a.N_LOCK_STATE < 3 && a.C_ENABLE == "Y") + .Where((a, b, c) => b.S_RELE_AREA.Trim() == areaCode && b.N_TYPE == type && b.N_PROPERTY == property && a.N_LOCK_STATE < 3 && a.C_ENABLE == "Y") .GroupBy((a, b, c) => a.S_CODE) .Select((a, b, c) => new { count = SqlFunc.AggregateCount(c.S_END_LOC), -- Gitblit v1.9.1