111
cjs
2025-06-19 514e0b05b51f82203e716bc506c7cccb58e7434e
111
2个文件已修改
28 ■■■■ 已修改文件
ams/Hanhe.iWCS.TaizhouGEMTwoProtocol/ERPService.cs 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ams/Hanhe.iWCS.TaizhouGEMTwoProtocol/EnentListen.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ams/Hanhe.iWCS.TaizhouGEMTwoProtocol/ERPService.cs
@@ -688,7 +688,7 @@
        /// <param name="plcInfo"></param>
        public static void WriteItemInfoTwo(Settings.PlcInfo plcInfo)
        {
            CMMLog.Debug($"WriteItemInfo:Start!");
            CMMLog.Debug($"WriteItemInfoTwo:Start!");
            try
            {
@@ -700,16 +700,16 @@
                    host = plcInfo.ip,
                    port = plcInfo.port
                });
                CMMLog.Debug($"WriteItemInfo:读取【翻页】通道数据为:{JsonConvert.SerializeObject(result)}!");
                CMMLog.Debug($"WriteItemInfoTwo:读取【翻页】通道数据为:{JsonConvert.SerializeObject(result)}!");
                if (true) // result != null && result.errCode == 0
                {
                    // 示例:读出值为1 获取1~5编号的物料数据;读出值为2 获取6~10编号的物料数据 规则 result.result[0] * 5 - 4 起始编号
                    //int startItemNo = 1;
                    int startItemNo = result.result[0] * 5 - 4;
                    CMMLog.Debug($"WriteItemInfo:翻页数据为:{startItemNo}!");
                    CMMLog.Debug($"WriteItemInfoTwo:翻页数据为:{startItemNo}!");
                    var reLocationTask = MongoDBSingleton.Instance.Find<ERPItemTable>(Query.And(Query.In("item_no", new List<MongoDB.Bson.BsonValue>() { startItemNo, startItemNo + 1, startItemNo + 2, startItemNo + 3, startItemNo + 4 })), "ERPItemTable").ToList();
                    int reLocationTaskNum = reLocationTask != null ? reLocationTask.Count : 0;
                    CMMLog.Debug($"WriteItemInfo:查询出ERP物料表数据数量为:{reLocationTaskNum}!备注:只有数量为5才会写入数据");
                    CMMLog.Debug($"WriteItemInfoTwo:查询出ERP物料表数据数量为:{reLocationTaskNum}!备注:只有数量为5才会写入数据");
                    if (reLocationTaskNum == 5)
                    {
                        int no = 0;
@@ -725,19 +725,19 @@
                            // 内存地址 20~29 协议地址 21~30 产品型号
                            // HandleItemInfo(a.item_spec, 20, 29, num);
                            HandleItemInfoChina(a.item_spec, 0, 9, num);
                            CMMLog.Debug($"WriteItemInfo:物料信息处理-2。处理数据:{a.item_spec},处理后数据:{JsonConvert.SerializeObject(num)}");
                            CMMLog.Debug($"WriteItemInfoTwo:物料信息处理-2。处理数据:{a.item_spec},处理后数据:{JsonConvert.SerializeObject(num)}");
                            // 内存地址 30~49 协议地址 31~50 物料编码
                            HandleItemInfo(a.item_code, 10, 24, num);
                            CMMLog.Debug($"WriteItemInfo:物料信息处理-2。处理数据:{a.item_code},处理后数据:{JsonConvert.SerializeObject(num)}");
                            CMMLog.Debug($"WriteItemInfoTwo:物料信息处理-2。处理数据:{a.item_code},处理后数据:{JsonConvert.SerializeObject(num)}");
                            // 内存地址 50~64 协议地址 51~65 物料名称
                            // HandleItemInfo(a.item_name, 50, 64, num);
                            HandleItemInfoChina(a.item_name, 25, 44, num);// 中文处理
                            CMMLog.Debug($"WriteItemInfo:物料信息处理-2。处理数据:{a.item_name},处理后数据:{JsonConvert.SerializeObject(num)}");
                            CMMLog.Debug($"WriteItemInfoTwo:物料信息处理-2。处理数据:{a.item_name},处理后数据:{JsonConvert.SerializeObject(num)}");
                            // 内存地址 65~69 协议地址 66~70 计量单位
                            HandleItemInfo(a.item_uom, 45, 49, num);
                            CMMLog.Debug($"WriteItemInfo:物料信息处理-2。处理数据:{a.item_uom},处理后数据:{JsonConvert.SerializeObject(num)}");
                            CMMLog.Debug($"WriteItemInfoTwo:物料信息处理-2。处理数据:{a.item_uom},处理后数据:{JsonConvert.SerializeObject(num)}");
                            CMMLog.Debug($"WriteItemInfo:发送物料信息。序号:{a.item_no},ip:{plcInfo.ip},port:{plcInfo.port},写入起始地址:{writeAddr},写入数据:{JsonConvert.SerializeObject(num)}");
                            CMMLog.Debug($"WriteItemInfoTwo:发送物料信息。序号:{a.item_no},ip:{plcInfo.ip},port:{plcInfo.port},写入起始地址:{writeAddr},写入数据:{JsonConvert.SerializeObject(num)}");
                            var wirteall01 = OITcpHelper.RegisterWriteOutPutMulti(new OITcpHelper.RegisterWriteOutPutModelMulti
                            {
@@ -747,18 +747,18 @@
                                data = num
                            });
                            int writeResult = wirteall01 != null ? wirteall01.errCode : 1;
                            CMMLog.Debug($"WriteItemInfo:发送物料信息。序号:{a.item_no},写入结果:{writeResult}。ip:{plcInfo.ip},port:{plcInfo.port},写入起始地址:{writeAddr},写入数据:{JsonConvert.SerializeObject(num)}");
                            CMMLog.Debug($"WriteItemInfoTwo:发送物料信息。序号:{a.item_no},写入结果:{writeResult}。ip:{plcInfo.ip},port:{plcInfo.port},写入起始地址:{writeAddr},写入数据:{JsonConvert.SerializeObject(num)}");
                        });
                    }
                }
                else CMMLog.Debug($"WriteItemInfo:未读取【翻页】通道数据!");
                else CMMLog.Debug($"WriteItemInfoTwo:未读取【翻页】通道数据!");
            }
            catch (Exception ex)
            {
                CMMLog.Debug($"WriteItemInfo Error:{ex.Message}");
                CMMLog.Debug($"WriteItemInfoTwo Error:{ex.Message}");
            }
            CMMLog.Debug($"WriteItemInfo:End!");
            CMMLog.Debug($"WriteItemInfoTwo:End!");
        }
        public static void HandleItemInfo(string itemInfo,int startIndex, int endIndex , int[] num)
ams/Hanhe.iWCS.TaizhouGEMTwoProtocol/EnentListen.cs
@@ -314,7 +314,7 @@
                        list.ForEach(a =>
                        {
                            // 包装机启动时读取【翻页通道】,根据页号获取五条数据,然后写入包装机
                            //ERPService.WriteItemInfoTwo(a);
                            ERPService.WriteItemInfoTwo(a);
                            PLCControl.CheckPackingMachineTetracobalt(a);
                        });